From 78287f5504e8cbcbad837f60e2ff1aef29a81e94 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 09:10:58 +0200 Subject: [PATCH 001/171] Changed auth-status model: ssoLoginUrl: string --- e2e/app.e2e-spec.js | 16 + e2e/app.e2e-spec.js.map | 1 + e2e/app.po.js | 17 + e2e/app.po.js.map | 1 + e2e/pagenotfound/pagenotfound.e2e-spec.js | 16 + e2e/pagenotfound/pagenotfound.e2e-spec.js.map | 1 + e2e/pagenotfound/pagenotfound.po.js | 19 + e2e/pagenotfound/pagenotfound.po.js.map | 1 + e2e/search-page/search-page.e2e-spec.js | 47 + e2e/search-page/search-page.e2e-spec.js.map | 1 + e2e/search-page/search-page.po.js | 42 + e2e/search-page/search-page.po.js.map | 1 + .../admin-registries-routing.module.js | 24 + .../admin-registries-routing.module.js.map | 1 + .../admin-registries.module.js | 38 + .../admin-registries.module.js.map | 1 + .../bitstream-formats.component.js | 45 + .../bitstream-formats.component.js.map | 1 + .../metadata-registry.actions.js | 129 ++ .../metadata-registry.actions.js.map | 1 + .../metadata-registry.component.js | 161 ++ .../metadata-registry.component.js.map | 1 + .../metadata-registry.reducers.js | 73 + .../metadata-registry.reducers.js.map | 1 + .../metadata-schema-form.component.js | 148 ++ .../metadata-schema-form.component.js.map | 1 + .../metadata-field-form.component.js | 172 ++ .../metadata-field-form.component.js.map | 1 + .../metadata-schema.component.js | 182 ++ .../metadata-schema.component.js.map | 1 + src/app/+admin/admin-routing.module.js | 22 + src/app/+admin/admin-routing.module.js.map | 1 + .../admin-sidebar-section.component.js | 40 + .../admin-sidebar-section.component.js.map | 1 + .../admin-sidebar/admin-sidebar.component.js | 490 +++++ .../admin-sidebar.component.js.map | 1 + ...andable-admin-sidebar-section.component.js | 58 + ...ble-admin-sidebar-section.component.js.map | 1 + src/app/+admin/admin.module.js | 21 + src/app/+admin/admin.module.js.map | 1 + .../browse-by-date-page.component.js | 119 ++ .../browse-by-date-page.component.js.map | 1 + .../browse-by-metadata-page.component.js | 208 +++ .../browse-by-metadata-page.component.js.map | 1 + .../browse-by-title-page.component.js | 56 + .../browse-by-title-page.component.js.map | 1 + src/app/+browse-by/browse-by-guard.js | 57 + src/app/+browse-by/browse-by-guard.js.map | 1 + .../+browse-by/browse-by-routing.module.js | 25 + .../browse-by-routing.module.js.map | 1 + src/app/+browse-by/browse-by.module.js | 37 + src/app/+browse-by/browse-by.module.js.map | 1 + .../collection-form.component.js | 79 + .../collection-form.component.js.map | 1 + .../collection-page-routing.module.js | 74 + .../collection-page-routing.module.js.map | 1 + .../collection-page.component.js | 84 + .../collection-page.component.js.map | 1 + .../collection-page.module.js | 37 + .../collection-page.module.js.map | 1 + .../collection-page.resolver.js | 30 + .../collection-page.resolver.js.map | 1 + .../create-collection-page.component.js | 36 + .../create-collection-page.component.js.map | 1 + .../create-collection-page.guard.js | 45 + .../create-collection-page.guard.js.map | 1 + .../delete-collection-page.component.js | 38 + .../delete-collection-page.component.js.map | 1 + .../edit-collection-page.component.js | 32 + .../edit-collection-page.component.js.map | 1 + .../community-form.component.js | 71 + .../community-form.component.js.map | 1 + .../community-page-routing.module.js | 74 + .../community-page-routing.module.js.map | 1 + .../community-page.component.js | 41 + .../community-page.component.js.map | 1 + .../+community-page/community-page.module.js | 37 + .../community-page.module.js.map | 1 + .../community-page.resolver.js | 30 + .../community-page.resolver.js.map | 1 + .../create-community-page.component.js | 33 + .../create-community-page.component.js.map | 1 + .../create-community-page.guard.js | 44 + .../create-community-page.guard.js.map | 1 + .../delete-community-page.component.js | 38 + .../delete-community-page.component.js.map | 1 + .../edit-community-page.component.js | 32 + .../edit-community-page.component.js.map | 1 + ...nity-page-sub-collection-list.component.js | 26 + ...-page-sub-collection-list.component.js.map | 1 + ...unity-page-sub-community-list.component.js | 32 + ...y-page-sub-community-list.component.js.map | 1 + .../home-news/home-news.component.js | 22 + .../home-news/home-news.component.js.map | 1 + .../+home-page/home-page-routing.module.js | 20 + .../home-page-routing.module.js.map | 1 + src/app/+home-page/home-page.component.js | 16 + src/app/+home-page/home-page.component.js.map | 1 + src/app/+home-page/home-page.module.js | 29 + src/app/+home-page/home-page.module.js.map | 1 + .../top-level-community-list.component.js | 65 + .../top-level-community-list.component.js.map | 1 + .../edit-item-page/edit-item-operators.js | 12 + .../edit-item-page/edit-item-operators.js.map | 1 + .../edit-item-page.component.js | 49 + .../edit-item-page.component.js.map | 1 + .../edit-item-page/edit-item-page.module.js | 52 + .../edit-item-page.module.js.map | 1 + .../edit-item-page.routing.module.js | 114 ++ .../edit-item-page.routing.module.js.map | 1 + .../item-bitstreams.component.js | 22 + .../item-bitstreams.component.js.map | 1 + .../item-delete/item-delete.component.js | 48 + .../item-delete/item-delete.component.js.map | 1 + .../edit-in-place-field.component.js | 159 ++ .../edit-in-place-field.component.js.map | 1 + .../item-metadata/item-metadata.component.js | 186 ++ .../item-metadata.component.js.map | 1 + .../item-operation.component.js | 26 + .../item-operation.component.js.map | 1 + .../item-operation/itemOperation.model.js | 21 + .../item-operation/itemOperation.model.js.map | 1 + .../item-private/item-private.component.js | 34 + .../item-private.component.js.map | 1 + .../item-public/item-public.component.js | 34 + .../item-public/item-public.component.js.map | 1 + .../item-reinstate.component.js | 34 + .../item-reinstate.component.js.map | 1 + .../item-status/item-status.component.js | 76 + .../item-status/item-status.component.js.map | 1 + .../item-withdraw/item-withdraw.component.js | 34 + .../item-withdraw.component.js.map | 1 + .../modify-item-overview.component.js | 29 + .../modify-item-overview.component.js.map | 1 + .../abstract-simple-item-action.component.js | 72 + ...stract-simple-item-action.component.js.map | 1 + ...tract-simple-item-action.component.spec.js | 129 ++ ...t-simple-item-action.component.spec.js.map | 1 + .../collections/collections.component.js | 40 + .../collections/collections.component.js.map | 1 + .../metadata-field-wrapper.component.js | 31 + .../metadata-field-wrapper.component.js.map | 1 + .../metadata-uri-values.component.js | 42 + .../metadata-uri-values.component.js.map | 1 + .../metadata-values.component.js | 32 + .../metadata-values.component.js.map | 1 + .../full-file-section.component.js | 50 + .../full-file-section.component.js.map | 1 + .../full/full-item-page.component.js | 38 + .../full/full-item-page.component.js.map | 1 + .../+item-page/item-page-routing.module.js | 54 + .../item-page-routing.module.js.map | 1 + src/app/+item-page/item-page.module.js | 84 + src/app/+item-page/item-page.module.js.map | 1 + src/app/+item-page/item-page.resolver.js | 31 + src/app/+item-page/item-page.resolver.js.map | 1 + .../file-section/file-section.component.js | 32 + .../file-section.component.js.map | 1 + .../item-page-abstract-field.component.js | 38 + .../item-page-abstract-field.component.js.map | 1 + .../item-page-author-field.component.js | 40 + .../item-page-author-field.component.js.map | 1 + .../date/item-page-date-field.component.js | 43 + .../item-page-date-field.component.js.map | 1 + .../generic-item-page-field.component.js | 45 + .../generic-item-page-field.component.js.map | 1 + .../item-page-field.component.js | 29 + .../item-page-field.component.js.map | 1 + .../title/item-page-title-field.component.js | 34 + .../item-page-title-field.component.js.map | 1 + .../uri/item-page-uri-field.component.js | 38 + .../uri/item-page-uri-field.component.js.map | 1 + .../+item-page/simple/item-page.component.js | 46 + .../simple/item-page.component.js.map | 1 + .../journal-issue/journal-issue.component.js | 43 + .../journal-issue.component.js.map | 1 + .../journal-volume.component.js | 43 + .../journal-volume.component.js.map | 1 + .../item-types/journal/journal.component.js | 42 + .../journal/journal.component.js.map | 1 + .../item-types/orgunit/orgunit.component.js | 44 + .../orgunit/orgunit.component.js.map | 1 + .../item-types/person/person.component.js | 50 + .../item-types/person/person.component.js.map | 1 + .../item-types/project/project.component.js | 45 + .../project/project.component.js.map | 1 + .../publication/publication.component.js | 42 + .../publication/publication.component.js.map | 1 + .../shared/item-relationships-utils.js | 103 ++ .../shared/item-relationships-utils.js.map | 1 + .../item-types/shared/item.component.js | 53 + .../item-types/shared/item.component.js.map | 1 + .../metadata-representation-list.component.js | 33 + ...adata-representation-list.component.js.map | 1 + .../related-entities-search.component.js | 65 + .../related-entities-search.component.js.map | 1 + .../related-items/related-items-component.js | 34 + .../related-items-component.js.map | 1 + .../+login-page/login-page-routing.module.js | 20 + .../login-page-routing.module.js.map | 1 + src/app/+login-page/login-page.component.js | 78 + .../+login-page/login-page.component.js.map | 1 + src/app/+login-page/login-page.module.js | 25 + src/app/+login-page/login-page.module.js.map | 1 + .../logout-page-routing.module.js | 26 + .../logout-page-routing.module.js.map | 1 + src/app/+logout-page/logout-page.component.js | 16 + .../+logout-page/logout-page.component.js.map | 1 + src/app/+logout-page/logout-page.module.js | 25 + .../+logout-page/logout-page.module.js.map | 1 + .../my-dspace-configuration-value-type.js | 6 + .../my-dspace-configuration-value-type.js.map | 1 + .../my-dspace-configuration.service.js | 110 ++ .../my-dspace-configuration.service.js.map | 1 + .../my-dspace-new-submission.component.js | 110 ++ .../my-dspace-new-submission.component.js.map | 1 + .../my-dspace-page-routing.module.js | 34 + .../my-dspace-page-routing.module.js.map | 1 + .../my-dspace-page.component.js | 125 ++ .../my-dspace-page.component.js.map | 1 + .../+my-dspace-page/my-dspace-page.module.js | 75 + .../my-dspace-page.module.js.map | 1 + .../+my-dspace-page/my-dspace-result.model.js | 10 + .../my-dspace-result.model.js.map | 1 + .../my-dspace-results.component.js | 49 + .../my-dspace-results.component.js.map | 1 + src/app/+my-dspace-page/my-dspace.guard.js | 58 + .../+my-dspace-page/my-dspace.guard.js.map | 1 + .../filtered-search-page.component.js | 64 + .../filtered-search-page.component.js.map | 1 + .../filtered-search-page.guard.js | 32 + .../filtered-search-page.guard.js.map | 1 + .../normalized-search-result.model.js | 21 + .../normalized-search-result.model.js.map | 1 + .../paginated-search-options.model.js | 35 + .../paginated-search-options.model.js.map | 1 + src/app/+search-page/search-filter.model.js | 19 + .../+search-page/search-filter.model.js.map | 1 + .../search-authority-filter.component.js | 41 + .../search-authority-filter.component.js.map | 1 + .../search-boolean-filter.component.js | 27 + .../search-boolean-filter.component.js.map | 1 + .../search-facet-option.component.js | 119 ++ .../search-facet-option.component.js.map | 1 + .../search-facet-range-option.component.js | 97 + ...search-facet-range-option.component.js.map | 1 + .../search-facet-selected-option.component.js | 114 ++ ...rch-facet-selected-option.component.js.map | 1 + .../search-facet-filter-wrapper.component.js | 53 + ...arch-facet-filter-wrapper.component.js.map | 1 + .../search-facet-filter.component.js | 268 +++ .../search-facet-filter.component.js.map | 1 + .../search-filter-type-decorator.js | 26 + .../search-filter-type-decorator.js.map | 1 + .../search-filter/search-filter.actions.js | 125 ++ .../search-filter.actions.js.map | 1 + .../search-filter/search-filter.component.js | 128 ++ .../search-filter.component.js.map | 1 + .../search-filter/search-filter.reducer.js | 77 + .../search-filter.reducer.js.map | 1 + .../search-filter/search-filter.service.js | 230 +++ .../search-filter.service.js.map | 1 + .../search-fixed-filter.service.js | 73 + .../search-fixed-filter.service.js.map | 1 + .../search-hierarchy-filter.component.js | 27 + .../search-hierarchy-filter.component.js.map | 1 + .../search-range-filter.component.js | 135 ++ .../search-range-filter.component.js.map | 1 + .../search-text-filter.component.js | 32 + .../search-text-filter.component.js.map | 1 + .../search-filters.component.js | 66 + .../search-filters.component.js.map | 1 + .../search-labels/search-labels.component.js | 76 + .../search-labels.component.js.map | 1 + src/app/+search-page/search-options.model.js | 57 + .../+search-page/search-options.model.js.map | 1 + .../search-page-routing.module.js | 23 + .../search-page-routing.module.js.map | 1 + src/app/+search-page/search-page.component.js | 152 ++ .../+search-page/search-page.component.js.map | 1 + src/app/+search-page/search-page.module.js | 111 ++ .../+search-page/search-page.module.js.map | 1 + src/app/+search-page/search-result.model.js | 10 + .../+search-page/search-result.model.js.map | 1 + .../search-results.component.js | 80 + .../search-results.component.js.map | 1 + .../search-service/facet-value.model.js | 28 + .../search-service/facet-value.model.js.map | 1 + .../search-service/filter-type.model.js | 27 + .../search-service/filter-type.model.js.map | 1 + .../search-configuration.service.js | 313 ++++ .../search-configuration.service.js.map | 1 + .../search-filter-config.model.js | 56 + .../search-filter-config.model.js.map | 1 + .../search-query-response.model.js | 70 + .../search-query-response.model.js.map | 1 + .../search-result-element-decorator.js | 42 + .../search-result-element-decorator.js.map | 1 + .../search-service/search.service.js | 279 +++ .../search-service/search.service.js.map | 1 + .../search-settings.component.js | 97 + .../search-settings.component.js.map | 1 + .../search-sidebar/search-sidebar.actions.js | 46 + .../search-sidebar.actions.js.map | 1 + .../search-sidebar.component.js | 48 + .../search-sidebar.component.js.map | 1 + .../search-sidebar/search-sidebar.effects.js | 37 + .../search-sidebar.effects.js.map | 1 + .../search-sidebar/search-sidebar.reducer.js | 34 + .../search-sidebar.reducer.js.map | 1 + .../search-sidebar/search-sidebar.service.js | 53 + .../search-sidebar.service.js.map | 1 + .../search-configuration-option.model.js | 1 + .../search-configuration-option.model.js.map | 1 + .../search-switch-configuration.component.js | 74 + ...arch-switch-configuration.component.js.map | 1 + .../submit-page-routing.module.js | 33 + .../submit-page-routing.module.js.map | 1 + src/app/+submit-page/submit-page.module.js | 29 + .../+submit-page/submit-page.module.js.map | 1 + .../workflowitems-edit-page-routing.module.js | 33 + ...kflowitems-edit-page-routing.module.js.map | 1 + .../workflowitems-edit-page.module.js | 30 + .../workflowitems-edit-page.module.js.map | 1 + ...workspaceitems-edit-page-routing.module.js | 33 + ...spaceitems-edit-page-routing.module.js.map | 1 + .../workspaceitems-edit-page.module.js | 30 + .../workspaceitems-edit-page.module.js.map | 1 + src/app/app-routing.module.js | 48 + src/app/app-routing.module.js.map | 1 + src/app/app.component.js | 131 ++ src/app/app.component.js.map | 1 + src/app/app.effects.js | 9 + src/app/app.effects.js.map | 1 + src/app/app.metareducers.js | 33 + src/app/app.metareducers.js.map | 1 + src/app/app.module.js | 112 ++ src/app/app.module.js.map | 1 + src/app/app.reducer.js | 38 + src/app/app.reducer.js.map | 1 + src/app/core/auth/auth-object-factory.js | 27 + src/app/core/auth/auth-object-factory.js.map | 1 + src/app/core/auth/auth-request.service.js | 49 + src/app/core/auth/auth-request.service.js.map | 1 + .../auth/auth-response-parsing.service.js | 36 + .../auth/auth-response-parsing.service.js.map | 1 + src/app/core/auth/auth-type.js | 7 + src/app/core/auth/auth-type.js.map | 1 + src/app/core/auth/auth.actions.js | 310 ++++ src/app/core/auth/auth.actions.js.map | 1 + src/app/core/auth/auth.effects.js | 130 ++ src/app/core/auth/auth.effects.js.map | 1 + src/app/core/auth/auth.interceptor.js | 144 ++ src/app/core/auth/auth.interceptor.js.map | 1 + src/app/core/auth/auth.reducer.js | 131 ++ src/app/core/auth/auth.reducer.js.map | 1 + src/app/core/auth/auth.service.js | 365 ++++ src/app/core/auth/auth.service.js.map | 1 + src/app/core/auth/authenticated.guard.js | 68 + src/app/core/auth/authenticated.guard.js.map | 1 + src/app/core/auth/models/auth-error.model.js | 1 + .../core/auth/models/auth-error.model.js.map | 1 + src/app/core/auth/models/auth-status.model.js | 7 + .../core/auth/models/auth-status.model.js.map | 1 + src/app/core/auth/models/auth-status.model.ts | 2 + .../core/auth/models/auth-token-info.model.js | 18 + .../auth/models/auth-token-info.model.js.map | 1 + .../models/normalized-auth-status.model.js | 41 + .../normalized-auth-status.model.js.map | 1 + src/app/core/auth/selectors.js | 175 ++ src/app/core/auth/selectors.js.map | 1 + src/app/core/auth/server-auth.service.js | 73 + src/app/core/auth/server-auth.service.js.map | 1 + .../browse-entry-search-options.model.js | 19 + .../browse-entry-search-options.model.js.map | 1 + src/app/core/browse/browse.service.js | 240 +++ src/app/core/browse/browse.service.js.map | 1 + .../core/cache/builders/build-decorators.js | 31 + .../cache/builders/build-decorators.js.map | 1 + .../normalized-object-build.service.js | 51 + .../normalized-object-build.service.js.map | 1 + .../builders/remote-data-build.service.js | 218 +++ .../builders/remote-data-build.service.js.map | 1 + src/app/core/cache/cache-entry.js | 1 + src/app/core/cache/cache-entry.js.map | 1 + src/app/core/cache/id-to-uuid-serializer.js | 36 + .../core/cache/id-to-uuid-serializer.js.map | 1 + .../core/cache/models/action-type.model.js | 55 + .../cache/models/action-type.model.js.map | 1 + .../items/normalized-item-type.model.js | 35 + .../items/normalized-item-type.model.js.map | 1 + .../normalized-relationship-type.model.js | 66 + .../normalized-relationship-type.model.js.map | 1 + .../items/normalized-relationship.model.js | 52 + .../normalized-relationship.model.js.map | 1 + .../normalized-bitstream-format.model.js | 55 + .../normalized-bitstream-format.model.js.map | 1 + .../models/normalized-bitstream.model.js | 53 + .../models/normalized-bitstream.model.js.map | 1 + .../cache/models/normalized-bundle.model.js | 32 + .../models/normalized-bundle.model.js.map | 1 + .../models/normalized-collection.model.js | 56 + .../models/normalized-collection.model.js.map | 1 + .../models/normalized-community.model.js | 51 + .../models/normalized-community.model.js.map | 1 + .../models/normalized-dspace-object.model.js | 54 + .../normalized-dspace-object.model.js.map | 1 + .../cache/models/normalized-item.model.js | 62 + .../cache/models/normalized-item.model.js.map | 1 + .../cache/models/normalized-license.model.js | 29 + .../models/normalized-license.model.js.map | 1 + .../cache/models/normalized-object-factory.js | 105 ++ .../models/normalized-object-factory.js.map | 1 + .../cache/models/normalized-object.model.js | 25 + .../models/normalized-object.model.js.map | 1 + .../normalized-resource-policy.model.js | 43 + .../normalized-resource-policy.model.js.map | 1 + .../core/cache/models/search-param.model.js | 12 + .../cache/models/search-param.model.js.map | 1 + src/app/core/cache/models/self-link.model.js | 17 + .../core/cache/models/self-link.model.js.map | 1 + .../core/cache/models/sort-options.model.js | 14 + .../cache/models/sort-options.model.js.map | 1 + .../core/cache/models/support-level.model.js | 19 + .../cache/models/support-level.model.js.map | 1 + src/app/core/cache/object-cache.actions.js | 108 ++ .../core/cache/object-cache.actions.js.map | 1 + src/app/core/cache/object-cache.effects.js | 32 + .../core/cache/object-cache.effects.js.map | 1 + src/app/core/cache/object-cache.reducer.js | 162 ++ .../core/cache/object-cache.reducer.js.map | 1 + src/app/core/cache/object-cache.service.js | 236 +++ .../core/cache/object-cache.service.js.map | 1 + src/app/core/cache/response.models.js | 320 ++++ src/app/core/cache/response.models.js.map | 1 + .../core/cache/server-sync-buffer.actions.js | 63 + .../cache/server-sync-buffer.actions.js.map | 1 + .../core/cache/server-sync-buffer.effects.js | 110 ++ .../cache/server-sync-buffer.effects.js.map | 1 + .../core/cache/server-sync-buffer.reducer.js | 73 + .../cache/server-sync-buffer.reducer.js.map | 1 + src/app/core/config/config-data.js | 12 + src/app/core/config/config-data.js.map | 1 + .../config/config-response-parsing.service.js | 36 + .../config-response-parsing.service.js.map | 1 + src/app/core/config/config.service.js | 66 + src/app/core/config/config.service.js.map | 1 + .../config-access-condition-option.model.js | 10 + ...onfig-access-condition-option.model.js.map | 1 + .../config/models/config-object-factory.js | 38 + .../models/config-object-factory.js.map | 1 + .../config-submission-definitions.model.js | 11 + ...config-submission-definitions.model.js.map | 1 + .../models/config-submission-forms.model.js | 14 + .../config-submission-forms.model.js.map | 1 + .../models/config-submission-section.model.js | 11 + .../config-submission-section.model.js.map | 1 + .../models/config-submission-uploads.model.js | 11 + .../config-submission-uploads.model.js.map | 1 + src/app/core/config/models/config-type.js | 12 + src/app/core/config/models/config-type.js.map | 1 + src/app/core/config/models/config.model.js | 7 + .../core/config/models/config.model.js.map | 1 + ...zed-config-submission-definitions.model.js | 28 + ...config-submission-definitions.model.js.map | 1 + ...ormalized-config-submission-forms.model.js | 22 + ...lized-config-submission-forms.model.js.map | 1 + ...malized-config-submission-section.model.js | 35 + ...zed-config-submission-section.model.js.map | 1 + ...malized-config-submission-uploads.model.js | 35 + ...zed-config-submission-uploads.model.js.map | 1 + .../config/models/normalized-config.model.js | 33 + .../models/normalized-config.model.js.map | 1 + .../submission-definitions-config.service.js | 24 + ...bmission-definitions-config.service.js.map | 1 + .../config/submission-forms-config.service.js | 24 + .../submission-forms-config.service.js.map | 1 + .../submission-sections-config.service.js | 24 + .../submission-sections-config.service.js.map | 1 + .../submission-uploads-config.service.js | 30 + .../submission-uploads-config.service.js.map | 1 + src/app/core/core.effects.js | 17 + src/app/core/core.effects.js.map | 1 + src/app/core/core.module.js | 199 +++ src/app/core/core.module.js.map | 1 + src/app/core/core.reducers.js | 17 + src/app/core/core.reducers.js.map | 1 + src/app/core/core.selectors.js | 6 + src/app/core/core.selectors.js.map | 1 + .../data/base-response-parsing.service.js | 138 ++ .../data/base-response-parsing.service.js.map | 1 + ...browse-entries-response-parsing.service.js | 43 + ...se-entries-response-parsing.service.js.map | 1 + .../browse-items-response-parsing-service.js | 54 + ...owse-items-response-parsing-service.js.map | 1 + .../data/browse-response-parsing.service.js | 27 + .../browse-response-parsing.service.js.map | 1 + src/app/core/data/change-analyzer.js | 1 + src/app/core/data/change-analyzer.js.map | 1 + src/app/core/data/collection-data.service.js | 62 + .../core/data/collection-data.service.js.map | 1 + src/app/core/data/comcol-data.service.js | 44 + src/app/core/data/comcol-data.service.js.map | 1 + src/app/core/data/community-data.service.js | 64 + .../core/data/community-data.service.js.map | 1 + src/app/core/data/data.service.js | 221 +++ src/app/core/data/data.service.js.map | 1 + .../data/debug-response-parsing.service.js | 16 + .../debug-response-parsing.service.js.map | 1 + .../data/default-change-analyzer.service.js | 29 + .../default-change-analyzer.service.js.map | 1 + .../core/data/dso-change-analyzer.service.js | 29 + .../data/dso-change-analyzer.service.js.map | 1 + .../core/data/dso-response-parsing.service.js | 49 + .../data/dso-response-parsing.service.js.map | 1 + .../core/data/dspace-object-data.service.js | 70 + .../data/dspace-object-data.service.js.map | 1 + .../endpoint-map-response-parsing.service.js | 31 + ...dpoint-map-response-parsing.service.js.map | 1 + .../facet-config-response-parsing.service.js | 33 + ...cet-config-response-parsing.service.js.map | 1 + ...acet-value-map-response-parsing.service.js | 40 + ...-value-map-response-parsing.service.js.map | 1 + .../facet-value-response-parsing.service.js | 34 + ...acet-value-response-parsing.service.js.map | 1 + ...discovery-page-response-parsing.service.js | 39 + ...overy-page-response-parsing.service.js.map | 1 + src/app/core/data/item-data.service.js | 112 ++ src/app/core/data/item-data.service.js.map | 1 + .../core/data/metadata-schema-data.service.js | 58 + .../data/metadata-schema-data.service.js.map | 1 + .../data/metadatafield-parsing.service.js | 23 + .../data/metadatafield-parsing.service.js.map | 1 + .../data/metadataschema-parsing.service.js | 20 + .../metadataschema-parsing.service.js.map | 1 + .../data/mydspace-response-parsing.service.js | 84 + .../mydspace-response-parsing.service.js.map | 1 + .../object-updates/object-updates.actions.js | 171 ++ .../object-updates.actions.js.map | 1 + .../object-updates/object-updates.effects.js | 100 ++ .../object-updates.effects.js.map | 1 + .../object-updates/object-updates.reducer.js | 237 +++ .../object-updates.reducer.js.map | 1 + .../object-updates/object-updates.service.js | 226 +++ .../object-updates.service.js.map | 1 + src/app/core/data/paginated-list.js | 115 ++ src/app/core/data/paginated-list.js.map | 1 + src/app/core/data/parsing.service.js | 1 + src/app/core/data/parsing.service.js.map | 1 + ...tstreamformats-response-parsing.service.js | 25 + ...eamformats-response-parsing.service.js.map | 1 + ...metadatafields-response-parsing.service.js | 32 + ...datafields-response-parsing.service.js.map | 1 + ...etadataschemas-response-parsing.service.js | 29 + ...ataschemas-response-parsing.service.js.map | 1 + src/app/core/data/remote-data-error.js | 10 + src/app/core/data/remote-data-error.js.map | 1 + src/app/core/data/remote-data.js | 77 + src/app/core/data/remote-data.js.map | 1 + src/app/core/data/request.actions.js | 89 + src/app/core/data/request.actions.js.map | 1 + src/app/core/data/request.effects.js | 71 + src/app/core/data/request.effects.js.map | 1 + src/app/core/data/request.models.js | 478 +++++ src/app/core/data/request.models.js.map | 1 + src/app/core/data/request.reducer.js | 106 ++ src/app/core/data/request.reducer.js.map | 1 + src/app/core/data/request.service.js | 270 +++ src/app/core/data/request.service.js.map | 1 + src/app/core/data/rest-request-method.js | 20 + src/app/core/data/rest-request-method.js.map | 1 + .../data/search-response-parsing.service.js | 70 + .../search-response-parsing.service.js.map | 1 + .../dspace-rest-v2-response.model.js | 1 + .../dspace-rest-v2-response.model.js.map | 1 + .../dspace-rest-v2.serializer.js | 84 + .../dspace-rest-v2.serializer.js.map | 1 + .../dspace-rest-v2/dspace-rest-v2.service.js | 119 ++ .../dspace-rest-v2.service.js.map | 1 + .../dspace-rest-v2.validator.js | 33 + .../dspace-rest-v2.validator.js.map | 1 + .../eperson-response-parsing.service.js | 39 + .../eperson-response-parsing.service.js.map | 1 + src/app/core/eperson/eperson.service.js | 17 + src/app/core/eperson/eperson.service.js.map | 1 + src/app/core/eperson/group-eperson.service.js | 66 + .../core/eperson/group-eperson.service.js.map | 1 + src/app/core/eperson/models/eperson.model.js | 21 + .../core/eperson/models/eperson.model.js.map | 1 + src/app/core/eperson/models/group.model.js | 11 + .../core/eperson/models/group.model.js.map | 1 + .../models/normalized-eperson.model.js | 52 + .../models/normalized-eperson.model.js.map | 1 + .../eperson/models/normalized-group.model.js | 36 + .../models/normalized-group.model.js.map | 1 + src/app/core/index/index.actions.js | 70 + src/app/core/index/index.actions.js.map | 1 + src/app/core/index/index.effects.js | 46 + src/app/core/index/index.effects.js.map | 1 + src/app/core/index/index.reducer.js | 114 ++ src/app/core/index/index.reducer.js.map | 1 + src/app/core/index/index.selectors.js | 62 + src/app/core/index/index.selectors.js.map | 1 + src/app/core/integration/authority.service.js | 28 + .../core/integration/authority.service.js.map | 1 + src/app/core/integration/integration-data.js | 12 + .../core/integration/integration-data.js.map | 1 + .../integration/integration-object-factory.js | 19 + .../integration-object-factory.js.map | 1 + .../integration-response-parsing.service.js | 47 + ...ntegration-response-parsing.service.js.map | 1 + .../core/integration/integration.service.js | 84 + .../integration/integration.service.js.map | 1 + src/app/core/integration/intergration-type.js | 5 + .../core/integration/intergration-type.js.map | 1 + .../models/authority-options.model.js | 12 + .../models/authority-options.model.js.map | 1 + .../integration/models/authority.value.js | 48 + .../integration/models/authority.value.js.map | 1 + .../integration/models/confidence-type.js | 39 + .../integration/models/confidence-type.js.map | 1 + .../models/integration-options.model.js | 18 + .../models/integration-options.model.js.map | 1 + .../integration/models/integration.model.js | 25 + .../models/integration.model.js.map | 1 + .../normalized-authority-value.model.js | 41 + .../normalized-authority-value.model.js.map | 1 + .../json-patch-operation-path-combiner.js | 56 + .../json-patch-operation-path-combiner.js.map | 1 + .../builder/json-patch-operations-builder.js | 134 ++ .../json-patch-operations-builder.js.map | 1 + .../json-patch-operations.actions.js | 213 +++ .../json-patch-operations.actions.js.map | 1 + .../json-patch-operations.effects.js | 30 + .../json-patch-operations.effects.js.map | 1 + .../json-patch-operations.reducer.js | 264 +++ .../json-patch-operations.reducer.js.map | 1 + .../json-patch-operations.service.js | 117 ++ .../json-patch-operations.service.js.map | 1 + src/app/core/json-patch/json-patch.model.js | 22 + .../core/json-patch/json-patch.model.js.map | 1 + src/app/core/json-patch/selectors.js | 28 + src/app/core/json-patch/selectors.js.map | 1 + src/app/core/metadata/metadata.service.js | 317 ++++ src/app/core/metadata/metadata.service.js.map | 1 + src/app/core/metadata/metadatafield.model.js | 43 + .../core/metadata/metadatafield.model.js.map | 1 + src/app/core/metadata/metadataschema.model.js | 25 + .../core/metadata/metadataschema.model.js.map | 1 + .../normalized-metadata-schema.model.js | 36 + .../normalized-metadata-schema.model.js.map | 1 + .../registry/mock-bitstream-format.model.js | 7 + .../mock-bitstream-format.model.js.map | 1 + ...egistry-bitstreamformats-response.model.js | 23 + ...try-bitstreamformats-response.model.js.map | 1 + .../registry-metadatafields-response.model.js | 23 + ...istry-metadatafields-response.model.js.map | 1 + ...registry-metadataschemas-response.model.js | 23 + ...stry-metadataschemas-response.model.js.map | 1 + src/app/core/registry/registry.service.js | 386 ++++ src/app/core/registry/registry.service.js.map | 1 + src/app/core/roles/role-types.js | 7 + src/app/core/roles/role-types.js.map | 1 + src/app/core/roles/role.service.js | 67 + src/app/core/roles/role.service.js.map | 1 + src/app/core/serializer.js | 1 + src/app/core/serializer.js.map | 1 + src/app/core/shared/bitstream-format.model.js | 10 + .../core/shared/bitstream-format.model.js.map | 1 + src/app/core/shared/bitstream.model.js | 11 + src/app/core/shared/bitstream.model.js.map | 1 + .../core/shared/browse-definition.model.js | 37 + .../shared/browse-definition.model.js.map | 1 + src/app/core/shared/browse-entry.model.js | 29 + src/app/core/shared/browse-entry.model.js.map | 1 + src/app/core/shared/bundle.model.js | 11 + src/app/core/shared/bundle.model.js.map | 1 + src/app/core/shared/collection.model.js | 66 + src/app/core/shared/collection.model.js.map | 1 + src/app/core/shared/community.model.js | 55 + src/app/core/shared/community.model.js.map | 1 + .../core/shared/dspace-object-type.model.js | 9 + .../shared/dspace-object-type.model.js.map | 1 + src/app/core/shared/dspace-object.model.js | 107 ++ .../core/shared/dspace-object.model.js.map | 1 + src/app/core/shared/file.service.js | 50 + src/app/core/shared/file.service.js.map | 1 + src/app/core/shared/generic-constructor.js | 2 + .../core/shared/generic-constructor.js.map | 1 + src/app/core/shared/hal-endpoint.service.js | 75 + .../core/shared/hal-endpoint.service.js.map | 1 + .../item-relationships/item-type.model.js | 10 + .../item-relationships/item-type.model.js.map | 1 + .../relationship-type.model.js | 10 + .../relationship-type.model.js.map | 1 + .../item-relationships/relationship.model.js | 10 + .../relationship.model.js.map | 1 + src/app/core/shared/item.model.js | 60 + src/app/core/shared/item.model.js.map | 1 + src/app/core/shared/license.model.js | 11 + src/app/core/shared/license.model.js.map | 1 + .../item-metadata-representation.model.js | 57 + .../item-metadata-representation.model.js.map | 1 + .../metadata-representation.model.js | 11 + .../metadata-representation.model.js.map | 1 + .../metadatum-representation.model.js | 39 + .../metadatum-representation.model.js.map | 1 + src/app/core/shared/metadata.models.js | 98 + src/app/core/shared/metadata.models.js.map | 1 + src/app/core/shared/metadata.utils.js | 211 +++ src/app/core/shared/metadata.utils.js.map | 1 + src/app/core/shared/operators.js | 105 ++ src/app/core/shared/operators.js.map | 1 + src/app/core/shared/page-info.model.js | 48 + src/app/core/shared/page-info.model.js.map | 1 + src/app/core/shared/resource-policy.model.js | 10 + .../core/shared/resource-policy.model.js.map | 1 + src/app/core/shared/resource-type.js | 30 + src/app/core/shared/resource-type.js.map | 1 + src/app/core/shared/sort-option.model.js | 17 + src/app/core/shared/sort-option.model.js.map | 1 + .../submit-data-response-definition.model.js | 1 + ...bmit-data-response-definition.model.js.map | 1 + src/app/core/shared/uuid.service.js | 16 + src/app/core/shared/uuid.service.js.map | 1 + src/app/core/shared/view-mode.model.js | 10 + src/app/core/shared/view-mode.model.js.map | 1 + .../normalized-submission-object.model.js | 39 + .../normalized-submission-object.model.js.map | 1 + .../models/normalized-workflowitem.model.js | 42 + .../normalized-workflowitem.model.js.map | 1 + .../models/normalized-workspaceitem.model.js | 44 + .../normalized-workspaceitem.model.js.map | 1 + .../models/submission-object.model.js | 14 + .../models/submission-object.model.js.map | 1 + ...sion-upload-file-access-condition.model.js | 10 + ...-upload-file-access-condition.model.js.map | 1 + .../submission/models/workflowitem.model.js | 14 + .../models/workflowitem.model.js.map | 1 + .../workspaceitem-section-form.model.js | 1 + .../workspaceitem-section-form.model.js.map | 1 + .../workspaceitem-section-license.model.js | 1 + ...workspaceitem-section-license.model.js.map | 1 + ...workspaceitem-section-upload-file.model.js | 10 + ...spaceitem-section-upload-file.model.js.map | 1 + .../workspaceitem-section-upload.model.js | 1 + .../workspaceitem-section-upload.model.js.map | 1 + .../models/workspaceitem-sections.model.js | 11 + .../workspaceitem-sections.model.js.map | 1 + .../submission/models/workspaceitem.model.js | 14 + .../models/workspaceitem.model.js.map | 1 + ...ubmission-json-patch-operations.service.js | 31 + ...ssion-json-patch-operations.service.js.map | 1 + .../submission/submission-resource-type.js | 23 + .../submission-resource-type.js.map | 1 + .../submission-response-parsing.service.js | 150 ++ ...submission-response-parsing.service.js.map | 1 + .../submission/submission-rest.service.js | 121 ++ .../submission/submission-rest.service.js.map | 1 + .../core/submission/submission-scope-type.js | 6 + .../submission/submission-scope-type.js.map | 1 + .../submission/workflowitem-data.service.js | 51 + .../workflowitem-data.service.js.map | 1 + .../submission/workspaceitem-data.service.js | 51 + .../workspaceitem-data.service.js.map | 1 + .../core/tasks/claimed-task-data.service.js | 109 ++ .../tasks/claimed-task-data.service.js.map | 1 + .../tasks/models/claimed-task-object.model.js | 14 + .../models/claimed-task-object.model.js.map | 1 + .../normalized-claimed-task-object.model.js | 39 + ...ormalized-claimed-task-object.model.js.map | 1 + .../normalized-pool-task-object.model.js | 39 + .../normalized-pool-task-object.model.js.map | 1 + .../models/normalized-task-object.model.js | 39 + .../normalized-task-object.model.js.map | 1 + .../tasks/models/pool-task-object.model.js | 14 + .../models/pool-task-object.model.js.map | 1 + .../tasks/models/process-task-response.js | 20 + .../tasks/models/process-task-response.js.map | 1 + .../core/tasks/models/task-object.model.js | 14 + .../tasks/models/task-object.model.js.map | 1 + src/app/core/tasks/pool-task-data.service.js | 78 + .../core/tasks/pool-task-data.service.js.map | 1 + .../tasks/task-response-parsing.service.js | 50 + .../task-response-parsing.service.js.map | 1 + src/app/core/tasks/tasks.service.js | 96 + src/app/core/tasks/tasks.service.js.map | 1 + src/app/core/url-baser/url-baser.js | 39 + src/app/core/url-baser/url-baser.js.map | 1 + .../core/url-combiner/rest-url-combiner.js | 21 + .../url-combiner/rest-url-combiner.js.map | 1 + src/app/core/url-combiner/ui-url-combiner.js | 21 + .../core/url-combiner/ui-url-combiner.js.map | 1 + src/app/core/url-combiner/url-combiner.js | 52 + src/app/core/url-combiner/url-combiner.js.map | 1 + src/app/footer/footer.component.js | 17 + src/app/footer/footer.component.js.map | 1 + .../header-navbar-wrapper.component.js | 43 + .../header-navbar-wrapper.component.js.map | 1 + src/app/header/header.component.js | 28 + src/app/header/header.component.js.map | 1 + .../expandable-navbar-section.component.js | 85 + ...expandable-navbar-section.component.js.map | 1 + .../navbar-section.component.js | 39 + .../navbar-section.component.js.map | 1 + src/app/navbar/navbar.component.js | 130 ++ src/app/navbar/navbar.component.js.map | 1 + src/app/navbar/navbar.effects.js | 63 + src/app/navbar/navbar.effects.js.map | 1 + src/app/navbar/navbar.module.js | 51 + src/app/navbar/navbar.module.js.map | 1 + .../pagenotfound/pagenotfound.component.js | 38 + .../pagenotfound.component.js.map | 1 + src/app/shared/alert/alert.component.js | 82 + src/app/shared/alert/alert.component.js.map | 1 + src/app/shared/alert/aletr-type.js | 8 + src/app/shared/alert/aletr-type.js.map | 1 + src/app/shared/animations/bgColor.js | 12 + src/app/shared/animations/bgColor.js.map | 1 + src/app/shared/animations/fade.js | 30 + src/app/shared/animations/fade.js.map | 1 + src/app/shared/animations/focus.js | 12 + src/app/shared/animations/focus.js.map | 1 + src/app/shared/animations/fromBottom.js | 22 + src/app/shared/animations/fromBottom.js.map | 1 + src/app/shared/animations/fromLeft.js | 22 + src/app/shared/animations/fromLeft.js.map | 1 + src/app/shared/animations/fromRight.js | 22 + src/app/shared/animations/fromRight.js.map | 1 + src/app/shared/animations/fromTop.js | 22 + src/app/shared/animations/fromTop.js.map | 1 + src/app/shared/animations/overlay.js | 7 + src/app/shared/animations/overlay.js.map | 1 + src/app/shared/animations/push.js | 12 + src/app/shared/animations/push.js.map | 1 + src/app/shared/animations/rotate.js | 31 + src/app/shared/animations/rotate.js.map | 1 + src/app/shared/animations/scale.js | 22 + src/app/shared/animations/scale.js.map | 1 + src/app/shared/animations/shrink.js | 13 + src/app/shared/animations/shrink.js.map | 1 + src/app/shared/animations/slide.js | 45 + src/app/shared/animations/slide.js.map | 1 + .../auth-nav-menu/auth-nav-menu.component.js | 41 + .../auth-nav-menu.component.js.map | 1 + .../user-menu/user-menu.component.js | 38 + .../user-menu/user-menu.component.js.map | 1 + .../authority-confidence-state.directive.js | 134 ++ ...uthority-confidence-state.directive.js.map | 1 + .../shared/browse-by/browse-by.component.js | 157 ++ .../browse-by/browse-by.component.js.map | 1 + src/app/shared/chips/chips.component.js | 136 ++ src/app/shared/chips/chips.component.js.map | 1 + .../shared/chips/models/chips-item.model.js | 88 + .../chips/models/chips-item.model.js.map | 1 + src/app/shared/chips/models/chips.model.js | 127 ++ .../shared/chips/models/chips.model.js.map | 1 + .../comcol-form/comcol-form.component.js | 105 ++ .../comcol-form/comcol-form.component.js.map | 1 + .../create-comcol-page.component.js | 59 + .../create-comcol-page.component.js.map | 1 + .../delete-comcol-page.component.js | 63 + .../delete-comcol-page.component.js.map | 1 + .../edit-comcol-page.component.js | 47 + .../edit-comcol-page.component.js.map | 1 + .../comcol-page-browse-by.component.js | 23 + .../comcol-page-browse-by.component.js.map | 1 + .../comcol-page-content.component.js | 34 + .../comcol-page-content.component.js.map | 1 + .../comcol-page-header.component.js | 20 + .../comcol-page-header.component.js.map | 1 + .../comcol-page-logo.component.js | 32 + .../comcol-page-logo.component.js.map | 1 + src/app/shared/date.util.js | 52 + src/app/shared/date.util.js.map | 1 + .../dso-selector/dso-selector.component.js | 84 + .../dso-selector.component.js.map | 1 + ...te-collection-parent-selector.component.js | 46 + ...ollection-parent-selector.component.js.map | 1 + ...ate-community-parent-selector.component.js | 53 + ...community-parent-selector.component.js.map | 1 + .../create-item-parent-selector.component.js | 40 + ...eate-item-parent-selector.component.js.map | 1 + .../dso-selector-modal-wrapper.component.js | 52 + ...so-selector-modal-wrapper.component.js.map | 1 + .../edit-collection-selector.component.js | 40 + .../edit-collection-selector.component.js.map | 1 + .../edit-community-selector.component.js | 40 + .../edit-community-selector.component.js.map | 1 + .../edit-item-selector.component.js | 40 + .../edit-item-selector.component.js.map | 1 + src/app/shared/empty.util.js | 168 ++ src/app/shared/empty.util.js.map | 1 + src/app/shared/error/error.component.js | 37 + src/app/shared/error/error.component.js.map | 1 + ...ynamic-form-control-container.component.js | 202 +++ ...ic-form-control-container.component.js.map | 1 + .../ds-dynamic-form.component.js | 71 + .../ds-dynamic-form.component.js.map | 1 + .../dynamic-form-array.component.js | 67 + .../dynamic-form-array.component.js.map | 1 + .../dynamic-date-picker-inline.component.js | 63 + ...ynamic-date-picker-inline.component.js.map | 1 + .../date-picker/date-picker.component.js | 191 ++ .../date-picker/date-picker.component.js.map | 1 + .../models/date-picker/date-picker.model.js | 23 + .../date-picker/date-picker.model.js.map | 1 + .../models/ds-dynamic-concat.model.js | 67 + .../models/ds-dynamic-concat.model.js.map | 1 + .../models/ds-dynamic-input.model.js | 95 + .../models/ds-dynamic-input.model.js.map | 1 + .../models/ds-dynamic-qualdrop.model.js | 82 + .../models/ds-dynamic-qualdrop.model.js.map | 1 + .../models/ds-dynamic-row-array-model.js | 19 + .../models/ds-dynamic-row-array-model.js.map | 1 + .../models/ds-dynamic-row-group-model.js | 13 + .../models/ds-dynamic-row-group-model.js.map | 1 + .../models/ds-dynamic-textarea.model.js | 33 + .../models/ds-dynamic-textarea.model.js.map | 1 + .../dynamic-form-group.component.js | 68 + .../dynamic-form-group.component.js.map | 1 + .../list/dynamic-list-checkbox-group.model.js | 65 + .../dynamic-list-checkbox-group.model.js.map | 1 + .../list/dynamic-list-radio-group.model.js | 38 + .../dynamic-list-radio-group.model.js.map | 1 + .../models/list/dynamic-list.component.js | 146 ++ .../models/list/dynamic-list.component.js.map | 1 + .../lookup/dynamic-lookup-name.model.js | 30 + .../lookup/dynamic-lookup-name.model.js.map | 1 + .../models/lookup/dynamic-lookup.component.js | 251 +++ .../lookup/dynamic-lookup.component.js.map | 1 + .../models/lookup/dynamic-lookup.model.js | 30 + .../models/lookup/dynamic-lookup.model.js.map | 1 + .../dynamic-relation-group.components.js | 282 +++ .../dynamic-relation-group.components.js.map | 1 + .../dynamic-relation-group.model.js | 84 + .../dynamic-relation-group.model.js.map | 1 + .../dynamic-scrollable-dropdown.component.js | 143 ++ ...namic-scrollable-dropdown.component.js.map | 1 + .../dynamic-scrollable-dropdown.model.js | 26 + .../dynamic-scrollable-dropdown.model.js.map | 1 + .../models/tag/dynamic-tag.component.js | 188 ++ .../models/tag/dynamic-tag.component.js.map | 1 + .../models/tag/dynamic-tag.model.js | 31 + .../models/tag/dynamic-tag.model.js.map | 1 + .../typeahead/dynamic-typeahead.component.js | 138 ++ .../dynamic-typeahead.component.js.map | 1 + .../typeahead/dynamic-typeahead.model.js | 25 + .../typeahead/dynamic-typeahead.model.js.map | 1 + .../form/builder/form-builder.service.js | 256 +++ .../form/builder/form-builder.service.js.map | 1 + .../models/form-field-language-value.model.js | 9 + .../form-field-language-value.model.js.map | 1 + .../models/form-field-metadata-value.model.js | 49 + .../form-field-metadata-value.model.js.map | 1 + .../form-field-previous-value-object.js | 39 + .../form-field-previous-value-object.js.map | 1 + .../form/builder/models/form-field.model.js | 57 + .../builder/models/form-field.model.js.map | 1 + .../builder/parsers/concat-field-parser.js | 73 + .../parsers/concat-field-parser.js.map | 1 + .../form/builder/parsers/date-field-parser.js | 38 + .../builder/parsers/date-field-parser.js.map | 1 + .../builder/parsers/dropdown-field-parser.js | 36 + .../parsers/dropdown-field-parser.js.map | 1 + .../form/builder/parsers/field-parser.js | 276 +++ .../form/builder/parsers/field-parser.js.map | 1 + .../form/builder/parsers/list-field-parser.js | 45 + .../builder/parsers/list-field-parser.js.map | 1 + .../builder/parsers/lookup-field-parser.js | 20 + .../parsers/lookup-field-parser.js.map | 1 + .../parsers/lookup-name-field-parser.js | 20 + .../parsers/lookup-name-field-parser.js.map | 1 + .../form/builder/parsers/name-field-parser.js | 15 + .../builder/parsers/name-field-parser.js.map | 1 + .../builder/parsers/onebox-field-parser.js | 72 + .../parsers/onebox-field-parser.js.map | 1 + .../form/builder/parsers/parser-factory.js | 59 + .../builder/parsers/parser-factory.js.map | 1 + .../form/builder/parsers/parser-options.js | 1 + .../builder/parsers/parser-options.js.map | 1 + .../form/builder/parsers/parser-type.js | 15 + .../form/builder/parsers/parser-type.js.map | 1 + .../form/builder/parsers/parser.utils.js | 19 + .../form/builder/parsers/parser.utils.js.map | 1 + .../parsers/relation-group-field-parser.js | 60 + .../relation-group-field-parser.js.map | 1 + .../shared/form/builder/parsers/row-parser.js | 108 ++ .../form/builder/parsers/row-parser.js.map | 1 + .../builder/parsers/series-field-parser.js | 15 + .../parsers/series-field-parser.js.map | 1 + .../form/builder/parsers/tag-field-parser.js | 22 + .../builder/parsers/tag-field-parser.js.map | 1 + .../builder/parsers/textarea-field-parser.js | 25 + .../parsers/textarea-field-parser.js.map | 1 + src/app/shared/form/form.actions.js | 108 ++ src/app/shared/form/form.actions.js.map | 1 + src/app/shared/form/form.component.js | 320 ++++ src/app/shared/form/form.component.js.map | 1 + src/app/shared/form/form.effects.js | 15 + src/app/shared/form/form.effects.js.map | 1 + src/app/shared/form/form.reducer.js | 181 ++ src/app/shared/form/form.reducer.js.map | 1 + src/app/shared/form/form.service.js | 135 ++ src/app/shared/form/form.service.js.map | 1 + src/app/shared/form/selectors.js | 6 + src/app/shared/form/selectors.js.map | 1 + src/app/shared/history/history.actions.js | 15 + src/app/shared/history/history.actions.js.map | 1 + src/app/shared/history/history.reducer.js | 17 + src/app/shared/history/history.reducer.js.map | 1 + src/app/shared/history/selectors.js | 2 + src/app/shared/history/selectors.js.map | 1 + src/app/shared/host-window.actions.js | 13 + src/app/shared/host-window.actions.js.map | 1 + src/app/shared/host-window.reducer.js | 17 + src/app/shared/host-window.reducer.js.map | 1 + src/app/shared/host-window.service.js | 89 + src/app/shared/host-window.service.js.map | 1 + .../input-suggestions.component.js | 255 +++ .../input-suggestions.component.js.map | 1 + .../input-suggestions.model.js | 1 + .../input-suggestions.model.js.map | 1 + src/app/shared/items/item-type-decorator.js | 62 + .../shared/items/item-type-decorator.js.map | 1 + .../switcher/item-type-switcher.component.js | 60 + .../item-type-switcher.component.js.map | 1 + .../lang-switch/lang-switch.component.js | 44 + .../lang-switch/lang-switch.component.js.map | 1 + src/app/shared/loading/loading.component.js | 42 + .../shared/loading/loading.component.js.map | 1 + src/app/shared/log-in/log-in.component.js | 129 ++ src/app/shared/log-in/log-in.component.js.map | 1 + src/app/shared/log-out/log-out.component.js | 47 + .../shared/log-out/log-out.component.js.map | 1 + src/app/shared/menu/initial-menus-state.js | 42 + .../shared/menu/initial-menus-state.js.map | 1 + src/app/shared/menu/menu-item.decorator.js | 23 + .../shared/menu/menu-item.decorator.js.map | 1 + .../menu-item/link-menu-item.component.js | 37 + .../menu-item/link-menu-item.component.js.map | 1 + .../menu/menu-item/models/altmetric.model.js | 12 + .../menu-item/models/altmetric.model.js.map | 1 + .../menu/menu-item/models/link.model.js | 12 + .../menu/menu-item/models/link.model.js.map | 1 + .../menu/menu-item/models/menu-item.model.js | 1 + .../menu-item/models/menu-item.model.js.map | 1 + .../menu/menu-item/models/onclick.model.js | 12 + .../menu-item/models/onclick.model.js.map | 1 + .../menu/menu-item/models/search.model.js | 12 + .../menu/menu-item/models/search.model.js.map | 1 + .../menu/menu-item/models/text.model.js | 12 + .../menu/menu-item/models/text.model.js.map | 1 + .../menu-item/onclick-menu-item.component.js | 26 + .../onclick-menu-item.component.js.map | 1 + .../menu-item/text-menu-item.component.js | 25 + .../menu-item/text-menu-item.component.js.map | 1 + src/app/shared/menu/menu-section.decorator.js | 28 + .../shared/menu/menu-section.decorator.js.map | 1 + .../menu-section/menu-section.component.js | 107 ++ .../menu-section.component.js.map | 1 + src/app/shared/menu/menu.actions.js | 211 +++ src/app/shared/menu/menu.actions.js.map | 1 + src/app/shared/menu/menu.component.js | 125 ++ src/app/shared/menu/menu.component.js.map | 1 + src/app/shared/menu/menu.module.js | 50 + src/app/shared/menu/menu.module.js.map | 1 + src/app/shared/menu/menu.reducer.js | 242 +++ src/app/shared/menu/menu.reducer.js.map | 1 + src/app/shared/menu/menu.service.js | 217 +++ src/app/shared/menu/menu.service.js.map | 1 + src/app/shared/mocks/mock-action.js | 8 + src/app/shared/mocks/mock-action.js.map | 1 + src/app/shared/mocks/mock-active-router.js | 36 + .../shared/mocks/mock-active-router.js.map | 1 + .../shared/mocks/mock-admin-guard.service.js | 26 + .../mocks/mock-admin-guard.service.js.map | 1 + .../shared/mocks/mock-angulartics.service.js | 9 + .../mocks/mock-angulartics.service.js.map | 1 + src/app/shared/mocks/mock-auth.service.js | 11 + src/app/shared/mocks/mock-auth.service.js.map | 1 + .../shared/mocks/mock-form-builder-service.js | 21 + .../mocks/mock-form-builder-service.js.map | 1 + src/app/shared/mocks/mock-form-models.js | 228 +++ src/app/shared/mocks/mock-form-models.js.map | 1 + .../mocks/mock-form-operations-service.js | 17 + .../mocks/mock-form-operations-service.js.map | 1 + src/app/shared/mocks/mock-form-service.js | 19 + src/app/shared/mocks/mock-form-service.js.map | 1 + .../shared/mocks/mock-host-window-service.js | 19 + .../mocks/mock-host-window-service.js.map | 1 + src/app/shared/mocks/mock-item.js | 215 +++ src/app/shared/mocks/mock-item.js.map | 1 + src/app/shared/mocks/mock-metadata-service.js | 10 + .../shared/mocks/mock-metadata-service.js.map | 1 + .../shared/mocks/mock-object-cache.service.js | 14 + .../mocks/mock-object-cache.service.js.map | 1 + .../mocks/mock-remote-data-build.service.js | 21 + .../mock-remote-data-build.service.js.map | 1 + src/app/shared/mocks/mock-request.service.js | 16 + .../shared/mocks/mock-request.service.js.map | 1 + src/app/shared/mocks/mock-role-service.js | 45 + src/app/shared/mocks/mock-role-service.js.map | 1 + src/app/shared/mocks/mock-router.js | 33 + src/app/shared/mocks/mock-router.js.map | 1 + .../shared/mocks/mock-scroll-to-service.js | 9 + .../mocks/mock-scroll-to-service.js.map | 1 + .../mocks/mock-section-upload.service.js | 14 + .../mocks/mock-section-upload.service.js.map | 1 + src/app/shared/mocks/mock-store.js | 1 + src/app/shared/mocks/mock-store.js.map | 1 + src/app/shared/mocks/mock-submission.js | 1572 +++++++++++++++++ src/app/shared/mocks/mock-submission.js.map | 1 + src/app/shared/mocks/mock-translate-loader.js | 11 + .../shared/mocks/mock-translate-loader.js.map | 1 + .../shared/mocks/mock-translate.service.js | 7 + .../mocks/mock-translate.service.js.map | 1 + src/app/shared/mocks/mock-uuid.service.js | 8 + src/app/shared/mocks/mock-uuid.service.js.map | 1 + .../claimed-task-actions-approve.component.js | 38 + ...imed-task-actions-approve.component.js.map | 1 + .../claimed-task-actions.component.js | 114 ++ .../claimed-task-actions.component.js.map | 1 + .../claimed-task-actions-reject.component.js | 70 + ...aimed-task-actions-reject.component.js.map | 1 + ...d-task-actions-return-to-pool.component.js | 38 + ...sk-actions-return-to-pool.component.js.map | 1 + .../item/item-actions.component.js | 56 + .../item/item-actions.component.js.map | 1 + .../mydspace-actions-service.factory.js | 38 + .../mydspace-actions-service.factory.js.map | 1 + .../mydspace-actions/mydspace-actions.js | 73 + .../mydspace-actions/mydspace-actions.js.map | 1 + .../pool-task/pool-task-actions.component.js | 83 + .../pool-task-actions.component.js.map | 1 + .../workflowitem-actions.component.js | 56 + .../workflowitem-actions.component.js.map | 1 + .../workspaceitem-actions.component.js | 82 + .../workspaceitem-actions.component.js.map | 1 + .../ngrx/dspace-router-state-serializer.js | 14 + .../dspace-router-state-serializer.js.map | 1 + src/app/shared/ngrx/type.js | 24 + src/app/shared/ngrx/type.js.map | 1 + .../models/notification-animations-type.js | 17 + .../notification-animations-type.js.map | 1 + .../models/notification-options.model.js | 14 + .../models/notification-options.model.js.map | 1 + .../notifications/models/notification-type.js | 8 + .../models/notification-type.js.map | 1 + .../models/notification.model.js | 15 + .../models/notification.model.js.map | 1 + .../notification/notification.component.js | 140 ++ .../notification.component.js.map | 1 + .../notifications-board.component.js | 130 ++ .../notifications-board.component.js.map | 1 + .../notifications/notifications.actions.js | 47 + .../notifications.actions.js.map | 1 + .../notifications/notifications.effects.js | 37 + .../notifications.effects.js.map | 1 + .../notifications/notifications.reducers.js | 28 + .../notifications.reducers.js.map | 1 + .../notifications/notifications.service.js | 112 ++ .../notifications.service.js.map | 1 + src/app/shared/notifications/selectors.js | 2 + src/app/shared/notifications/selectors.js.map | 1 + .../number-picker/number-picker.component.js | 187 ++ .../number-picker.component.js.map | 1 + .../object-collection.component.js | 143 ++ .../object-collection.component.js.map | 1 + .../claimed-task-my-dspace-result.model.js | 20 + ...claimed-task-my-dspace-result.model.js.map | 1 + .../shared/collection-search-result.model.js | 16 + .../collection-search-result.model.js.map | 1 + .../shared/community-search-result.model.js | 16 + .../community-search-result.model.js.map | 1 + .../shared/dso-element-decorator.js | 16 + .../shared/dso-element-decorator.js.map | 1 + .../shared/item-my-dspace-result.model.js | 20 + .../shared/item-my-dspace-result.model.js.map | 1 + .../shared/item-search-result.model.js | 16 + .../shared/item-search-result.model.js.map | 1 + .../shared/listable-object.model.js | 1 + .../shared/listable-object.model.js.map | 1 + .../my-dspace-item-status-type.js | 9 + .../my-dspace-item-status-type.js.map | 1 + .../my-dspace-item-status.component.js | 48 + .../my-dspace-item-status.component.js.map | 1 + .../item-submitter.component.js | 31 + .../item-submitter.component.js.map | 1 + .../abstract-listable-element.component.js | 19 + ...abstract-listable-element.component.js.map | 1 + .../pool-task-my-dspace-result.model.js | 20 + .../pool-task-my-dspace-result.model.js.map | 1 + .../workflowitem-my-dspace-result.model.js | 20 + ...workflowitem-my-dspace-result.model.js.map | 1 + .../workspaceitem-my-dspace-result.model.js | 20 + ...orkspaceitem-my-dspace-result.model.js.map | 1 + ...-dspace-result-detail-element.component.js | 58 + ...ace-result-detail-element.component.js.map | 1 + .../item-detail-preview-field.component.js | 54 + ...item-detail-preview-field.component.js.map | 1 + .../item-detail-preview.component.js | 55 + .../item-detail-preview.component.js.map | 1 + ...-dspace-result-detail-element.component.js | 32 + ...ace-result-detail-element.component.js.map | 1 + ...-dspace-result-detail-element.component.js | 47 + ...ace-result-detail-element.component.js.map | 1 + ...y-dspace-result-detail-lement.component.js | 58 + ...pace-result-detail-lement.component.js.map | 1 + ...-dspace-result-detail-element.component.js | 54 + ...ace-result-detail-element.component.js.map | 1 + ...-dspace-result-detail-element.component.js | 54 + ...ace-result-detail-element.component.js.map | 1 + .../object-detail/object-detail.component.js | 160 ++ .../object-detail.component.js.map | 1 + .../wrapper-detail-element.component.js | 49 + .../wrapper-detail-element.component.js.map | 1 + .../collection-grid-element.component.js | 23 + .../collection-grid-element.component.js.map | 1 + .../community-grid-element.component.js | 23 + .../community-grid-element.component.js.map | 1 + .../grid-thumbnail.component.js | 34 + .../grid-thumbnail.component.js.map | 1 + .../item-grid-element.component.js | 23 + .../item-grid-element.component.js.map | 1 + .../object-grid/object-grid.component.js | 165 ++ .../object-grid/object-grid.component.js.map | 1 + ...on-search-result-grid-element.component.js | 23 + ...earch-result-grid-element.component.js.map | 1 + ...ty-search-result-grid-element.component.js | 23 + ...earch-result-grid-element.component.js.map | 1 + ...em-search-result-grid-element.component.js | 25 + ...earch-result-grid-element.component.js.map | 1 + .../search-result-grid-element.component.js | 47 + ...earch-result-grid-element.component.js.map | 1 + .../wrapper-grid-element.component.js | 35 + .../wrapper-grid-element.component.js.map | 1 + .../browse-entry-list-element.component.js | 27 + ...browse-entry-list-element.component.js.map | 1 + .../collection-list-element.component.js | 23 + .../collection-list-element.component.js.map | 1 + .../community-list-element.component.js | 23 + .../community-list-element.component.js.map | 1 + .../item-list-element.component.js | 31 + .../item-list-element.component.js.map | 1 + .../journal-issue-list-element.component.js | 27 + ...ournal-issue-list-element.component.js.map | 1 + .../journal-volume-list-element.component.js | 27 + ...urnal-volume-list-element.component.js.map | 1 + .../journal/journal-list-element.component.js | 27 + .../journal-list-element.component.js.map | 1 + .../orgunit/orgunit-list-element.component.js | 27 + .../orgunit-list-element.component.js.map | 1 + ...orgunit-metadata-list-element.component.js | 27 + ...nit-metadata-list-element.component.js.map | 1 + .../person/person-list-element.component.js | 27 + .../person-list-element.component.js.map | 1 + .../person-metadata-list-element.component.js | 27 + ...son-metadata-list-element.component.js.map | 1 + .../project/project-list-element.component.js | 27 + .../project-list-element.component.js.map | 1 + .../publication-list-element.component.js | 28 + .../publication-list-element.component.js.map | 1 + ...em-search-result-list-element.component.js | 42 + ...earch-result-list-element.component.js.map | 1 + .../item-metadata-list-element.component.js | 32 + ...tem-metadata-list-element.component.js.map | 1 + ...a-representation-list-element.component.js | 23 + ...presentation-list-element.component.js.map | 1 + ...in-text-metadata-list-element.component.js | 32 + ...ext-metadata-list-element.component.js.map | 1 + ...my-dspace-result-list-element.component.js | 57 + ...space-result-list-element.component.js.map | 1 + .../item-list-preview.component.js | 44 + .../item-list-preview.component.js.map | 1 + ...my-dspace-result-list-element.component.js | 32 + ...space-result-list-element.component.js.map | 1 + ...my-dspace-result-list-element.component.js | 51 + ...space-result-list-element.component.js.map | 1 + ...my-dspace-result-list-element.component.js | 60 + ...space-result-list-element.component.js.map | 1 + ...my-dspace-result-list-element.component.js | 51 + ...space-result-list-element.component.js.map | 1 + ...my-dspace-result-list-element.component.js | 49 + ...space-result-list-element.component.js.map | 1 + .../object-list/object-list.component.js | 127 ++ .../object-list/object-list.component.js.map | 1 + ...on-search-result-list-element.component.js | 23 + ...earch-result-list-element.component.js.map | 1 + ...ty-search-result-list-element.component.js | 23 + ...earch-result-list-element.component.js.map | 1 + ...em-search-result-list-element.component.js | 28 + ...earch-result-list-element.component.js.map | 1 + .../search-result-list-element.component.js | 50 + ...earch-result-list-element.component.js.map | 1 + .../wrapper-list-element.component.js | 42 + .../wrapper-list-element.component.js.map | 1 + src/app/shared/object.util.js | 58 + src/app/shared/object.util.js.map | 1 + .../pagination-component-options.model.js | 24 + .../pagination-component-options.model.js.map | 1 + .../shared/pagination/pagination.component.js | 474 +++++ .../pagination/pagination.component.js.map | 1 + src/app/shared/roles/role.directive.js | 100 ++ src/app/shared/roles/role.directive.js.map | 1 + .../shared/sass-helper/sass-helper.actions.js | 21 + .../sass-helper/sass-helper.actions.js.map | 1 + .../shared/sass-helper/sass-helper.reducer.js | 17 + .../sass-helper/sass-helper.reducer.js.map | 1 + .../shared/sass-helper/sass-helper.service.js | 33 + .../sass-helper/sass-helper.service.js.map | 1 + .../search-form/search-form.component.js | 103 ++ .../search-form/search-form.component.js.map | 1 + src/app/shared/services/api.service.js | 26 + src/app/shared/services/api.service.js.map | 1 + .../shared/services/client-cookie.service.js | 30 + .../services/client-cookie.service.js.map | 1 + src/app/shared/services/cookie.service.js | 22 + src/app/shared/services/cookie.service.js.map | 1 + src/app/shared/services/route.service.js | 114 ++ src/app/shared/services/route.service.js.map | 1 + .../shared/services/server-cookie.service.js | 34 + .../services/server-cookie.service.js.map | 1 + .../services/server-response.service.js | 29 + .../services/server-response.service.js.map | 1 + src/app/shared/services/window.service.js | 24 + src/app/shared/services/window.service.js.map | 1 + src/app/shared/shared.module.js | 350 ++++ src/app/shared/shared.module.js.map | 1 + .../date/starts-with-date.component.js | 133 ++ .../date/starts-with-date.component.js.map | 1 + .../starts-with-abstract.component.js | 83 + .../starts-with-abstract.component.js.map | 1 + .../starts-with/starts-with-decorator.js | 29 + .../starts-with/starts-with-decorator.js.map | 1 + .../text/starts-with-text.component.js | 55 + .../text/starts-with-text.component.js.map | 1 + src/app/shared/testing/active-router-stub.js | 46 + .../shared/testing/active-router-stub.js.map | 1 + .../testing/auth-request-service-stub.js | 74 + .../testing/auth-request-service-stub.js.map | 1 + src/app/shared/testing/auth-service-stub.js | 85 + .../shared/testing/auth-service-stub.js.map | 1 + .../shared/testing/authority-service-stub.js | 21 + .../testing/authority-service-stub.js.map | 1 + .../testing/css-variable-service-stub.js | 23 + .../testing/css-variable-service-stub.js.map | 1 + src/app/shared/testing/eperson-mock.js | 42 + src/app/shared/testing/eperson-mock.js.map | 1 + .../testing/hal-endpoint-service-stub.js | 13 + .../testing/hal-endpoint-service-stub.js.map | 1 + .../testing/host-window-service-stub.js | 19 + .../testing/host-window-service-stub.js.map | 1 + src/app/shared/testing/menu-service-stub.js | 94 + .../shared/testing/menu-service-stub.js.map | 1 + src/app/shared/testing/mock-action.js | 8 + src/app/shared/testing/mock-action.js.map | 1 + src/app/shared/testing/mock-store.js | 25 + src/app/shared/testing/mock-store.js.map | 1 + .../shared/testing/mock-submission-config.js | 51 + .../testing/mock-submission-config.js.map | 1 + .../shared/testing/mock-translate-loader.js | 11 + .../testing/mock-translate-loader.js.map | 1 + .../ng-component-outlet-directive-stub.js | 20 + .../ng-component-outlet-directive-stub.js.map | 1 + .../testing/notifications-service-stub.js | 17 + .../testing/notifications-service-stub.js.map | 1 + .../testing/query-params-directive-stub.js | 20 + .../query-params-directive-stub.js.map | 1 + src/app/shared/testing/route-service-stub.js | 32 + .../shared/testing/route-service-stub.js.map | 1 + .../testing/router-link-directive-stub.js | 20 + .../testing/router-link-directive-stub.js.map | 1 + src/app/shared/testing/router-stub.js | 16 + src/app/shared/testing/router-stub.js.map | 1 + .../search-configuration-service-stub.js | 19 + .../search-configuration-service-stub.js.map | 1 + src/app/shared/testing/search-service-stub.js | 43 + .../shared/testing/search-service-stub.js.map | 1 + .../shared/testing/sections-service-stub.js | 21 + .../testing/sections-service-stub.js.map | 1 + ...sion-json-patch-operations-service-stub.js | 10 + ...-json-patch-operations-service-stub.js.map | 1 + .../testing/submission-rest-service-stub.js | 17 + .../submission-rest-service-stub.js.map | 1 + .../shared/testing/submission-service-stub.js | 36 + .../testing/submission-service-stub.js.map | 1 + src/app/shared/testing/test-module.js | 37 + src/app/shared/testing/test-module.js.map | 1 + src/app/shared/testing/utils.js | 48 + src/app/shared/testing/utils.js.map | 1 + .../truncatable-part.component.js | 81 + .../truncatable-part.component.js.map | 1 + .../shared/truncatable/truncatable.actions.js | 68 + .../truncatable/truncatable.actions.js.map | 1 + .../truncatable/truncatable.component.js | 76 + .../truncatable/truncatable.component.js.map | 1 + .../shared/truncatable/truncatable.reducer.js | 42 + .../truncatable/truncatable.reducer.js.map | 1 + .../shared/truncatable/truncatable.service.js | 71 + .../truncatable/truncatable.service.js.map | 1 + .../shared/uploader/uploader-options.model.js | 8 + .../uploader/uploader-options.model.js.map | 1 + src/app/shared/uploader/uploader.component.js | 169 ++ .../shared/uploader/uploader.component.js.map | 1 + src/app/shared/uploader/uploader.service.js | 22 + .../shared/uploader/uploader.service.js.map | 1 + src/app/shared/utils/auto-focus.directive.js | 37 + .../shared/utils/auto-focus.directive.js.map | 1 + src/app/shared/utils/capitalize.pipe.js | 30 + src/app/shared/utils/capitalize.pipe.js.map | 1 + .../shared/utils/click-outside.directive.js | 42 + .../utils/click-outside.directive.js.map | 1 + src/app/shared/utils/console.pipe.js | 18 + src/app/shared/utils/console.pipe.js.map | 1 + src/app/shared/utils/debounce.directive.js | 64 + .../shared/utils/debounce.directive.js.map | 1 + src/app/shared/utils/drag-click.directive.js | 57 + .../shared/utils/drag-click.directive.js.map | 1 + src/app/shared/utils/emphasize.pipe.js | 62 + src/app/shared/utils/emphasize.pipe.js.map | 1 + src/app/shared/utils/encode-decode.util.js | 11 + .../shared/utils/encode-decode.util.js.map | 1 + src/app/shared/utils/enum-keys-pipe.js | 34 + src/app/shared/utils/enum-keys-pipe.js.map | 1 + src/app/shared/utils/file-size-pipe.js | 46 + src/app/shared/utils/file-size-pipe.js.map | 1 + .../utils/in-list-validator.directive.js | 36 + .../utils/in-list-validator.directive.js.map | 1 + src/app/shared/utils/object-keys-pipe.js | 27 + src/app/shared/utils/object-keys-pipe.js.map | 1 + src/app/shared/utils/object-ngfor.pipe.js | 26 + src/app/shared/utils/object-ngfor.pipe.js.map | 1 + src/app/shared/utils/object-values-pipe.js | 27 + .../shared/utils/object-values-pipe.js.map | 1 + src/app/shared/utils/safe-url-pipe.js | 22 + src/app/shared/utils/safe-url-pipe.js.map | 1 + src/app/shared/utils/truncate.pipe.js | 31 + src/app/shared/utils/truncate.pipe.js.map | 1 + src/app/shared/utils/validator.functions.js | 16 + .../shared/utils/validator.functions.js.map | 1 + src/app/shared/utils/var.directive.js | 37 + src/app/shared/utils/var.directive.js.map | 1 + .../view-mode-switch.component.js | 72 + .../view-mode-switch.component.js.map | 1 + src/app/shared/view-mode.js | 12 + src/app/shared/view-mode.js.map | 1 + src/app/store.actions.js | 15 + src/app/store.actions.js.map | 1 + src/app/store.effects.js | 37 + src/app/store.effects.js.map | 1 + .../edit/submission-edit.component.js | 91 + .../edit/submission-edit.component.js.map | 1 + .../submission-form-collection.component.js | 206 +++ ...ubmission-form-collection.component.js.map | 1 + .../submission-form-footer.component.js | 88 + .../submission-form-footer.component.js.map | 1 + .../submission-form-section-add.component.js | 57 + ...bmission-form-section-add.component.js.map | 1 + .../form/submission-form.component.js | 158 ++ .../form/submission-form.component.js.map | 1 + .../submission-upload-files.component.js | 155 ++ .../submission-upload-files.component.js.map | 1 + .../objects/submission-objects.actions.js | 588 ++++++ .../objects/submission-objects.actions.js.map | 1 + .../objects/submission-objects.effects.js | 273 +++ .../objects/submission-objects.effects.js.map | 1 + .../objects/submission-objects.reducer.js | 617 +++++++ .../objects/submission-objects.reducer.js.map | 1 + .../container/section-container.component.js | 81 + .../section-container.component.js.map | 1 + .../form/section-form-operations.service.js | 372 ++++ .../section-form-operations.service.js.map | 1 + .../sections/form/section-form.component.js | 319 ++++ .../form/section-form.component.js.map | 1 + .../license/section-license.component.js | 180 ++ .../license/section-license.component.js.map | 1 + .../sections/license/section-license.model.js | 26 + .../license/section-license.model.js.map | 1 + .../sections/models/section-data.model.js | 1 + .../sections/models/section-data.model.js.map | 1 + .../sections/models/section.model.js | 59 + .../sections/models/section.model.js.map | 1 + .../submission/sections/sections-decorator.js | 13 + .../sections/sections-decorator.js.map | 1 + src/app/submission/sections/sections-type.js | 9 + .../submission/sections/sections-type.js.map | 1 + .../submission/sections/sections.directive.js | 255 +++ .../sections/sections.directive.js.map | 1 + .../submission/sections/sections.service.js | 309 ++++ .../sections/sections.service.js.map | 1 + ...tion-upload-access-conditions.component.js | 57 + ...-upload-access-conditions.component.js.map | 1 + .../section-upload-file-edit.component.js | 287 +++ .../section-upload-file-edit.component.js.map | 1 + .../edit/section-upload-file-edit.model.js | 125 ++ .../section-upload-file-edit.model.js.map | 1 + .../file/section-upload-file.component.js | 260 +++ .../file/section-upload-file.component.js.map | 1 + .../section-upload-file-view.component.js | 60 + .../section-upload-file-view.component.js.map | 1 + .../upload/section-upload.component.js | 207 +++ .../upload/section-upload.component.js.map | 1 + .../sections/upload/section-upload.service.js | 119 ++ .../upload/section-upload.service.js.map | 1 + src/app/submission/selectors.js | 57 + src/app/submission/selectors.js.map | 1 + .../submission/server-submission.service.js | 52 + .../server-submission.service.js.map | 1 + src/app/submission/submission.effects.js | 5 + src/app/submission/submission.effects.js.map | 1 + src/app/submission/submission.module.js | 88 + src/app/submission/submission.module.js.map | 1 + src/app/submission/submission.reducers.js | 7 + src/app/submission/submission.reducers.js.map | 1 + src/app/submission/submission.service.js | 448 +++++ src/app/submission/submission.service.js.map | 1 + .../submit/submission-submit.component.js | 85 + .../submit/submission-submit.component.js.map | 1 + .../utils/parseSectionErrorPaths.js | 30 + .../utils/parseSectionErrorPaths.js.map | 1 + .../submission/utils/parseSectionErrors.js | 23 + .../utils/parseSectionErrors.js.map | 1 + src/app/thumbnail/thumbnail.component.js | 46 + src/app/thumbnail/thumbnail.component.js.map | 1 + src/backend/api.js | 169 ++ src/backend/api.js.map | 1 + src/backend/cache.js | 16 + src/backend/cache.js.map | 1 + src/backend/db.js | 8 + src/backend/db.js.map | 1 + src/config.js.map | 1 + src/config/auto-sync-config.interface.js | 1 + src/config/auto-sync-config.interface.js.map | 1 + src/config/browse-by-config.interface.js | 1 + src/config/browse-by-config.interface.js.map | 1 + src/config/cache-config.interface.js | 1 + src/config/cache-config.interface.js.map | 1 + src/config/config.interface.js | 1 + src/config/config.interface.js.map | 1 + src/config/form-config.interfaces.js | 1 + src/config/form-config.interfaces.js.map | 1 + src/config/global-config.interface.js | 1 + src/config/global-config.interface.js.map | 1 + src/config/item-page-config.interface.js | 1 + src/config/item-page-config.interface.js.map | 1 + src/config/lang-config.interface.js | 1 + src/config/lang-config.interface.js.map | 1 + src/config/notifications-config.interfaces.js | 1 + .../notifications-config.interfaces.js.map | 1 + src/config/server-config.interface.js | 1 + src/config/server-config.interface.js.map | 1 + src/config/submission-config.interface.js | 1 + src/config/submission-config.interface.js.map | 1 + src/config/universal-config.interface.js | 1 + src/config/universal-config.interface.js.map | 1 + src/main.browser.js | 41 + src/main.browser.js.map | 1 + src/main.server.js | 4 + src/main.server.js.map | 1 + src/modules/app/browser-app.module.js | 85 + src/modules/app/browser-app.module.js.map | 1 + src/modules/app/server-app.module.js | 75 + src/modules/app/server-app.module.js.map | 1 + .../dspace-browser-transfer-state.module.js | 22 + ...space-browser-transfer-state.module.js.map | 1 + .../dspace-browser-transfer-state.service.js | 21 + ...pace-browser-transfer-state.service.js.map | 1 + .../dspace-server-transfer-state.module.js | 22 + ...dspace-server-transfer-state.module.js.map | 1 + .../dspace-server-transfer-state.service.js | 26 + ...space-server-transfer-state.service.js.map | 1 + .../dspace-transfer-state.service.js | 19 + .../dspace-transfer-state.service.js.map | 1 + src/modules/translate-universal-loader.js | 20 + src/modules/translate-universal-loader.js.map | 1 + src/routes.js | 16 + src/routes.js.map | 1 + src/server.js | 129 ++ src/server.js.map | 1 + 1580 files changed, 51145 insertions(+) create mode 100644 e2e/app.e2e-spec.js create mode 100644 e2e/app.e2e-spec.js.map create mode 100644 e2e/app.po.js create mode 100644 e2e/app.po.js.map create mode 100644 e2e/pagenotfound/pagenotfound.e2e-spec.js create mode 100644 e2e/pagenotfound/pagenotfound.e2e-spec.js.map create mode 100644 e2e/pagenotfound/pagenotfound.po.js create mode 100644 e2e/pagenotfound/pagenotfound.po.js.map create mode 100644 e2e/search-page/search-page.e2e-spec.js create mode 100644 e2e/search-page/search-page.e2e-spec.js.map create mode 100644 e2e/search-page/search-page.po.js create mode 100644 e2e/search-page/search-page.po.js.map create mode 100644 src/app/+admin/admin-registries/admin-registries-routing.module.js create mode 100644 src/app/+admin/admin-registries/admin-registries-routing.module.js.map create mode 100644 src/app/+admin/admin-registries/admin-registries.module.js create mode 100644 src/app/+admin/admin-registries/admin-registries.module.js.map create mode 100644 src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js create mode 100644 src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js.map create mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js create mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js.map create mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js create mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js.map create mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js create mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js.map create mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js create mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js.map create mode 100644 src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js create mode 100644 src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js.map create mode 100644 src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js create mode 100644 src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js.map create mode 100644 src/app/+admin/admin-routing.module.js create mode 100644 src/app/+admin/admin-routing.module.js.map create mode 100644 src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js create mode 100644 src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js.map create mode 100644 src/app/+admin/admin-sidebar/admin-sidebar.component.js create mode 100644 src/app/+admin/admin-sidebar/admin-sidebar.component.js.map create mode 100644 src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js create mode 100644 src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js.map create mode 100644 src/app/+admin/admin.module.js create mode 100644 src/app/+admin/admin.module.js.map create mode 100644 src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js create mode 100644 src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js.map create mode 100644 src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js create mode 100644 src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js.map create mode 100644 src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js create mode 100644 src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js.map create mode 100644 src/app/+browse-by/browse-by-guard.js create mode 100644 src/app/+browse-by/browse-by-guard.js.map create mode 100644 src/app/+browse-by/browse-by-routing.module.js create mode 100644 src/app/+browse-by/browse-by-routing.module.js.map create mode 100644 src/app/+browse-by/browse-by.module.js create mode 100644 src/app/+browse-by/browse-by.module.js.map create mode 100644 src/app/+collection-page/collection-form/collection-form.component.js create mode 100644 src/app/+collection-page/collection-form/collection-form.component.js.map create mode 100644 src/app/+collection-page/collection-page-routing.module.js create mode 100644 src/app/+collection-page/collection-page-routing.module.js.map create mode 100644 src/app/+collection-page/collection-page.component.js create mode 100644 src/app/+collection-page/collection-page.component.js.map create mode 100644 src/app/+collection-page/collection-page.module.js create mode 100644 src/app/+collection-page/collection-page.module.js.map create mode 100644 src/app/+collection-page/collection-page.resolver.js create mode 100644 src/app/+collection-page/collection-page.resolver.js.map create mode 100644 src/app/+collection-page/create-collection-page/create-collection-page.component.js create mode 100644 src/app/+collection-page/create-collection-page/create-collection-page.component.js.map create mode 100644 src/app/+collection-page/create-collection-page/create-collection-page.guard.js create mode 100644 src/app/+collection-page/create-collection-page/create-collection-page.guard.js.map create mode 100644 src/app/+collection-page/delete-collection-page/delete-collection-page.component.js create mode 100644 src/app/+collection-page/delete-collection-page/delete-collection-page.component.js.map create mode 100644 src/app/+collection-page/edit-collection-page/edit-collection-page.component.js create mode 100644 src/app/+collection-page/edit-collection-page/edit-collection-page.component.js.map create mode 100644 src/app/+community-page/community-form/community-form.component.js create mode 100644 src/app/+community-page/community-form/community-form.component.js.map create mode 100644 src/app/+community-page/community-page-routing.module.js create mode 100644 src/app/+community-page/community-page-routing.module.js.map create mode 100644 src/app/+community-page/community-page.component.js create mode 100644 src/app/+community-page/community-page.component.js.map create mode 100644 src/app/+community-page/community-page.module.js create mode 100644 src/app/+community-page/community-page.module.js.map create mode 100644 src/app/+community-page/community-page.resolver.js create mode 100644 src/app/+community-page/community-page.resolver.js.map create mode 100644 src/app/+community-page/create-community-page/create-community-page.component.js create mode 100644 src/app/+community-page/create-community-page/create-community-page.component.js.map create mode 100644 src/app/+community-page/create-community-page/create-community-page.guard.js create mode 100644 src/app/+community-page/create-community-page/create-community-page.guard.js.map create mode 100644 src/app/+community-page/delete-community-page/delete-community-page.component.js create mode 100644 src/app/+community-page/delete-community-page/delete-community-page.component.js.map create mode 100644 src/app/+community-page/edit-community-page/edit-community-page.component.js create mode 100644 src/app/+community-page/edit-community-page/edit-community-page.component.js.map create mode 100644 src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js create mode 100644 src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js.map create mode 100644 src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js create mode 100644 src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js.map create mode 100644 src/app/+home-page/home-news/home-news.component.js create mode 100644 src/app/+home-page/home-news/home-news.component.js.map create mode 100644 src/app/+home-page/home-page-routing.module.js create mode 100644 src/app/+home-page/home-page-routing.module.js.map create mode 100644 src/app/+home-page/home-page.component.js create mode 100644 src/app/+home-page/home-page.component.js.map create mode 100644 src/app/+home-page/home-page.module.js create mode 100644 src/app/+home-page/home-page.module.js.map create mode 100644 src/app/+home-page/top-level-community-list/top-level-community-list.component.js create mode 100644 src/app/+home-page/top-level-community-list/top-level-community-list.component.js.map create mode 100644 src/app/+item-page/edit-item-page/edit-item-operators.js create mode 100644 src/app/+item-page/edit-item-page/edit-item-operators.js.map create mode 100644 src/app/+item-page/edit-item-page/edit-item-page.component.js create mode 100644 src/app/+item-page/edit-item-page/edit-item-page.component.js.map create mode 100644 src/app/+item-page/edit-item-page/edit-item-page.module.js create mode 100644 src/app/+item-page/edit-item-page/edit-item-page.module.js.map create mode 100644 src/app/+item-page/edit-item-page/edit-item-page.routing.module.js create mode 100644 src/app/+item-page/edit-item-page/edit-item-page.routing.module.js.map create mode 100644 src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js create mode 100644 src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-delete/item-delete.component.js create mode 100644 src/app/+item-page/edit-item-page/item-delete/item-delete.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js create mode 100644 src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js create mode 100644 src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-operation/item-operation.component.js create mode 100644 src/app/+item-page/edit-item-page/item-operation/item-operation.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js create mode 100644 src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js.map create mode 100644 src/app/+item-page/edit-item-page/item-private/item-private.component.js create mode 100644 src/app/+item-page/edit-item-page/item-private/item-private.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-public/item-public.component.js create mode 100644 src/app/+item-page/edit-item-page/item-public/item-public.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js create mode 100644 src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-status/item-status.component.js create mode 100644 src/app/+item-page/edit-item-page/item-status/item-status.component.js.map create mode 100644 src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js create mode 100644 src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js.map create mode 100644 src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js create mode 100644 src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js.map create mode 100644 src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js create mode 100644 src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js.map create mode 100644 src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js create mode 100644 src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js.map create mode 100644 src/app/+item-page/field-components/collections/collections.component.js create mode 100644 src/app/+item-page/field-components/collections/collections.component.js.map create mode 100644 src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js create mode 100644 src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js.map create mode 100644 src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js create mode 100644 src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js.map create mode 100644 src/app/+item-page/field-components/metadata-values/metadata-values.component.js create mode 100644 src/app/+item-page/field-components/metadata-values/metadata-values.component.js.map create mode 100644 src/app/+item-page/full/field-components/file-section/full-file-section.component.js create mode 100644 src/app/+item-page/full/field-components/file-section/full-file-section.component.js.map create mode 100644 src/app/+item-page/full/full-item-page.component.js create mode 100644 src/app/+item-page/full/full-item-page.component.js.map create mode 100644 src/app/+item-page/item-page-routing.module.js create mode 100644 src/app/+item-page/item-page-routing.module.js.map create mode 100644 src/app/+item-page/item-page.module.js create mode 100644 src/app/+item-page/item-page.module.js.map create mode 100644 src/app/+item-page/item-page.resolver.js create mode 100644 src/app/+item-page/item-page.resolver.js.map create mode 100644 src/app/+item-page/simple/field-components/file-section/file-section.component.js create mode 100644 src/app/+item-page/simple/field-components/file-section/file-section.component.js.map create mode 100644 src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js create mode 100644 src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js.map create mode 100644 src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js create mode 100644 src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js.map create mode 100644 src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js create mode 100644 src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js.map create mode 100644 src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js create mode 100644 src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js.map create mode 100644 src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js create mode 100644 src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js.map create mode 100644 src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js create mode 100644 src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js.map create mode 100644 src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js create mode 100644 src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js.map create mode 100644 src/app/+item-page/simple/item-page.component.js create mode 100644 src/app/+item-page/simple/item-page.component.js.map create mode 100644 src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js create mode 100644 src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js.map create mode 100644 src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js create mode 100644 src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js.map create mode 100644 src/app/+item-page/simple/item-types/journal/journal.component.js create mode 100644 src/app/+item-page/simple/item-types/journal/journal.component.js.map create mode 100644 src/app/+item-page/simple/item-types/orgunit/orgunit.component.js create mode 100644 src/app/+item-page/simple/item-types/orgunit/orgunit.component.js.map create mode 100644 src/app/+item-page/simple/item-types/person/person.component.js create mode 100644 src/app/+item-page/simple/item-types/person/person.component.js.map create mode 100644 src/app/+item-page/simple/item-types/project/project.component.js create mode 100644 src/app/+item-page/simple/item-types/project/project.component.js.map create mode 100644 src/app/+item-page/simple/item-types/publication/publication.component.js create mode 100644 src/app/+item-page/simple/item-types/publication/publication.component.js.map create mode 100644 src/app/+item-page/simple/item-types/shared/item-relationships-utils.js create mode 100644 src/app/+item-page/simple/item-types/shared/item-relationships-utils.js.map create mode 100644 src/app/+item-page/simple/item-types/shared/item.component.js create mode 100644 src/app/+item-page/simple/item-types/shared/item.component.js.map create mode 100644 src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js create mode 100644 src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js.map create mode 100644 src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js create mode 100644 src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js.map create mode 100644 src/app/+item-page/simple/related-items/related-items-component.js create mode 100644 src/app/+item-page/simple/related-items/related-items-component.js.map create mode 100644 src/app/+login-page/login-page-routing.module.js create mode 100644 src/app/+login-page/login-page-routing.module.js.map create mode 100644 src/app/+login-page/login-page.component.js create mode 100644 src/app/+login-page/login-page.component.js.map create mode 100644 src/app/+login-page/login-page.module.js create mode 100644 src/app/+login-page/login-page.module.js.map create mode 100644 src/app/+logout-page/logout-page-routing.module.js create mode 100644 src/app/+logout-page/logout-page-routing.module.js.map create mode 100644 src/app/+logout-page/logout-page.component.js create mode 100644 src/app/+logout-page/logout-page.component.js.map create mode 100644 src/app/+logout-page/logout-page.module.js create mode 100644 src/app/+logout-page/logout-page.module.js.map create mode 100644 src/app/+my-dspace-page/my-dspace-configuration-value-type.js create mode 100644 src/app/+my-dspace-page/my-dspace-configuration-value-type.js.map create mode 100644 src/app/+my-dspace-page/my-dspace-configuration.service.js create mode 100644 src/app/+my-dspace-page/my-dspace-configuration.service.js.map create mode 100644 src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js create mode 100644 src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js.map create mode 100644 src/app/+my-dspace-page/my-dspace-page-routing.module.js create mode 100644 src/app/+my-dspace-page/my-dspace-page-routing.module.js.map create mode 100644 src/app/+my-dspace-page/my-dspace-page.component.js create mode 100644 src/app/+my-dspace-page/my-dspace-page.component.js.map create mode 100644 src/app/+my-dspace-page/my-dspace-page.module.js create mode 100644 src/app/+my-dspace-page/my-dspace-page.module.js.map create mode 100644 src/app/+my-dspace-page/my-dspace-result.model.js create mode 100644 src/app/+my-dspace-page/my-dspace-result.model.js.map create mode 100644 src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js create mode 100644 src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js.map create mode 100644 src/app/+my-dspace-page/my-dspace.guard.js create mode 100644 src/app/+my-dspace-page/my-dspace.guard.js.map create mode 100644 src/app/+search-page/filtered-search-page.component.js create mode 100644 src/app/+search-page/filtered-search-page.component.js.map create mode 100644 src/app/+search-page/filtered-search-page.guard.js create mode 100644 src/app/+search-page/filtered-search-page.guard.js.map create mode 100644 src/app/+search-page/normalized-search-result.model.js create mode 100644 src/app/+search-page/normalized-search-result.model.js.map create mode 100644 src/app/+search-page/paginated-search-options.model.js create mode 100644 src/app/+search-page/paginated-search-options.model.js.map create mode 100644 src/app/+search-page/search-filter.model.js create mode 100644 src/app/+search-page/search-filter.model.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.actions.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.actions.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.reducer.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.reducer.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.service.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.service.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js create mode 100644 src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js.map create mode 100644 src/app/+search-page/search-filters/search-filters.component.js create mode 100644 src/app/+search-page/search-filters/search-filters.component.js.map create mode 100644 src/app/+search-page/search-labels/search-labels.component.js create mode 100644 src/app/+search-page/search-labels/search-labels.component.js.map create mode 100644 src/app/+search-page/search-options.model.js create mode 100644 src/app/+search-page/search-options.model.js.map create mode 100644 src/app/+search-page/search-page-routing.module.js create mode 100644 src/app/+search-page/search-page-routing.module.js.map create mode 100644 src/app/+search-page/search-page.component.js create mode 100644 src/app/+search-page/search-page.component.js.map create mode 100644 src/app/+search-page/search-page.module.js create mode 100644 src/app/+search-page/search-page.module.js.map create mode 100644 src/app/+search-page/search-result.model.js create mode 100644 src/app/+search-page/search-result.model.js.map create mode 100644 src/app/+search-page/search-results/search-results.component.js create mode 100644 src/app/+search-page/search-results/search-results.component.js.map create mode 100644 src/app/+search-page/search-service/facet-value.model.js create mode 100644 src/app/+search-page/search-service/facet-value.model.js.map create mode 100644 src/app/+search-page/search-service/filter-type.model.js create mode 100644 src/app/+search-page/search-service/filter-type.model.js.map create mode 100644 src/app/+search-page/search-service/search-configuration.service.js create mode 100644 src/app/+search-page/search-service/search-configuration.service.js.map create mode 100644 src/app/+search-page/search-service/search-filter-config.model.js create mode 100644 src/app/+search-page/search-service/search-filter-config.model.js.map create mode 100644 src/app/+search-page/search-service/search-query-response.model.js create mode 100644 src/app/+search-page/search-service/search-query-response.model.js.map create mode 100644 src/app/+search-page/search-service/search-result-element-decorator.js create mode 100644 src/app/+search-page/search-service/search-result-element-decorator.js.map create mode 100644 src/app/+search-page/search-service/search.service.js create mode 100644 src/app/+search-page/search-service/search.service.js.map create mode 100644 src/app/+search-page/search-settings/search-settings.component.js create mode 100644 src/app/+search-page/search-settings/search-settings.component.js.map create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.actions.js create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.actions.js.map create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.component.js create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.component.js.map create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.effects.js create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.effects.js.map create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.reducer.js create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.reducer.js.map create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.service.js create mode 100644 src/app/+search-page/search-sidebar/search-sidebar.service.js.map create mode 100644 src/app/+search-page/search-switch-configuration/search-configuration-option.model.js create mode 100644 src/app/+search-page/search-switch-configuration/search-configuration-option.model.js.map create mode 100644 src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js create mode 100644 src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js.map create mode 100644 src/app/+submit-page/submit-page-routing.module.js create mode 100644 src/app/+submit-page/submit-page-routing.module.js.map create mode 100644 src/app/+submit-page/submit-page.module.js create mode 100644 src/app/+submit-page/submit-page.module.js.map create mode 100644 src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js create mode 100644 src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js.map create mode 100644 src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js create mode 100644 src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js.map create mode 100644 src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js create mode 100644 src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js.map create mode 100644 src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js create mode 100644 src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js.map create mode 100644 src/app/app-routing.module.js create mode 100644 src/app/app-routing.module.js.map create mode 100644 src/app/app.component.js create mode 100644 src/app/app.component.js.map create mode 100644 src/app/app.effects.js create mode 100644 src/app/app.effects.js.map create mode 100644 src/app/app.metareducers.js create mode 100644 src/app/app.metareducers.js.map create mode 100644 src/app/app.module.js create mode 100644 src/app/app.module.js.map create mode 100644 src/app/app.reducer.js create mode 100644 src/app/app.reducer.js.map create mode 100644 src/app/core/auth/auth-object-factory.js create mode 100644 src/app/core/auth/auth-object-factory.js.map create mode 100644 src/app/core/auth/auth-request.service.js create mode 100644 src/app/core/auth/auth-request.service.js.map create mode 100644 src/app/core/auth/auth-response-parsing.service.js create mode 100644 src/app/core/auth/auth-response-parsing.service.js.map create mode 100644 src/app/core/auth/auth-type.js create mode 100644 src/app/core/auth/auth-type.js.map create mode 100644 src/app/core/auth/auth.actions.js create mode 100644 src/app/core/auth/auth.actions.js.map create mode 100644 src/app/core/auth/auth.effects.js create mode 100644 src/app/core/auth/auth.effects.js.map create mode 100644 src/app/core/auth/auth.interceptor.js create mode 100644 src/app/core/auth/auth.interceptor.js.map create mode 100644 src/app/core/auth/auth.reducer.js create mode 100644 src/app/core/auth/auth.reducer.js.map create mode 100644 src/app/core/auth/auth.service.js create mode 100644 src/app/core/auth/auth.service.js.map create mode 100644 src/app/core/auth/authenticated.guard.js create mode 100644 src/app/core/auth/authenticated.guard.js.map create mode 100644 src/app/core/auth/models/auth-error.model.js create mode 100644 src/app/core/auth/models/auth-error.model.js.map create mode 100644 src/app/core/auth/models/auth-status.model.js create mode 100644 src/app/core/auth/models/auth-status.model.js.map create mode 100644 src/app/core/auth/models/auth-token-info.model.js create mode 100644 src/app/core/auth/models/auth-token-info.model.js.map create mode 100644 src/app/core/auth/models/normalized-auth-status.model.js create mode 100644 src/app/core/auth/models/normalized-auth-status.model.js.map create mode 100644 src/app/core/auth/selectors.js create mode 100644 src/app/core/auth/selectors.js.map create mode 100644 src/app/core/auth/server-auth.service.js create mode 100644 src/app/core/auth/server-auth.service.js.map create mode 100644 src/app/core/browse/browse-entry-search-options.model.js create mode 100644 src/app/core/browse/browse-entry-search-options.model.js.map create mode 100644 src/app/core/browse/browse.service.js create mode 100644 src/app/core/browse/browse.service.js.map create mode 100644 src/app/core/cache/builders/build-decorators.js create mode 100644 src/app/core/cache/builders/build-decorators.js.map create mode 100644 src/app/core/cache/builders/normalized-object-build.service.js create mode 100644 src/app/core/cache/builders/normalized-object-build.service.js.map create mode 100644 src/app/core/cache/builders/remote-data-build.service.js create mode 100644 src/app/core/cache/builders/remote-data-build.service.js.map create mode 100644 src/app/core/cache/cache-entry.js create mode 100644 src/app/core/cache/cache-entry.js.map create mode 100644 src/app/core/cache/id-to-uuid-serializer.js create mode 100644 src/app/core/cache/id-to-uuid-serializer.js.map create mode 100644 src/app/core/cache/models/action-type.model.js create mode 100644 src/app/core/cache/models/action-type.model.js.map create mode 100644 src/app/core/cache/models/items/normalized-item-type.model.js create mode 100644 src/app/core/cache/models/items/normalized-item-type.model.js.map create mode 100644 src/app/core/cache/models/items/normalized-relationship-type.model.js create mode 100644 src/app/core/cache/models/items/normalized-relationship-type.model.js.map create mode 100644 src/app/core/cache/models/items/normalized-relationship.model.js create mode 100644 src/app/core/cache/models/items/normalized-relationship.model.js.map create mode 100644 src/app/core/cache/models/normalized-bitstream-format.model.js create mode 100644 src/app/core/cache/models/normalized-bitstream-format.model.js.map create mode 100644 src/app/core/cache/models/normalized-bitstream.model.js create mode 100644 src/app/core/cache/models/normalized-bitstream.model.js.map create mode 100644 src/app/core/cache/models/normalized-bundle.model.js create mode 100644 src/app/core/cache/models/normalized-bundle.model.js.map create mode 100644 src/app/core/cache/models/normalized-collection.model.js create mode 100644 src/app/core/cache/models/normalized-collection.model.js.map create mode 100644 src/app/core/cache/models/normalized-community.model.js create mode 100644 src/app/core/cache/models/normalized-community.model.js.map create mode 100644 src/app/core/cache/models/normalized-dspace-object.model.js create mode 100644 src/app/core/cache/models/normalized-dspace-object.model.js.map create mode 100644 src/app/core/cache/models/normalized-item.model.js create mode 100644 src/app/core/cache/models/normalized-item.model.js.map create mode 100644 src/app/core/cache/models/normalized-license.model.js create mode 100644 src/app/core/cache/models/normalized-license.model.js.map create mode 100644 src/app/core/cache/models/normalized-object-factory.js create mode 100644 src/app/core/cache/models/normalized-object-factory.js.map create mode 100644 src/app/core/cache/models/normalized-object.model.js create mode 100644 src/app/core/cache/models/normalized-object.model.js.map create mode 100644 src/app/core/cache/models/normalized-resource-policy.model.js create mode 100644 src/app/core/cache/models/normalized-resource-policy.model.js.map create mode 100644 src/app/core/cache/models/search-param.model.js create mode 100644 src/app/core/cache/models/search-param.model.js.map create mode 100644 src/app/core/cache/models/self-link.model.js create mode 100644 src/app/core/cache/models/self-link.model.js.map create mode 100644 src/app/core/cache/models/sort-options.model.js create mode 100644 src/app/core/cache/models/sort-options.model.js.map create mode 100644 src/app/core/cache/models/support-level.model.js create mode 100644 src/app/core/cache/models/support-level.model.js.map create mode 100644 src/app/core/cache/object-cache.actions.js create mode 100644 src/app/core/cache/object-cache.actions.js.map create mode 100644 src/app/core/cache/object-cache.effects.js create mode 100644 src/app/core/cache/object-cache.effects.js.map create mode 100644 src/app/core/cache/object-cache.reducer.js create mode 100644 src/app/core/cache/object-cache.reducer.js.map create mode 100644 src/app/core/cache/object-cache.service.js create mode 100644 src/app/core/cache/object-cache.service.js.map create mode 100644 src/app/core/cache/response.models.js create mode 100644 src/app/core/cache/response.models.js.map create mode 100644 src/app/core/cache/server-sync-buffer.actions.js create mode 100644 src/app/core/cache/server-sync-buffer.actions.js.map create mode 100644 src/app/core/cache/server-sync-buffer.effects.js create mode 100644 src/app/core/cache/server-sync-buffer.effects.js.map create mode 100644 src/app/core/cache/server-sync-buffer.reducer.js create mode 100644 src/app/core/cache/server-sync-buffer.reducer.js.map create mode 100644 src/app/core/config/config-data.js create mode 100644 src/app/core/config/config-data.js.map create mode 100644 src/app/core/config/config-response-parsing.service.js create mode 100644 src/app/core/config/config-response-parsing.service.js.map create mode 100644 src/app/core/config/config.service.js create mode 100644 src/app/core/config/config.service.js.map create mode 100644 src/app/core/config/models/config-access-condition-option.model.js create mode 100644 src/app/core/config/models/config-access-condition-option.model.js.map create mode 100644 src/app/core/config/models/config-object-factory.js create mode 100644 src/app/core/config/models/config-object-factory.js.map create mode 100644 src/app/core/config/models/config-submission-definitions.model.js create mode 100644 src/app/core/config/models/config-submission-definitions.model.js.map create mode 100644 src/app/core/config/models/config-submission-forms.model.js create mode 100644 src/app/core/config/models/config-submission-forms.model.js.map create mode 100644 src/app/core/config/models/config-submission-section.model.js create mode 100644 src/app/core/config/models/config-submission-section.model.js.map create mode 100644 src/app/core/config/models/config-submission-uploads.model.js create mode 100644 src/app/core/config/models/config-submission-uploads.model.js.map create mode 100644 src/app/core/config/models/config-type.js create mode 100644 src/app/core/config/models/config-type.js.map create mode 100644 src/app/core/config/models/config.model.js create mode 100644 src/app/core/config/models/config.model.js.map create mode 100644 src/app/core/config/models/normalized-config-submission-definitions.model.js create mode 100644 src/app/core/config/models/normalized-config-submission-definitions.model.js.map create mode 100644 src/app/core/config/models/normalized-config-submission-forms.model.js create mode 100644 src/app/core/config/models/normalized-config-submission-forms.model.js.map create mode 100644 src/app/core/config/models/normalized-config-submission-section.model.js create mode 100644 src/app/core/config/models/normalized-config-submission-section.model.js.map create mode 100644 src/app/core/config/models/normalized-config-submission-uploads.model.js create mode 100644 src/app/core/config/models/normalized-config-submission-uploads.model.js.map create mode 100644 src/app/core/config/models/normalized-config.model.js create mode 100644 src/app/core/config/models/normalized-config.model.js.map create mode 100644 src/app/core/config/submission-definitions-config.service.js create mode 100644 src/app/core/config/submission-definitions-config.service.js.map create mode 100644 src/app/core/config/submission-forms-config.service.js create mode 100644 src/app/core/config/submission-forms-config.service.js.map create mode 100644 src/app/core/config/submission-sections-config.service.js create mode 100644 src/app/core/config/submission-sections-config.service.js.map create mode 100644 src/app/core/config/submission-uploads-config.service.js create mode 100644 src/app/core/config/submission-uploads-config.service.js.map create mode 100644 src/app/core/core.effects.js create mode 100644 src/app/core/core.effects.js.map create mode 100644 src/app/core/core.module.js create mode 100644 src/app/core/core.module.js.map create mode 100644 src/app/core/core.reducers.js create mode 100644 src/app/core/core.reducers.js.map create mode 100644 src/app/core/core.selectors.js create mode 100644 src/app/core/core.selectors.js.map create mode 100644 src/app/core/data/base-response-parsing.service.js create mode 100644 src/app/core/data/base-response-parsing.service.js.map create mode 100644 src/app/core/data/browse-entries-response-parsing.service.js create mode 100644 src/app/core/data/browse-entries-response-parsing.service.js.map create mode 100644 src/app/core/data/browse-items-response-parsing-service.js create mode 100644 src/app/core/data/browse-items-response-parsing-service.js.map create mode 100644 src/app/core/data/browse-response-parsing.service.js create mode 100644 src/app/core/data/browse-response-parsing.service.js.map create mode 100644 src/app/core/data/change-analyzer.js create mode 100644 src/app/core/data/change-analyzer.js.map create mode 100644 src/app/core/data/collection-data.service.js create mode 100644 src/app/core/data/collection-data.service.js.map create mode 100644 src/app/core/data/comcol-data.service.js create mode 100644 src/app/core/data/comcol-data.service.js.map create mode 100644 src/app/core/data/community-data.service.js create mode 100644 src/app/core/data/community-data.service.js.map create mode 100644 src/app/core/data/data.service.js create mode 100644 src/app/core/data/data.service.js.map create mode 100644 src/app/core/data/debug-response-parsing.service.js create mode 100644 src/app/core/data/debug-response-parsing.service.js.map create mode 100644 src/app/core/data/default-change-analyzer.service.js create mode 100644 src/app/core/data/default-change-analyzer.service.js.map create mode 100644 src/app/core/data/dso-change-analyzer.service.js create mode 100644 src/app/core/data/dso-change-analyzer.service.js.map create mode 100644 src/app/core/data/dso-response-parsing.service.js create mode 100644 src/app/core/data/dso-response-parsing.service.js.map create mode 100644 src/app/core/data/dspace-object-data.service.js create mode 100644 src/app/core/data/dspace-object-data.service.js.map create mode 100644 src/app/core/data/endpoint-map-response-parsing.service.js create mode 100644 src/app/core/data/endpoint-map-response-parsing.service.js.map create mode 100644 src/app/core/data/facet-config-response-parsing.service.js create mode 100644 src/app/core/data/facet-config-response-parsing.service.js.map create mode 100644 src/app/core/data/facet-value-map-response-parsing.service.js create mode 100644 src/app/core/data/facet-value-map-response-parsing.service.js.map create mode 100644 src/app/core/data/facet-value-response-parsing.service.js create mode 100644 src/app/core/data/facet-value-response-parsing.service.js.map create mode 100644 src/app/core/data/filtered-discovery-page-response-parsing.service.js create mode 100644 src/app/core/data/filtered-discovery-page-response-parsing.service.js.map create mode 100644 src/app/core/data/item-data.service.js create mode 100644 src/app/core/data/item-data.service.js.map create mode 100644 src/app/core/data/metadata-schema-data.service.js create mode 100644 src/app/core/data/metadata-schema-data.service.js.map create mode 100644 src/app/core/data/metadatafield-parsing.service.js create mode 100644 src/app/core/data/metadatafield-parsing.service.js.map create mode 100644 src/app/core/data/metadataschema-parsing.service.js create mode 100644 src/app/core/data/metadataschema-parsing.service.js.map create mode 100644 src/app/core/data/mydspace-response-parsing.service.js create mode 100644 src/app/core/data/mydspace-response-parsing.service.js.map create mode 100644 src/app/core/data/object-updates/object-updates.actions.js create mode 100644 src/app/core/data/object-updates/object-updates.actions.js.map create mode 100644 src/app/core/data/object-updates/object-updates.effects.js create mode 100644 src/app/core/data/object-updates/object-updates.effects.js.map create mode 100644 src/app/core/data/object-updates/object-updates.reducer.js create mode 100644 src/app/core/data/object-updates/object-updates.reducer.js.map create mode 100644 src/app/core/data/object-updates/object-updates.service.js create mode 100644 src/app/core/data/object-updates/object-updates.service.js.map create mode 100644 src/app/core/data/paginated-list.js create mode 100644 src/app/core/data/paginated-list.js.map create mode 100644 src/app/core/data/parsing.service.js create mode 100644 src/app/core/data/parsing.service.js.map create mode 100644 src/app/core/data/registry-bitstreamformats-response-parsing.service.js create mode 100644 src/app/core/data/registry-bitstreamformats-response-parsing.service.js.map create mode 100644 src/app/core/data/registry-metadatafields-response-parsing.service.js create mode 100644 src/app/core/data/registry-metadatafields-response-parsing.service.js.map create mode 100644 src/app/core/data/registry-metadataschemas-response-parsing.service.js create mode 100644 src/app/core/data/registry-metadataschemas-response-parsing.service.js.map create mode 100644 src/app/core/data/remote-data-error.js create mode 100644 src/app/core/data/remote-data-error.js.map create mode 100644 src/app/core/data/remote-data.js create mode 100644 src/app/core/data/remote-data.js.map create mode 100644 src/app/core/data/request.actions.js create mode 100644 src/app/core/data/request.actions.js.map create mode 100644 src/app/core/data/request.effects.js create mode 100644 src/app/core/data/request.effects.js.map create mode 100644 src/app/core/data/request.models.js create mode 100644 src/app/core/data/request.models.js.map create mode 100644 src/app/core/data/request.reducer.js create mode 100644 src/app/core/data/request.reducer.js.map create mode 100644 src/app/core/data/request.service.js create mode 100644 src/app/core/data/request.service.js.map create mode 100644 src/app/core/data/rest-request-method.js create mode 100644 src/app/core/data/rest-request-method.js.map create mode 100644 src/app/core/data/search-response-parsing.service.js create mode 100644 src/app/core/data/search-response-parsing.service.js.map create mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js create mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js.map create mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js create mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js.map create mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.service.js create mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.service.js.map create mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js create mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js.map create mode 100644 src/app/core/eperson/eperson-response-parsing.service.js create mode 100644 src/app/core/eperson/eperson-response-parsing.service.js.map create mode 100644 src/app/core/eperson/eperson.service.js create mode 100644 src/app/core/eperson/eperson.service.js.map create mode 100644 src/app/core/eperson/group-eperson.service.js create mode 100644 src/app/core/eperson/group-eperson.service.js.map create mode 100644 src/app/core/eperson/models/eperson.model.js create mode 100644 src/app/core/eperson/models/eperson.model.js.map create mode 100644 src/app/core/eperson/models/group.model.js create mode 100644 src/app/core/eperson/models/group.model.js.map create mode 100644 src/app/core/eperson/models/normalized-eperson.model.js create mode 100644 src/app/core/eperson/models/normalized-eperson.model.js.map create mode 100644 src/app/core/eperson/models/normalized-group.model.js create mode 100644 src/app/core/eperson/models/normalized-group.model.js.map create mode 100644 src/app/core/index/index.actions.js create mode 100644 src/app/core/index/index.actions.js.map create mode 100644 src/app/core/index/index.effects.js create mode 100644 src/app/core/index/index.effects.js.map create mode 100644 src/app/core/index/index.reducer.js create mode 100644 src/app/core/index/index.reducer.js.map create mode 100644 src/app/core/index/index.selectors.js create mode 100644 src/app/core/index/index.selectors.js.map create mode 100644 src/app/core/integration/authority.service.js create mode 100644 src/app/core/integration/authority.service.js.map create mode 100644 src/app/core/integration/integration-data.js create mode 100644 src/app/core/integration/integration-data.js.map create mode 100644 src/app/core/integration/integration-object-factory.js create mode 100644 src/app/core/integration/integration-object-factory.js.map create mode 100644 src/app/core/integration/integration-response-parsing.service.js create mode 100644 src/app/core/integration/integration-response-parsing.service.js.map create mode 100644 src/app/core/integration/integration.service.js create mode 100644 src/app/core/integration/integration.service.js.map create mode 100644 src/app/core/integration/intergration-type.js create mode 100644 src/app/core/integration/intergration-type.js.map create mode 100644 src/app/core/integration/models/authority-options.model.js create mode 100644 src/app/core/integration/models/authority-options.model.js.map create mode 100644 src/app/core/integration/models/authority.value.js create mode 100644 src/app/core/integration/models/authority.value.js.map create mode 100644 src/app/core/integration/models/confidence-type.js create mode 100644 src/app/core/integration/models/confidence-type.js.map create mode 100644 src/app/core/integration/models/integration-options.model.js create mode 100644 src/app/core/integration/models/integration-options.model.js.map create mode 100644 src/app/core/integration/models/integration.model.js create mode 100644 src/app/core/integration/models/integration.model.js.map create mode 100644 src/app/core/integration/models/normalized-authority-value.model.js create mode 100644 src/app/core/integration/models/normalized-authority-value.model.js.map create mode 100644 src/app/core/json-patch/builder/json-patch-operation-path-combiner.js create mode 100644 src/app/core/json-patch/builder/json-patch-operation-path-combiner.js.map create mode 100644 src/app/core/json-patch/builder/json-patch-operations-builder.js create mode 100644 src/app/core/json-patch/builder/json-patch-operations-builder.js.map create mode 100644 src/app/core/json-patch/json-patch-operations.actions.js create mode 100644 src/app/core/json-patch/json-patch-operations.actions.js.map create mode 100644 src/app/core/json-patch/json-patch-operations.effects.js create mode 100644 src/app/core/json-patch/json-patch-operations.effects.js.map create mode 100644 src/app/core/json-patch/json-patch-operations.reducer.js create mode 100644 src/app/core/json-patch/json-patch-operations.reducer.js.map create mode 100644 src/app/core/json-patch/json-patch-operations.service.js create mode 100644 src/app/core/json-patch/json-patch-operations.service.js.map create mode 100644 src/app/core/json-patch/json-patch.model.js create mode 100644 src/app/core/json-patch/json-patch.model.js.map create mode 100644 src/app/core/json-patch/selectors.js create mode 100644 src/app/core/json-patch/selectors.js.map create mode 100644 src/app/core/metadata/metadata.service.js create mode 100644 src/app/core/metadata/metadata.service.js.map create mode 100644 src/app/core/metadata/metadatafield.model.js create mode 100644 src/app/core/metadata/metadatafield.model.js.map create mode 100644 src/app/core/metadata/metadataschema.model.js create mode 100644 src/app/core/metadata/metadataschema.model.js.map create mode 100644 src/app/core/metadata/normalized-metadata-schema.model.js create mode 100644 src/app/core/metadata/normalized-metadata-schema.model.js.map create mode 100644 src/app/core/registry/mock-bitstream-format.model.js create mode 100644 src/app/core/registry/mock-bitstream-format.model.js.map create mode 100644 src/app/core/registry/registry-bitstreamformats-response.model.js create mode 100644 src/app/core/registry/registry-bitstreamformats-response.model.js.map create mode 100644 src/app/core/registry/registry-metadatafields-response.model.js create mode 100644 src/app/core/registry/registry-metadatafields-response.model.js.map create mode 100644 src/app/core/registry/registry-metadataschemas-response.model.js create mode 100644 src/app/core/registry/registry-metadataschemas-response.model.js.map create mode 100644 src/app/core/registry/registry.service.js create mode 100644 src/app/core/registry/registry.service.js.map create mode 100644 src/app/core/roles/role-types.js create mode 100644 src/app/core/roles/role-types.js.map create mode 100644 src/app/core/roles/role.service.js create mode 100644 src/app/core/roles/role.service.js.map create mode 100644 src/app/core/serializer.js create mode 100644 src/app/core/serializer.js.map create mode 100644 src/app/core/shared/bitstream-format.model.js create mode 100644 src/app/core/shared/bitstream-format.model.js.map create mode 100644 src/app/core/shared/bitstream.model.js create mode 100644 src/app/core/shared/bitstream.model.js.map create mode 100644 src/app/core/shared/browse-definition.model.js create mode 100644 src/app/core/shared/browse-definition.model.js.map create mode 100644 src/app/core/shared/browse-entry.model.js create mode 100644 src/app/core/shared/browse-entry.model.js.map create mode 100644 src/app/core/shared/bundle.model.js create mode 100644 src/app/core/shared/bundle.model.js.map create mode 100644 src/app/core/shared/collection.model.js create mode 100644 src/app/core/shared/collection.model.js.map create mode 100644 src/app/core/shared/community.model.js create mode 100644 src/app/core/shared/community.model.js.map create mode 100644 src/app/core/shared/dspace-object-type.model.js create mode 100644 src/app/core/shared/dspace-object-type.model.js.map create mode 100644 src/app/core/shared/dspace-object.model.js create mode 100644 src/app/core/shared/dspace-object.model.js.map create mode 100644 src/app/core/shared/file.service.js create mode 100644 src/app/core/shared/file.service.js.map create mode 100644 src/app/core/shared/generic-constructor.js create mode 100644 src/app/core/shared/generic-constructor.js.map create mode 100644 src/app/core/shared/hal-endpoint.service.js create mode 100644 src/app/core/shared/hal-endpoint.service.js.map create mode 100644 src/app/core/shared/item-relationships/item-type.model.js create mode 100644 src/app/core/shared/item-relationships/item-type.model.js.map create mode 100644 src/app/core/shared/item-relationships/relationship-type.model.js create mode 100644 src/app/core/shared/item-relationships/relationship-type.model.js.map create mode 100644 src/app/core/shared/item-relationships/relationship.model.js create mode 100644 src/app/core/shared/item-relationships/relationship.model.js.map create mode 100644 src/app/core/shared/item.model.js create mode 100644 src/app/core/shared/item.model.js.map create mode 100644 src/app/core/shared/license.model.js create mode 100644 src/app/core/shared/license.model.js.map create mode 100644 src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js create mode 100644 src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js.map create mode 100644 src/app/core/shared/metadata-representation/metadata-representation.model.js create mode 100644 src/app/core/shared/metadata-representation/metadata-representation.model.js.map create mode 100644 src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js create mode 100644 src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js.map create mode 100644 src/app/core/shared/metadata.models.js create mode 100644 src/app/core/shared/metadata.models.js.map create mode 100644 src/app/core/shared/metadata.utils.js create mode 100644 src/app/core/shared/metadata.utils.js.map create mode 100644 src/app/core/shared/operators.js create mode 100644 src/app/core/shared/operators.js.map create mode 100644 src/app/core/shared/page-info.model.js create mode 100644 src/app/core/shared/page-info.model.js.map create mode 100644 src/app/core/shared/resource-policy.model.js create mode 100644 src/app/core/shared/resource-policy.model.js.map create mode 100644 src/app/core/shared/resource-type.js create mode 100644 src/app/core/shared/resource-type.js.map create mode 100644 src/app/core/shared/sort-option.model.js create mode 100644 src/app/core/shared/sort-option.model.js.map create mode 100644 src/app/core/shared/submit-data-response-definition.model.js create mode 100644 src/app/core/shared/submit-data-response-definition.model.js.map create mode 100644 src/app/core/shared/uuid.service.js create mode 100644 src/app/core/shared/uuid.service.js.map create mode 100644 src/app/core/shared/view-mode.model.js create mode 100644 src/app/core/shared/view-mode.model.js.map create mode 100644 src/app/core/submission/models/normalized-submission-object.model.js create mode 100644 src/app/core/submission/models/normalized-submission-object.model.js.map create mode 100644 src/app/core/submission/models/normalized-workflowitem.model.js create mode 100644 src/app/core/submission/models/normalized-workflowitem.model.js.map create mode 100644 src/app/core/submission/models/normalized-workspaceitem.model.js create mode 100644 src/app/core/submission/models/normalized-workspaceitem.model.js.map create mode 100644 src/app/core/submission/models/submission-object.model.js create mode 100644 src/app/core/submission/models/submission-object.model.js.map create mode 100644 src/app/core/submission/models/submission-upload-file-access-condition.model.js create mode 100644 src/app/core/submission/models/submission-upload-file-access-condition.model.js.map create mode 100644 src/app/core/submission/models/workflowitem.model.js create mode 100644 src/app/core/submission/models/workflowitem.model.js.map create mode 100644 src/app/core/submission/models/workspaceitem-section-form.model.js create mode 100644 src/app/core/submission/models/workspaceitem-section-form.model.js.map create mode 100644 src/app/core/submission/models/workspaceitem-section-license.model.js create mode 100644 src/app/core/submission/models/workspaceitem-section-license.model.js.map create mode 100644 src/app/core/submission/models/workspaceitem-section-upload-file.model.js create mode 100644 src/app/core/submission/models/workspaceitem-section-upload-file.model.js.map create mode 100644 src/app/core/submission/models/workspaceitem-section-upload.model.js create mode 100644 src/app/core/submission/models/workspaceitem-section-upload.model.js.map create mode 100644 src/app/core/submission/models/workspaceitem-sections.model.js create mode 100644 src/app/core/submission/models/workspaceitem-sections.model.js.map create mode 100644 src/app/core/submission/models/workspaceitem.model.js create mode 100644 src/app/core/submission/models/workspaceitem.model.js.map create mode 100644 src/app/core/submission/submission-json-patch-operations.service.js create mode 100644 src/app/core/submission/submission-json-patch-operations.service.js.map create mode 100644 src/app/core/submission/submission-resource-type.js create mode 100644 src/app/core/submission/submission-resource-type.js.map create mode 100644 src/app/core/submission/submission-response-parsing.service.js create mode 100644 src/app/core/submission/submission-response-parsing.service.js.map create mode 100644 src/app/core/submission/submission-rest.service.js create mode 100644 src/app/core/submission/submission-rest.service.js.map create mode 100644 src/app/core/submission/submission-scope-type.js create mode 100644 src/app/core/submission/submission-scope-type.js.map create mode 100644 src/app/core/submission/workflowitem-data.service.js create mode 100644 src/app/core/submission/workflowitem-data.service.js.map create mode 100644 src/app/core/submission/workspaceitem-data.service.js create mode 100644 src/app/core/submission/workspaceitem-data.service.js.map create mode 100644 src/app/core/tasks/claimed-task-data.service.js create mode 100644 src/app/core/tasks/claimed-task-data.service.js.map create mode 100644 src/app/core/tasks/models/claimed-task-object.model.js create mode 100644 src/app/core/tasks/models/claimed-task-object.model.js.map create mode 100644 src/app/core/tasks/models/normalized-claimed-task-object.model.js create mode 100644 src/app/core/tasks/models/normalized-claimed-task-object.model.js.map create mode 100644 src/app/core/tasks/models/normalized-pool-task-object.model.js create mode 100644 src/app/core/tasks/models/normalized-pool-task-object.model.js.map create mode 100644 src/app/core/tasks/models/normalized-task-object.model.js create mode 100644 src/app/core/tasks/models/normalized-task-object.model.js.map create mode 100644 src/app/core/tasks/models/pool-task-object.model.js create mode 100644 src/app/core/tasks/models/pool-task-object.model.js.map create mode 100644 src/app/core/tasks/models/process-task-response.js create mode 100644 src/app/core/tasks/models/process-task-response.js.map create mode 100644 src/app/core/tasks/models/task-object.model.js create mode 100644 src/app/core/tasks/models/task-object.model.js.map create mode 100644 src/app/core/tasks/pool-task-data.service.js create mode 100644 src/app/core/tasks/pool-task-data.service.js.map create mode 100644 src/app/core/tasks/task-response-parsing.service.js create mode 100644 src/app/core/tasks/task-response-parsing.service.js.map create mode 100644 src/app/core/tasks/tasks.service.js create mode 100644 src/app/core/tasks/tasks.service.js.map create mode 100644 src/app/core/url-baser/url-baser.js create mode 100644 src/app/core/url-baser/url-baser.js.map create mode 100644 src/app/core/url-combiner/rest-url-combiner.js create mode 100644 src/app/core/url-combiner/rest-url-combiner.js.map create mode 100644 src/app/core/url-combiner/ui-url-combiner.js create mode 100644 src/app/core/url-combiner/ui-url-combiner.js.map create mode 100644 src/app/core/url-combiner/url-combiner.js create mode 100644 src/app/core/url-combiner/url-combiner.js.map create mode 100644 src/app/footer/footer.component.js create mode 100644 src/app/footer/footer.component.js.map create mode 100644 src/app/header-nav-wrapper/header-navbar-wrapper.component.js create mode 100644 src/app/header-nav-wrapper/header-navbar-wrapper.component.js.map create mode 100644 src/app/header/header.component.js create mode 100644 src/app/header/header.component.js.map create mode 100644 src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js create mode 100644 src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js.map create mode 100644 src/app/navbar/navbar-section/navbar-section.component.js create mode 100644 src/app/navbar/navbar-section/navbar-section.component.js.map create mode 100644 src/app/navbar/navbar.component.js create mode 100644 src/app/navbar/navbar.component.js.map create mode 100644 src/app/navbar/navbar.effects.js create mode 100644 src/app/navbar/navbar.effects.js.map create mode 100644 src/app/navbar/navbar.module.js create mode 100644 src/app/navbar/navbar.module.js.map create mode 100644 src/app/pagenotfound/pagenotfound.component.js create mode 100644 src/app/pagenotfound/pagenotfound.component.js.map create mode 100644 src/app/shared/alert/alert.component.js create mode 100644 src/app/shared/alert/alert.component.js.map create mode 100644 src/app/shared/alert/aletr-type.js create mode 100644 src/app/shared/alert/aletr-type.js.map create mode 100644 src/app/shared/animations/bgColor.js create mode 100644 src/app/shared/animations/bgColor.js.map create mode 100644 src/app/shared/animations/fade.js create mode 100644 src/app/shared/animations/fade.js.map create mode 100644 src/app/shared/animations/focus.js create mode 100644 src/app/shared/animations/focus.js.map create mode 100644 src/app/shared/animations/fromBottom.js create mode 100644 src/app/shared/animations/fromBottom.js.map create mode 100644 src/app/shared/animations/fromLeft.js create mode 100644 src/app/shared/animations/fromLeft.js.map create mode 100644 src/app/shared/animations/fromRight.js create mode 100644 src/app/shared/animations/fromRight.js.map create mode 100644 src/app/shared/animations/fromTop.js create mode 100644 src/app/shared/animations/fromTop.js.map create mode 100644 src/app/shared/animations/overlay.js create mode 100644 src/app/shared/animations/overlay.js.map create mode 100644 src/app/shared/animations/push.js create mode 100644 src/app/shared/animations/push.js.map create mode 100644 src/app/shared/animations/rotate.js create mode 100644 src/app/shared/animations/rotate.js.map create mode 100644 src/app/shared/animations/scale.js create mode 100644 src/app/shared/animations/scale.js.map create mode 100644 src/app/shared/animations/shrink.js create mode 100644 src/app/shared/animations/shrink.js.map create mode 100644 src/app/shared/animations/slide.js create mode 100644 src/app/shared/animations/slide.js.map create mode 100644 src/app/shared/auth-nav-menu/auth-nav-menu.component.js create mode 100644 src/app/shared/auth-nav-menu/auth-nav-menu.component.js.map create mode 100644 src/app/shared/auth-nav-menu/user-menu/user-menu.component.js create mode 100644 src/app/shared/auth-nav-menu/user-menu/user-menu.component.js.map create mode 100644 src/app/shared/authority-confidence/authority-confidence-state.directive.js create mode 100644 src/app/shared/authority-confidence/authority-confidence-state.directive.js.map create mode 100644 src/app/shared/browse-by/browse-by.component.js create mode 100644 src/app/shared/browse-by/browse-by.component.js.map create mode 100644 src/app/shared/chips/chips.component.js create mode 100644 src/app/shared/chips/chips.component.js.map create mode 100644 src/app/shared/chips/models/chips-item.model.js create mode 100644 src/app/shared/chips/models/chips-item.model.js.map create mode 100644 src/app/shared/chips/models/chips.model.js create mode 100644 src/app/shared/chips/models/chips.model.js.map create mode 100644 src/app/shared/comcol-forms/comcol-form/comcol-form.component.js create mode 100644 src/app/shared/comcol-forms/comcol-form/comcol-form.component.js.map create mode 100644 src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js create mode 100644 src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js.map create mode 100644 src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js create mode 100644 src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js.map create mode 100644 src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js create mode 100644 src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js.map create mode 100644 src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js create mode 100644 src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js.map create mode 100644 src/app/shared/comcol-page-content/comcol-page-content.component.js create mode 100644 src/app/shared/comcol-page-content/comcol-page-content.component.js.map create mode 100644 src/app/shared/comcol-page-header/comcol-page-header.component.js create mode 100644 src/app/shared/comcol-page-header/comcol-page-header.component.js.map create mode 100644 src/app/shared/comcol-page-logo/comcol-page-logo.component.js create mode 100644 src/app/shared/comcol-page-logo/comcol-page-logo.component.js.map create mode 100644 src/app/shared/date.util.js create mode 100644 src/app/shared/date.util.js.map create mode 100644 src/app/shared/dso-selector/dso-selector/dso-selector.component.js create mode 100644 src/app/shared/dso-selector/dso-selector/dso-selector.component.js.map create mode 100644 src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js create mode 100644 src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js.map create mode 100644 src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js create mode 100644 src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js.map create mode 100644 src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js create mode 100644 src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js.map create mode 100644 src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js create mode 100644 src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js.map create mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js create mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js.map create mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js create mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js.map create mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js create mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js.map create mode 100644 src/app/shared/empty.util.js create mode 100644 src/app/shared/empty.util.js.map create mode 100644 src/app/shared/error/error.component.js create mode 100644 src/app/shared/error/error.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js.map create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js create mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js.map create mode 100644 src/app/shared/form/builder/form-builder.service.js create mode 100644 src/app/shared/form/builder/form-builder.service.js.map create mode 100644 src/app/shared/form/builder/models/form-field-language-value.model.js create mode 100644 src/app/shared/form/builder/models/form-field-language-value.model.js.map create mode 100644 src/app/shared/form/builder/models/form-field-metadata-value.model.js create mode 100644 src/app/shared/form/builder/models/form-field-metadata-value.model.js.map create mode 100644 src/app/shared/form/builder/models/form-field-previous-value-object.js create mode 100644 src/app/shared/form/builder/models/form-field-previous-value-object.js.map create mode 100644 src/app/shared/form/builder/models/form-field.model.js create mode 100644 src/app/shared/form/builder/models/form-field.model.js.map create mode 100644 src/app/shared/form/builder/parsers/concat-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/concat-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/date-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/date-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/dropdown-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/dropdown-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/field-parser.js create mode 100644 src/app/shared/form/builder/parsers/field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/list-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/list-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/lookup-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/lookup-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/lookup-name-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/lookup-name-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/name-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/name-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/onebox-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/onebox-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/parser-factory.js create mode 100644 src/app/shared/form/builder/parsers/parser-factory.js.map create mode 100644 src/app/shared/form/builder/parsers/parser-options.js create mode 100644 src/app/shared/form/builder/parsers/parser-options.js.map create mode 100644 src/app/shared/form/builder/parsers/parser-type.js create mode 100644 src/app/shared/form/builder/parsers/parser-type.js.map create mode 100644 src/app/shared/form/builder/parsers/parser.utils.js create mode 100644 src/app/shared/form/builder/parsers/parser.utils.js.map create mode 100644 src/app/shared/form/builder/parsers/relation-group-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/relation-group-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/row-parser.js create mode 100644 src/app/shared/form/builder/parsers/row-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/series-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/series-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/tag-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/tag-field-parser.js.map create mode 100644 src/app/shared/form/builder/parsers/textarea-field-parser.js create mode 100644 src/app/shared/form/builder/parsers/textarea-field-parser.js.map create mode 100644 src/app/shared/form/form.actions.js create mode 100644 src/app/shared/form/form.actions.js.map create mode 100644 src/app/shared/form/form.component.js create mode 100644 src/app/shared/form/form.component.js.map create mode 100644 src/app/shared/form/form.effects.js create mode 100644 src/app/shared/form/form.effects.js.map create mode 100644 src/app/shared/form/form.reducer.js create mode 100644 src/app/shared/form/form.reducer.js.map create mode 100644 src/app/shared/form/form.service.js create mode 100644 src/app/shared/form/form.service.js.map create mode 100644 src/app/shared/form/selectors.js create mode 100644 src/app/shared/form/selectors.js.map create mode 100644 src/app/shared/history/history.actions.js create mode 100644 src/app/shared/history/history.actions.js.map create mode 100644 src/app/shared/history/history.reducer.js create mode 100644 src/app/shared/history/history.reducer.js.map create mode 100644 src/app/shared/history/selectors.js create mode 100644 src/app/shared/history/selectors.js.map create mode 100644 src/app/shared/host-window.actions.js create mode 100644 src/app/shared/host-window.actions.js.map create mode 100644 src/app/shared/host-window.reducer.js create mode 100644 src/app/shared/host-window.reducer.js.map create mode 100644 src/app/shared/host-window.service.js create mode 100644 src/app/shared/host-window.service.js.map create mode 100644 src/app/shared/input-suggestions/input-suggestions.component.js create mode 100644 src/app/shared/input-suggestions/input-suggestions.component.js.map create mode 100644 src/app/shared/input-suggestions/input-suggestions.model.js create mode 100644 src/app/shared/input-suggestions/input-suggestions.model.js.map create mode 100644 src/app/shared/items/item-type-decorator.js create mode 100644 src/app/shared/items/item-type-decorator.js.map create mode 100644 src/app/shared/items/switcher/item-type-switcher.component.js create mode 100644 src/app/shared/items/switcher/item-type-switcher.component.js.map create mode 100644 src/app/shared/lang-switch/lang-switch.component.js create mode 100644 src/app/shared/lang-switch/lang-switch.component.js.map create mode 100644 src/app/shared/loading/loading.component.js create mode 100644 src/app/shared/loading/loading.component.js.map create mode 100644 src/app/shared/log-in/log-in.component.js create mode 100644 src/app/shared/log-in/log-in.component.js.map create mode 100644 src/app/shared/log-out/log-out.component.js create mode 100644 src/app/shared/log-out/log-out.component.js.map create mode 100644 src/app/shared/menu/initial-menus-state.js create mode 100644 src/app/shared/menu/initial-menus-state.js.map create mode 100644 src/app/shared/menu/menu-item.decorator.js create mode 100644 src/app/shared/menu/menu-item.decorator.js.map create mode 100644 src/app/shared/menu/menu-item/link-menu-item.component.js create mode 100644 src/app/shared/menu/menu-item/link-menu-item.component.js.map create mode 100644 src/app/shared/menu/menu-item/models/altmetric.model.js create mode 100644 src/app/shared/menu/menu-item/models/altmetric.model.js.map create mode 100644 src/app/shared/menu/menu-item/models/link.model.js create mode 100644 src/app/shared/menu/menu-item/models/link.model.js.map create mode 100644 src/app/shared/menu/menu-item/models/menu-item.model.js create mode 100644 src/app/shared/menu/menu-item/models/menu-item.model.js.map create mode 100644 src/app/shared/menu/menu-item/models/onclick.model.js create mode 100644 src/app/shared/menu/menu-item/models/onclick.model.js.map create mode 100644 src/app/shared/menu/menu-item/models/search.model.js create mode 100644 src/app/shared/menu/menu-item/models/search.model.js.map create mode 100644 src/app/shared/menu/menu-item/models/text.model.js create mode 100644 src/app/shared/menu/menu-item/models/text.model.js.map create mode 100644 src/app/shared/menu/menu-item/onclick-menu-item.component.js create mode 100644 src/app/shared/menu/menu-item/onclick-menu-item.component.js.map create mode 100644 src/app/shared/menu/menu-item/text-menu-item.component.js create mode 100644 src/app/shared/menu/menu-item/text-menu-item.component.js.map create mode 100644 src/app/shared/menu/menu-section.decorator.js create mode 100644 src/app/shared/menu/menu-section.decorator.js.map create mode 100644 src/app/shared/menu/menu-section/menu-section.component.js create mode 100644 src/app/shared/menu/menu-section/menu-section.component.js.map create mode 100644 src/app/shared/menu/menu.actions.js create mode 100644 src/app/shared/menu/menu.actions.js.map create mode 100644 src/app/shared/menu/menu.component.js create mode 100644 src/app/shared/menu/menu.component.js.map create mode 100644 src/app/shared/menu/menu.module.js create mode 100644 src/app/shared/menu/menu.module.js.map create mode 100644 src/app/shared/menu/menu.reducer.js create mode 100644 src/app/shared/menu/menu.reducer.js.map create mode 100644 src/app/shared/menu/menu.service.js create mode 100644 src/app/shared/menu/menu.service.js.map create mode 100644 src/app/shared/mocks/mock-action.js create mode 100644 src/app/shared/mocks/mock-action.js.map create mode 100644 src/app/shared/mocks/mock-active-router.js create mode 100644 src/app/shared/mocks/mock-active-router.js.map create mode 100644 src/app/shared/mocks/mock-admin-guard.service.js create mode 100644 src/app/shared/mocks/mock-admin-guard.service.js.map create mode 100644 src/app/shared/mocks/mock-angulartics.service.js create mode 100644 src/app/shared/mocks/mock-angulartics.service.js.map create mode 100644 src/app/shared/mocks/mock-auth.service.js create mode 100644 src/app/shared/mocks/mock-auth.service.js.map create mode 100644 src/app/shared/mocks/mock-form-builder-service.js create mode 100644 src/app/shared/mocks/mock-form-builder-service.js.map create mode 100644 src/app/shared/mocks/mock-form-models.js create mode 100644 src/app/shared/mocks/mock-form-models.js.map create mode 100644 src/app/shared/mocks/mock-form-operations-service.js create mode 100644 src/app/shared/mocks/mock-form-operations-service.js.map create mode 100644 src/app/shared/mocks/mock-form-service.js create mode 100644 src/app/shared/mocks/mock-form-service.js.map create mode 100644 src/app/shared/mocks/mock-host-window-service.js create mode 100644 src/app/shared/mocks/mock-host-window-service.js.map create mode 100644 src/app/shared/mocks/mock-item.js create mode 100644 src/app/shared/mocks/mock-item.js.map create mode 100644 src/app/shared/mocks/mock-metadata-service.js create mode 100644 src/app/shared/mocks/mock-metadata-service.js.map create mode 100644 src/app/shared/mocks/mock-object-cache.service.js create mode 100644 src/app/shared/mocks/mock-object-cache.service.js.map create mode 100644 src/app/shared/mocks/mock-remote-data-build.service.js create mode 100644 src/app/shared/mocks/mock-remote-data-build.service.js.map create mode 100644 src/app/shared/mocks/mock-request.service.js create mode 100644 src/app/shared/mocks/mock-request.service.js.map create mode 100644 src/app/shared/mocks/mock-role-service.js create mode 100644 src/app/shared/mocks/mock-role-service.js.map create mode 100644 src/app/shared/mocks/mock-router.js create mode 100644 src/app/shared/mocks/mock-router.js.map create mode 100644 src/app/shared/mocks/mock-scroll-to-service.js create mode 100644 src/app/shared/mocks/mock-scroll-to-service.js.map create mode 100644 src/app/shared/mocks/mock-section-upload.service.js create mode 100644 src/app/shared/mocks/mock-section-upload.service.js.map create mode 100644 src/app/shared/mocks/mock-store.js create mode 100644 src/app/shared/mocks/mock-store.js.map create mode 100644 src/app/shared/mocks/mock-submission.js create mode 100644 src/app/shared/mocks/mock-submission.js.map create mode 100644 src/app/shared/mocks/mock-translate-loader.js create mode 100644 src/app/shared/mocks/mock-translate-loader.js.map create mode 100644 src/app/shared/mocks/mock-translate.service.js create mode 100644 src/app/shared/mocks/mock-translate.service.js.map create mode 100644 src/app/shared/mocks/mock-uuid.service.js create mode 100644 src/app/shared/mocks/mock-uuid.service.js.map create mode 100644 src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js create mode 100644 src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js.map create mode 100644 src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js create mode 100644 src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js.map create mode 100644 src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js create mode 100644 src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js.map create mode 100644 src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js create mode 100644 src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js.map create mode 100644 src/app/shared/mydspace-actions/item/item-actions.component.js create mode 100644 src/app/shared/mydspace-actions/item/item-actions.component.js.map create mode 100644 src/app/shared/mydspace-actions/mydspace-actions-service.factory.js create mode 100644 src/app/shared/mydspace-actions/mydspace-actions-service.factory.js.map create mode 100644 src/app/shared/mydspace-actions/mydspace-actions.js create mode 100644 src/app/shared/mydspace-actions/mydspace-actions.js.map create mode 100644 src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js create mode 100644 src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js.map create mode 100644 src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js create mode 100644 src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js.map create mode 100644 src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js create mode 100644 src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js.map create mode 100644 src/app/shared/ngrx/dspace-router-state-serializer.js create mode 100644 src/app/shared/ngrx/dspace-router-state-serializer.js.map create mode 100644 src/app/shared/ngrx/type.js create mode 100644 src/app/shared/ngrx/type.js.map create mode 100644 src/app/shared/notifications/models/notification-animations-type.js create mode 100644 src/app/shared/notifications/models/notification-animations-type.js.map create mode 100644 src/app/shared/notifications/models/notification-options.model.js create mode 100644 src/app/shared/notifications/models/notification-options.model.js.map create mode 100644 src/app/shared/notifications/models/notification-type.js create mode 100644 src/app/shared/notifications/models/notification-type.js.map create mode 100644 src/app/shared/notifications/models/notification.model.js create mode 100644 src/app/shared/notifications/models/notification.model.js.map create mode 100644 src/app/shared/notifications/notification/notification.component.js create mode 100644 src/app/shared/notifications/notification/notification.component.js.map create mode 100644 src/app/shared/notifications/notifications-board/notifications-board.component.js create mode 100644 src/app/shared/notifications/notifications-board/notifications-board.component.js.map create mode 100644 src/app/shared/notifications/notifications.actions.js create mode 100644 src/app/shared/notifications/notifications.actions.js.map create mode 100644 src/app/shared/notifications/notifications.effects.js create mode 100644 src/app/shared/notifications/notifications.effects.js.map create mode 100644 src/app/shared/notifications/notifications.reducers.js create mode 100644 src/app/shared/notifications/notifications.reducers.js.map create mode 100644 src/app/shared/notifications/notifications.service.js create mode 100644 src/app/shared/notifications/notifications.service.js.map create mode 100644 src/app/shared/notifications/selectors.js create mode 100644 src/app/shared/notifications/selectors.js.map create mode 100644 src/app/shared/number-picker/number-picker.component.js create mode 100644 src/app/shared/number-picker/number-picker.component.js.map create mode 100644 src/app/shared/object-collection/object-collection.component.js create mode 100644 src/app/shared/object-collection/object-collection.component.js.map create mode 100644 src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js create mode 100644 src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js.map create mode 100644 src/app/shared/object-collection/shared/collection-search-result.model.js create mode 100644 src/app/shared/object-collection/shared/collection-search-result.model.js.map create mode 100644 src/app/shared/object-collection/shared/community-search-result.model.js create mode 100644 src/app/shared/object-collection/shared/community-search-result.model.js.map create mode 100644 src/app/shared/object-collection/shared/dso-element-decorator.js create mode 100644 src/app/shared/object-collection/shared/dso-element-decorator.js.map create mode 100644 src/app/shared/object-collection/shared/item-my-dspace-result.model.js create mode 100644 src/app/shared/object-collection/shared/item-my-dspace-result.model.js.map create mode 100644 src/app/shared/object-collection/shared/item-search-result.model.js create mode 100644 src/app/shared/object-collection/shared/item-search-result.model.js.map create mode 100644 src/app/shared/object-collection/shared/listable-object.model.js create mode 100644 src/app/shared/object-collection/shared/listable-object.model.js.map create mode 100644 src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js create mode 100644 src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js.map create mode 100644 src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js create mode 100644 src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js.map create mode 100644 src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js create mode 100644 src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js.map create mode 100644 src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js create mode 100644 src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js.map create mode 100644 src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js create mode 100644 src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js.map create mode 100644 src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js create mode 100644 src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js.map create mode 100644 src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js create mode 100644 src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js.map create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js.map create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js.map create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js.map create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js.map create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js.map create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js.map create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js.map create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js create mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js.map create mode 100644 src/app/shared/object-detail/object-detail.component.js create mode 100644 src/app/shared/object-detail/object-detail.component.js.map create mode 100644 src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js create mode 100644 src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js.map create mode 100644 src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js create mode 100644 src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js.map create mode 100644 src/app/shared/object-grid/community-grid-element/community-grid-element.component.js create mode 100644 src/app/shared/object-grid/community-grid-element/community-grid-element.component.js.map create mode 100644 src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js create mode 100644 src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js.map create mode 100644 src/app/shared/object-grid/item-grid-element/item-grid-element.component.js create mode 100644 src/app/shared/object-grid/item-grid-element/item-grid-element.component.js.map create mode 100644 src/app/shared/object-grid/object-grid.component.js create mode 100644 src/app/shared/object-grid/object-grid.component.js.map create mode 100644 src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js create mode 100644 src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js.map create mode 100644 src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js create mode 100644 src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js.map create mode 100644 src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js create mode 100644 src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js.map create mode 100644 src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js create mode 100644 src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js.map create mode 100644 src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js create mode 100644 src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js.map create mode 100644 src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js create mode 100644 src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js.map create mode 100644 src/app/shared/object-list/collection-list-element/collection-list-element.component.js create mode 100644 src/app/shared/object-list/collection-list-element/collection-list-element.component.js.map create mode 100644 src/app/shared/object-list/community-list-element/community-list-element.component.js create mode 100644 src/app/shared/object-list/community-list-element/community-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js.map create mode 100644 src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js create mode 100644 src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js create mode 100644 src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js.map create mode 100644 src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js create mode 100644 src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js.map create mode 100644 src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js create mode 100644 src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js.map create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js.map create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js create mode 100644 src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/object-list.component.js create mode 100644 src/app/shared/object-list/object-list.component.js.map create mode 100644 src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js create mode 100644 src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js create mode 100644 src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js create mode 100644 src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js create mode 100644 src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js.map create mode 100644 src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js create mode 100644 src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js.map create mode 100644 src/app/shared/object.util.js create mode 100644 src/app/shared/object.util.js.map create mode 100644 src/app/shared/pagination/pagination-component-options.model.js create mode 100644 src/app/shared/pagination/pagination-component-options.model.js.map create mode 100644 src/app/shared/pagination/pagination.component.js create mode 100644 src/app/shared/pagination/pagination.component.js.map create mode 100644 src/app/shared/roles/role.directive.js create mode 100644 src/app/shared/roles/role.directive.js.map create mode 100644 src/app/shared/sass-helper/sass-helper.actions.js create mode 100644 src/app/shared/sass-helper/sass-helper.actions.js.map create mode 100644 src/app/shared/sass-helper/sass-helper.reducer.js create mode 100644 src/app/shared/sass-helper/sass-helper.reducer.js.map create mode 100644 src/app/shared/sass-helper/sass-helper.service.js create mode 100644 src/app/shared/sass-helper/sass-helper.service.js.map create mode 100644 src/app/shared/search-form/search-form.component.js create mode 100644 src/app/shared/search-form/search-form.component.js.map create mode 100644 src/app/shared/services/api.service.js create mode 100644 src/app/shared/services/api.service.js.map create mode 100644 src/app/shared/services/client-cookie.service.js create mode 100644 src/app/shared/services/client-cookie.service.js.map create mode 100644 src/app/shared/services/cookie.service.js create mode 100644 src/app/shared/services/cookie.service.js.map create mode 100644 src/app/shared/services/route.service.js create mode 100644 src/app/shared/services/route.service.js.map create mode 100644 src/app/shared/services/server-cookie.service.js create mode 100644 src/app/shared/services/server-cookie.service.js.map create mode 100644 src/app/shared/services/server-response.service.js create mode 100644 src/app/shared/services/server-response.service.js.map create mode 100644 src/app/shared/services/window.service.js create mode 100644 src/app/shared/services/window.service.js.map create mode 100644 src/app/shared/shared.module.js create mode 100644 src/app/shared/shared.module.js.map create mode 100644 src/app/shared/starts-with/date/starts-with-date.component.js create mode 100644 src/app/shared/starts-with/date/starts-with-date.component.js.map create mode 100644 src/app/shared/starts-with/starts-with-abstract.component.js create mode 100644 src/app/shared/starts-with/starts-with-abstract.component.js.map create mode 100644 src/app/shared/starts-with/starts-with-decorator.js create mode 100644 src/app/shared/starts-with/starts-with-decorator.js.map create mode 100644 src/app/shared/starts-with/text/starts-with-text.component.js create mode 100644 src/app/shared/starts-with/text/starts-with-text.component.js.map create mode 100644 src/app/shared/testing/active-router-stub.js create mode 100644 src/app/shared/testing/active-router-stub.js.map create mode 100644 src/app/shared/testing/auth-request-service-stub.js create mode 100644 src/app/shared/testing/auth-request-service-stub.js.map create mode 100644 src/app/shared/testing/auth-service-stub.js create mode 100644 src/app/shared/testing/auth-service-stub.js.map create mode 100644 src/app/shared/testing/authority-service-stub.js create mode 100644 src/app/shared/testing/authority-service-stub.js.map create mode 100644 src/app/shared/testing/css-variable-service-stub.js create mode 100644 src/app/shared/testing/css-variable-service-stub.js.map create mode 100644 src/app/shared/testing/eperson-mock.js create mode 100644 src/app/shared/testing/eperson-mock.js.map create mode 100644 src/app/shared/testing/hal-endpoint-service-stub.js create mode 100644 src/app/shared/testing/hal-endpoint-service-stub.js.map create mode 100644 src/app/shared/testing/host-window-service-stub.js create mode 100644 src/app/shared/testing/host-window-service-stub.js.map create mode 100644 src/app/shared/testing/menu-service-stub.js create mode 100644 src/app/shared/testing/menu-service-stub.js.map create mode 100644 src/app/shared/testing/mock-action.js create mode 100644 src/app/shared/testing/mock-action.js.map create mode 100644 src/app/shared/testing/mock-store.js create mode 100644 src/app/shared/testing/mock-store.js.map create mode 100644 src/app/shared/testing/mock-submission-config.js create mode 100644 src/app/shared/testing/mock-submission-config.js.map create mode 100644 src/app/shared/testing/mock-translate-loader.js create mode 100644 src/app/shared/testing/mock-translate-loader.js.map create mode 100644 src/app/shared/testing/ng-component-outlet-directive-stub.js create mode 100644 src/app/shared/testing/ng-component-outlet-directive-stub.js.map create mode 100644 src/app/shared/testing/notifications-service-stub.js create mode 100644 src/app/shared/testing/notifications-service-stub.js.map create mode 100644 src/app/shared/testing/query-params-directive-stub.js create mode 100644 src/app/shared/testing/query-params-directive-stub.js.map create mode 100644 src/app/shared/testing/route-service-stub.js create mode 100644 src/app/shared/testing/route-service-stub.js.map create mode 100644 src/app/shared/testing/router-link-directive-stub.js create mode 100644 src/app/shared/testing/router-link-directive-stub.js.map create mode 100644 src/app/shared/testing/router-stub.js create mode 100644 src/app/shared/testing/router-stub.js.map create mode 100644 src/app/shared/testing/search-configuration-service-stub.js create mode 100644 src/app/shared/testing/search-configuration-service-stub.js.map create mode 100644 src/app/shared/testing/search-service-stub.js create mode 100644 src/app/shared/testing/search-service-stub.js.map create mode 100644 src/app/shared/testing/sections-service-stub.js create mode 100644 src/app/shared/testing/sections-service-stub.js.map create mode 100644 src/app/shared/testing/submission-json-patch-operations-service-stub.js create mode 100644 src/app/shared/testing/submission-json-patch-operations-service-stub.js.map create mode 100644 src/app/shared/testing/submission-rest-service-stub.js create mode 100644 src/app/shared/testing/submission-rest-service-stub.js.map create mode 100644 src/app/shared/testing/submission-service-stub.js create mode 100644 src/app/shared/testing/submission-service-stub.js.map create mode 100644 src/app/shared/testing/test-module.js create mode 100644 src/app/shared/testing/test-module.js.map create mode 100644 src/app/shared/testing/utils.js create mode 100644 src/app/shared/testing/utils.js.map create mode 100644 src/app/shared/truncatable/truncatable-part/truncatable-part.component.js create mode 100644 src/app/shared/truncatable/truncatable-part/truncatable-part.component.js.map create mode 100644 src/app/shared/truncatable/truncatable.actions.js create mode 100644 src/app/shared/truncatable/truncatable.actions.js.map create mode 100644 src/app/shared/truncatable/truncatable.component.js create mode 100644 src/app/shared/truncatable/truncatable.component.js.map create mode 100644 src/app/shared/truncatable/truncatable.reducer.js create mode 100644 src/app/shared/truncatable/truncatable.reducer.js.map create mode 100644 src/app/shared/truncatable/truncatable.service.js create mode 100644 src/app/shared/truncatable/truncatable.service.js.map create mode 100644 src/app/shared/uploader/uploader-options.model.js create mode 100644 src/app/shared/uploader/uploader-options.model.js.map create mode 100644 src/app/shared/uploader/uploader.component.js create mode 100644 src/app/shared/uploader/uploader.component.js.map create mode 100644 src/app/shared/uploader/uploader.service.js create mode 100644 src/app/shared/uploader/uploader.service.js.map create mode 100644 src/app/shared/utils/auto-focus.directive.js create mode 100644 src/app/shared/utils/auto-focus.directive.js.map create mode 100644 src/app/shared/utils/capitalize.pipe.js create mode 100644 src/app/shared/utils/capitalize.pipe.js.map create mode 100644 src/app/shared/utils/click-outside.directive.js create mode 100644 src/app/shared/utils/click-outside.directive.js.map create mode 100644 src/app/shared/utils/console.pipe.js create mode 100644 src/app/shared/utils/console.pipe.js.map create mode 100644 src/app/shared/utils/debounce.directive.js create mode 100644 src/app/shared/utils/debounce.directive.js.map create mode 100644 src/app/shared/utils/drag-click.directive.js create mode 100644 src/app/shared/utils/drag-click.directive.js.map create mode 100644 src/app/shared/utils/emphasize.pipe.js create mode 100644 src/app/shared/utils/emphasize.pipe.js.map create mode 100644 src/app/shared/utils/encode-decode.util.js create mode 100644 src/app/shared/utils/encode-decode.util.js.map create mode 100644 src/app/shared/utils/enum-keys-pipe.js create mode 100644 src/app/shared/utils/enum-keys-pipe.js.map create mode 100644 src/app/shared/utils/file-size-pipe.js create mode 100644 src/app/shared/utils/file-size-pipe.js.map create mode 100644 src/app/shared/utils/in-list-validator.directive.js create mode 100644 src/app/shared/utils/in-list-validator.directive.js.map create mode 100644 src/app/shared/utils/object-keys-pipe.js create mode 100644 src/app/shared/utils/object-keys-pipe.js.map create mode 100644 src/app/shared/utils/object-ngfor.pipe.js create mode 100644 src/app/shared/utils/object-ngfor.pipe.js.map create mode 100644 src/app/shared/utils/object-values-pipe.js create mode 100644 src/app/shared/utils/object-values-pipe.js.map create mode 100644 src/app/shared/utils/safe-url-pipe.js create mode 100644 src/app/shared/utils/safe-url-pipe.js.map create mode 100644 src/app/shared/utils/truncate.pipe.js create mode 100644 src/app/shared/utils/truncate.pipe.js.map create mode 100644 src/app/shared/utils/validator.functions.js create mode 100644 src/app/shared/utils/validator.functions.js.map create mode 100644 src/app/shared/utils/var.directive.js create mode 100644 src/app/shared/utils/var.directive.js.map create mode 100644 src/app/shared/view-mode-switch/view-mode-switch.component.js create mode 100644 src/app/shared/view-mode-switch/view-mode-switch.component.js.map create mode 100644 src/app/shared/view-mode.js create mode 100644 src/app/shared/view-mode.js.map create mode 100644 src/app/store.actions.js create mode 100644 src/app/store.actions.js.map create mode 100644 src/app/store.effects.js create mode 100644 src/app/store.effects.js.map create mode 100644 src/app/submission/edit/submission-edit.component.js create mode 100644 src/app/submission/edit/submission-edit.component.js.map create mode 100644 src/app/submission/form/collection/submission-form-collection.component.js create mode 100644 src/app/submission/form/collection/submission-form-collection.component.js.map create mode 100644 src/app/submission/form/footer/submission-form-footer.component.js create mode 100644 src/app/submission/form/footer/submission-form-footer.component.js.map create mode 100644 src/app/submission/form/section-add/submission-form-section-add.component.js create mode 100644 src/app/submission/form/section-add/submission-form-section-add.component.js.map create mode 100644 src/app/submission/form/submission-form.component.js create mode 100644 src/app/submission/form/submission-form.component.js.map create mode 100644 src/app/submission/form/submission-upload-files/submission-upload-files.component.js create mode 100644 src/app/submission/form/submission-upload-files/submission-upload-files.component.js.map create mode 100644 src/app/submission/objects/submission-objects.actions.js create mode 100644 src/app/submission/objects/submission-objects.actions.js.map create mode 100644 src/app/submission/objects/submission-objects.effects.js create mode 100644 src/app/submission/objects/submission-objects.effects.js.map create mode 100644 src/app/submission/objects/submission-objects.reducer.js create mode 100644 src/app/submission/objects/submission-objects.reducer.js.map create mode 100644 src/app/submission/sections/container/section-container.component.js create mode 100644 src/app/submission/sections/container/section-container.component.js.map create mode 100644 src/app/submission/sections/form/section-form-operations.service.js create mode 100644 src/app/submission/sections/form/section-form-operations.service.js.map create mode 100644 src/app/submission/sections/form/section-form.component.js create mode 100644 src/app/submission/sections/form/section-form.component.js.map create mode 100644 src/app/submission/sections/license/section-license.component.js create mode 100644 src/app/submission/sections/license/section-license.component.js.map create mode 100644 src/app/submission/sections/license/section-license.model.js create mode 100644 src/app/submission/sections/license/section-license.model.js.map create mode 100644 src/app/submission/sections/models/section-data.model.js create mode 100644 src/app/submission/sections/models/section-data.model.js.map create mode 100644 src/app/submission/sections/models/section.model.js create mode 100644 src/app/submission/sections/models/section.model.js.map create mode 100644 src/app/submission/sections/sections-decorator.js create mode 100644 src/app/submission/sections/sections-decorator.js.map create mode 100644 src/app/submission/sections/sections-type.js create mode 100644 src/app/submission/sections/sections-type.js.map create mode 100644 src/app/submission/sections/sections.directive.js create mode 100644 src/app/submission/sections/sections.directive.js.map create mode 100644 src/app/submission/sections/sections.service.js create mode 100644 src/app/submission/sections/sections.service.js.map create mode 100644 src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js create mode 100644 src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js.map create mode 100644 src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js create mode 100644 src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js.map create mode 100644 src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js create mode 100644 src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js.map create mode 100644 src/app/submission/sections/upload/file/section-upload-file.component.js create mode 100644 src/app/submission/sections/upload/file/section-upload-file.component.js.map create mode 100644 src/app/submission/sections/upload/file/view/section-upload-file-view.component.js create mode 100644 src/app/submission/sections/upload/file/view/section-upload-file-view.component.js.map create mode 100644 src/app/submission/sections/upload/section-upload.component.js create mode 100644 src/app/submission/sections/upload/section-upload.component.js.map create mode 100644 src/app/submission/sections/upload/section-upload.service.js create mode 100644 src/app/submission/sections/upload/section-upload.service.js.map create mode 100644 src/app/submission/selectors.js create mode 100644 src/app/submission/selectors.js.map create mode 100644 src/app/submission/server-submission.service.js create mode 100644 src/app/submission/server-submission.service.js.map create mode 100644 src/app/submission/submission.effects.js create mode 100644 src/app/submission/submission.effects.js.map create mode 100644 src/app/submission/submission.module.js create mode 100644 src/app/submission/submission.module.js.map create mode 100644 src/app/submission/submission.reducers.js create mode 100644 src/app/submission/submission.reducers.js.map create mode 100644 src/app/submission/submission.service.js create mode 100644 src/app/submission/submission.service.js.map create mode 100644 src/app/submission/submit/submission-submit.component.js create mode 100644 src/app/submission/submit/submission-submit.component.js.map create mode 100644 src/app/submission/utils/parseSectionErrorPaths.js create mode 100644 src/app/submission/utils/parseSectionErrorPaths.js.map create mode 100644 src/app/submission/utils/parseSectionErrors.js create mode 100644 src/app/submission/utils/parseSectionErrors.js.map create mode 100644 src/app/thumbnail/thumbnail.component.js create mode 100644 src/app/thumbnail/thumbnail.component.js.map create mode 100644 src/backend/api.js create mode 100644 src/backend/api.js.map create mode 100644 src/backend/cache.js create mode 100644 src/backend/cache.js.map create mode 100644 src/backend/db.js create mode 100644 src/backend/db.js.map create mode 100644 src/config.js.map create mode 100644 src/config/auto-sync-config.interface.js create mode 100644 src/config/auto-sync-config.interface.js.map create mode 100644 src/config/browse-by-config.interface.js create mode 100644 src/config/browse-by-config.interface.js.map create mode 100644 src/config/cache-config.interface.js create mode 100644 src/config/cache-config.interface.js.map create mode 100644 src/config/config.interface.js create mode 100644 src/config/config.interface.js.map create mode 100644 src/config/form-config.interfaces.js create mode 100644 src/config/form-config.interfaces.js.map create mode 100644 src/config/global-config.interface.js create mode 100644 src/config/global-config.interface.js.map create mode 100644 src/config/item-page-config.interface.js create mode 100644 src/config/item-page-config.interface.js.map create mode 100644 src/config/lang-config.interface.js create mode 100644 src/config/lang-config.interface.js.map create mode 100644 src/config/notifications-config.interfaces.js create mode 100644 src/config/notifications-config.interfaces.js.map create mode 100644 src/config/server-config.interface.js create mode 100644 src/config/server-config.interface.js.map create mode 100644 src/config/submission-config.interface.js create mode 100644 src/config/submission-config.interface.js.map create mode 100644 src/config/universal-config.interface.js create mode 100644 src/config/universal-config.interface.js.map create mode 100644 src/main.browser.js create mode 100644 src/main.browser.js.map create mode 100644 src/main.server.js create mode 100644 src/main.server.js.map create mode 100644 src/modules/app/browser-app.module.js create mode 100644 src/modules/app/browser-app.module.js.map create mode 100644 src/modules/app/server-app.module.js create mode 100644 src/modules/app/server-app.module.js.map create mode 100644 src/modules/transfer-state/dspace-browser-transfer-state.module.js create mode 100644 src/modules/transfer-state/dspace-browser-transfer-state.module.js.map create mode 100644 src/modules/transfer-state/dspace-browser-transfer-state.service.js create mode 100644 src/modules/transfer-state/dspace-browser-transfer-state.service.js.map create mode 100644 src/modules/transfer-state/dspace-server-transfer-state.module.js create mode 100644 src/modules/transfer-state/dspace-server-transfer-state.module.js.map create mode 100644 src/modules/transfer-state/dspace-server-transfer-state.service.js create mode 100644 src/modules/transfer-state/dspace-server-transfer-state.service.js.map create mode 100644 src/modules/transfer-state/dspace-transfer-state.service.js create mode 100644 src/modules/transfer-state/dspace-transfer-state.service.js.map create mode 100644 src/modules/translate-universal-loader.js create mode 100644 src/modules/translate-universal-loader.js.map create mode 100644 src/routes.js create mode 100644 src/routes.js.map create mode 100644 src/server.js create mode 100644 src/server.js.map diff --git a/e2e/app.e2e-spec.js b/e2e/app.e2e-spec.js new file mode 100644 index 0000000000..0e2a51d09c --- /dev/null +++ b/e2e/app.e2e-spec.js @@ -0,0 +1,16 @@ +import { ProtractorPage } from './app.po'; +describe('protractor App', function () { + var page; + beforeEach(function () { + page = new ProtractorPage(); + }); + it('should display translated title "DSpace Angular :: Home"', function () { + page.navigateTo(); + expect(page.getPageTitleText()).toEqual('DSpace Angular :: Home'); + }); + it('should contain a news section', function () { + page.navigateTo(); + expect(page.getHomePageNewsText()).toBeDefined(); + }); +}); +//# sourceMappingURL=app.e2e-spec.js.map \ No newline at end of file diff --git a/e2e/app.e2e-spec.js.map b/e2e/app.e2e-spec.js.map new file mode 100644 index 0000000000..e6eb55bcfc --- /dev/null +++ b/e2e/app.e2e-spec.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app.e2e-spec.js","sourceRoot":"","sources":["app.e2e-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,QAAQ,CAAC,gBAAgB,EAAE;IACzB,IAAI,IAAoB,CAAC;IAEzB,UAAU,CAAC;QACT,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE;QAC7D,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,CAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE;QAClC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,CAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/e2e/app.po.js b/e2e/app.po.js new file mode 100644 index 0000000000..40f8494e0b --- /dev/null +++ b/e2e/app.po.js @@ -0,0 +1,17 @@ +import { browser, element, by } from 'protractor'; +var ProtractorPage = /** @class */ (function () { + function ProtractorPage() { + } + ProtractorPage.prototype.navigateTo = function () { + return browser.get('/'); + }; + ProtractorPage.prototype.getPageTitleText = function () { + return browser.getTitle(); + }; + ProtractorPage.prototype.getHomePageNewsText = function () { + return element(by.xpath('//ds-home-news')).getText(); + }; + return ProtractorPage; +}()); +export { ProtractorPage }; +//# sourceMappingURL=app.po.js.map \ No newline at end of file diff --git a/e2e/app.po.js.map b/e2e/app.po.js.map new file mode 100644 index 0000000000..e7438ddf69 --- /dev/null +++ b/e2e/app.po.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app.po.js","sourceRoot":"","sources":["app.po.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAElD;IAAA;IAYA,CAAC;IAXC,mCAAU,GAAV;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,yCAAgB,GAAhB;QACE,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,4CAAmB,GAAnB;QACE,OAAO,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACvD,CAAC;IACH,qBAAC;AAAD,CAAC,AAZD,IAYC"} \ No newline at end of file diff --git a/e2e/pagenotfound/pagenotfound.e2e-spec.js b/e2e/pagenotfound/pagenotfound.e2e-spec.js new file mode 100644 index 0000000000..4797f221f1 --- /dev/null +++ b/e2e/pagenotfound/pagenotfound.e2e-spec.js @@ -0,0 +1,16 @@ +import { ProtractorPage } from './pagenotfound.po'; +describe('protractor PageNotFound', function () { + var page; + beforeEach(function () { + page = new ProtractorPage(); + }); + it('should contain element ds-pagenotfound when navigating to page that doesnt exist', function () { + page.navigateToNonExistingPage(); + expect(page.elementTagExists('ds-pagenotfound')).toEqual(true); + }); + it('should not contain element ds-pagenotfound when navigating to existing page', function () { + page.navigateToExistingPage(); + expect(page.elementTagExists('ds-pagenotfound')).toEqual(false); + }); +}); +//# sourceMappingURL=pagenotfound.e2e-spec.js.map \ No newline at end of file diff --git a/e2e/pagenotfound/pagenotfound.e2e-spec.js.map b/e2e/pagenotfound/pagenotfound.e2e-spec.js.map new file mode 100644 index 0000000000..867ac9c7a1 --- /dev/null +++ b/e2e/pagenotfound/pagenotfound.e2e-spec.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pagenotfound.e2e-spec.js","sourceRoot":"","sources":["pagenotfound.e2e-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,QAAQ,CAAC,yBAAyB,EAAE;IAClC,IAAI,IAAoB,CAAC;IAEzB,UAAU,CAAC;QACT,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE;QACrF,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACjC,MAAM,CAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE;QAChF,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,MAAM,CAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/e2e/pagenotfound/pagenotfound.po.js b/e2e/pagenotfound/pagenotfound.po.js new file mode 100644 index 0000000000..7fa85382c6 --- /dev/null +++ b/e2e/pagenotfound/pagenotfound.po.js @@ -0,0 +1,19 @@ +import { browser, element, by } from 'protractor'; +var ProtractorPage = /** @class */ (function () { + function ProtractorPage() { + this.HOMEPAGE = '/home'; + this.NONEXISTINGPAGE = '/e9019a69-d4f1-4773-b6a3-bd362caa46f2'; + } + ProtractorPage.prototype.navigateToNonExistingPage = function () { + return browser.get(this.NONEXISTINGPAGE); + }; + ProtractorPage.prototype.navigateToExistingPage = function () { + return browser.get(this.HOMEPAGE); + }; + ProtractorPage.prototype.elementTagExists = function (tag) { + return element(by.tagName(tag)).isPresent(); + }; + return ProtractorPage; +}()); +export { ProtractorPage }; +//# sourceMappingURL=pagenotfound.po.js.map \ No newline at end of file diff --git a/e2e/pagenotfound/pagenotfound.po.js.map b/e2e/pagenotfound/pagenotfound.po.js.map new file mode 100644 index 0000000000..3b611061ad --- /dev/null +++ b/e2e/pagenotfound/pagenotfound.po.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pagenotfound.po.js","sourceRoot":"","sources":["pagenotfound.po.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAElD;IAAA;QACE,aAAQ,GAAG,OAAO,CAAC;QACnB,oBAAe,GAAG,uCAAuC,CAAC;IAa5D,CAAC;IAXC,kDAAyB,GAAzB;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC3C,CAAC;IACD,+CAAsB,GAAtB;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,yCAAgB,GAAhB,UAAiB,GAAW;QAC1B,OAAO,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC9C,CAAC;IAEH,qBAAC;AAAD,CAAC,AAfD,IAeC"} \ No newline at end of file diff --git a/e2e/search-page/search-page.e2e-spec.js b/e2e/search-page/search-page.e2e-spec.js new file mode 100644 index 0000000000..a8da0836a2 --- /dev/null +++ b/e2e/search-page/search-page.e2e-spec.js @@ -0,0 +1,47 @@ +import { ProtractorPage } from './search-page.po'; +import { browser } from 'protractor'; +describe('protractor SearchPage', function () { + var page; + beforeEach(function () { + page = new ProtractorPage(); + }); + it('should contain query value when navigating to page with query parameter', function () { + var queryString = 'Interesting query string'; + page.navigateToSearchWithQueryParameter(queryString); + page.getCurrentQuery().then(function (query) { + expect(query).toEqual(queryString); + }); + }); + it('should have right scope selected when navigating to page with scope parameter', function () { + var scope = page.getRandomScopeOption(); + scope.then(function (scopeString) { + page.navigateToSearchWithScopeParameter(scopeString); + page.getCurrentScope().then(function (s) { + expect(s).toEqual(scopeString); + }); + }); + }); + it('should redirect to the correct url when scope was set and submit button was triggered', function () { + var scope = page.getRandomScopeOption(); + scope.then(function (scopeString) { + page.setCurrentScope(scopeString); + page.submitSearchForm(); + browser.wait(function () { + return browser.getCurrentUrl().then(function (url) { + return url.indexOf('scope=' + encodeURI(scopeString)) !== -1; + }); + }); + }); + }); + it('should redirect to the correct url when query was set and submit button was triggered', function () { + var queryString = 'Another interesting query string'; + page.setCurrentQuery(queryString); + page.submitSearchForm(); + browser.wait(function () { + return browser.getCurrentUrl().then(function (url) { + return url.indexOf('query=' + encodeURI(queryString)) !== -1; + }); + }); + }); +}); +//# sourceMappingURL=search-page.e2e-spec.js.map \ No newline at end of file diff --git a/e2e/search-page/search-page.e2e-spec.js.map b/e2e/search-page/search-page.e2e-spec.js.map new file mode 100644 index 0000000000..e577c19321 --- /dev/null +++ b/e2e/search-page/search-page.e2e-spec.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-page.e2e-spec.js","sourceRoot":"","sources":["search-page.e2e-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC,QAAQ,CAAC,uBAAuB,EAAE;IAChC,IAAI,IAAoB,CAAC;IAEzB,UAAU,CAAC;QACT,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE;QAC5E,IAAM,WAAW,GAAG,0BAA0B,CAAC;QAC/C,IAAI,CAAC,kCAAkC,CAAC,WAAW,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,UAAC,KAAa;YACxC,MAAM,CAAS,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE;QAClF,IAAM,KAAK,GAA4B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,UAAC,WAAmB;YAC7B,IAAI,CAAC,kCAAkC,CAAC,WAAW,CAAC,CAAC;YACrD,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,UAAC,CAAS;gBACpC,MAAM,CAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE;QAC1F,IAAM,KAAK,GAA4B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,UAAC,WAAmB;YAC7B,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAClC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC;gBACX,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,UAAC,GAAW;oBAC9C,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE;QAC1F,IAAM,WAAW,GAAG,kCAAkC,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAClC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,UAAC,GAAW;gBAC9C,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/e2e/search-page/search-page.po.js b/e2e/search-page/search-page.po.js new file mode 100644 index 0000000000..e834451d9d --- /dev/null +++ b/e2e/search-page/search-page.po.js @@ -0,0 +1,42 @@ +import { browser, element, by, protractor } from 'protractor'; +var ProtractorPage = /** @class */ (function () { + function ProtractorPage() { + this.SEARCH = '/search'; + } + ProtractorPage.prototype.navigateToSearch = function () { + return browser.get(this.SEARCH); + }; + ProtractorPage.prototype.navigateToSearchWithQueryParameter = function (query) { + return browser.get(this.SEARCH + '?query=' + query); + }; + ProtractorPage.prototype.navigateToSearchWithScopeParameter = function (scope) { + return browser.get(this.SEARCH + '?scope=' + scope); + }; + ProtractorPage.prototype.getCurrentScope = function () { + var scopeSelect = element(by.css('#search-form select')); + browser.wait(protractor.ExpectedConditions.presenceOf(scopeSelect), 10000); + return scopeSelect.getAttribute('value'); + }; + ProtractorPage.prototype.getCurrentQuery = function () { + return element(by.css('#search-form input')).getAttribute('value'); + }; + ProtractorPage.prototype.setCurrentScope = function (scope) { + element(by.css('option[value="' + scope + '"]')).click(); + }; + ProtractorPage.prototype.setCurrentQuery = function (query) { + element(by.css('input[name="query"]')).sendKeys(query); + }; + ProtractorPage.prototype.submitSearchForm = function () { + element(by.css('button.search-button')).click(); + }; + ProtractorPage.prototype.getRandomScopeOption = function () { + var options = element(by.css('select[name="scope"]')).all(by.tagName('option')); + return options.count().then(function (c) { + var index = Math.floor(Math.random() * (c - 1)); + return options.get(index + 1).getAttribute('value'); + }); + }; + return ProtractorPage; +}()); +export { ProtractorPage }; +//# sourceMappingURL=search-page.po.js.map \ No newline at end of file diff --git a/e2e/search-page/search-page.po.js.map b/e2e/search-page/search-page.po.js.map new file mode 100644 index 0000000000..c027e980ae --- /dev/null +++ b/e2e/search-page/search-page.po.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-page.po.js","sourceRoot":"","sources":["search-page.po.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG9D;IAAA;QACE,WAAM,GAAG,SAAS,CAAC;IA4CrB,CAAC;IA1CC,yCAAgB,GAAhB;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,2DAAkC,GAAlC,UAAmC,KAAa;QAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,2DAAkC,GAAlC,UAAmC,KAAa;QAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,wCAAe,GAAf;QACE,IAAM,WAAW,GAAG,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3E,OAAO,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,wCAAe,GAAf;QACE,OAAO,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,wCAAe,GAAf,UAAgB,KAAa;QAC3B,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,gBAAgB,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC3D,CAAC;IAED,wCAAe,GAAf,UAAgB,KAAa;QAC3B,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED,yCAAgB,GAAhB;QACE,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAClD,CAAC;IAED,6CAAoB,GAApB;QACE,IAAM,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClF,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,UAAC,CAAS;YACpC,IAAM,KAAK,GAAW,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1D,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAEH,qBAAC;AAAD,CAAC,AA7CD,IA6CC"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/admin-registries-routing.module.js b/src/app/+admin/admin-registries/admin-registries-routing.module.js new file mode 100644 index 0000000000..21d2fa3be4 --- /dev/null +++ b/src/app/+admin/admin-registries/admin-registries-routing.module.js @@ -0,0 +1,24 @@ +import * as tslib_1 from "tslib"; +import { MetadataRegistryComponent } from './metadata-registry/metadata-registry.component'; +import { RouterModule } from '@angular/router'; +import { NgModule } from '@angular/core'; +import { MetadataSchemaComponent } from './metadata-schema/metadata-schema.component'; +import { BitstreamFormatsComponent } from './bitstream-formats/bitstream-formats.component'; +var AdminRegistriesRoutingModule = /** @class */ (function () { + function AdminRegistriesRoutingModule() { + } + AdminRegistriesRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { path: 'metadata', component: MetadataRegistryComponent, data: { title: 'admin.registries.metadata.title' } }, + { path: 'metadata/:schemaName', component: MetadataSchemaComponent, data: { title: 'admin.registries.schema.title' } }, + { path: 'bitstream-formats', component: BitstreamFormatsComponent, data: { title: 'admin.registries.bitstream-formats.title' } }, + ]) + ] + }) + ], AdminRegistriesRoutingModule); + return AdminRegistriesRoutingModule; +}()); +export { AdminRegistriesRoutingModule }; +//# sourceMappingURL=admin-registries-routing.module.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/admin-registries-routing.module.js.map b/src/app/+admin/admin-registries/admin-registries-routing.module.js.map new file mode 100644 index 0000000000..23fb9e2097 --- /dev/null +++ b/src/app/+admin/admin-registries/admin-registries-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admin-registries-routing.module.js","sourceRoot":"","sources":["admin-registries-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAW5F;IAAA;IAEA,CAAC;IAFY,4BAA4B;QATxC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAAE;oBAC9G,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,uBAAuB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,+BAA+B,EAAE,EAAE;oBACtH,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,0CAA0C,EAAE,EAAE;iBACjI,CAAC;aACH;SACF,CAAC;OACW,4BAA4B,CAExC;IAAD,mCAAC;CAAA,AAFD,IAEC;SAFY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/admin-registries.module.js b/src/app/+admin/admin-registries/admin-registries.module.js new file mode 100644 index 0000000000..b0b9c923c7 --- /dev/null +++ b/src/app/+admin/admin-registries/admin-registries.module.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { MetadataRegistryComponent } from './metadata-registry/metadata-registry.component'; +import { AdminRegistriesRoutingModule } from './admin-registries-routing.module'; +import { CommonModule } from '@angular/common'; +import { MetadataSchemaComponent } from './metadata-schema/metadata-schema.component'; +import { RouterModule } from '@angular/router'; +import { TranslateModule } from '@ngx-translate/core'; +import { BitstreamFormatsComponent } from './bitstream-formats/bitstream-formats.component'; +import { SharedModule } from '../../shared/shared.module'; +import { MetadataSchemaFormComponent } from './metadata-registry/metadata-schema-form/metadata-schema-form.component'; +import { MetadataFieldFormComponent } from './metadata-schema/metadata-field-form/metadata-field-form.component'; +var AdminRegistriesModule = /** @class */ (function () { + function AdminRegistriesModule() { + } + AdminRegistriesModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule, + RouterModule, + TranslateModule, + AdminRegistriesRoutingModule + ], + declarations: [ + MetadataRegistryComponent, + MetadataSchemaComponent, + BitstreamFormatsComponent, + MetadataSchemaFormComponent, + MetadataFieldFormComponent + ], + entryComponents: [] + }) + ], AdminRegistriesModule); + return AdminRegistriesModule; +}()); +export { AdminRegistriesModule }; +//# sourceMappingURL=admin-registries.module.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/admin-registries.module.js.map b/src/app/+admin/admin-registries/admin-registries.module.js.map new file mode 100644 index 0000000000..5ad26e5906 --- /dev/null +++ b/src/app/+admin/admin-registries/admin-registries.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admin-registries.module.js","sourceRoot":"","sources":["admin-registries.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yEAAyE,CAAC;AACtH,OAAO,EAAC,0BAA0B,EAAC,MAAM,qEAAqE,CAAC;AAqB/G;IAAA;IAEA,CAAC;IAFY,qBAAqB;QAnBjC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,YAAY;gBACZ,eAAe;gBACf,4BAA4B;aAC7B;YACD,YAAY,EAAE;gBACZ,yBAAyB;gBACzB,uBAAuB;gBACvB,yBAAyB;gBACzB,2BAA2B;gBAC3B,0BAA0B;aAC3B;YACD,eAAe,EAAE,EAEhB;SACF,CAAC;OACW,qBAAqB,CAEjC;IAAD,4BAAC;CAAA,AAFD,IAEC;SAFY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js b/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js new file mode 100644 index 0000000000..ab7f6f1699 --- /dev/null +++ b/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js @@ -0,0 +1,45 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { RegistryService } from '../../../core/registry/registry.service'; +import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model'; +/** + * This component renders a list of bitstream formats + */ +var BitstreamFormatsComponent = /** @class */ (function () { + function BitstreamFormatsComponent(registryService) { + this.registryService = registryService; + /** + * The current pagination configuration for the page + * Currently simply renders all bitstream formats + */ + this.config = Object.assign(new PaginationComponentOptions(), { + id: 'registry-bitstreamformats-pagination', + pageSize: 10000 + }); + this.updateFormats(); + } + /** + * When the page is changed, make sure to update the list of bitstreams to match the new page + * @param event The page change event + */ + BitstreamFormatsComponent.prototype.onPageChange = function (event) { + this.config.currentPage = event; + this.updateFormats(); + }; + /** + * Method to update the bitstream formats that are shown + */ + BitstreamFormatsComponent.prototype.updateFormats = function () { + this.bitstreamFormats = this.registryService.getBitstreamFormats(this.config); + }; + BitstreamFormatsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-bitstream-formats', + templateUrl: './bitstream-formats.component.html' + }), + tslib_1.__metadata("design:paramtypes", [RegistryService]) + ], BitstreamFormatsComponent); + return BitstreamFormatsComponent; +}()); +export { BitstreamFormatsComponent }; +//# sourceMappingURL=bitstream-formats.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js.map b/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js.map new file mode 100644 index 0000000000..5480f7c8e8 --- /dev/null +++ b/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bitstream-formats.component.js","sourceRoot":"","sources":["bitstream-formats.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAK1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,+DAA+D,CAAC;AAE3G;;GAEG;AAKH;IAgBE,mCAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;QATpD;;;WAGG;QACH,WAAM,GAA+B,MAAM,CAAC,MAAM,CAAC,IAAI,0BAA0B,EAAE,EAAE;YACnF,EAAE,EAAE,sCAAsC;YAC1C,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QAGD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,gDAAY,GAAZ,UAAa,KAAK;QAChB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,iDAAa,GAArB;QACE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChF,CAAC;IAlCU,yBAAyB;QAJrC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,WAAW,EAAE,oCAAoC;SAClD,CAAC;iDAiBqC,eAAe;OAhBzC,yBAAyB,CAmCrC;IAAD,gCAAC;CAAA,AAnCD,IAmCC;SAnCY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js new file mode 100644 index 0000000000..540669f467 --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js @@ -0,0 +1,129 @@ +import { type } from '../../../shared/ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var MetadataRegistryActionTypes = { + EDIT_SCHEMA: type('dspace/metadata-registry/EDIT_SCHEMA'), + CANCEL_EDIT_SCHEMA: type('dspace/metadata-registry/CANCEL_SCHEMA'), + SELECT_SCHEMA: type('dspace/metadata-registry/SELECT_SCHEMA'), + DESELECT_SCHEMA: type('dspace/metadata-registry/DESELECT_SCHEMA'), + DESELECT_ALL_SCHEMA: type('dspace/metadata-registry/DESELECT_ALL_SCHEMA'), + EDIT_FIELD: type('dspace/metadata-registry/EDIT_FIELD'), + CANCEL_EDIT_FIELD: type('dspace/metadata-registry/CANCEL_FIELD'), + SELECT_FIELD: type('dspace/metadata-registry/SELECT_FIELD'), + DESELECT_FIELD: type('dspace/metadata-registry/DESELECT_FIELD'), + DESELECT_ALL_FIELD: type('dspace/metadata-registry/DESELECT_ALL_FIELD') +}; +/* tslint:disable:max-classes-per-file */ +/** + * Used to edit a metadata schema in the metadata registry + */ +var MetadataRegistryEditSchemaAction = /** @class */ (function () { + function MetadataRegistryEditSchemaAction(registry) { + this.type = MetadataRegistryActionTypes.EDIT_SCHEMA; + this.schema = registry; + } + return MetadataRegistryEditSchemaAction; +}()); +export { MetadataRegistryEditSchemaAction }; +/** + * Used to cancel the editing of a metadata schema in the metadata registry + */ +var MetadataRegistryCancelSchemaAction = /** @class */ (function () { + function MetadataRegistryCancelSchemaAction() { + this.type = MetadataRegistryActionTypes.CANCEL_EDIT_SCHEMA; + } + return MetadataRegistryCancelSchemaAction; +}()); +export { MetadataRegistryCancelSchemaAction }; +/** + * Used to select a single metadata schema in the metadata registry + */ +var MetadataRegistrySelectSchemaAction = /** @class */ (function () { + function MetadataRegistrySelectSchemaAction(registry) { + this.type = MetadataRegistryActionTypes.SELECT_SCHEMA; + this.schema = registry; + } + return MetadataRegistrySelectSchemaAction; +}()); +export { MetadataRegistrySelectSchemaAction }; +/** + * Used to deselect a single metadata schema in the metadata registry + */ +var MetadataRegistryDeselectSchemaAction = /** @class */ (function () { + function MetadataRegistryDeselectSchemaAction(registry) { + this.type = MetadataRegistryActionTypes.DESELECT_SCHEMA; + this.schema = registry; + } + return MetadataRegistryDeselectSchemaAction; +}()); +export { MetadataRegistryDeselectSchemaAction }; +/** + * Used to deselect all metadata schemas in the metadata registry + */ +var MetadataRegistryDeselectAllSchemaAction = /** @class */ (function () { + function MetadataRegistryDeselectAllSchemaAction() { + this.type = MetadataRegistryActionTypes.DESELECT_ALL_SCHEMA; + } + return MetadataRegistryDeselectAllSchemaAction; +}()); +export { MetadataRegistryDeselectAllSchemaAction }; +/** + * Used to edit a metadata field in the metadata registry + */ +var MetadataRegistryEditFieldAction = /** @class */ (function () { + function MetadataRegistryEditFieldAction(registry) { + this.type = MetadataRegistryActionTypes.EDIT_FIELD; + this.field = registry; + } + return MetadataRegistryEditFieldAction; +}()); +export { MetadataRegistryEditFieldAction }; +/** + * Used to cancel the editing of a metadata field in the metadata registry + */ +var MetadataRegistryCancelFieldAction = /** @class */ (function () { + function MetadataRegistryCancelFieldAction() { + this.type = MetadataRegistryActionTypes.CANCEL_EDIT_FIELD; + } + return MetadataRegistryCancelFieldAction; +}()); +export { MetadataRegistryCancelFieldAction }; +/** + * Used to select a single metadata field in the metadata registry + */ +var MetadataRegistrySelectFieldAction = /** @class */ (function () { + function MetadataRegistrySelectFieldAction(registry) { + this.type = MetadataRegistryActionTypes.SELECT_FIELD; + this.field = registry; + } + return MetadataRegistrySelectFieldAction; +}()); +export { MetadataRegistrySelectFieldAction }; +/** + * Used to deselect a single metadata field in the metadata registry + */ +var MetadataRegistryDeselectFieldAction = /** @class */ (function () { + function MetadataRegistryDeselectFieldAction(registry) { + this.type = MetadataRegistryActionTypes.DESELECT_FIELD; + this.field = registry; + } + return MetadataRegistryDeselectFieldAction; +}()); +export { MetadataRegistryDeselectFieldAction }; +/** + * Used to deselect all metadata fields in the metadata registry + */ +var MetadataRegistryDeselectAllFieldAction = /** @class */ (function () { + function MetadataRegistryDeselectAllFieldAction() { + this.type = MetadataRegistryActionTypes.DESELECT_ALL_FIELD; + } + return MetadataRegistryDeselectAllFieldAction; +}()); +export { MetadataRegistryDeselectAllFieldAction }; +//# sourceMappingURL=metadata-registry.actions.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js.map b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js.map new file mode 100644 index 0000000000..4cc11db8c4 --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-registry.actions.js","sourceRoot":"","sources":["metadata-registry.actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAIjD;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,2BAA2B,GAAG;IAEzC,WAAW,EAAE,IAAI,CAAC,sCAAsC,CAAC;IACzD,kBAAkB,EAAE,IAAI,CAAC,wCAAwC,CAAC;IAClE,aAAa,EAAE,IAAI,CAAC,wCAAwC,CAAC;IAC7D,eAAe,EAAE,IAAI,CAAC,0CAA0C,CAAC;IACjE,mBAAmB,EAAE,IAAI,CAAC,8CAA8C,CAAC;IAEzE,UAAU,EAAE,IAAI,CAAC,qCAAqC,CAAC;IACvD,iBAAiB,EAAE,IAAI,CAAC,uCAAuC,CAAC;IAChE,YAAY,EAAE,IAAI,CAAC,uCAAuC,CAAC;IAC3D,cAAc,EAAE,IAAI,CAAC,yCAAyC,CAAC;IAC/D,kBAAkB,EAAE,IAAI,CAAC,6CAA6C,CAAC;CACxE,CAAC;AAEF,yCAAyC;AACzC;;GAEG;AACH;IAKE,0CAAY,QAAwB;QAJpC,SAAI,GAAG,2BAA2B,CAAC,WAAW,CAAC;QAK7C,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;IACzB,CAAC;IACH,uCAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,2BAA2B,CAAC,kBAAkB,CAAC;IACxD,CAAC;IAAD,yCAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAKE,4CAAY,QAAwB;QAJpC,SAAI,GAAG,2BAA2B,CAAC,aAAa,CAAC;QAK/C,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;IACzB,CAAC;IACH,yCAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAKE,8CAAY,QAAwB;QAJpC,SAAI,GAAG,2BAA2B,CAAC,eAAe,CAAC;QAKjD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;IACzB,CAAC;IACH,2CAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,2BAA2B,CAAC,mBAAmB,CAAC;IACzD,CAAC;IAAD,8CAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAKE,yCAAY,QAAuB;QAJnC,SAAI,GAAG,2BAA2B,CAAC,UAAU,CAAC;QAK5C,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IACH,sCAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,2BAA2B,CAAC,iBAAiB,CAAC;IACvD,CAAC;IAAD,wCAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAKE,2CAAY,QAAuB;QAJnC,SAAI,GAAG,2BAA2B,CAAC,YAAY,CAAC;QAK9C,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IACH,wCAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAKE,6CAAY,QAAuB;QAJnC,SAAI,GAAG,2BAA2B,CAAC,cAAc,CAAC;QAKhD,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IACH,0CAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,2BAA2B,CAAC,kBAAkB,CAAC;IACxD,CAAC;IAAD,6CAAC;AAAD,CAAC,AAFD,IAEC"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js new file mode 100644 index 0000000000..e7375bc94a --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js @@ -0,0 +1,161 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { RegistryService } from '../../../core/registry/registry.service'; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model'; +import { map, take } from 'rxjs/operators'; +import { hasValue } from '../../../shared/empty.util'; +import { zip } from 'rxjs/internal/observable/zip'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { Router } from '@angular/router'; +import { TranslateService } from '@ngx-translate/core'; +var MetadataRegistryComponent = /** @class */ (function () { + function MetadataRegistryComponent(registryService, notificationsService, router, translateService) { + this.registryService = registryService; + this.notificationsService = notificationsService; + this.router = router; + this.translateService = translateService; + /** + * Pagination config used to display the list of metadata schemas + */ + this.config = Object.assign(new PaginationComponentOptions(), { + id: 'registry-metadataschemas-pagination', + pageSize: 25 + }); + this.updateSchemas(); + } + /** + * Event triggered when the user changes page + * @param event + */ + MetadataRegistryComponent.prototype.onPageChange = function (event) { + this.config.currentPage = event; + this.updateSchemas(); + }; + /** + * Update the list of schemas by fetching it from the rest api or cache + */ + MetadataRegistryComponent.prototype.updateSchemas = function () { + this.metadataSchemas = this.registryService.getMetadataSchemas(this.config); + }; + /** + * Force-update the list of schemas by first clearing the cache related to metadata schemas, then performing + * a new REST call + */ + MetadataRegistryComponent.prototype.forceUpdateSchemas = function () { + this.registryService.clearMetadataSchemaRequests().subscribe(); + this.updateSchemas(); + }; + /** + * Start editing the selected metadata schema + * @param schema + */ + MetadataRegistryComponent.prototype.editSchema = function (schema) { + var _this = this; + this.getActiveSchema().pipe(take(1)).subscribe(function (activeSchema) { + if (schema === activeSchema) { + _this.registryService.cancelEditMetadataSchema(); + } + else { + _this.registryService.editMetadataSchema(schema); + } + }); + }; + /** + * Checks whether the given metadata schema is active (being edited) + * @param schema + */ + MetadataRegistryComponent.prototype.isActive = function (schema) { + return this.getActiveSchema().pipe(map(function (activeSchema) { return schema === activeSchema; })); + }; + /** + * Gets the active metadata schema (being edited) + */ + MetadataRegistryComponent.prototype.getActiveSchema = function () { + return this.registryService.getActiveMetadataSchema(); + }; + /** + * Select a metadata schema within the list (checkbox) + * @param schema + * @param event + */ + MetadataRegistryComponent.prototype.selectMetadataSchema = function (schema, event) { + event.target.checked ? + this.registryService.selectMetadataSchema(schema) : + this.registryService.deselectMetadataSchema(schema); + }; + /** + * Checks whether a given metadata schema is selected in the list (checkbox) + * @param schema + */ + MetadataRegistryComponent.prototype.isSelected = function (schema) { + return this.registryService.getSelectedMetadataSchemas().pipe(map(function (schemas) { return schemas.find(function (selectedSchema) { return selectedSchema === schema; }) != null; })); + }; + /** + * Delete all the selected metadata schemas + */ + MetadataRegistryComponent.prototype.deleteSchemas = function () { + var _this = this; + this.registryService.getSelectedMetadataSchemas().pipe(take(1)).subscribe(function (schemas) { + var tasks$ = []; + for (var _i = 0, schemas_1 = schemas; _i < schemas_1.length; _i++) { + var schema = schemas_1[_i]; + if (hasValue(schema.id)) { + tasks$.push(_this.registryService.deleteMetadataSchema(schema.id)); + } + } + zip.apply(void 0, tasks$).subscribe(function (responses) { + var successResponses = responses.filter(function (response) { return response.isSuccessful; }); + var failedResponses = responses.filter(function (response) { return !response.isSuccessful; }); + if (successResponses.length > 0) { + _this.showNotification(true, successResponses.length); + } + if (failedResponses.length > 0) { + _this.showNotification(false, failedResponses.length); + } + _this.registryService.deselectAllMetadataSchema(); + _this.registryService.cancelEditMetadataSchema(); + _this.forceUpdateSchemas(); + }); + }); + }; + /** + * Show notifications for an amount of deleted metadata schemas + * @param success Whether or not the notification should be a success message (error message when false) + * @param amount The amount of deleted metadata schemas + */ + MetadataRegistryComponent.prototype.showNotification = function (success, amount) { + var _this = this; + var prefix = 'admin.registries.schema.notification'; + var suffix = success ? 'success' : 'failure'; + var messages = observableCombineLatest(this.translateService.get(success ? prefix + "." + suffix : prefix + "." + suffix), this.translateService.get(prefix + ".deleted." + suffix, { amount: amount })); + messages.subscribe(function (_a) { + var head = _a[0], content = _a[1]; + if (success) { + _this.notificationsService.success(head, content); + } + else { + _this.notificationsService.error(head, content); + } + }); + }; + MetadataRegistryComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-registry', + templateUrl: './metadata-registry.component.html', + styleUrls: ['./metadata-registry.component.scss'] + }) + /** + * A component used for managing all existing metadata schemas within the repository. + * The admin can create, edit or delete metadata schemas here. + */ + , + tslib_1.__metadata("design:paramtypes", [RegistryService, + NotificationsService, + Router, + TranslateService]) + ], MetadataRegistryComponent); + return MetadataRegistryComponent; +}()); +export { MetadataRegistryComponent }; +//# sourceMappingURL=metadata-registry.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js.map b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js.map new file mode 100644 index 0000000000..4709bbe3ae --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-registry.component.js","sourceRoot":"","sources":["metadata-registry.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js new file mode 100644 index 0000000000..338a4ef513 --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js @@ -0,0 +1,73 @@ +import { MetadataRegistryActionTypes } from './metadata-registry.actions'; +/** + * The initial state. + */ +var initialState = { + editSchema: null, + selectedSchemas: [], + editField: null, + selectedFields: [] +}; +/** + * Reducer that handles MetadataRegistryActions to modify metadata schema and/or field states + * @param state The current MetadataRegistryState + * @param action The MetadataRegistryAction to perform on the state + */ +export function metadataRegistryReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case MetadataRegistryActionTypes.EDIT_SCHEMA: { + return Object.assign({}, state, { + editSchema: action.schema + }); + } + case MetadataRegistryActionTypes.CANCEL_EDIT_SCHEMA: { + return Object.assign({}, state, { + editSchema: null + }); + } + case MetadataRegistryActionTypes.SELECT_SCHEMA: { + return Object.assign({}, state, { + selectedSchemas: state.selectedSchemas.concat([action.schema]) + }); + } + case MetadataRegistryActionTypes.DESELECT_SCHEMA: { + return Object.assign({}, state, { + selectedSchemas: state.selectedSchemas.filter(function (selectedSchema) { return selectedSchema !== action.schema; }) + }); + } + case MetadataRegistryActionTypes.DESELECT_ALL_SCHEMA: { + return Object.assign({}, state, { + selectedSchemas: [] + }); + } + case MetadataRegistryActionTypes.EDIT_FIELD: { + return Object.assign({}, state, { + editField: action.field + }); + } + case MetadataRegistryActionTypes.CANCEL_EDIT_FIELD: { + return Object.assign({}, state, { + editField: null + }); + } + case MetadataRegistryActionTypes.SELECT_FIELD: { + return Object.assign({}, state, { + selectedFields: state.selectedFields.concat([action.field]) + }); + } + case MetadataRegistryActionTypes.DESELECT_FIELD: { + return Object.assign({}, state, { + selectedFields: state.selectedFields.filter(function (selectedField) { return selectedField !== action.field; }) + }); + } + case MetadataRegistryActionTypes.DESELECT_ALL_FIELD: { + return Object.assign({}, state, { + selectedFields: [] + }); + } + default: + return state; + } +} +//# sourceMappingURL=metadata-registry.reducers.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js.map b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js.map new file mode 100644 index 0000000000..db41e0cbf1 --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-registry.reducers.js","sourceRoot":"","sources":["metadata-registry.reducers.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,2BAA2B,EAO5B,MAAM,6BAA6B,CAAC;AAcrC;;GAEG;AACH,IAAM,YAAY,GAA0B;IAC1C,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,EAAE;IACnB,SAAS,EAAE,IAAI;IACf,cAAc,EAAE,EAAE;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,kCAAkC,KAAoB,EAAE,MAA8B;IAApD,sBAAA,EAAA,oBAAoB;IAE1D,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,2BAA2B,CAAC,WAAW,CAAC,CAAC;YAC5C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,UAAU,EAAG,MAA2C,CAAC,MAAM;aAChE,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,kBAAkB,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,aAAa,CAAC,CAAC;YAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,eAAe,EAAM,KAAK,CAAC,eAAe,SAAG,MAA6C,CAAC,MAAM,EAAC;aACnG,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,eAAe,CAAC,CAAC;YAChD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,MAAM,CAC3C,UAAC,cAAc,IAAK,OAAA,cAAc,KAAM,MAA+C,CAAC,MAAM,EAA1E,CAA0E,CAC/F;aACF,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,mBAAmB,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,eAAe,EAAE,EAAE;aACpB,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,UAAU,CAAC,CAAC;YAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,SAAS,EAAG,MAA0C,CAAC,KAAK;aAC7D,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,YAAY,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,cAAc,EAAM,KAAK,CAAC,cAAc,SAAG,MAA4C,CAAC,KAAK,EAAC;aAC/F,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,cAAc,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CACzC,UAAC,aAAa,IAAK,OAAA,aAAa,KAAM,MAA8C,CAAC,KAAK,EAAvE,CAAuE,CAC3F;aACF,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,kBAAkB,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,cAAc,EAAE,EAAE;aACnB,CAAC,CAAC;SACJ;QAED;YACE,OAAO,KAAK,CAAC;KAChB;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js b/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js new file mode 100644 index 0000000000..59985cbe3e --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js @@ -0,0 +1,148 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Output } from '@angular/core'; +import { DynamicInputModel } from '@ng-dynamic-forms/core'; +import { RegistryService } from '../../../../core/registry/registry.service'; +import { FormBuilderService } from '../../../../shared/form/builder/form-builder.service'; +import { take } from 'rxjs/operators'; +import { MetadataSchema } from '../../../../core/metadata/metadataschema.model'; +import { TranslateService } from '@ngx-translate/core'; +import { combineLatest } from 'rxjs/internal/observable/combineLatest'; +var MetadataSchemaFormComponent = /** @class */ (function () { + function MetadataSchemaFormComponent(registryService, formBuilderService, translateService) { + this.registryService = registryService; + this.formBuilderService = formBuilderService; + this.translateService = translateService; + /** + * A unique id used for ds-form + */ + this.formId = 'metadata-schema-form'; + /** + * The prefix for all messages related to this form + */ + this.messagePrefix = 'admin.registries.metadata.form'; + /** + * Layout used for structuring the form inputs + */ + this.formLayout = { + name: { + grid: { + host: 'col col-sm-6 d-inline-block' + } + }, + namespace: { + grid: { + host: 'col col-sm-6 d-inline-block' + } + } + }; + /** + * An EventEmitter that's fired whenever the form is being submitted + */ + this.submitForm = new EventEmitter(); + } + MetadataSchemaFormComponent.prototype.ngOnInit = function () { + var _this = this; + combineLatest(this.translateService.get(this.messagePrefix + ".name"), this.translateService.get(this.messagePrefix + ".namespace")).subscribe(function (_a) { + var name = _a[0], namespace = _a[1]; + _this.name = new DynamicInputModel({ + id: 'name', + label: name, + name: 'name', + validators: { + required: null, + pattern: '^[^ ,_]{1,32}$' + }, + required: true, + }); + _this.namespace = new DynamicInputModel({ + id: 'namespace', + label: namespace, + name: 'namespace', + validators: { + required: null, + }, + required: true, + }); + _this.formModel = [ + _this.namespace, + _this.name + ]; + _this.formGroup = _this.formBuilderService.createFormGroup(_this.formModel); + _this.registryService.getActiveMetadataSchema().subscribe(function (schema) { + _this.formGroup.patchValue({ + name: schema != null ? schema.prefix : '', + namespace: schema != null ? schema.namespace : '' + }); + }); + }); + }; + /** + * Stop editing the currently selected metadata schema + */ + MetadataSchemaFormComponent.prototype.onCancel = function () { + this.registryService.cancelEditMetadataSchema(); + }; + /** + * Submit the form + * When the schema has an id attached -> Edit the schema + * When the schema has no id attached -> Create new schema + * Emit the updated/created schema using the EventEmitter submitForm + */ + MetadataSchemaFormComponent.prototype.onSubmit = function () { + var _this = this; + this.registryService.getActiveMetadataSchema().pipe(take(1)).subscribe(function (schema) { + var values = { + prefix: _this.name.value, + namespace: _this.namespace.value + }; + if (schema == null) { + _this.registryService.createOrUpdateMetadataSchema(Object.assign(new MetadataSchema(), values)).subscribe(function (newSchema) { + _this.submitForm.emit(newSchema); + }); + } + else { + _this.registryService.createOrUpdateMetadataSchema(Object.assign(new MetadataSchema(), { + id: schema.id, + prefix: (values.prefix ? values.prefix : schema.prefix), + namespace: (values.namespace ? values.namespace : schema.namespace) + })).subscribe(function (updatedSchema) { + _this.submitForm.emit(updatedSchema); + }); + } + _this.clearFields(); + }); + }; + /** + * Reset all input-fields to be empty + */ + MetadataSchemaFormComponent.prototype.clearFields = function () { + this.formGroup.patchValue({ + prefix: '', + namespace: '' + }); + }; + /** + * Cancel the current edit when component is destroyed + */ + MetadataSchemaFormComponent.prototype.ngOnDestroy = function () { + this.onCancel(); + }; + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], MetadataSchemaFormComponent.prototype, "submitForm", void 0); + MetadataSchemaFormComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-schema-form', + templateUrl: './metadata-schema-form.component.html' + }) + /** + * A form used for creating and editing metadata schemas + */ + , + tslib_1.__metadata("design:paramtypes", [RegistryService, FormBuilderService, TranslateService]) + ], MetadataSchemaFormComponent); + return MetadataSchemaFormComponent; +}()); +export { MetadataSchemaFormComponent }; +//# sourceMappingURL=metadata-schema-form.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js.map b/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js.map new file mode 100644 index 0000000000..c5afef8b25 --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-schema-form.component.js","sourceRoot":"","sources":["metadata-schema-form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js b/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js new file mode 100644 index 0000000000..08e6ee00f3 --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js @@ -0,0 +1,172 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +import { MetadataSchema } from '../../../../core/metadata/metadataschema.model'; +import { DynamicInputModel } from '@ng-dynamic-forms/core'; +import { RegistryService } from '../../../../core/registry/registry.service'; +import { FormBuilderService } from '../../../../shared/form/builder/form-builder.service'; +import { MetadataField } from '../../../../core/metadata/metadatafield.model'; +import { take } from 'rxjs/operators'; +import { TranslateService } from '@ngx-translate/core'; +import { combineLatest } from 'rxjs/internal/observable/combineLatest'; +var MetadataFieldFormComponent = /** @class */ (function () { + function MetadataFieldFormComponent(registryService, formBuilderService, translateService) { + this.registryService = registryService; + this.formBuilderService = formBuilderService; + this.translateService = translateService; + /** + * A unique id used for ds-form + */ + this.formId = 'metadata-field-form'; + /** + * The prefix for all messages related to this form + */ + this.messagePrefix = 'admin.registries.schema.form'; + /** + * Layout used for structuring the form inputs + */ + this.formLayout = { + element: { + grid: { + host: 'col col-sm-6 d-inline-block' + } + }, + qualifier: { + grid: { + host: 'col col-sm-6 d-inline-block' + } + }, + scopeNote: { + grid: { + host: 'col col-sm-12 d-inline-block' + } + } + }; + /** + * An EventEmitter that's fired whenever the form is being submitted + */ + this.submitForm = new EventEmitter(); + } + /** + * Initialize the component, setting up the necessary Models for the dynamic form + */ + MetadataFieldFormComponent.prototype.ngOnInit = function () { + var _this = this; + combineLatest(this.translateService.get(this.messagePrefix + ".element"), this.translateService.get(this.messagePrefix + ".qualifier"), this.translateService.get(this.messagePrefix + ".scopenote")).subscribe(function (_a) { + var element = _a[0], qualifier = _a[1], scopenote = _a[2]; + _this.element = new DynamicInputModel({ + id: 'element', + label: element, + name: 'element', + validators: { + required: null, + }, + required: true, + }); + _this.qualifier = new DynamicInputModel({ + id: 'qualifier', + label: qualifier, + name: 'qualifier', + required: false, + }); + _this.scopeNote = new DynamicInputModel({ + id: 'scopeNote', + label: scopenote, + name: 'scopeNote', + required: false, + }); + _this.formModel = [ + _this.element, + _this.qualifier, + _this.scopeNote + ]; + _this.formGroup = _this.formBuilderService.createFormGroup(_this.formModel); + _this.registryService.getActiveMetadataField().subscribe(function (field) { + _this.formGroup.patchValue({ + element: field != null ? field.element : '', + qualifier: field != null ? field.qualifier : '', + scopeNote: field != null ? field.scopeNote : '' + }); + }); + }); + }; + /** + * Stop editing the currently selected metadata field + */ + MetadataFieldFormComponent.prototype.onCancel = function () { + this.registryService.cancelEditMetadataField(); + }; + /** + * Submit the form + * When the field has an id attached -> Edit the field + * When the field has no id attached -> Create new field + * Emit the updated/created field using the EventEmitter submitForm + */ + MetadataFieldFormComponent.prototype.onSubmit = function () { + var _this = this; + this.registryService.getActiveMetadataField().pipe(take(1)).subscribe(function (field) { + var values = { + schema: _this.metadataSchema, + element: _this.element.value, + qualifier: _this.qualifier.value, + scopeNote: _this.scopeNote.value + }; + if (field == null) { + _this.registryService.createOrUpdateMetadataField(Object.assign(new MetadataField(), values)).subscribe(function (newField) { + _this.submitForm.emit(newField); + }); + } + else { + _this.registryService.createOrUpdateMetadataField(Object.assign(new MetadataField(), { + id: field.id, + schema: _this.metadataSchema, + element: (values.element ? values.element : field.element), + qualifier: (values.qualifier ? values.qualifier : field.qualifier), + scopeNote: (values.scopeNote ? values.scopeNote : field.scopeNote) + })).subscribe(function (updatedField) { + _this.submitForm.emit(updatedField); + }); + } + _this.clearFields(); + }); + }; + /** + * Reset all input-fields to be empty + */ + MetadataFieldFormComponent.prototype.clearFields = function () { + this.formGroup.patchValue({ + element: '', + qualifier: '', + scopeNote: '' + }); + }; + /** + * Cancel the current edit when component is destroyed + */ + MetadataFieldFormComponent.prototype.ngOnDestroy = function () { + this.onCancel(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", MetadataSchema) + ], MetadataFieldFormComponent.prototype, "metadataSchema", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], MetadataFieldFormComponent.prototype, "submitForm", void 0); + MetadataFieldFormComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-field-form', + templateUrl: './metadata-field-form.component.html' + }) + /** + * A form used for creating and editing metadata fields + */ + , + tslib_1.__metadata("design:paramtypes", [RegistryService, + FormBuilderService, + TranslateService]) + ], MetadataFieldFormComponent); + return MetadataFieldFormComponent; +}()); +export { MetadataFieldFormComponent }; +//# sourceMappingURL=metadata-field-form.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js.map b/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js.map new file mode 100644 index 0000000000..2740582d91 --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-field-form.component.js","sourceRoot":"","sources":["metadata-field-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAqB,MAAM,EAAE,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAChF,OAAO,EAGL,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sDAAsD,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AASvE;IAoEE,oCAAmB,eAAgC,EAC/B,kBAAsC,EACtC,gBAAkC;QAFnC,oBAAe,GAAf,eAAe,CAAiB;QAC/B,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,qBAAgB,GAAhB,gBAAgB,CAAkB;QApEtD;;WAEG;QACH,WAAM,GAAG,qBAAqB,CAAC;QAE/B;;WAEG;QACH,kBAAa,GAAG,8BAA8B,CAAC;QA2B/C;;WAEG;QACH,eAAU,GAAsB;YAC9B,OAAO,EAAE;gBACP,IAAI,EAAE;oBACJ,IAAI,EAAE,6BAA6B;iBACpC;aACF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE;oBACJ,IAAI,EAAE,6BAA6B;iBACpC;aACF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE;oBACJ,IAAI,EAAE,8BAA8B;iBACrC;aACF;SACF,CAAC;QAOF;;WAEG;QACO,eAAU,GAAsB,IAAI,YAAY,EAAE,CAAC;IAK7D,CAAC;IAED;;OAEG;IACH,6CAAQ,GAAR;QAAA,iBAyCC;QAxCC,aAAa,CACX,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAI,IAAI,CAAC,aAAa,aAAU,CAAC,EAC1D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAI,IAAI,CAAC,aAAa,eAAY,CAAC,EAC5D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAI,IAAI,CAAC,aAAa,eAAY,CAAC,CAC7D,CAAC,SAAS,CAAC,UAAC,EAA+B;gBAA9B,eAAO,EAAE,iBAAS,EAAE,iBAAS;YACzC,KAAI,CAAC,OAAO,GAAG,IAAI,iBAAiB,CAAC;gBACnC,EAAE,EAAE,SAAS;gBACb,KAAK,EAAE,OAAO;gBACd,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE;oBACV,QAAQ,EAAE,IAAI;iBACf;gBACD,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YACH,KAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,CAAC;gBACrC,EAAE,EAAE,WAAW;gBACf,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YACH,KAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,CAAC;gBACrC,EAAE,EAAE,WAAW;gBACf,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,WAAW;gBACjB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YACH,KAAI,CAAC,SAAS,GAAG;gBACf,KAAI,CAAC,OAAO;gBACZ,KAAI,CAAC,SAAS;gBACd,KAAI,CAAC,SAAS;aACf,CAAC;YACF,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAI,CAAC,SAAS,CAAC,CAAC;YACzE,KAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,UAAC,KAAK;gBAC5D,KAAI,CAAC,SAAS,CAAC,UAAU,CAAC;oBACxB,OAAO,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBAC3C,SAAS,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;oBAC/C,SAAS,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;iBAChD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,6CAAQ,GAAR;QACE,IAAI,CAAC,eAAe,CAAC,uBAAuB,EAAE,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACH,6CAAQ,GAAR;QAAA,iBA2BC;QA1BC,IAAI,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CACnE,UAAC,KAAK;YACJ,IAAM,MAAM,GAAG;gBACb,MAAM,EAAE,KAAI,CAAC,cAAc;gBAC3B,OAAO,EAAE,KAAI,CAAC,OAAO,CAAC,KAAK;gBAC3B,SAAS,EAAE,KAAI,CAAC,SAAS,CAAC,KAAK;gBAC/B,SAAS,EAAE,KAAI,CAAC,SAAS,CAAC,KAAK;aAChC,CAAC;YACF,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,KAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,aAAa,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,QAAQ;oBAC9G,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACjC,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,KAAI,CAAC,eAAe,CAAC,2BAA2B,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,aAAa,EAAE,EAAE;oBAClF,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,MAAM,EAAE,KAAI,CAAC,cAAc;oBAC3B,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;oBAC1D,SAAS,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;oBAClE,SAAS,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;iBACnE,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,YAAY;oBACzB,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;aACJ;YACD,KAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,gDAAW,GAAX;QACE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;YACxB,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,EAAE;SACd,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,gDAAW,GAAX;QACE,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAlKQ;QAAR,KAAK,EAAE;0CAAiB,cAAc;sEAAC;IAmD9B;QAAT,MAAM,EAAE;0CAAa,YAAY;kEAA2B;IAlElD,0BAA0B;QAPtC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,WAAW,EAAE,sCAAsC;SACpD,CAAC;QACF;;WAEG;;iDAqEmC,eAAe;YACX,kBAAkB;YACpB,gBAAgB;OAtE3C,0BAA0B,CAkLtC;IAAD,iCAAC;CAAA,AAlLD,IAkLC;SAlLY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js b/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js new file mode 100644 index 0000000000..6af9dcde0a --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js @@ -0,0 +1,182 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { RegistryService } from '../../../core/registry/registry.service'; +import { ActivatedRoute, Router } from '@angular/router'; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model'; +import { map, take } from 'rxjs/operators'; +import { hasValue } from '../../../shared/empty.util'; +import { zip } from 'rxjs/internal/observable/zip'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { TranslateService } from '@ngx-translate/core'; +var MetadataSchemaComponent = /** @class */ (function () { + function MetadataSchemaComponent(registryService, route, notificationsService, router, translateService) { + this.registryService = registryService; + this.route = route; + this.notificationsService = notificationsService; + this.router = router; + this.translateService = translateService; + /** + * Pagination config used to display the list of metadata fields + */ + this.config = Object.assign(new PaginationComponentOptions(), { + id: 'registry-metadatafields-pagination', + pageSize: 25, + pageSizeOptions: [25, 50, 100, 200] + }); + } + MetadataSchemaComponent.prototype.ngOnInit = function () { + var _this = this; + this.route.params.subscribe(function (params) { + _this.initialize(params); + }); + }; + /** + * Initialize the component using the params within the url (schemaName) + * @param params + */ + MetadataSchemaComponent.prototype.initialize = function (params) { + this.metadataSchema = this.registryService.getMetadataSchemaByName(params.schemaName); + this.updateFields(); + }; + /** + * Event triggered when the user changes page + * @param event + */ + MetadataSchemaComponent.prototype.onPageChange = function (event) { + this.config.currentPage = event; + this.updateFields(); + }; + /** + * Update the list of fields by fetching it from the rest api or cache + */ + MetadataSchemaComponent.prototype.updateFields = function () { + var _this = this; + this.metadataSchema.subscribe(function (schemaData) { + var schema = schemaData.payload; + _this.metadataFields = _this.registryService.getMetadataFieldsBySchema(schema, _this.config); + _this.namespace = { namespace: schemaData.payload.namespace }; + }); + }; + /** + * Force-update the list of fields by first clearing the cache related to metadata fields, then performing + * a new REST call + */ + MetadataSchemaComponent.prototype.forceUpdateFields = function () { + this.registryService.clearMetadataFieldRequests().subscribe(); + this.updateFields(); + }; + /** + * Start editing the selected metadata field + * @param field + */ + MetadataSchemaComponent.prototype.editField = function (field) { + var _this = this; + this.getActiveField().pipe(take(1)).subscribe(function (activeField) { + if (field === activeField) { + _this.registryService.cancelEditMetadataField(); + } + else { + _this.registryService.editMetadataField(field); + } + }); + }; + /** + * Checks whether the given metadata field is active (being edited) + * @param field + */ + MetadataSchemaComponent.prototype.isActive = function (field) { + return this.getActiveField().pipe(map(function (activeField) { return field === activeField; })); + }; + /** + * Gets the active metadata field (being edited) + */ + MetadataSchemaComponent.prototype.getActiveField = function () { + return this.registryService.getActiveMetadataField(); + }; + /** + * Select a metadata field within the list (checkbox) + * @param field + * @param event + */ + MetadataSchemaComponent.prototype.selectMetadataField = function (field, event) { + event.target.checked ? + this.registryService.selectMetadataField(field) : + this.registryService.deselectMetadataField(field); + }; + /** + * Checks whether a given metadata field is selected in the list (checkbox) + * @param field + */ + MetadataSchemaComponent.prototype.isSelected = function (field) { + return this.registryService.getSelectedMetadataFields().pipe(map(function (fields) { return fields.find(function (selectedField) { return selectedField === field; }) != null; })); + }; + /** + * Delete all the selected metadata fields + */ + MetadataSchemaComponent.prototype.deleteFields = function () { + var _this = this; + this.registryService.getSelectedMetadataFields().pipe(take(1)).subscribe(function (fields) { + var tasks$ = []; + for (var _i = 0, fields_1 = fields; _i < fields_1.length; _i++) { + var field = fields_1[_i]; + if (hasValue(field.id)) { + tasks$.push(_this.registryService.deleteMetadataField(field.id)); + } + } + zip.apply(void 0, tasks$).subscribe(function (responses) { + var successResponses = responses.filter(function (response) { return response.isSuccessful; }); + var failedResponses = responses.filter(function (response) { return !response.isSuccessful; }); + if (successResponses.length > 0) { + _this.showNotification(true, successResponses.length); + } + if (failedResponses.length > 0) { + _this.showNotification(false, failedResponses.length); + } + _this.registryService.deselectAllMetadataField(); + _this.registryService.cancelEditMetadataField(); + _this.forceUpdateFields(); + }); + }); + }; + /** + * Show notifications for an amount of deleted metadata fields + * @param success Whether or not the notification should be a success message (error message when false) + * @param amount The amount of deleted metadata fields + */ + MetadataSchemaComponent.prototype.showNotification = function (success, amount) { + var _this = this; + var prefix = 'admin.registries.schema.notification'; + var suffix = success ? 'success' : 'failure'; + var messages = observableCombineLatest(this.translateService.get(success ? prefix + "." + suffix : prefix + "." + suffix), this.translateService.get(prefix + ".field.deleted." + suffix, { amount: amount })); + messages.subscribe(function (_a) { + var head = _a[0], content = _a[1]; + if (success) { + _this.notificationsService.success(head, content); + } + else { + _this.notificationsService.error(head, content); + } + }); + }; + MetadataSchemaComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-schema', + templateUrl: './metadata-schema.component.html', + styleUrls: ['./metadata-schema.component.scss'] + }) + /** + * A component used for managing all existing metadata fields within the current metadata schema. + * The admin can create, edit or delete metadata fields here. + */ + , + tslib_1.__metadata("design:paramtypes", [RegistryService, + ActivatedRoute, + NotificationsService, + Router, + TranslateService]) + ], MetadataSchemaComponent); + return MetadataSchemaComponent; +}()); +export { MetadataSchemaComponent }; +//# sourceMappingURL=metadata-schema.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js.map b/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js.map new file mode 100644 index 0000000000..3cacdfd42f --- /dev/null +++ b/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-schema.component.js","sourceRoot":"","sources":["metadata-schema.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+admin/admin-routing.module.js b/src/app/+admin/admin-routing.module.js new file mode 100644 index 0000000000..07919572fd --- /dev/null +++ b/src/app/+admin/admin-routing.module.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { RouterModule } from '@angular/router'; +import { NgModule } from '@angular/core'; +var AdminRoutingModule = /** @class */ (function () { + function AdminRoutingModule() { + } + AdminRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { + path: 'registries', + loadChildren: './admin-registries/admin-registries.module#AdminRegistriesModule' + } + ]) + ] + }) + ], AdminRoutingModule); + return AdminRoutingModule; +}()); +export { AdminRoutingModule }; +//# sourceMappingURL=admin-routing.module.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-routing.module.js.map b/src/app/+admin/admin-routing.module.js.map new file mode 100644 index 0000000000..d54c058020 --- /dev/null +++ b/src/app/+admin/admin-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admin-routing.module.js","sourceRoot":"","sources":["admin-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAYzC;IAAA;IAEA,CAAC;IAFY,kBAAkB;QAV9B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,YAAY;wBAClB,YAAY,EAAE,kEAAkE;qBACjF;iBACF,CAAC;aACH;SACF,CAAC;OACW,kBAAkB,CAE9B;IAAD,yBAAC;CAAA,AAFD,IAEC;SAFY,kBAAkB"} \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js b/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js new file mode 100644 index 0000000000..659213e583 --- /dev/null +++ b/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js @@ -0,0 +1,40 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Injector } from '@angular/core'; +import { MenuSectionComponent } from '../../../shared/menu/menu-section/menu-section.component'; +import { MenuID } from '../../../shared/menu/initial-menus-state'; +import { MenuService } from '../../../shared/menu/menu.service'; +import { rendersSectionForMenu } from '../../../shared/menu/menu-section.decorator'; +import { MenuSection } from '../../../shared/menu/menu.reducer'; +/** + * Represents a non-expandable section in the admin sidebar + */ +var AdminSidebarSectionComponent = /** @class */ (function (_super) { + tslib_1.__extends(AdminSidebarSectionComponent, _super); + function AdminSidebarSectionComponent(menuSection, menuService, injector) { + var _this = _super.call(this, menuSection, menuService, injector) || this; + _this.menuService = menuService; + _this.injector = injector; + /** + * This section resides in the Admin Sidebar + */ + _this.menuID = MenuID.ADMIN; + _this.itemModel = menuSection.model; + return _this; + } + AdminSidebarSectionComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + }; + AdminSidebarSectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-admin-sidebar-section', + templateUrl: './admin-sidebar-section.component.html', + styleUrls: ['./admin-sidebar-section.component.scss'], + }), + rendersSectionForMenu(MenuID.ADMIN, false), + tslib_1.__param(0, Inject('sectionDataProvider')), + tslib_1.__metadata("design:paramtypes", [MenuSection, MenuService, Injector]) + ], AdminSidebarSectionComponent); + return AdminSidebarSectionComponent; +}(MenuSectionComponent)); +export { AdminSidebarSectionComponent }; +//# sourceMappingURL=admin-sidebar-section.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js.map b/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js.map new file mode 100644 index 0000000000..76944432ae --- /dev/null +++ b/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admin-sidebar-section.component.js","sourceRoot":"","sources":["admin-sidebar-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0DAA0D,CAAC;AAChG,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;GAEG;AAQH;IAAkD,wDAAoB;IAOpE,sCAA2C,WAAwB,EAAY,WAAwB,EAAY,QAAkB;QAArI,YACE,kBAAM,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,SAE1C;QAH8E,iBAAW,GAAX,WAAW,CAAa;QAAY,cAAQ,GAAR,QAAQ,CAAU;QALrI;;WAEG;QACH,YAAM,GAAW,MAAM,CAAC,KAAK,CAAC;QAI5B,KAAI,CAAC,SAAS,GAAG,WAAW,CAAC,KAA0B,CAAC;;IAC1D,CAAC;IAED,+CAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;IACnB,CAAC;IAdU,4BAA4B;QAPxC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,WAAW,EAAE,wCAAwC;YACrD,SAAS,EAAE,CAAC,wCAAwC,CAAC;SAEtD,CAAC;QACD,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC;QAQ5B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDAAc,WAAW,EAAyB,WAAW,EAAsB,QAAQ;OAP1H,4BAA4B,CAexC;IAAD,mCAAC;CAAA,AAfD,CAAkD,oBAAoB,GAerE;SAfY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/admin-sidebar.component.js b/src/app/+admin/admin-sidebar/admin-sidebar.component.js new file mode 100644 index 0000000000..0cd799b210 --- /dev/null +++ b/src/app/+admin/admin-sidebar/admin-sidebar.component.js @@ -0,0 +1,490 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector } from '@angular/core'; +import { slideHorizontal, slideSidebar } from '../../shared/animations/slide'; +import { CSSVariableService } from '../../shared/sass-helper/sass-helper.service'; +import { MenuService } from '../../shared/menu/menu.service'; +import { MenuID, MenuItemType } from '../../shared/menu/initial-menus-state'; +import { MenuComponent } from '../../shared/menu/menu.component'; +import { AuthService } from '../../core/auth/auth.service'; +import { first, map } from 'rxjs/operators'; +import { combineLatest as combineLatestObservable } from 'rxjs'; +import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; +import { CreateCommunityParentSelectorComponent } from '../../shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component'; +import { CreateCollectionParentSelectorComponent } from '../../shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component'; +import { EditItemSelectorComponent } from '../../shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component'; +import { EditCommunitySelectorComponent } from '../../shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component'; +import { EditCollectionSelectorComponent } from '../../shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component'; +/** + * Component representing the admin sidebar + */ +var AdminSidebarComponent = /** @class */ (function (_super) { + tslib_1.__extends(AdminSidebarComponent, _super); + function AdminSidebarComponent(menuService, injector, variableService, authService, modalService) { + var _this = _super.call(this, menuService, injector) || this; + _this.menuService = menuService; + _this.injector = injector; + _this.variableService = variableService; + _this.authService = authService; + _this.modalService = modalService; + /** + * The menu ID of the Navbar is PUBLIC + * @type {MenuID.ADMIN} + */ + _this.menuID = MenuID.ADMIN; + /** + * Is true when the sidebar is open, is false when the sidebar is animating or closed + * @type {boolean} + */ + _this.sidebarOpen = true; // Open in UI, animation finished + /** + * Is true when the sidebar is closed, is false when the sidebar is animating or open + * @type {boolean} + */ + _this.sidebarClosed = !_this.sidebarOpen; // Closed in UI, animation finished + return _this; + } + /** + * Set and calculate all initial values of the instance variables + */ + AdminSidebarComponent.prototype.ngOnInit = function () { + var _this = this; + this.createMenu(); + _super.prototype.ngOnInit.call(this); + this.sidebarWidth = this.variableService.getVariable('sidebarItemsWidth'); + this.authService.isAuthenticated() + .subscribe(function (loggedIn) { + if (loggedIn) { + _this.menuService.showMenu(_this.menuID); + } + }); + this.menuCollapsed.pipe(first()) + .subscribe(function (collapsed) { + _this.sidebarOpen = !collapsed; + _this.sidebarClosed = collapsed; + }); + this.sidebarExpanded = combineLatestObservable(this.menuCollapsed, this.menuPreviewCollapsed) + .pipe(map(function (_a) { + var collapsed = _a[0], previewCollapsed = _a[1]; + return (!collapsed || !previewCollapsed); + })); + }; + /** + * Initialize all menu sections and items for this menu + */ + AdminSidebarComponent.prototype.createMenu = function () { + var _this = this; + var menuList = [ + /* News */ + { + id: 'new', + active: false, + visible: true, + model: { + type: MenuItemType.TEXT, + text: 'menu.section.new' + }, + icon: 'plus-circle', + index: 0 + }, + { + id: 'new_community', + parentID: 'new', + active: false, + visible: true, + model: { + type: MenuItemType.ONCLICK, + text: 'menu.section.new_community', + function: function () { + _this.modalService.open(CreateCommunityParentSelectorComponent); + } + }, + }, + { + id: 'new_collection', + parentID: 'new', + active: false, + visible: true, + model: { + type: MenuItemType.ONCLICK, + text: 'menu.section.new_collection', + function: function () { + _this.modalService.open(CreateCollectionParentSelectorComponent); + } + }, + }, + { + id: 'new_item', + parentID: 'new', + active: false, + visible: true, + // model: { + // type: MenuItemType.ONCLICK, + // text: 'menu.section.new_item', + // function: () => { + // this.modalService.open(CreateItemParentSelectorComponent); + // } + // } as OnClickMenuItemModel, + model: { + type: MenuItemType.LINK, + text: 'menu.section.new_item', + link: '/submit' + }, + }, + { + id: 'new_item_version', + parentID: 'new', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.new_item_version', + link: '' + }, + }, + /* Edit */ + { + id: 'edit', + active: false, + visible: true, + model: { + type: MenuItemType.TEXT, + text: 'menu.section.edit' + }, + icon: 'pencil-alt', + index: 1 + }, + { + id: 'edit_community', + parentID: 'edit', + active: false, + visible: true, + model: { + type: MenuItemType.ONCLICK, + text: 'menu.section.edit_community', + function: function () { + _this.modalService.open(EditCommunitySelectorComponent); + } + }, + }, + { + id: 'edit_collection', + parentID: 'edit', + active: false, + visible: true, + model: { + type: MenuItemType.ONCLICK, + text: 'menu.section.edit_collection', + function: function () { + _this.modalService.open(EditCollectionSelectorComponent); + } + }, + }, + { + id: 'edit_item', + parentID: 'edit', + active: false, + visible: true, + model: { + type: MenuItemType.ONCLICK, + text: 'menu.section.edit_item', + function: function () { + _this.modalService.open(EditItemSelectorComponent); + } + }, + }, + /* Import */ + { + id: 'import', + active: false, + visible: true, + model: { + type: MenuItemType.TEXT, + text: 'menu.section.import' + }, + icon: 'sign-in-alt', + index: 2 + }, + { + id: 'import_metadata', + parentID: 'import', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.import_metadata', + link: '' + }, + }, + { + id: 'import_batch', + parentID: 'import', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.import_batch', + link: '' + }, + }, + /* Export */ + { + id: 'export', + active: false, + visible: true, + model: { + type: MenuItemType.TEXT, + text: 'menu.section.export' + }, + icon: 'sign-out-alt', + index: 3 + }, + { + id: 'export_community', + parentID: 'export', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.export_community', + link: '' + }, + }, + { + id: 'export_collection', + parentID: 'export', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.export_collection', + link: '' + }, + }, + { + id: 'export_item', + parentID: 'export', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.export_item', + link: '' + }, + }, { + id: 'export_metadata', + parentID: 'export', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.export_metadata', + link: '' + }, + }, + /* Access Control */ + { + id: 'access_control', + active: false, + visible: true, + model: { + type: MenuItemType.TEXT, + text: 'menu.section.access_control' + }, + icon: 'key', + index: 4 + }, + { + id: 'access_control_people', + parentID: 'access_control', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.access_control_people', + link: '' + }, + }, + { + id: 'access_control_groups', + parentID: 'access_control', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.access_control_groups', + link: '' + }, + }, + { + id: 'access_control_authorizations', + parentID: 'access_control', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.access_control_authorizations', + link: '' + }, + }, + /* Search */ + { + id: 'find', + active: false, + visible: true, + model: { + type: MenuItemType.TEXT, + text: 'menu.section.find' + }, + icon: 'search', + index: 5 + }, + { + id: 'find_items', + parentID: 'find', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.find_items', + link: '/search' + }, + }, + { + id: 'find_withdrawn_items', + parentID: 'find', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.find_withdrawn_items', + link: '' + }, + }, + { + id: 'find_private_items', + parentID: 'find', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.find_private_items', + link: '' + }, + }, + /* Registries */ + { + id: 'registries', + active: false, + visible: true, + model: { + type: MenuItemType.TEXT, + text: 'menu.section.registries' + }, + icon: 'list', + index: 6 + }, + { + id: 'registries_metadata', + parentID: 'registries', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.registries_metadata', + link: 'admin/registries/metadata' + }, + }, + { + id: 'registries_format', + parentID: 'registries', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.registries_format', + link: 'admin/registries/bitstream-formats' + }, + }, + /* Curation tasks */ + { + id: 'curation_tasks', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.curation_task', + link: '' + }, + icon: 'filter', + index: 7 + }, + /* Statistics */ + { + id: 'statistics_task', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.statistics_task', + link: '' + }, + icon: 'chart-bar', + index: 8 + }, + /* Control Panel */ + { + id: 'control_panel', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.control_panel', + link: '' + }, + icon: 'cogs', + index: 9 + }, + ]; + menuList.forEach(function (menuSection) { return _this.menuService.addSection(_this.menuID, menuSection); }); + }; + /** + * Method to change this.collapsed to false when the slide animation ends and is sliding open + * @param event The animation event + */ + AdminSidebarComponent.prototype.startSlide = function (event) { + if (event.toState === 'expanded') { + this.sidebarClosed = false; + } + else if (event.toState === 'collapsed') { + this.sidebarOpen = false; + } + }; + /** + * Method to change this.collapsed to false when the slide animation ends and is sliding open + * @param event The animation event + */ + AdminSidebarComponent.prototype.finishSlide = function (event) { + if (event.fromState === 'expanded') { + this.sidebarClosed = true; + } + else if (event.fromState === 'collapsed') { + this.sidebarOpen = true; + } + }; + AdminSidebarComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-admin-sidebar', + templateUrl: './admin-sidebar.component.html', + styleUrls: ['./admin-sidebar.component.scss'], + animations: [slideHorizontal, slideSidebar] + }), + tslib_1.__metadata("design:paramtypes", [MenuService, + Injector, + CSSVariableService, + AuthService, + NgbModal]) + ], AdminSidebarComponent); + return AdminSidebarComponent; +}(MenuComponent)); +export { AdminSidebarComponent }; +//# sourceMappingURL=admin-sidebar.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/admin-sidebar.component.js.map b/src/app/+admin/admin-sidebar/admin-sidebar.component.js.map new file mode 100644 index 0000000000..7c602f91a3 --- /dev/null +++ b/src/app/+admin/admin-sidebar/admin-sidebar.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admin-sidebar.component.js","sourceRoot":"","sources":["admin-sidebar.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js b/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js new file mode 100644 index 0000000000..2de22e1eb7 --- /dev/null +++ b/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js @@ -0,0 +1,58 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Injector } from '@angular/core'; +import { rotate } from '../../../shared/animations/rotate'; +import { AdminSidebarSectionComponent } from '../admin-sidebar-section/admin-sidebar-section.component'; +import { slide } from '../../../shared/animations/slide'; +import { CSSVariableService } from '../../../shared/sass-helper/sass-helper.service'; +import { bgColor } from '../../../shared/animations/bgColor'; +import { MenuID } from '../../../shared/menu/initial-menus-state'; +import { MenuService } from '../../../shared/menu/menu.service'; +import { combineLatest as combineLatestObservable } from 'rxjs'; +import { map } from 'rxjs/operators'; +import { rendersSectionForMenu } from '../../../shared/menu/menu-section.decorator'; +/** + * Represents a expandable section in the sidebar + */ +var ExpandableAdminSidebarSectionComponent = /** @class */ (function (_super) { + tslib_1.__extends(ExpandableAdminSidebarSectionComponent, _super); + function ExpandableAdminSidebarSectionComponent(menuSection, menuService, variableService, injector) { + var _this = _super.call(this, menuSection, menuService, injector) || this; + _this.menuService = menuService; + _this.variableService = variableService; + _this.injector = injector; + /** + * This section resides in the Admin Sidebar + */ + _this.menuID = MenuID.ADMIN; + return _this; + } + /** + * Set initial values for instance variables + */ + ExpandableAdminSidebarSectionComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + this.sidebarActiveBg = this.variableService.getVariable('adminSidebarActiveBg'); + this.sidebarCollapsed = this.menuService.isMenuCollapsed(this.menuID); + this.sidebarPreviewCollapsed = this.menuService.isMenuPreviewCollapsed(this.menuID); + this.expanded = combineLatestObservable(this.active, this.sidebarCollapsed, this.sidebarPreviewCollapsed) + .pipe(map(function (_a) { + var active = _a[0], sidebarCollapsed = _a[1], sidebarPreviewCollapsed = _a[2]; + return (active && (!sidebarCollapsed || !sidebarPreviewCollapsed)); + })); + }; + ExpandableAdminSidebarSectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-expandable-admin-sidebar-section', + templateUrl: './expandable-admin-sidebar-section.component.html', + styleUrls: ['./expandable-admin-sidebar-section.component.scss'], + animations: [rotate, slide, bgColor] + }), + rendersSectionForMenu(MenuID.ADMIN, true), + tslib_1.__param(0, Inject('sectionDataProvider')), + tslib_1.__metadata("design:paramtypes", [Object, MenuService, + CSSVariableService, Injector]) + ], ExpandableAdminSidebarSectionComponent); + return ExpandableAdminSidebarSectionComponent; +}(AdminSidebarSectionComponent)); +export { ExpandableAdminSidebarSectionComponent }; +//# sourceMappingURL=expandable-admin-sidebar-section.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js.map b/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js.map new file mode 100644 index 0000000000..9eb67f11e4 --- /dev/null +++ b/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"expandable-admin-sidebar-section.component.js","sourceRoot":"","sources":["expandable-admin-sidebar-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,0DAA0D,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,MAAM,MAAM,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAEpF;;GAEG;AASH;IAA4D,kEAA4B;IA2BtF,gDAA2C,WAAW,EAAY,WAAwB,EACtE,eAAmC,EAAY,QAAkB;QADrF,YAEE,kBAAM,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,SAC1C;QAHiE,iBAAW,GAAX,WAAW,CAAa;QACtE,qBAAe,GAAf,eAAe,CAAoB;QAAY,cAAQ,GAAR,QAAQ,CAAU;QA3BrF;;WAEG;QACH,YAAM,GAAG,MAAM,CAAC,KAAK,CAAC;;IA0BtB,CAAC;IAED;;OAEG;IACH,yDAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;QAChF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpF,IAAI,CAAC,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,uBAAuB,CAAC;aACtG,IAAI,CACH,GAAG,CAAC,UAAC,EAAmD;gBAAlD,cAAM,EAAE,wBAAgB,EAAE,+BAAuB;YAAM,OAAA,CAAC,MAAM,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAA3D,CAA2D,CAAC,CAC1H,CAAC;IACN,CAAC;IA5CU,sCAAsC;QARlD,SAAS,CAAC;YACT,QAAQ,EAAE,qCAAqC;YAC/C,WAAW,EAAE,mDAAmD;YAChE,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,UAAU,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC;SACrC,CAAC;QAED,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;QA4B3B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;yDAAqC,WAAW;YACrD,kBAAkB,EAAsB,QAAQ;OA5B1E,sCAAsC,CA6ClD;IAAD,6CAAC;CAAA,AA7CD,CAA4D,4BAA4B,GA6CvF;SA7CY,sCAAsC"} \ No newline at end of file diff --git a/src/app/+admin/admin.module.js b/src/app/+admin/admin.module.js new file mode 100644 index 0000000000..1fb1780ff6 --- /dev/null +++ b/src/app/+admin/admin.module.js @@ -0,0 +1,21 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { AdminRegistriesModule } from './admin-registries/admin-registries.module'; +import { AdminRoutingModule } from './admin-routing.module'; +import { SharedModule } from '../shared/shared.module'; +var AdminModule = /** @class */ (function () { + function AdminModule() { + } + AdminModule = tslib_1.__decorate([ + NgModule({ + imports: [ + AdminRegistriesModule, + AdminRoutingModule, + SharedModule, + ], + }) + ], AdminModule); + return AdminModule; +}()); +export { AdminModule }; +//# sourceMappingURL=admin.module.js.map \ No newline at end of file diff --git a/src/app/+admin/admin.module.js.map b/src/app/+admin/admin.module.js.map new file mode 100644 index 0000000000..9bb27d056d --- /dev/null +++ b/src/app/+admin/admin.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"admin.module.js","sourceRoot":"","sources":["admin.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AASvD;IAAA;IAEA,CAAC;IAFY,WAAW;QAPvB,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,qBAAqB;gBACrB,kBAAkB;gBAClB,YAAY;aACb;SACF,CAAC;OACW,WAAW,CAEvB;IAAD,kBAAC;CAAA,AAFD,IAEC;SAFY,WAAW"} \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js b/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js new file mode 100644 index 0000000000..ac6269177e --- /dev/null +++ b/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js @@ -0,0 +1,119 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, Inject } from '@angular/core'; +import { BrowseByMetadataPageComponent, browseParamsToOptions } from '../+browse-by-metadata-page/browse-by-metadata-page.component'; +import { BrowseEntrySearchOptions } from '../../core/browse/browse-entry-search-options.model'; +import { combineLatest as observableCombineLatest } from 'rxjs/internal/observable/combineLatest'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { ActivatedRoute, Router } from '@angular/router'; +import { BrowseService } from '../../core/browse/browse.service'; +import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { StartsWithType } from '../../shared/starts-with/starts-with-decorator'; +var BrowseByDatePageComponent = /** @class */ (function (_super) { + tslib_1.__extends(BrowseByDatePageComponent, _super); + function BrowseByDatePageComponent(config, route, browseService, dsoService, router, cdRef) { + var _this = _super.call(this, route, browseService, dsoService, router) || this; + _this.config = config; + _this.route = route; + _this.browseService = browseService; + _this.dsoService = dsoService; + _this.router = router; + _this.cdRef = cdRef; + /** + * The default metadata-field to use for determining the lower limit of the StartsWith dropdown options + */ + _this.defaultMetadataField = 'dc.date.issued'; + return _this; + } + BrowseByDatePageComponent.prototype.ngOnInit = function () { + var _this = this; + this.startsWithType = StartsWithType.date; + this.updatePage(new BrowseEntrySearchOptions(null, this.paginationConfig, this.sortConfig)); + this.subs.push(observableCombineLatest(this.route.params, this.route.queryParams, this.route.data, function (params, queryParams, data) { + return Object.assign({}, params, queryParams, data); + }) + .subscribe(function (params) { + var metadataField = params.metadataField || _this.defaultMetadataField; + _this.metadata = params.metadata || _this.defaultMetadata; + _this.startsWith = +params.startsWith || params.startsWith; + var searchOptions = browseParamsToOptions(params, Object.assign({}), _this.sortConfig, _this.metadata); + _this.updatePageWithItems(searchOptions, _this.value); + _this.updateParent(params.scope); + _this.updateStartsWithOptions(_this.metadata, metadataField, params.scope); + })); + }; + /** + * Update the StartsWith options + * In this implementation, it creates a list of years starting from now, going all the way back to the earliest + * date found on an item within this scope. The further back in time, the bigger the change in years become to avoid + * extremely long lists with a one-year difference. + * To determine the change in years, the config found under GlobalConfig.BrowseBy is used for this. + * @param definition The metadata definition to fetch the first item for + * @param metadataField The metadata field to fetch the earliest date from (expects a date field) + * @param scope The scope under which to fetch the earliest item for + */ + BrowseByDatePageComponent.prototype.updateStartsWithOptions = function (definition, metadataField, scope) { + var _this = this; + this.subs.push(this.browseService.getFirstItemFor(definition, scope).subscribe(function (firstItemRD) { + var lowerLimit = _this.config.browseBy.defaultLowerLimit; + if (hasValue(firstItemRD.payload)) { + var date = firstItemRD.payload.firstMetadataValue(metadataField); + if (hasValue(date) && hasValue(+date.split('-')[0])) { + lowerLimit = +date.split('-')[0]; + } + } + var options = []; + var currentYear = new Date().getFullYear(); + var oneYearBreak = Math.floor((currentYear - _this.config.browseBy.oneYearLimit) / 5) * 5; + var fiveYearBreak = Math.floor((currentYear - _this.config.browseBy.fiveYearLimit) / 10) * 10; + if (lowerLimit <= fiveYearBreak) { + lowerLimit -= 10; + } + else if (lowerLimit <= oneYearBreak) { + lowerLimit -= 5; + } + else { + lowerLimit -= 1; + } + var i = currentYear; + while (i > lowerLimit) { + options.push(i); + if (i <= fiveYearBreak) { + i -= 10; + } + else if (i <= oneYearBreak) { + i -= 5; + } + else { + i--; + } + } + if (isNotEmpty(options)) { + _this.startsWithOptions = options; + _this.cdRef.detectChanges(); + } + })); + }; + BrowseByDatePageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-browse-by-date-page', + styleUrls: ['../+browse-by-metadata-page/browse-by-metadata-page.component.scss'], + templateUrl: '../+browse-by-metadata-page/browse-by-metadata-page.component.html' + }) + /** + * Component for browsing items by metadata definition of type 'date' + * A metadata definition is a short term used to describe one or multiple metadata fields. + * An example would be 'dateissued' for 'dc.date.issued' + */ + , + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ActivatedRoute, + BrowseService, + DSpaceObjectDataService, + Router, + ChangeDetectorRef]) + ], BrowseByDatePageComponent); + return BrowseByDatePageComponent; +}(BrowseByMetadataPageComponent)); +export { BrowseByDatePageComponent }; +//# sourceMappingURL=browse-by-date-page.component.js.map \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js.map b/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js.map new file mode 100644 index 0000000000..2307b06672 --- /dev/null +++ b/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-by-date-page.component.js","sourceRoot":"","sources":["browse-by-date-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js b/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js new file mode 100644 index 0000000000..8b628ed6e6 --- /dev/null +++ b/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js @@ -0,0 +1,208 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { Component } from '@angular/core'; +import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; +import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; +import { ActivatedRoute, Router } from '@angular/router'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { BrowseService } from '../../core/browse/browse.service'; +import { BrowseEntrySearchOptions } from '../../core/browse/browse-entry-search-options.model'; +import { getSucceededRemoteData } from '../../core/shared/operators'; +import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.service'; +import { take } from 'rxjs/operators'; +import { StartsWithType } from '../../shared/starts-with/starts-with-decorator'; +var BrowseByMetadataPageComponent = /** @class */ (function () { + function BrowseByMetadataPageComponent(route, browseService, dsoService, router) { + this.route = route; + this.browseService = browseService; + this.dsoService = dsoService; + this.router = router; + /** + * The pagination config used to display the values + */ + this.paginationConfig = Object.assign(new PaginationComponentOptions(), { + id: 'browse-by-metadata-pagination', + currentPage: 1, + pageSize: 20 + }); + /** + * The sorting config used to sort the values (defaults to Ascending) + */ + this.sortConfig = new SortOptions('default', SortDirection.ASC); + /** + * List of subscriptions + */ + this.subs = []; + /** + * The default metadata definition to resort to when none is provided + */ + this.defaultMetadata = 'author'; + /** + * The current metadata definition + */ + this.metadata = this.defaultMetadata; + /** + * The type of StartsWith options to render + * Defaults to text + */ + this.startsWithType = StartsWithType.text; + /** + * The value we're browing items for + * - When the value is not empty, we're browsing items + * - When the value is empty, we're browsing browse-entries (values for the given metadata definition) + */ + this.value = ''; + } + BrowseByMetadataPageComponent.prototype.ngOnInit = function () { + var _this = this; + this.updatePage(new BrowseEntrySearchOptions(null, this.paginationConfig, this.sortConfig)); + this.subs.push(observableCombineLatest(this.route.params, this.route.queryParams, function (params, queryParams) { + return Object.assign({}, params, queryParams); + }) + .subscribe(function (params) { + _this.metadata = params.metadata || _this.defaultMetadata; + _this.value = +params.value || params.value || ''; + _this.startsWith = +params.startsWith || params.startsWith; + var searchOptions = browseParamsToOptions(params, _this.paginationConfig, _this.sortConfig, _this.metadata); + if (isNotEmpty(_this.value)) { + _this.updatePageWithItems(searchOptions, _this.value); + } + else { + _this.updatePage(searchOptions); + } + _this.updateParent(params.scope); + })); + this.updateStartsWithTextOptions(); + }; + /** + * Update the StartsWith options with text values + * It adds the value "0-9" as well as all letters from A to Z + */ + BrowseByMetadataPageComponent.prototype.updateStartsWithTextOptions = function () { + this.startsWithOptions = ['0-9'].concat('ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split('')); + }; + /** + * Updates the current page with searchOptions + * @param searchOptions Options to narrow down your search: + * { metadata: string + * pagination: PaginationComponentOptions, + * sort: SortOptions, + * scope: string } + */ + BrowseByMetadataPageComponent.prototype.updatePage = function (searchOptions) { + this.browseEntries$ = this.browseService.getBrowseEntriesFor(searchOptions); + this.items$ = undefined; + }; + /** + * Updates the current page with searchOptions and display items linked to the given value + * @param searchOptions Options to narrow down your search: + * { metadata: string + * pagination: PaginationComponentOptions, + * sort: SortOptions, + * scope: string } + * @param value The value of the browse-entry to display items for + */ + BrowseByMetadataPageComponent.prototype.updatePageWithItems = function (searchOptions, value) { + this.items$ = this.browseService.getBrowseItemsFor(value, searchOptions); + }; + /** + * Update the parent Community or Collection using their scope + * @param scope The UUID of the Community or Collection to fetch + */ + BrowseByMetadataPageComponent.prototype.updateParent = function (scope) { + if (hasValue(scope)) { + this.parent$ = this.dsoService.findById(scope).pipe(getSucceededRemoteData()); + } + }; + /** + * Navigate to the previous page + */ + BrowseByMetadataPageComponent.prototype.goPrev = function () { + var _this = this; + if (this.items$) { + this.items$.pipe(take(1)).subscribe(function (items) { + _this.items$ = _this.browseService.getPrevBrowseItems(items); + }); + } + else if (this.browseEntries$) { + this.browseEntries$.pipe(take(1)).subscribe(function (entries) { + _this.browseEntries$ = _this.browseService.getPrevBrowseEntries(entries); + }); + } + }; + /** + * Navigate to the next page + */ + BrowseByMetadataPageComponent.prototype.goNext = function () { + var _this = this; + if (this.items$) { + this.items$.pipe(take(1)).subscribe(function (items) { + _this.items$ = _this.browseService.getNextBrowseItems(items); + }); + } + else if (this.browseEntries$) { + this.browseEntries$.pipe(take(1)).subscribe(function (entries) { + _this.browseEntries$ = _this.browseService.getNextBrowseEntries(entries); + }); + } + }; + /** + * Change the page size + * @param size + */ + BrowseByMetadataPageComponent.prototype.pageSizeChange = function (size) { + this.router.navigate([], { + queryParams: Object.assign({ pageSize: size }), + queryParamsHandling: 'merge' + }); + }; + /** + * Change the sorting direction + * @param direction + */ + BrowseByMetadataPageComponent.prototype.sortDirectionChange = function (direction) { + this.router.navigate([], { + queryParams: Object.assign({ sortDirection: direction }), + queryParamsHandling: 'merge' + }); + }; + BrowseByMetadataPageComponent.prototype.ngOnDestroy = function () { + this.subs.filter(function (sub) { return hasValue(sub); }).forEach(function (sub) { return sub.unsubscribe(); }); + }; + BrowseByMetadataPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-browse-by-metadata-page', + styleUrls: ['./browse-by-metadata-page.component.scss'], + templateUrl: './browse-by-metadata-page.component.html' + }) + /** + * Component for browsing (items) by metadata definition + * A metadata definition is a short term used to describe one or multiple metadata fields. + * An example would be 'author' for 'dc.contributor.*' + */ + , + tslib_1.__metadata("design:paramtypes", [ActivatedRoute, + BrowseService, + DSpaceObjectDataService, + Router]) + ], BrowseByMetadataPageComponent); + return BrowseByMetadataPageComponent; +}()); +export { BrowseByMetadataPageComponent }; +/** + * Function to transform query and url parameters into searchOptions used to fetch browse entries or items + * @param params URL and query parameters + * @param paginationConfig Pagination configuration + * @param sortConfig Sorting configuration + * @param metadata Optional metadata definition to fetch browse entries/items for + */ +export function browseParamsToOptions(params, paginationConfig, sortConfig, metadata) { + return new BrowseEntrySearchOptions(metadata, Object.assign({}, paginationConfig, { + currentPage: +params.page || paginationConfig.currentPage, + pageSize: +params.pageSize || paginationConfig.pageSize + }), Object.assign({}, sortConfig, { + direction: params.sortDirection || sortConfig.direction, + field: params.sortField || sortConfig.field + }), +params.startsWith || params.startsWith, params.scope); +} +//# sourceMappingURL=browse-by-metadata-page.component.js.map \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js.map b/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js.map new file mode 100644 index 0000000000..8f0d92ed65 --- /dev/null +++ b/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-by-metadata-page.component.js","sourceRoot":"","sources":["browse-by-metadata-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js b/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js new file mode 100644 index 0000000000..5898e56095 --- /dev/null +++ b/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js @@ -0,0 +1,56 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { hasValue } from '../../shared/empty.util'; +import { BrowseByMetadataPageComponent, browseParamsToOptions } from '../+browse-by-metadata-page/browse-by-metadata-page.component'; +import { BrowseEntrySearchOptions } from '../../core/browse/browse-entry-search-options.model'; +import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.service'; +import { BrowseService } from '../../core/browse/browse.service'; +import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; +var BrowseByTitlePageComponent = /** @class */ (function (_super) { + tslib_1.__extends(BrowseByTitlePageComponent, _super); + function BrowseByTitlePageComponent(route, browseService, dsoService, router) { + var _this = _super.call(this, route, browseService, dsoService, router) || this; + _this.route = route; + _this.browseService = browseService; + _this.dsoService = dsoService; + _this.router = router; + return _this; + } + BrowseByTitlePageComponent.prototype.ngOnInit = function () { + var _this = this; + this.sortConfig = new SortOptions('dc.title', SortDirection.ASC); + this.updatePage(new BrowseEntrySearchOptions(null, this.paginationConfig, this.sortConfig)); + this.subs.push(observableCombineLatest(this.route.params, this.route.queryParams, this.route.data, function (params, queryParams, data) { + return Object.assign({}, params, queryParams, data); + }) + .subscribe(function (params) { + _this.metadata = params.metadata || _this.defaultMetadata; + _this.updatePageWithItems(browseParamsToOptions(params, _this.paginationConfig, _this.sortConfig, _this.metadata), undefined); + _this.updateParent(params.scope); + })); + this.updateStartsWithTextOptions(); + }; + BrowseByTitlePageComponent.prototype.ngOnDestroy = function () { + this.subs.filter(function (sub) { return hasValue(sub); }).forEach(function (sub) { return sub.unsubscribe(); }); + }; + BrowseByTitlePageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-browse-by-title-page', + styleUrls: ['../+browse-by-metadata-page/browse-by-metadata-page.component.scss'], + templateUrl: '../+browse-by-metadata-page/browse-by-metadata-page.component.html' + }) + /** + * Component for browsing items by title (dc.title) + */ + , + tslib_1.__metadata("design:paramtypes", [ActivatedRoute, + BrowseService, + DSpaceObjectDataService, + Router]) + ], BrowseByTitlePageComponent); + return BrowseByTitlePageComponent; +}(BrowseByMetadataPageComponent)); +export { BrowseByTitlePageComponent }; +//# sourceMappingURL=browse-by-title-page.component.js.map \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js.map b/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js.map new file mode 100644 index 0000000000..885e2fa159 --- /dev/null +++ b/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-by-title-page.component.js","sourceRoot":"","sources":["browse-by-title-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,MAAM,MAAM,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,EACtB,MAAM,+DAA+D,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAUxF;IAAgD,sDAA6B;IAE3E,oCAA6B,KAAqB,EACrB,aAA4B,EAC5B,UAAmC,EACnC,MAAc;QAH3C,YAIE,kBAAM,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,CAAC,SAChD;QAL4B,WAAK,GAAL,KAAK,CAAgB;QACrB,mBAAa,GAAb,aAAa,CAAe;QAC5B,gBAAU,GAAV,UAAU,CAAyB;QACnC,YAAM,GAAN,MAAM,CAAQ;;IAE3C,CAAC;IAED,6CAAQ,GAAR;QAAA,iBAiBC;QAhBC,IAAI,CAAC,UAAU,GAAG,IAAI,WAAW,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,CAAC,IAAI,wBAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC5F,IAAI,CAAC,IAAI,CAAC,IAAI,CACZ,uBAAuB,CACrB,IAAI,CAAC,KAAK,CAAC,MAAM,EACjB,IAAI,CAAC,KAAK,CAAC,WAAW,EACtB,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,UAAC,MAAM,EAAE,WAAW,EAAE,IAAI;YACxB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC;aACD,SAAS,CAAC,UAAC,MAAM;YAChB,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAI,CAAC,eAAe,CAAC;YACxD,KAAI,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,MAAM,EAAE,KAAI,CAAC,gBAAgB,EAAE,KAAI,CAAC,UAAU,EAAE,KAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;YAC1H,KAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACjC,CAAC,CAAC,CAAC,CAAC;QACR,IAAI,CAAC,2BAA2B,EAAE,CAAC;IACrC,CAAC;IAED,gDAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,GAAG,CAAC,EAAb,CAAa,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,WAAW,EAAE,EAAjB,CAAiB,CAAC,CAAC;IAC/E,CAAC;IA9BU,0BAA0B;QARtC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,oEAAoE,CAAC;YACjF,WAAW,EAAE,oEAAoE;SAClF,CAAC;QACF;;WAEG;;iDAGmC,cAAc;YACN,aAAa;YAChB,uBAAuB;YAC3B,MAAM;OALhC,0BAA0B,CAgCtC;IAAD,iCAAC;CAAA,AAhCD,CAAgD,6BAA6B,GAgC5E;SAhCY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+browse-by/browse-by-guard.js b/src/app/+browse-by/browse-by-guard.js new file mode 100644 index 0000000000..b717ee1353 --- /dev/null +++ b/src/app/+browse-by/browse-by-guard.js @@ -0,0 +1,57 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { DSpaceObjectDataService } from '../core/data/dspace-object-data.service'; +import { hasValue } from '../shared/empty.util'; +import { map } from 'rxjs/operators'; +import { getSucceededRemoteData } from '../core/shared/operators'; +import { TranslateService } from '@ngx-translate/core'; +import { of as observableOf } from 'rxjs'; +var BrowseByGuard = /** @class */ (function () { + function BrowseByGuard(dsoService, translate) { + this.dsoService = dsoService; + this.translate = translate; + } + BrowseByGuard.prototype.canActivate = function (route, state) { + var _this = this; + var title = route.data.title; + var metadata = route.params.metadata || route.queryParams.metadata || route.data.metadata; + var metadataField = route.data.metadataField; + var scope = route.queryParams.scope; + var value = route.queryParams.value; + var metadataTranslated = this.translate.instant('browse.metadata.' + metadata); + if (hasValue(scope)) { + var dsoAndMetadata$ = this.dsoService.findById(scope).pipe(getSucceededRemoteData()); + return dsoAndMetadata$.pipe(map(function (dsoRD) { + var name = dsoRD.payload.name; + route.data = _this.createData(title, metadata, metadataField, name, metadataTranslated, value); + return true; + })); + } + else { + route.data = this.createData(title, metadata, metadataField, '', metadataTranslated, value); + return observableOf(true); + } + }; + BrowseByGuard.prototype.createData = function (title, metadata, metadataField, collection, field, value) { + return { + title: title, + metadata: metadata, + metadataField: metadataField, + collection: collection, + field: field, + value: hasValue(value) ? "\"" + value + "\"" : '' + }; + }; + BrowseByGuard = tslib_1.__decorate([ + Injectable() + /** + * A guard taking care of the correct route.data being set for the Browse-By components + */ + , + tslib_1.__metadata("design:paramtypes", [DSpaceObjectDataService, + TranslateService]) + ], BrowseByGuard); + return BrowseByGuard; +}()); +export { BrowseByGuard }; +//# sourceMappingURL=browse-by-guard.js.map \ No newline at end of file diff --git a/src/app/+browse-by/browse-by-guard.js.map b/src/app/+browse-by/browse-by-guard.js.map new file mode 100644 index 0000000000..9d5ad93e14 --- /dev/null +++ b/src/app/+browse-by/browse-by-guard.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-by-guard.js","sourceRoot":"","sources":["browse-by-guard.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAM1C;IAEE,uBAAsB,UAAmC,EACnC,SAA2B;QAD3B,eAAU,GAAV,UAAU,CAAyB;QACnC,cAAS,GAAT,SAAS,CAAkB;IACjD,CAAC;IAED,mCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QAArE,iBAoBC;QAnBC,IAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAC/B,IAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC5F,IAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;QAC/C,IAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;QACtC,IAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;QACtC,IAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,GAAG,QAAQ,CAAC,CAAC;QACjF,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,IAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;YACvF,OAAO,eAAe,CAAC,IAAI,CACzB,GAAG,CAAC,UAAC,KAAK;gBACR,IAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAChC,KAAK,CAAC,IAAI,GAAG,KAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;gBAC9F,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CACH,CAAC;SACH;aAAM;YACL,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;YAC5F,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;SAC3B;IACH,CAAC;IAEO,kCAAU,GAAlB,UAAmB,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK;QACzE,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,QAAQ,EAAE,QAAQ;YAClB,aAAa,EAAE,aAAa;YAC5B,UAAU,EAAE,UAAU;YACtB,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAI,KAAK,OAAG,CAAC,CAAC,CAAC,EAAE;SAC3C,CAAA;IACH,CAAC;IArCU,aAAa;QAJzB,UAAU,EAAE;QACb;;WAEG;;iDAGiC,uBAAuB;YACxB,gBAAgB;OAHtC,aAAa,CAsCzB;IAAD,oBAAC;CAAA,AAtCD,IAsCC;SAtCY,aAAa"} \ No newline at end of file diff --git a/src/app/+browse-by/browse-by-routing.module.js b/src/app/+browse-by/browse-by-routing.module.js new file mode 100644 index 0000000000..18bc2d39be --- /dev/null +++ b/src/app/+browse-by/browse-by-routing.module.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { RouterModule } from '@angular/router'; +import { NgModule } from '@angular/core'; +import { BrowseByTitlePageComponent } from './+browse-by-title-page/browse-by-title-page.component'; +import { BrowseByMetadataPageComponent } from './+browse-by-metadata-page/browse-by-metadata-page.component'; +import { BrowseByDatePageComponent } from './+browse-by-date-page/browse-by-date-page.component'; +import { BrowseByGuard } from './browse-by-guard'; +var BrowseByRoutingModule = /** @class */ (function () { + function BrowseByRoutingModule() { + } + BrowseByRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { path: 'title', component: BrowseByTitlePageComponent, canActivate: [BrowseByGuard], data: { metadata: 'title', title: 'browse.title' } }, + { path: 'dateissued', component: BrowseByDatePageComponent, canActivate: [BrowseByGuard], data: { metadata: 'dateissued', metadataField: 'dc.date.issued', title: 'browse.title' } }, + { path: ':metadata', component: BrowseByMetadataPageComponent, canActivate: [BrowseByGuard], data: { title: 'browse.title' } } + ]) + ] + }) + ], BrowseByRoutingModule); + return BrowseByRoutingModule; +}()); +export { BrowseByRoutingModule }; +//# sourceMappingURL=browse-by-routing.module.js.map \ No newline at end of file diff --git a/src/app/+browse-by/browse-by-routing.module.js.map b/src/app/+browse-by/browse-by-routing.module.js.map new file mode 100644 index 0000000000..f30accd10a --- /dev/null +++ b/src/app/+browse-by/browse-by-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-by-routing.module.js","sourceRoot":"","sources":["browse-by-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAC7G,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAWlD;IAAA;IAEA,CAAC;IAFY,qBAAqB;QATjC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,WAAW,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;oBAC1I,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,yBAAyB,EAAE,WAAW,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;oBACpL,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,6BAA6B,EAAE,WAAW,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;iBAC/H,CAAC;aACH;SACF,CAAC;OACW,qBAAqB,CAEjC;IAAD,4BAAC;CAAA,AAFD,IAEC;SAFY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+browse-by/browse-by.module.js b/src/app/+browse-by/browse-by.module.js new file mode 100644 index 0000000000..4853ba7d8d --- /dev/null +++ b/src/app/+browse-by/browse-by.module.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { BrowseByTitlePageComponent } from './+browse-by-title-page/browse-by-title-page.component'; +import { ItemDataService } from '../core/data/item-data.service'; +import { SharedModule } from '../shared/shared.module'; +import { BrowseByRoutingModule } from './browse-by-routing.module'; +import { BrowseService } from '../core/browse/browse.service'; +import { BrowseByMetadataPageComponent } from './+browse-by-metadata-page/browse-by-metadata-page.component'; +import { BrowseByDatePageComponent } from './+browse-by-date-page/browse-by-date-page.component'; +import { BrowseByGuard } from './browse-by-guard'; +var BrowseByModule = /** @class */ (function () { + function BrowseByModule() { + } + BrowseByModule = tslib_1.__decorate([ + NgModule({ + imports: [ + BrowseByRoutingModule, + CommonModule, + SharedModule + ], + declarations: [ + BrowseByTitlePageComponent, + BrowseByMetadataPageComponent, + BrowseByDatePageComponent + ], + providers: [ + ItemDataService, + BrowseService, + BrowseByGuard + ] + }) + ], BrowseByModule); + return BrowseByModule; +}()); +export { BrowseByModule }; +//# sourceMappingURL=browse-by.module.js.map \ No newline at end of file diff --git a/src/app/+browse-by/browse-by.module.js.map b/src/app/+browse-by/browse-by.module.js.map new file mode 100644 index 0000000000..849859a17b --- /dev/null +++ b/src/app/+browse-by/browse-by.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-by.module.js","sourceRoot":"","sources":["browse-by.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAC7G,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAmBlD;IAAA;IAEA,CAAC;IAFY,cAAc;QAjB1B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,qBAAqB;gBACrB,YAAY;gBACZ,YAAY;aACb;YACD,YAAY,EAAE;gBACZ,0BAA0B;gBAC1B,6BAA6B;gBAC7B,yBAAyB;aAC1B;YACD,SAAS,EAAE;gBACT,eAAe;gBACf,aAAa;gBACb,aAAa;aACd;SACF,CAAC;OACW,cAAc,CAE1B;IAAD,qBAAC;CAAA,AAFD,IAEC;SAFY,cAAc"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-form/collection-form.component.js b/src/app/+collection-page/collection-form/collection-form.component.js new file mode 100644 index 0000000000..dcedd039e1 --- /dev/null +++ b/src/app/+collection-page/collection-form/collection-form.component.js @@ -0,0 +1,79 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { DynamicInputModel, DynamicTextAreaModel } from '@ng-dynamic-forms/core'; +import { ResourceType } from '../../core/shared/resource-type'; +import { Collection } from '../../core/shared/collection.model'; +import { ComColFormComponent } from '../../shared/comcol-forms/comcol-form/comcol-form.component'; +/** + * Form used for creating and editing collections + */ +var CollectionFormComponent = /** @class */ (function (_super) { + tslib_1.__extends(CollectionFormComponent, _super); + function CollectionFormComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * @type {Collection} A new collection when a collection is being created, an existing Input collection when a collection is being edited + */ + _this.dso = new Collection(); + /** + * @type {ResourceType.Collection} This is a collection-type form + */ + _this.type = ResourceType.Collection; + /** + * The dynamic form fields used for creating/editing a collection + * @type {(DynamicInputModel | DynamicTextAreaModel)[]} + */ + _this.formModel = [ + new DynamicInputModel({ + id: 'title', + name: 'dc.title', + required: true, + validators: { + required: null + }, + errorMessages: { + required: 'Please enter a name for this title' + }, + }), + new DynamicTextAreaModel({ + id: 'description', + name: 'dc.description', + }), + new DynamicTextAreaModel({ + id: 'abstract', + name: 'dc.description.abstract', + }), + new DynamicTextAreaModel({ + id: 'rights', + name: 'dc.rights', + }), + new DynamicTextAreaModel({ + id: 'tableofcontents', + name: 'dc.description.tableofcontents', + }), + new DynamicTextAreaModel({ + id: 'license', + name: 'dc.rights.license', + }), + new DynamicTextAreaModel({ + id: 'provenance', + name: 'dc.description.provenance', + }), + ]; + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Collection) + ], CollectionFormComponent.prototype, "dso", void 0); + CollectionFormComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-collection-form', + styleUrls: ['../../shared/comcol-forms/comcol-form/comcol-form.component.scss'], + templateUrl: '../../shared/comcol-forms/comcol-form/comcol-form.component.html' + }) + ], CollectionFormComponent); + return CollectionFormComponent; +}(ComColFormComponent)); +export { CollectionFormComponent }; +//# sourceMappingURL=collection-form.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-form/collection-form.component.js.map b/src/app/+collection-page/collection-form/collection-form.component.js.map new file mode 100644 index 0000000000..d561e71f40 --- /dev/null +++ b/src/app/+collection-page/collection-form/collection-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-form.component.js","sourceRoot":"","sources":["collection-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AAElG;;GAEG;AAMH;IAA6C,mDAA+B;IAL5E;QAAA,qEAyDC;QAnDC;;WAEG;QACM,SAAG,GAAe,IAAI,UAAU,EAAE,CAAC;QAE5C;;WAEG;QACO,UAAI,GAAG,YAAY,CAAC,UAAU,CAAC;QAEzC;;;WAGG;QACH,eAAS,GAA8B;YACrC,IAAI,iBAAiB,CAAC;gBACpB,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE,IAAI;iBACf;gBACD,aAAa,EAAE;oBACb,QAAQ,EAAE,oCAAoC;iBAC/C;aACF,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,aAAa;gBACjB,IAAI,EAAE,gBAAgB;aACvB,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,yBAAyB;aAChC,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,QAAQ;gBACZ,IAAI,EAAE,WAAW;aAClB,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,iBAAiB;gBACrB,IAAI,EAAE,gCAAgC;aACvC,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,SAAS;gBACb,IAAI,EAAE,mBAAmB;aAC1B,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,2BAA2B;aAClC,CAAC;SACH,CAAC;;IACJ,CAAC;IAhDU;QAAR,KAAK,EAAE;0CAAM,UAAU;wDAAoB;IAJjC,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,kEAAkE,CAAC;YAC/E,WAAW,EAAE,kEAAkE;SAChF,CAAC;OACW,uBAAuB,CAoDnC;IAAD,8BAAC;CAAA,AApDD,CAA6C,mBAAmB,GAoD/D;SApDY,uBAAuB"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-page-routing.module.js b/src/app/+collection-page/collection-page-routing.module.js new file mode 100644 index 0000000000..5f6eca2d75 --- /dev/null +++ b/src/app/+collection-page/collection-page-routing.module.js @@ -0,0 +1,74 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { CollectionPageComponent } from './collection-page.component'; +import { CollectionPageResolver } from './collection-page.resolver'; +import { CreateCollectionPageComponent } from './create-collection-page/create-collection-page.component'; +import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; +import { EditCollectionPageComponent } from './edit-collection-page/edit-collection-page.component'; +import { CreateCollectionPageGuard } from './create-collection-page/create-collection-page.guard'; +import { DeleteCollectionPageComponent } from './delete-collection-page/delete-collection-page.component'; +import { URLCombiner } from '../core/url-combiner/url-combiner'; +import { getCollectionModulePath } from '../app-routing.module'; +export var COLLECTION_PARENT_PARAMETER = 'parent'; +export function getCollectionPageRoute(collectionId) { + return new URLCombiner(getCollectionModulePath(), collectionId).toString(); +} +export function getCollectionEditPath(id) { + return new URLCombiner(getCollectionModulePath(), COLLECTION_EDIT_PATH.replace(/:id/, id)).toString(); +} +export function getCollectionCreatePath() { + return new URLCombiner(getCollectionModulePath(), COLLECTION_CREATE_PATH).toString(); +} +var COLLECTION_CREATE_PATH = 'create'; +var COLLECTION_EDIT_PATH = ':id/edit'; +var CollectionPageRoutingModule = /** @class */ (function () { + function CollectionPageRoutingModule() { + } + CollectionPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { + path: COLLECTION_CREATE_PATH, + component: CreateCollectionPageComponent, + canActivate: [AuthenticatedGuard, CreateCollectionPageGuard] + }, + { + path: COLLECTION_EDIT_PATH, + pathMatch: 'full', + component: EditCollectionPageComponent, + canActivate: [AuthenticatedGuard], + resolve: { + dso: CollectionPageResolver + } + }, + { + path: ':id/delete', + pathMatch: 'full', + component: DeleteCollectionPageComponent, + canActivate: [AuthenticatedGuard], + resolve: { + dso: CollectionPageResolver + } + }, + { + path: ':id', + component: CollectionPageComponent, + pathMatch: 'full', + resolve: { + collection: CollectionPageResolver + } + } + ]) + ], + providers: [ + CollectionPageResolver, + CreateCollectionPageGuard + ] + }) + ], CollectionPageRoutingModule); + return CollectionPageRoutingModule; +}()); +export { CollectionPageRoutingModule }; +//# sourceMappingURL=collection-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-page-routing.module.js.map b/src/app/+collection-page/collection-page-routing.module.js.map new file mode 100644 index 0000000000..bc3a317829 --- /dev/null +++ b/src/app/+collection-page/collection-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-page-routing.module.js","sourceRoot":"","sources":["collection-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,MAAM,CAAC,IAAM,2BAA2B,GAAG,QAAQ,CAAC;AAEpD,MAAM,iCAAiC,YAAoB;IACzD,OAAO,IAAI,WAAW,CAAC,uBAAuB,EAAE,EAAE,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC7E,CAAC;AAED,MAAM,gCAAgC,EAAU;IAC9C,OAAO,IAAI,WAAW,CAAC,uBAAuB,EAAE,EAAE,oBAAoB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AACvG,CAAC;AAED,MAAM;IACJ,OAAO,IAAI,WAAW,CAAC,uBAAuB,EAAE,EAAE,sBAAsB,CAAC,CAAC,QAAQ,EAAE,CAAA;AACtF,CAAC;AAED,IAAM,sBAAsB,GAAG,QAAQ,CAAC;AACxC,IAAM,oBAAoB,GAAG,UAAU,CAAC;AA2CxC;IAAA;IAEA,CAAC;IAFY,2BAA2B;QAzCvC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,sBAAsB;wBAC5B,SAAS,EAAE,6BAA6B;wBACxC,WAAW,EAAE,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;qBAC7D;oBACD;wBACE,IAAI,EAAE,oBAAoB;wBAC1B,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,2BAA2B;wBACtC,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,OAAO,EAAE;4BACP,GAAG,EAAE,sBAAsB;yBAC5B;qBACF;oBACD;wBACE,IAAI,EAAE,YAAY;wBAClB,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,6BAA6B;wBACxC,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,OAAO,EAAE;4BACP,GAAG,EAAE,sBAAsB;yBAC5B;qBACF;oBACD;wBACE,IAAI,EAAE,KAAK;wBACX,SAAS,EAAE,uBAAuB;wBAClC,SAAS,EAAE,MAAM;wBACjB,OAAO,EAAE;4BACP,UAAU,EAAE,sBAAsB;yBACnC;qBACF;iBACF,CAAC;aACH;YACD,SAAS,EAAE;gBACT,sBAAsB;gBACtB,yBAAyB;aAC1B;SACF,CAAC;OACW,2BAA2B,CAEvC;IAAD,kCAAC;CAAA,AAFD,IAEC;SAFY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.component.js b/src/app/+collection-page/collection-page.component.js new file mode 100644 index 0000000000..a742e85a08 --- /dev/null +++ b/src/app/+collection-page/collection-page.component.js @@ -0,0 +1,84 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { BehaviorSubject } from 'rxjs'; +import { filter, flatMap, map, startWith, switchMap, take } from 'rxjs/operators'; +import { PaginatedSearchOptions } from '../+search-page/paginated-search-options.model'; +import { SearchService } from '../+search-page/search-service/search.service'; +import { SortDirection, SortOptions } from '../core/cache/models/sort-options.model'; +import { CollectionDataService } from '../core/data/collection-data.service'; +import { MetadataService } from '../core/metadata/metadata.service'; +import { DSpaceObjectType } from '../core/shared/dspace-object-type.model'; +import { getSucceededRemoteData, redirectToPageNotFoundOn404, toDSpaceObjectListRD } from '../core/shared/operators'; +import { fadeIn, fadeInOut } from '../shared/animations/fade'; +import { hasValue, isNotEmpty } from '../shared/empty.util'; +import { PaginationComponentOptions } from '../shared/pagination/pagination-component-options.model'; +var CollectionPageComponent = /** @class */ (function () { + function CollectionPageComponent(collectionDataService, searchService, metadata, route, router) { + this.collectionDataService = collectionDataService; + this.searchService = searchService; + this.metadata = metadata; + this.route = route; + this.router = router; + this.paginationConfig = new PaginationComponentOptions(); + this.paginationConfig.id = 'collection-page-pagination'; + this.paginationConfig.pageSize = 5; + this.paginationConfig.currentPage = 1; + this.sortConfig = new SortOptions('dc.date.accessioned', SortDirection.DESC); + } + CollectionPageComponent.prototype.ngOnInit = function () { + var _this = this; + this.collectionRD$ = this.route.data.pipe(map(function (data) { return data.collection; }), redirectToPageNotFoundOn404(this.router), take(1)); + this.logoRD$ = this.collectionRD$.pipe(map(function (rd) { return rd.payload; }), filter(function (collection) { return hasValue(collection); }), flatMap(function (collection) { return collection.logo; })); + this.paginationChanges$ = new BehaviorSubject({ + paginationConfig: this.paginationConfig, + sortConfig: this.sortConfig + }); + this.itemRD$ = this.paginationChanges$.pipe(switchMap(function (dto) { return _this.collectionRD$.pipe(getSucceededRemoteData(), map(function (rd) { return rd.payload.id; }), switchMap(function (id) { + return _this.searchService.search(new PaginatedSearchOptions({ + scope: id, + pagination: dto.paginationConfig, + sort: dto.sortConfig, + dsoType: DSpaceObjectType.ITEM + })).pipe(toDSpaceObjectListRD()); + }), startWith(undefined) // Make sure switching pages shows loading component + ); })); + this.route.queryParams.pipe(take(1)).subscribe(function (params) { + _this.metadata.processRemoteData(_this.collectionRD$); + _this.onPaginationChange(params); + }); + }; + CollectionPageComponent.prototype.isNotEmpty = function (object) { + return isNotEmpty(object); + }; + CollectionPageComponent.prototype.onPaginationChange = function (event) { + this.paginationConfig.currentPage = +event.page || this.paginationConfig.currentPage; + this.paginationConfig.pageSize = +event.pageSize || this.paginationConfig.pageSize; + this.sortConfig.direction = event.sortDirection || this.sortConfig.direction; + this.sortConfig.field = event.sortField || this.sortConfig.field; + this.paginationChanges$.next({ + paginationConfig: this.paginationConfig, + sortConfig: this.sortConfig + }); + }; + CollectionPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-collection-page', + styleUrls: ['./collection-page.component.scss'], + templateUrl: './collection-page.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [ + fadeIn, + fadeInOut + ] + }), + tslib_1.__metadata("design:paramtypes", [CollectionDataService, + SearchService, + MetadataService, + ActivatedRoute, + Router]) + ], CollectionPageComponent); + return CollectionPageComponent; +}()); +export { CollectionPageComponent }; +//# sourceMappingURL=collection-page.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.component.js.map b/src/app/+collection-page/collection-page.component.js.map new file mode 100644 index 0000000000..b8afa2f9eb --- /dev/null +++ b/src/app/+collection-page/collection-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-page.component.js","sourceRoot":"","sources":["collection-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.module.js b/src/app/+collection-page/collection-page.module.js new file mode 100644 index 0000000000..a120a2afc2 --- /dev/null +++ b/src/app/+collection-page/collection-page.module.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { SharedModule } from '../shared/shared.module'; +import { CollectionPageComponent } from './collection-page.component'; +import { CollectionPageRoutingModule } from './collection-page-routing.module'; +import { CreateCollectionPageComponent } from './create-collection-page/create-collection-page.component'; +import { CollectionFormComponent } from './collection-form/collection-form.component'; +import { EditCollectionPageComponent } from './edit-collection-page/edit-collection-page.component'; +import { DeleteCollectionPageComponent } from './delete-collection-page/delete-collection-page.component'; +import { SearchService } from '../+search-page/search-service/search.service'; +var CollectionPageModule = /** @class */ (function () { + function CollectionPageModule() { + } + CollectionPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule, + CollectionPageRoutingModule + ], + declarations: [ + CollectionPageComponent, + CreateCollectionPageComponent, + EditCollectionPageComponent, + DeleteCollectionPageComponent, + CollectionFormComponent + ], + providers: [ + SearchService + ] + }) + ], CollectionPageModule); + return CollectionPageModule; +}()); +export { CollectionPageModule }; +//# sourceMappingURL=collection-page.module.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.module.js.map b/src/app/+collection-page/collection-page.module.js.map new file mode 100644 index 0000000000..d22adee8b0 --- /dev/null +++ b/src/app/+collection-page/collection-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-page.module.js","sourceRoot":"","sources":["collection-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAmB9E;IAAA;IAEA,CAAC;IAFY,oBAAoB;QAjBhC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,2BAA2B;aAC5B;YACD,YAAY,EAAE;gBACZ,uBAAuB;gBACvB,6BAA6B;gBAC7B,2BAA2B;gBAC3B,6BAA6B;gBAC7B,uBAAuB;aACxB;YACD,SAAS,EAAE;gBACT,aAAa;aACd;SACF,CAAC;OACW,oBAAoB,CAEhC;IAAD,2BAAC;CAAA,AAFD,IAEC;SAFY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.resolver.js b/src/app/+collection-page/collection-page.resolver.js new file mode 100644 index 0000000000..c89a239f95 --- /dev/null +++ b/src/app/+collection-page/collection-page.resolver.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { CollectionDataService } from '../core/data/collection-data.service'; +import { find } from 'rxjs/operators'; +import { hasValue } from '../shared/empty.util'; +/** + * This class represents a resolver that requests a specific collection before the route is activated + */ +var CollectionPageResolver = /** @class */ (function () { + function CollectionPageResolver(collectionService) { + this.collectionService = collectionService; + } + /** + * Method for resolving a collection based on the parameters in the current route + * @param {ActivatedRouteSnapshot} route The current ActivatedRouteSnapshot + * @param {RouterStateSnapshot} state The current RouterStateSnapshot + * @returns Observable<> Emits the found collection based on the parameters in the current route, + * or an error if something went wrong + */ + CollectionPageResolver.prototype.resolve = function (route, state) { + return this.collectionService.findById(route.params.id).pipe(find(function (RD) { return hasValue(RD.error) || RD.hasSucceeded; })); + }; + CollectionPageResolver = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [CollectionDataService]) + ], CollectionPageResolver); + return CollectionPageResolver; +}()); +export { CollectionPageResolver }; +//# sourceMappingURL=collection-page.resolver.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.resolver.js.map b/src/app/+collection-page/collection-page.resolver.js.map new file mode 100644 index 0000000000..3dfba260e5 --- /dev/null +++ b/src/app/+collection-page/collection-page.resolver.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-page.resolver.js","sourceRoot":"","sources":["collection-page.resolver.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;GAEG;AAEH;IACE,gCAAoB,iBAAwC;QAAxC,sBAAiB,GAAjB,iBAAiB,CAAuB;IAC5D,CAAC;IAED;;;;;;OAMG;IACH,wCAAO,GAAP,UAAQ,KAA6B,EAAE,KAA0B;QAC/D,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAC1D,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,YAAY,EAArC,CAAqC,CAAC,CACpD,CAAC;IACJ,CAAC;IAfU,sBAAsB;QADlC,UAAU,EAAE;iDAE4B,qBAAqB;OADjD,sBAAsB,CAgBlC;IAAD,6BAAC;CAAA,AAhBD,IAgBC;SAhBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+collection-page/create-collection-page/create-collection-page.component.js b/src/app/+collection-page/create-collection-page/create-collection-page.component.js new file mode 100644 index 0000000000..8f97a4ea87 --- /dev/null +++ b/src/app/+collection-page/create-collection-page/create-collection-page.component.js @@ -0,0 +1,36 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { CommunityDataService } from '../../core/data/community-data.service'; +import { RouteService } from '../../shared/services/route.service'; +import { Router } from '@angular/router'; +import { CreateComColPageComponent } from '../../shared/comcol-forms/create-comcol-page/create-comcol-page.component'; +import { CollectionDataService } from '../../core/data/collection-data.service'; +/** + * Component that represents the page where a user can create a new Collection + */ +var CreateCollectionPageComponent = /** @class */ (function (_super) { + tslib_1.__extends(CreateCollectionPageComponent, _super); + function CreateCollectionPageComponent(communityDataService, collectionDataService, routeService, router) { + var _this = _super.call(this, collectionDataService, communityDataService, routeService, router) || this; + _this.communityDataService = communityDataService; + _this.collectionDataService = collectionDataService; + _this.routeService = routeService; + _this.router = router; + _this.frontendURL = '/collections/'; + return _this; + } + CreateCollectionPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-create-collection', + styleUrls: ['./create-collection-page.component.scss'], + templateUrl: './create-collection-page.component.html' + }), + tslib_1.__metadata("design:paramtypes", [CommunityDataService, + CollectionDataService, + RouteService, + Router]) + ], CreateCollectionPageComponent); + return CreateCollectionPageComponent; +}(CreateComColPageComponent)); +export { CreateCollectionPageComponent }; +//# sourceMappingURL=create-collection-page.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/create-collection-page/create-collection-page.component.js.map b/src/app/+collection-page/create-collection-page/create-collection-page.component.js.map new file mode 100644 index 0000000000..2535e67a1e --- /dev/null +++ b/src/app/+collection-page/create-collection-page/create-collection-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"create-collection-page.component.js","sourceRoot":"","sources":["create-collection-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2EAA2E,CAAC;AAEtH,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF;;GAEG;AAMH;IAAmD,yDAAqC;IAGtF,uCACY,oBAA0C,EAC1C,qBAA4C,EAC5C,YAA0B,EAC1B,MAAc;QAJ1B,YAME,kBAAM,qBAAqB,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,CAAC,SACzE;QANW,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,2BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,kBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAM,GAAN,MAAM,CAAQ;QANhB,iBAAW,GAAG,eAAe,CAAC;;IASxC,CAAC;IAVU,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;iDAKkC,oBAAoB;YACnB,qBAAqB;YAC9B,YAAY;YAClB,MAAM;OAPf,6BAA6B,CAWzC;IAAD,oCAAC;CAAA,AAXD,CAAmD,yBAAyB,GAW3E;SAXY,6BAA6B"} \ No newline at end of file diff --git a/src/app/+collection-page/create-collection-page/create-collection-page.guard.js b/src/app/+collection-page/create-collection-page/create-collection-page.guard.js new file mode 100644 index 0000000000..41d75851c9 --- /dev/null +++ b/src/app/+collection-page/create-collection-page/create-collection-page.guard.js @@ -0,0 +1,45 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Router } from '@angular/router'; +import { hasNoValue, hasValue } from '../../shared/empty.util'; +import { CommunityDataService } from '../../core/data/community-data.service'; +import { getFinishedRemoteData } from '../../core/shared/operators'; +import { map, tap } from 'rxjs/operators'; +import { of as observableOf } from 'rxjs'; +/** + * Prevent creation of a collection without a parent community provided + * @class CreateCollectionPageGuard + */ +var CreateCollectionPageGuard = /** @class */ (function () { + function CreateCollectionPageGuard(router, communityService) { + this.router = router; + this.communityService = communityService; + } + /** + * True when either a parent ID query parameter has been provided and the parent ID resolves to a valid parent community + * Reroutes to a 404 page when the page cannot be activated + * @method canActivate + */ + CreateCollectionPageGuard.prototype.canActivate = function (route, state) { + var _this = this; + var parentID = route.queryParams.parent; + if (hasNoValue(parentID)) { + this.router.navigate(['/404']); + return observableOf(false); + } + var parent = this.communityService.findById(parentID) + .pipe(getFinishedRemoteData()); + return parent.pipe(map(function (communityRD) { return hasValue(communityRD) && communityRD.hasSucceeded && hasValue(communityRD.payload); }), tap(function (isValid) { + if (!isValid) { + _this.router.navigate(['/404']); + } + })); + }; + CreateCollectionPageGuard = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Router, CommunityDataService]) + ], CreateCollectionPageGuard); + return CreateCollectionPageGuard; +}()); +export { CreateCollectionPageGuard }; +//# sourceMappingURL=create-collection-page.guard.js.map \ No newline at end of file diff --git a/src/app/+collection-page/create-collection-page/create-collection-page.guard.js.map b/src/app/+collection-page/create-collection-page/create-collection-page.guard.js.map new file mode 100644 index 0000000000..77d53f7057 --- /dev/null +++ b/src/app/+collection-page/create-collection-page/create-collection-page.guard.js.map @@ -0,0 +1 @@ +{"version":3,"file":"create-collection-page.guard.js","sourceRoot":"","sources":["create-collection-page.guard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAuC,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAG9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAEtD;;;GAGG;AAEH;IACE,mCAA2B,MAAc,EAAU,gBAAsC;QAA9D,WAAM,GAAN,MAAM,CAAQ;QAAU,qBAAgB,GAAhB,gBAAgB,CAAsB;IACzF,CAAC;IAED;;;;OAIG;IACH,+CAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QAArE,iBAmBC;QAlBC,IAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;QAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;YACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/B,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;SAC5B;QACD,IAAM,MAAM,GAAsC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;aACvF,IAAI,CACH,qBAAqB,EAAE,CACxB,CAAC;QAEJ,OAAO,MAAM,CAAC,IAAI,CAChB,GAAG,CAAC,UAAC,WAAkC,IAAK,OAAA,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,YAAY,IAAI,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAlF,CAAkF,CAAC,EAC/H,GAAG,CAAC,UAAC,OAAgB;YACnB,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IA5BU,yBAAyB;QADrC,UAAU,EAAE;iDAEwB,MAAM,EAA4B,oBAAoB;OAD9E,yBAAyB,CA6BrC;IAAD,gCAAC;CAAA,AA7BD,IA6BC;SA7BY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js b/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js new file mode 100644 index 0000000000..c665f0f566 --- /dev/null +++ b/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { DeleteComColPageComponent } from '../../shared/comcol-forms/delete-comcol-page/delete-comcol-page.component'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { CollectionDataService } from '../../core/data/collection-data.service'; +import { TranslateService } from '@ngx-translate/core'; +/** + * Component that represents the page where a user can delete an existing Collection + */ +var DeleteCollectionPageComponent = /** @class */ (function (_super) { + tslib_1.__extends(DeleteCollectionPageComponent, _super); + function DeleteCollectionPageComponent(dsoDataService, router, route, notifications, translate) { + var _this = _super.call(this, dsoDataService, router, route, notifications, translate) || this; + _this.dsoDataService = dsoDataService; + _this.router = router; + _this.route = route; + _this.notifications = notifications; + _this.translate = translate; + _this.frontendURL = '/collections/'; + return _this; + } + DeleteCollectionPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-delete-collection', + styleUrls: ['./delete-collection-page.component.scss'], + templateUrl: './delete-collection-page.component.html' + }), + tslib_1.__metadata("design:paramtypes", [CollectionDataService, + Router, + ActivatedRoute, + NotificationsService, + TranslateService]) + ], DeleteCollectionPageComponent); + return DeleteCollectionPageComponent; +}(DeleteComColPageComponent)); +export { DeleteCollectionPageComponent }; +//# sourceMappingURL=delete-collection-page.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js.map b/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js.map new file mode 100644 index 0000000000..00071e93c9 --- /dev/null +++ b/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"delete-collection-page.component.js","sourceRoot":"","sources":["delete-collection-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2EAA2E,CAAC;AACtH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;GAEG;AAMH;IAAmD,yDAAqC;IAGtF,uCACY,cAAqC,EACrC,MAAc,EACd,KAAqB,EACrB,aAAmC,EACnC,SAA2B;QALvC,YAOE,kBAAM,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,SAC/D;QAPW,oBAAc,GAAd,cAAc,CAAuB;QACrC,YAAM,GAAN,MAAM,CAAQ;QACd,WAAK,GAAL,KAAK,CAAgB;QACrB,mBAAa,GAAb,aAAa,CAAsB;QACnC,eAAS,GAAT,SAAS,CAAkB;QAP7B,iBAAW,GAAG,eAAe,CAAC;;IAUxC,CAAC;IAXU,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;iDAK4B,qBAAqB;YAC7B,MAAM;YACP,cAAc;YACN,oBAAoB;YACxB,gBAAgB;OAR5B,6BAA6B,CAYzC;IAAD,oCAAC;CAAA,AAZD,CAAmD,yBAAyB,GAY3E;SAZY,6BAA6B"} \ No newline at end of file diff --git a/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js b/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js new file mode 100644 index 0000000000..501fbe6684 --- /dev/null +++ b/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { EditComColPageComponent } from '../../shared/comcol-forms/edit-comcol-page/edit-comcol-page.component'; +import { CollectionDataService } from '../../core/data/collection-data.service'; +/** + * Component that represents the page where a user can edit an existing Collection + */ +var EditCollectionPageComponent = /** @class */ (function (_super) { + tslib_1.__extends(EditCollectionPageComponent, _super); + function EditCollectionPageComponent(collectionDataService, router, route) { + var _this = _super.call(this, collectionDataService, router, route) || this; + _this.collectionDataService = collectionDataService; + _this.router = router; + _this.route = route; + _this.frontendURL = '/collections/'; + return _this; + } + EditCollectionPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-edit-collection', + styleUrls: ['./edit-collection-page.component.scss'], + templateUrl: './edit-collection-page.component.html' + }), + tslib_1.__metadata("design:paramtypes", [CollectionDataService, + Router, + ActivatedRoute]) + ], EditCollectionPageComponent); + return EditCollectionPageComponent; +}(EditComColPageComponent)); +export { EditCollectionPageComponent }; +//# sourceMappingURL=edit-collection-page.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js.map b/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js.map new file mode 100644 index 0000000000..a16ce783da --- /dev/null +++ b/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-collection-page.component.js","sourceRoot":"","sources":["edit-collection-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uEAAuE,CAAC;AAEhH,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF;;GAEG;AAMH;IAAiD,uDAAmC;IAGlF,qCACY,qBAA4C,EAC5C,MAAc,EACd,KAAqB;QAHjC,YAKE,kBAAM,qBAAqB,EAAE,MAAM,EAAE,KAAK,CAAC,SAC5C;QALW,2BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,YAAM,GAAN,MAAM,CAAQ;QACd,WAAK,GAAL,KAAK,CAAgB;QALvB,iBAAW,GAAG,eAAe,CAAC;;IAQxC,CAAC;IATU,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;iDAKmC,qBAAqB;YACpC,MAAM;YACP,cAAc;OANtB,2BAA2B,CAUvC;IAAD,kCAAC;CAAA,AAVD,CAAiD,uBAAuB,GAUvE;SAVY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+community-page/community-form/community-form.component.js b/src/app/+community-page/community-form/community-form.component.js new file mode 100644 index 0000000000..1e3a3ff52e --- /dev/null +++ b/src/app/+community-page/community-form/community-form.component.js @@ -0,0 +1,71 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { DynamicInputModel, DynamicTextAreaModel } from '@ng-dynamic-forms/core'; +import { Community } from '../../core/shared/community.model'; +import { ResourceType } from '../../core/shared/resource-type'; +import { ComColFormComponent } from '../../shared/comcol-forms/comcol-form/comcol-form.component'; +/** + * Form used for creating and editing communities + */ +var CommunityFormComponent = /** @class */ (function (_super) { + tslib_1.__extends(CommunityFormComponent, _super); + function CommunityFormComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * @type {Community} A new community when a community is being created, an existing Input community when a community is being edited + */ + _this.dso = new Community(); + /** + * @type {ResourceType.Community} This is a community-type form + */ + _this.type = ResourceType.Community; + /** + * The dynamic form fields used for creating/editing a community + * @type {(DynamicInputModel | DynamicTextAreaModel)[]} + */ + _this.formModel = [ + new DynamicInputModel({ + id: 'title', + name: 'dc.title', + required: true, + validators: { + required: null + }, + errorMessages: { + required: 'Please enter a name for this title' + }, + }), + new DynamicTextAreaModel({ + id: 'description', + name: 'dc.description', + }), + new DynamicTextAreaModel({ + id: 'abstract', + name: 'dc.description.abstract', + }), + new DynamicTextAreaModel({ + id: 'rights', + name: 'dc.rights', + }), + new DynamicTextAreaModel({ + id: 'tableofcontents', + name: 'dc.description.tableofcontents', + }), + ]; + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Community) + ], CommunityFormComponent.prototype, "dso", void 0); + CommunityFormComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-community-form', + styleUrls: ['../../shared/comcol-forms/comcol-form/comcol-form.component.scss'], + templateUrl: '../../shared/comcol-forms/comcol-form/comcol-form.component.html' + }) + ], CommunityFormComponent); + return CommunityFormComponent; +}(ComColFormComponent)); +export { CommunityFormComponent }; +//# sourceMappingURL=community-form.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-form/community-form.component.js.map b/src/app/+community-page/community-form/community-form.component.js.map new file mode 100644 index 0000000000..1c01094432 --- /dev/null +++ b/src/app/+community-page/community-form/community-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-form.component.js","sourceRoot":"","sources":["community-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEjF,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AAElG;;GAEG;AAMH;IAA4C,kDAA8B;IAL1E;QAAA,qEAiDC;QA3CC;;WAEG;QACM,SAAG,GAAc,IAAI,SAAS,EAAE,CAAC;QAE1C;;WAEG;QACO,UAAI,GAAG,YAAY,CAAC,SAAS,CAAC;QAExC;;;WAGG;QACH,eAAS,GAA8B;YACrC,IAAI,iBAAiB,CAAC;gBACpB,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE,IAAI;iBACf;gBACD,aAAa,EAAE;oBACb,QAAQ,EAAE,oCAAoC;iBAC/C;aACF,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,aAAa;gBACjB,IAAI,EAAE,gBAAgB;aACvB,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,yBAAyB;aAChC,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,QAAQ;gBACZ,IAAI,EAAE,WAAW;aAClB,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,iBAAiB;gBACrB,IAAI,EAAE,gCAAgC;aACvC,CAAC;SACH,CAAC;;IACJ,CAAC;IAxCU;QAAR,KAAK,EAAE;0CAAM,SAAS;uDAAmB;IAJ/B,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,kEAAkE,CAAC;YAC/E,WAAW,EAAE,kEAAkE;SAChF,CAAC;OACW,sBAAsB,CA4ClC;IAAD,6BAAC;CAAA,AA5CD,CAA4C,mBAAmB,GA4C9D;SA5CY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+community-page/community-page-routing.module.js b/src/app/+community-page/community-page-routing.module.js new file mode 100644 index 0000000000..90e57901b1 --- /dev/null +++ b/src/app/+community-page/community-page-routing.module.js @@ -0,0 +1,74 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { CommunityPageComponent } from './community-page.component'; +import { CommunityPageResolver } from './community-page.resolver'; +import { CreateCommunityPageComponent } from './create-community-page/create-community-page.component'; +import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; +import { EditCommunityPageComponent } from './edit-community-page/edit-community-page.component'; +import { CreateCommunityPageGuard } from './create-community-page/create-community-page.guard'; +import { DeleteCommunityPageComponent } from './delete-community-page/delete-community-page.component'; +import { URLCombiner } from '../core/url-combiner/url-combiner'; +import { getCommunityModulePath } from '../app-routing.module'; +export var COMMUNITY_PARENT_PARAMETER = 'parent'; +export function getCommunityPageRoute(communityId) { + return new URLCombiner(getCommunityModulePath(), communityId).toString(); +} +export function getCommunityEditPath(id) { + return new URLCombiner(getCommunityModulePath(), COMMUNITY_EDIT_PATH.replace(/:id/, id)).toString(); +} +export function getCommunityCreatePath() { + return new URLCombiner(getCommunityModulePath(), COMMUNITY_CREATE_PATH).toString(); +} +var COMMUNITY_CREATE_PATH = 'create'; +var COMMUNITY_EDIT_PATH = ':id/edit'; +var CommunityPageRoutingModule = /** @class */ (function () { + function CommunityPageRoutingModule() { + } + CommunityPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { + path: COMMUNITY_CREATE_PATH, + component: CreateCommunityPageComponent, + canActivate: [AuthenticatedGuard, CreateCommunityPageGuard] + }, + { + path: COMMUNITY_EDIT_PATH, + pathMatch: 'full', + component: EditCommunityPageComponent, + canActivate: [AuthenticatedGuard], + resolve: { + dso: CommunityPageResolver + } + }, + { + path: ':id/delete', + pathMatch: 'full', + component: DeleteCommunityPageComponent, + canActivate: [AuthenticatedGuard], + resolve: { + dso: CommunityPageResolver + } + }, + { + path: ':id', + component: CommunityPageComponent, + pathMatch: 'full', + resolve: { + community: CommunityPageResolver + } + } + ]) + ], + providers: [ + CommunityPageResolver, + CreateCommunityPageGuard + ] + }) + ], CommunityPageRoutingModule); + return CommunityPageRoutingModule; +}()); +export { CommunityPageRoutingModule }; +//# sourceMappingURL=community-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-page-routing.module.js.map b/src/app/+community-page/community-page-routing.module.js.map new file mode 100644 index 0000000000..068f814986 --- /dev/null +++ b/src/app/+community-page/community-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-page-routing.module.js","sourceRoot":"","sources":["community-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAC;AAC/F,OAAO,EAAE,4BAA4B,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,MAAM,CAAC,IAAM,0BAA0B,GAAG,QAAQ,CAAC;AAEnD,MAAM,gCAAgC,WAAmB;IACvD,OAAO,IAAI,WAAW,CAAC,sBAAsB,EAAE,EAAE,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC3E,CAAC;AAED,MAAM,+BAA+B,EAAU;IAC7C,OAAO,IAAI,WAAW,CAAC,sBAAsB,EAAE,EAAE,mBAAmB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AACrG,CAAC;AAED,MAAM;IACJ,OAAO,IAAI,WAAW,CAAC,sBAAsB,EAAE,EAAE,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAA;AACpF,CAAC;AAED,IAAM,qBAAqB,GAAG,QAAQ,CAAC;AACvC,IAAM,mBAAmB,GAAG,UAAU,CAAC;AA2CvC;IAAA;IAEA,CAAC;IAFY,0BAA0B;QAzCtC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,qBAAqB;wBAC3B,SAAS,EAAE,4BAA4B;wBACvC,WAAW,EAAE,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;qBAC5D;oBACD;wBACE,IAAI,EAAE,mBAAmB;wBACzB,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,0BAA0B;wBACrC,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,OAAO,EAAE;4BACP,GAAG,EAAE,qBAAqB;yBAC3B;qBACF;oBACD;wBACE,IAAI,EAAE,YAAY;wBAClB,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,4BAA4B;wBACvC,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,OAAO,EAAE;4BACP,GAAG,EAAE,qBAAqB;yBAC3B;qBACF;oBACD;wBACE,IAAI,EAAE,KAAK;wBACX,SAAS,EAAE,sBAAsB;wBACjC,SAAS,EAAE,MAAM;wBACjB,OAAO,EAAE;4BACP,SAAS,EAAE,qBAAqB;yBACjC;qBACF;iBACF,CAAC;aACH;YACD,SAAS,EAAE;gBACT,qBAAqB;gBACrB,wBAAwB;aACzB;SACF,CAAC;OACW,0BAA0B,CAEtC;IAAD,iCAAC;CAAA,AAFD,IAEC;SAFY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+community-page/community-page.component.js b/src/app/+community-page/community-page.component.js new file mode 100644 index 0000000000..bc42786fb2 --- /dev/null +++ b/src/app/+community-page/community-page.component.js @@ -0,0 +1,41 @@ +import * as tslib_1 from "tslib"; +import { mergeMap, filter, map } from 'rxjs/operators'; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { CommunityDataService } from '../core/data/community-data.service'; +import { MetadataService } from '../core/metadata/metadata.service'; +import { fadeInOut } from '../shared/animations/fade'; +import { hasValue } from '../shared/empty.util'; +import { redirectToPageNotFoundOn404 } from '../core/shared/operators'; +var CommunityPageComponent = /** @class */ (function () { + function CommunityPageComponent(communityDataService, metadata, route, router) { + this.communityDataService = communityDataService; + this.metadata = metadata; + this.route = route; + this.router = router; + } + CommunityPageComponent.prototype.ngOnInit = function () { + this.communityRD$ = this.route.data.pipe(map(function (data) { return data.community; }), redirectToPageNotFoundOn404(this.router)); + this.logoRD$ = this.communityRD$.pipe(map(function (rd) { return rd.payload; }), filter(function (community) { return hasValue(community); }), mergeMap(function (community) { return community.logo; })); + }; + CommunityPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-community-page', + styleUrls: ['./community-page.component.scss'], + templateUrl: './community-page.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [fadeInOut] + }) + /** + * This component represents a detail page for a single community + */ + , + tslib_1.__metadata("design:paramtypes", [CommunityDataService, + MetadataService, + ActivatedRoute, + Router]) + ], CommunityPageComponent); + return CommunityPageComponent; +}()); +export { CommunityPageComponent }; +//# sourceMappingURL=community-page.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-page.component.js.map b/src/app/+community-page/community-page.component.js.map new file mode 100644 index 0000000000..07d717eb39 --- /dev/null +++ b/src/app/+community-page/community-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-page.component.js","sourceRoot":"","sources":["community-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAqB,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAM3E,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAYvE;IAUE,gCACU,oBAA0C,EAC1C,QAAyB,EACzB,KAAqB,EACrB,MAAc;QAHd,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;QACrB,WAAM,GAAN,MAAM,CAAQ;IAGxB,CAAC;IAED,yCAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CACtC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,SAAkC,EAAvC,CAAuC,CAAC,EACtD,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CACzC,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CACnC,GAAG,CAAC,UAAC,EAAyB,IAAK,OAAA,EAAE,CAAC,OAAO,EAAV,CAAU,CAAC,EAC9C,MAAM,CAAC,UAAC,SAAoB,IAAK,OAAA,QAAQ,CAAC,SAAS,CAAC,EAAnB,CAAmB,CAAC,EACrD,QAAQ,CAAC,UAAC,SAAoB,IAAK,OAAA,SAAS,CAAC,IAAI,EAAd,CAAc,CAAC,CAAC,CAAC;IACxD,CAAC;IA5BU,sBAAsB;QAVlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;YAC9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QACF;;WAEG;;iDAY+B,oBAAoB;YAChC,eAAe;YAClB,cAAc;YACb,MAAM;OAdb,sBAAsB,CA8BlC;IAAD,6BAAC;CAAA,AA9BD,IA8BC;SA9BY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+community-page/community-page.module.js b/src/app/+community-page/community-page.module.js new file mode 100644 index 0000000000..539cd88251 --- /dev/null +++ b/src/app/+community-page/community-page.module.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { SharedModule } from '../shared/shared.module'; +import { CommunityPageComponent } from './community-page.component'; +import { CommunityPageSubCollectionListComponent } from './sub-collection-list/community-page-sub-collection-list.component'; +import { CommunityPageRoutingModule } from './community-page-routing.module'; +import { CommunityPageSubCommunityListComponent } from './sub-community-list/community-page-sub-community-list.component'; +import { CreateCommunityPageComponent } from './create-community-page/create-community-page.component'; +import { CommunityFormComponent } from './community-form/community-form.component'; +import { EditCommunityPageComponent } from './edit-community-page/edit-community-page.component'; +import { DeleteCommunityPageComponent } from './delete-community-page/delete-community-page.component'; +var CommunityPageModule = /** @class */ (function () { + function CommunityPageModule() { + } + CommunityPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule, + CommunityPageRoutingModule + ], + declarations: [ + CommunityPageComponent, + CommunityPageSubCollectionListComponent, + CommunityPageSubCommunityListComponent, + CreateCommunityPageComponent, + EditCommunityPageComponent, + DeleteCommunityPageComponent, + CommunityFormComponent + ] + }) + ], CommunityPageModule); + return CommunityPageModule; +}()); +export { CommunityPageModule }; +//# sourceMappingURL=community-page.module.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-page.module.js.map b/src/app/+community-page/community-page.module.js.map new file mode 100644 index 0000000000..cb88b79c67 --- /dev/null +++ b/src/app/+community-page/community-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-page.module.js","sourceRoot":"","sources":["community-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,uCAAuC,EAAE,MAAM,oEAAoE,CAAC;AAC7H,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAC,sCAAsC,EAAC,MAAM,kEAAkE,CAAC;AACxH,OAAO,EAAE,4BAA4B,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,4BAA4B,EAAE,MAAM,yDAAyD,CAAC;AAmBvG;IAAA;IAEA,CAAC;IAFY,mBAAmB;QAjB/B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,0BAA0B;aAC3B;YACD,YAAY,EAAE;gBACZ,sBAAsB;gBACtB,uCAAuC;gBACvC,sCAAsC;gBACtC,4BAA4B;gBAC5B,0BAA0B;gBAC1B,4BAA4B;gBAC5B,sBAAsB;aACvB;SACF,CAAC;OAEW,mBAAmB,CAE/B;IAAD,0BAAC;CAAA,AAFD,IAEC;SAFY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+community-page/community-page.resolver.js b/src/app/+community-page/community-page.resolver.js new file mode 100644 index 0000000000..0396229374 --- /dev/null +++ b/src/app/+community-page/community-page.resolver.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { CommunityDataService } from '../core/data/community-data.service'; +import { find } from 'rxjs/operators'; +import { hasValue } from '../shared/empty.util'; +/** + * This class represents a resolver that requests a specific community before the route is activated + */ +var CommunityPageResolver = /** @class */ (function () { + function CommunityPageResolver(communityService) { + this.communityService = communityService; + } + /** + * Method for resolving a community based on the parameters in the current route + * @param {ActivatedRouteSnapshot} route The current ActivatedRouteSnapshot + * @param {RouterStateSnapshot} state The current RouterStateSnapshot + * @returns Observable<> Emits the found community based on the parameters in the current route, + * or an error if something went wrong + */ + CommunityPageResolver.prototype.resolve = function (route, state) { + return this.communityService.findById(route.params.id).pipe(find(function (RD) { return hasValue(RD.error) || RD.hasSucceeded; })); + }; + CommunityPageResolver = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [CommunityDataService]) + ], CommunityPageResolver); + return CommunityPageResolver; +}()); +export { CommunityPageResolver }; +//# sourceMappingURL=community-page.resolver.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-page.resolver.js.map b/src/app/+community-page/community-page.resolver.js.map new file mode 100644 index 0000000000..0eb94034bf --- /dev/null +++ b/src/app/+community-page/community-page.resolver.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-page.resolver.js","sourceRoot":"","sources":["community-page.resolver.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAK3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;GAEG;AAEH;IACE,+BAAoB,gBAAsC;QAAtC,qBAAgB,GAAhB,gBAAgB,CAAsB;IAC1D,CAAC;IAED;;;;;;OAMG;IACH,uCAAO,GAAP,UAAQ,KAA6B,EAAE,KAA0B;QAC/D,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CACzD,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,YAAY,EAArC,CAAqC,CAAC,CACpD,CAAC;IACJ,CAAC;IAfU,qBAAqB;QADjC,UAAU,EAAE;iDAE2B,oBAAoB;OAD/C,qBAAqB,CAgBjC;IAAD,4BAAC;CAAA,AAhBD,IAgBC;SAhBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+community-page/create-community-page/create-community-page.component.js b/src/app/+community-page/create-community-page/create-community-page.component.js new file mode 100644 index 0000000000..ffab1ff99d --- /dev/null +++ b/src/app/+community-page/create-community-page/create-community-page.component.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { CommunityDataService } from '../../core/data/community-data.service'; +import { RouteService } from '../../shared/services/route.service'; +import { Router } from '@angular/router'; +import { CreateComColPageComponent } from '../../shared/comcol-forms/create-comcol-page/create-comcol-page.component'; +/** + * Component that represents the page where a user can create a new Community + */ +var CreateCommunityPageComponent = /** @class */ (function (_super) { + tslib_1.__extends(CreateCommunityPageComponent, _super); + function CreateCommunityPageComponent(communityDataService, routeService, router) { + var _this = _super.call(this, communityDataService, communityDataService, routeService, router) || this; + _this.communityDataService = communityDataService; + _this.routeService = routeService; + _this.router = router; + _this.frontendURL = '/communities/'; + return _this; + } + CreateCommunityPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-create-community', + styleUrls: ['./create-community-page.component.scss'], + templateUrl: './create-community-page.component.html' + }), + tslib_1.__metadata("design:paramtypes", [CommunityDataService, + RouteService, + Router]) + ], CreateCommunityPageComponent); + return CreateCommunityPageComponent; +}(CreateComColPageComponent)); +export { CreateCommunityPageComponent }; +//# sourceMappingURL=create-community-page.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/create-community-page/create-community-page.component.js.map b/src/app/+community-page/create-community-page/create-community-page.component.js.map new file mode 100644 index 0000000000..8b942217e7 --- /dev/null +++ b/src/app/+community-page/create-community-page/create-community-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"create-community-page.component.js","sourceRoot":"","sources":["create-community-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2EAA2E,CAAC;AAEtH;;GAEG;AAMH;IAAkD,wDAAoC;IAGpF,sCACY,oBAA0C,EAC1C,YAA0B,EAC1B,MAAc;QAH1B,YAKE,kBAAM,oBAAoB,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,CAAC,SACxE;QALW,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,kBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAM,GAAN,MAAM,CAAQ;QALhB,iBAAW,GAAG,eAAe,CAAC;;IAQxC,CAAC;IATU,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;SACtD,CAAC;iDAKkC,oBAAoB;YAC5B,YAAY;YAClB,MAAM;OANf,4BAA4B,CAUxC;IAAD,mCAAC;CAAA,AAVD,CAAkD,yBAAyB,GAU1E;SAVY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+community-page/create-community-page/create-community-page.guard.js b/src/app/+community-page/create-community-page/create-community-page.guard.js new file mode 100644 index 0000000000..13ca3f2f3f --- /dev/null +++ b/src/app/+community-page/create-community-page/create-community-page.guard.js @@ -0,0 +1,44 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Router } from '@angular/router'; +import { hasNoValue, hasValue } from '../../shared/empty.util'; +import { CommunityDataService } from '../../core/data/community-data.service'; +import { getFinishedRemoteData } from '../../core/shared/operators'; +import { map, tap } from 'rxjs/operators'; +import { of as observableOf } from 'rxjs'; +/** + * Prevent creation of a community with an invalid parent community provided + * @class CreateCommunityPageGuard + */ +var CreateCommunityPageGuard = /** @class */ (function () { + function CreateCommunityPageGuard(router, communityService) { + this.router = router; + this.communityService = communityService; + } + /** + * True when either NO parent ID query parameter has been provided, or the parent ID resolves to a valid parent community + * Reroutes to a 404 page when the page cannot be activated + * @method canActivate + */ + CreateCommunityPageGuard.prototype.canActivate = function (route, state) { + var _this = this; + var parentID = route.queryParams.parent; + if (hasNoValue(parentID)) { + return observableOf(true); + } + var parent = this.communityService.findById(parentID) + .pipe(getFinishedRemoteData()); + return parent.pipe(map(function (communityRD) { return hasValue(communityRD) && communityRD.hasSucceeded && hasValue(communityRD.payload); }), tap(function (isValid) { + if (!isValid) { + _this.router.navigate(['/404']); + } + })); + }; + CreateCommunityPageGuard = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Router, CommunityDataService]) + ], CreateCommunityPageGuard); + return CreateCommunityPageGuard; +}()); +export { CreateCommunityPageGuard }; +//# sourceMappingURL=create-community-page.guard.js.map \ No newline at end of file diff --git a/src/app/+community-page/create-community-page/create-community-page.guard.js.map b/src/app/+community-page/create-community-page/create-community-page.guard.js.map new file mode 100644 index 0000000000..4ce6534e18 --- /dev/null +++ b/src/app/+community-page/create-community-page/create-community-page.guard.js.map @@ -0,0 +1 @@ +{"version":3,"file":"create-community-page.guard.js","sourceRoot":"","sources":["create-community-page.guard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAuC,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAG9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAEtD;;;GAGG;AAEH;IACE,kCAA2B,MAAc,EAAU,gBAAsC;QAA9D,WAAM,GAAN,MAAM,CAAQ;QAAU,qBAAgB,GAAhB,gBAAgB,CAAsB;IACzF,CAAC;IAED;;;;OAIG;IACH,8CAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QAArE,iBAmBC;QAlBC,IAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;QAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;YACxB,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;SAC3B;QAED,IAAM,MAAM,GAAsC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;aACvF,IAAI,CACH,qBAAqB,EAAE,CACxB,CAAC;QAEJ,OAAO,MAAM,CAAC,IAAI,CAChB,GAAG,CAAC,UAAC,WAAkC,IAAK,OAAA,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,YAAY,IAAI,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAlF,CAAkF,CAAC,EAC/H,GAAG,CAAC,UAAC,OAAgB;YACnB,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IA5BU,wBAAwB;QADpC,UAAU,EAAE;iDAEwB,MAAM,EAA4B,oBAAoB;OAD9E,wBAAwB,CA6BpC;IAAD,+BAAC;CAAA,AA7BD,IA6BC;SA7BY,wBAAwB"} \ No newline at end of file diff --git a/src/app/+community-page/delete-community-page/delete-community-page.component.js b/src/app/+community-page/delete-community-page/delete-community-page.component.js new file mode 100644 index 0000000000..d440855302 --- /dev/null +++ b/src/app/+community-page/delete-community-page/delete-community-page.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { CommunityDataService } from '../../core/data/community-data.service'; +import { ActivatedRoute, Router } from '@angular/router'; +import { DeleteComColPageComponent } from '../../shared/comcol-forms/delete-comcol-page/delete-comcol-page.component'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { TranslateService } from '@ngx-translate/core'; +/** + * Component that represents the page where a user can delete an existing Community + */ +var DeleteCommunityPageComponent = /** @class */ (function (_super) { + tslib_1.__extends(DeleteCommunityPageComponent, _super); + function DeleteCommunityPageComponent(dsoDataService, router, route, notifications, translate) { + var _this = _super.call(this, dsoDataService, router, route, notifications, translate) || this; + _this.dsoDataService = dsoDataService; + _this.router = router; + _this.route = route; + _this.notifications = notifications; + _this.translate = translate; + _this.frontendURL = '/communities/'; + return _this; + } + DeleteCommunityPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-delete-community', + styleUrls: ['./delete-community-page.component.scss'], + templateUrl: './delete-community-page.component.html' + }), + tslib_1.__metadata("design:paramtypes", [CommunityDataService, + Router, + ActivatedRoute, + NotificationsService, + TranslateService]) + ], DeleteCommunityPageComponent); + return DeleteCommunityPageComponent; +}(DeleteComColPageComponent)); +export { DeleteCommunityPageComponent }; +//# sourceMappingURL=delete-community-page.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/delete-community-page/delete-community-page.component.js.map b/src/app/+community-page/delete-community-page/delete-community-page.component.js.map new file mode 100644 index 0000000000..33e1b40085 --- /dev/null +++ b/src/app/+community-page/delete-community-page/delete-community-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"delete-community-page.component.js","sourceRoot":"","sources":["delete-community-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2EAA2E,CAAC;AACtH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;GAEG;AAMH;IAAkD,wDAAoC;IAGpF,sCACY,cAAoC,EACpC,MAAc,EACd,KAAqB,EACrB,aAAmC,EACnC,SAA2B;QALvC,YAOE,kBAAM,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,SAC/D;QAPW,oBAAc,GAAd,cAAc,CAAsB;QACpC,YAAM,GAAN,MAAM,CAAQ;QACd,WAAK,GAAL,KAAK,CAAgB;QACrB,mBAAa,GAAb,aAAa,CAAsB;QACnC,eAAS,GAAT,SAAS,CAAkB;QAP7B,iBAAW,GAAG,eAAe,CAAC;;IAUxC,CAAC;IAXU,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;SACtD,CAAC;iDAK4B,oBAAoB;YAC5B,MAAM;YACP,cAAc;YACN,oBAAoB;YACxB,gBAAgB;OAR5B,4BAA4B,CAYxC;IAAD,mCAAC;CAAA,AAZD,CAAkD,yBAAyB,GAY1E;SAZY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+community-page/edit-community-page/edit-community-page.component.js b/src/app/+community-page/edit-community-page/edit-community-page.component.js new file mode 100644 index 0000000000..0f35b2512d --- /dev/null +++ b/src/app/+community-page/edit-community-page/edit-community-page.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { CommunityDataService } from '../../core/data/community-data.service'; +import { ActivatedRoute, Router } from '@angular/router'; +import { EditComColPageComponent } from '../../shared/comcol-forms/edit-comcol-page/edit-comcol-page.component'; +/** + * Component that represents the page where a user can edit an existing Community + */ +var EditCommunityPageComponent = /** @class */ (function (_super) { + tslib_1.__extends(EditCommunityPageComponent, _super); + function EditCommunityPageComponent(communityDataService, router, route) { + var _this = _super.call(this, communityDataService, router, route) || this; + _this.communityDataService = communityDataService; + _this.router = router; + _this.route = route; + _this.frontendURL = '/communities/'; + return _this; + } + EditCommunityPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-edit-community', + styleUrls: ['./edit-community-page.component.scss'], + templateUrl: './edit-community-page.component.html' + }), + tslib_1.__metadata("design:paramtypes", [CommunityDataService, + Router, + ActivatedRoute]) + ], EditCommunityPageComponent); + return EditCommunityPageComponent; +}(EditComColPageComponent)); +export { EditCommunityPageComponent }; +//# sourceMappingURL=edit-community-page.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/edit-community-page/edit-community-page.component.js.map b/src/app/+community-page/edit-community-page/edit-community-page.component.js.map new file mode 100644 index 0000000000..c887e94a53 --- /dev/null +++ b/src/app/+community-page/edit-community-page/edit-community-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-community-page.component.js","sourceRoot":"","sources":["edit-community-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uEAAuE,CAAC;AAEhH;;GAEG;AAMH;IAAgD,sDAAkC;IAGhF,oCACY,oBAA0C,EAC1C,MAAc,EACd,KAAqB;QAHjC,YAKE,kBAAM,oBAAoB,EAAE,MAAM,EAAE,KAAK,CAAC,SAC3C;QALW,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,YAAM,GAAN,MAAM,CAAQ;QACd,WAAK,GAAL,KAAK,CAAgB;QALvB,iBAAW,GAAG,eAAe,CAAC;;IAQxC,CAAC;IATU,0BAA0B;QALtC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;iDAKkC,oBAAoB;YAClC,MAAM;YACP,cAAc;OANtB,0BAA0B,CAUtC;IAAD,iCAAC;CAAA,AAVD,CAAgD,uBAAuB,GAUtE;SAVY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js b/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js new file mode 100644 index 0000000000..fc4b186bcc --- /dev/null +++ b/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Community } from '../../core/shared/community.model'; +import { fadeIn } from '../../shared/animations/fade'; +var CommunityPageSubCollectionListComponent = /** @class */ (function () { + function CommunityPageSubCollectionListComponent() { + } + CommunityPageSubCollectionListComponent.prototype.ngOnInit = function () { + this.subCollectionsRDObs = this.community.collections; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Community) + ], CommunityPageSubCollectionListComponent.prototype, "community", void 0); + CommunityPageSubCollectionListComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-community-page-sub-collection-list', + styleUrls: ['./community-page-sub-collection-list.component.scss'], + templateUrl: './community-page-sub-collection-list.component.html', + animations: [fadeIn] + }) + ], CommunityPageSubCollectionListComponent); + return CommunityPageSubCollectionListComponent; +}()); +export { CommunityPageSubCollectionListComponent }; +//# sourceMappingURL=community-page-sub-collection-list.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js.map b/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js.map new file mode 100644 index 0000000000..c0755b38ff --- /dev/null +++ b/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-page-sub-collection-list.component.js","sourceRoot":"","sources":["community-page-sub-collection-list.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAKzD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAE9D,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAStD;IAAA;IAOA,CAAC;IAHC,0DAAQ,GAAR;QACE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;IACxD,CAAC;IALQ;QAAR,KAAK,EAAE;0CAAY,SAAS;8EAAC;IADnB,uCAAuC;QANnD,SAAS,CAAC;YACT,QAAQ,EAAE,uCAAuC;YACjD,SAAS,EAAE,CAAC,qDAAqD,CAAC;YAClE,WAAW,EAAE,qDAAqD;YAClE,UAAU,EAAC,CAAC,MAAM,CAAC;SACpB,CAAC;OACW,uCAAuC,CAOnD;IAAD,8CAAC;CAAA,AAPD,IAOC;SAPY,uCAAuC"} \ No newline at end of file diff --git a/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js b/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js new file mode 100644 index 0000000000..ca0cda801f --- /dev/null +++ b/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Community } from '../../core/shared/community.model'; +import { fadeIn } from '../../shared/animations/fade'; +var CommunityPageSubCommunityListComponent = /** @class */ (function () { + /** + * Component to render the sub-communities of a Community + */ + function CommunityPageSubCommunityListComponent() { + } + CommunityPageSubCommunityListComponent.prototype.ngOnInit = function () { + this.subCommunitiesRDObs = this.community.subcommunities; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Community) + ], CommunityPageSubCommunityListComponent.prototype, "community", void 0); + CommunityPageSubCommunityListComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-community-page-sub-community-list', + styleUrls: ['./community-page-sub-community-list.component.scss'], + templateUrl: './community-page-sub-community-list.component.html', + animations: [fadeIn] + }) + /** + * Component to render the sub-communities of a Community + */ + ], CommunityPageSubCommunityListComponent); + return CommunityPageSubCommunityListComponent; +}()); +export { CommunityPageSubCommunityListComponent }; +//# sourceMappingURL=community-page-sub-community-list.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js.map b/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js.map new file mode 100644 index 0000000000..83b0940e12 --- /dev/null +++ b/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-page-sub-community-list.component.js","sourceRoot":"","sources":["community-page-sub-community-list.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAE9D,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAatD;IAHA;;OAEG;IACH;IAOA,CAAC;IAHC,yDAAQ,GAAR;QACE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;IAC3D,CAAC;IALQ;QAAR,KAAK,EAAE;0CAAY,SAAS;6EAAC;IADnB,sCAAsC;QATlD,SAAS,CAAC;YACT,QAAQ,EAAE,sCAAsC;YAChD,SAAS,EAAE,CAAC,oDAAoD,CAAC;YACjE,WAAW,EAAE,oDAAoD;YACjE,UAAU,EAAC,CAAC,MAAM,CAAC;SACpB,CAAC;QACF;;WAEG;OACU,sCAAsC,CAOlD;IAAD,6CAAC;CAAA,AAPD,IAOC;SAPY,sCAAsC"} \ No newline at end of file diff --git a/src/app/+home-page/home-news/home-news.component.js b/src/app/+home-page/home-news/home-news.component.js new file mode 100644 index 0000000000..12efdd2381 --- /dev/null +++ b/src/app/+home-page/home-news/home-news.component.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +var HomeNewsComponent = /** @class */ (function () { + /** + * Component to render the news section on the home page + */ + function HomeNewsComponent() { + } + HomeNewsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-home-news', + styleUrls: ['./home-news.component.scss'], + templateUrl: './home-news.component.html' + }) + /** + * Component to render the news section on the home page + */ + ], HomeNewsComponent); + return HomeNewsComponent; +}()); +export { HomeNewsComponent }; +//# sourceMappingURL=home-news.component.js.map \ No newline at end of file diff --git a/src/app/+home-page/home-news/home-news.component.js.map b/src/app/+home-page/home-news/home-news.component.js.map new file mode 100644 index 0000000000..3f9db2ee72 --- /dev/null +++ b/src/app/+home-page/home-news/home-news.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"home-news.component.js","sourceRoot":"","sources":["home-news.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAW1C;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,iBAAiB;QAT7B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;SAC1C,CAAC;QAEF;;WAEG;OACU,iBAAiB,CAE7B;IAAD,wBAAC;CAAA,AAFD,IAEC;SAFY,iBAAiB"} \ No newline at end of file diff --git a/src/app/+home-page/home-page-routing.module.js b/src/app/+home-page/home-page-routing.module.js new file mode 100644 index 0000000000..8da63d71ee --- /dev/null +++ b/src/app/+home-page/home-page-routing.module.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { HomePageComponent } from './home-page.component'; +var HomePageRoutingModule = /** @class */ (function () { + function HomePageRoutingModule() { + } + HomePageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { path: '', component: HomePageComponent, pathMatch: 'full', data: { title: 'home.title' } } + ]) + ] + }) + ], HomePageRoutingModule); + return HomePageRoutingModule; +}()); +export { HomePageRoutingModule }; +//# sourceMappingURL=home-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+home-page/home-page-routing.module.js.map b/src/app/+home-page/home-page-routing.module.js.map new file mode 100644 index 0000000000..0399763fc2 --- /dev/null +++ b/src/app/+home-page/home-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"home-page-routing.module.js","sourceRoot":"","sources":["home-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAS1D;IAAA;IAAqC,CAAC;IAAzB,qBAAqB;QAPjC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;iBAC7F,CAAC;aACH;SACF,CAAC;OACW,qBAAqB,CAAI;IAAD,4BAAC;CAAA,AAAtC,IAAsC;SAAzB,qBAAqB"} \ No newline at end of file diff --git a/src/app/+home-page/home-page.component.js b/src/app/+home-page/home-page.component.js new file mode 100644 index 0000000000..2b848cda4d --- /dev/null +++ b/src/app/+home-page/home-page.component.js @@ -0,0 +1,16 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +var HomePageComponent = /** @class */ (function () { + function HomePageComponent() { + } + HomePageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-home-page', + styleUrls: ['./home-page.component.scss'], + templateUrl: './home-page.component.html' + }) + ], HomePageComponent); + return HomePageComponent; +}()); +export { HomePageComponent }; +//# sourceMappingURL=home-page.component.js.map \ No newline at end of file diff --git a/src/app/+home-page/home-page.component.js.map b/src/app/+home-page/home-page.component.js.map new file mode 100644 index 0000000000..af97770d9b --- /dev/null +++ b/src/app/+home-page/home-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"home-page.component.js","sourceRoot":"","sources":["home-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAO1C;IAAA;IACA,CAAC;IADY,iBAAiB;QAL7B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;SAC1C,CAAC;OACW,iBAAiB,CAC7B;IAAD,wBAAC;CAAA,AADD,IACC;SADY,iBAAiB"} \ No newline at end of file diff --git a/src/app/+home-page/home-page.module.js b/src/app/+home-page/home-page.module.js new file mode 100644 index 0000000000..d751a3636f --- /dev/null +++ b/src/app/+home-page/home-page.module.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { SharedModule } from '../shared/shared.module'; +import { HomeNewsComponent } from './home-news/home-news.component'; +import { HomePageRoutingModule } from './home-page-routing.module'; +import { HomePageComponent } from './home-page.component'; +import { TopLevelCommunityListComponent } from './top-level-community-list/top-level-community-list.component'; +var HomePageModule = /** @class */ (function () { + function HomePageModule() { + } + HomePageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule, + HomePageRoutingModule + ], + declarations: [ + HomePageComponent, + TopLevelCommunityListComponent, + HomeNewsComponent, + ] + }) + ], HomePageModule); + return HomePageModule; +}()); +export { HomePageModule }; +//# sourceMappingURL=home-page.module.js.map \ No newline at end of file diff --git a/src/app/+home-page/home-page.module.js.map b/src/app/+home-page/home-page.module.js.map new file mode 100644 index 0000000000..ccc83d3a93 --- /dev/null +++ b/src/app/+home-page/home-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"home-page.module.js","sourceRoot":"","sources":["home-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+DAA+D,CAAC;AAc/G;IAAA;IAEA,CAAC;IAFY,cAAc;QAZ1B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,qBAAqB;aACtB;YACD,YAAY,EAAE;gBACZ,iBAAiB;gBACjB,8BAA8B;gBAC9B,iBAAiB;aAClB;SACF,CAAC;OACW,cAAc,CAE1B;IAAD,qBAAC;CAAA,AAFD,IAEC;SAFY,cAAc"} \ No newline at end of file diff --git a/src/app/+home-page/top-level-community-list/top-level-community-list.component.js b/src/app/+home-page/top-level-community-list/top-level-community-list.component.js new file mode 100644 index 0000000000..b5cce1cade --- /dev/null +++ b/src/app/+home-page/top-level-community-list/top-level-community-list.component.js @@ -0,0 +1,65 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { BehaviorSubject } from 'rxjs'; +import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; +import { CommunityDataService } from '../../core/data/community-data.service'; +import { fadeInOut } from '../../shared/animations/fade'; +import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; +import { take } from 'rxjs/operators'; +/** + * this component renders the Top-Level Community list + */ +var TopLevelCommunityListComponent = /** @class */ (function () { + function TopLevelCommunityListComponent(cds) { + this.cds = cds; + /** + * A list of remote data objects of all top communities + */ + this.communitiesRD$ = new BehaviorSubject({}); + this.config = new PaginationComponentOptions(); + this.config.id = 'top-level-pagination'; + this.config.pageSize = 5; + this.config.currentPage = 1; + this.sortConfig = new SortOptions('dc.title', SortDirection.ASC); + } + TopLevelCommunityListComponent.prototype.ngOnInit = function () { + this.updatePage(); + }; + /** + * Called when one of the pagination settings is changed + * @param event The new pagination data + */ + TopLevelCommunityListComponent.prototype.onPaginationChange = function (event) { + this.config.currentPage = event.page; + this.config.pageSize = event.pageSize; + this.sortConfig.field = event.sortField; + this.sortConfig.direction = event.sortDirection; + this.updatePage(); + }; + /** + * Update the list of top communities + */ + TopLevelCommunityListComponent.prototype.updatePage = function () { + var _this = this; + this.cds.findTop({ + currentPage: this.config.currentPage, + elementsPerPage: this.config.pageSize, + sort: { field: this.sortConfig.field, direction: this.sortConfig.direction } + }).pipe(take(1)).subscribe(function (results) { + _this.communitiesRD$.next(results); + }); + }; + TopLevelCommunityListComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-top-level-community-list', + styleUrls: ['./top-level-community-list.component.scss'], + templateUrl: './top-level-community-list.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [fadeInOut] + }), + tslib_1.__metadata("design:paramtypes", [CommunityDataService]) + ], TopLevelCommunityListComponent); + return TopLevelCommunityListComponent; +}()); +export { TopLevelCommunityListComponent }; +//# sourceMappingURL=top-level-community-list.component.js.map \ No newline at end of file diff --git a/src/app/+home-page/top-level-community-list/top-level-community-list.component.js.map b/src/app/+home-page/top-level-community-list/top-level-community-list.component.js.map new file mode 100644 index 0000000000..2b88ba2755 --- /dev/null +++ b/src/app/+home-page/top-level-community-list/top-level-community-list.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"top-level-community-list.component.js","sourceRoot":"","sources":["top-level-community-list.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAc,MAAM,MAAM,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAM9E,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4DAA4D,CAAC;AACxG,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC;;GAEG;AASH;IAgBE,wCAAoB,GAAyB;QAAzB,QAAG,GAAH,GAAG,CAAsB;QAf7C;;WAEG;QACH,mBAAc,GAA0D,IAAI,eAAe,CAAuC,EAAS,CAAC,CAAC;QAa3I,IAAI,CAAC,MAAM,GAAG,IAAI,0BAA0B,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,sBAAsB,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,WAAW,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;IACnE,CAAC;IAED,iDAAQ,GAAR;QACE,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,2DAAkB,GAAlB,UAAmB,KAAK;QACtB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACtC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC;QAChD,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,mDAAU,GAAV;QAAA,iBAQC;QAPC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YACf,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YACrC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;SAC7E,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,OAAO;YACjC,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IAnDU,8BAA8B;QAR1C,SAAS,CAAC;YACT,QAAQ,EAAE,6BAA6B;YACvC,SAAS,EAAE,CAAC,2CAA2C,CAAC;YACxD,WAAW,EAAE,2CAA2C;YACxD,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;iDAkByB,oBAAoB;OAhBlC,8BAA8B,CAoD1C;IAAD,qCAAC;CAAA,AApDD,IAoDC;SApDY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-operators.js b/src/app/+item-page/edit-item-page/edit-item-operators.js new file mode 100644 index 0000000000..c2df697b4c --- /dev/null +++ b/src/app/+item-page/edit-item-page/edit-item-operators.js @@ -0,0 +1,12 @@ +import { first } from 'rxjs/operators'; +import { getAllSucceededRemoteData } from '../../core/shared/operators'; +/** + * Return first Observable of a RemoteData object that complies to the provided predicate + * @param predicate + */ +export var findSuccessfulAccordingTo = function (predicate) { + return function (source) { + return source.pipe(getAllSucceededRemoteData(), first(predicate)); + }; +}; +//# sourceMappingURL=edit-item-operators.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-operators.js.map b/src/app/+item-page/edit-item-page/edit-item-operators.js.map new file mode 100644 index 0000000000..978b047b60 --- /dev/null +++ b/src/app/+item-page/edit-item-page/edit-item-operators.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-item-operators.js","sourceRoot":"","sources":["edit-item-operators.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,KAAK,EAAC,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAC,yBAAyB,EAAC,MAAM,6BAA6B,CAAC;AAEtE;;;GAGG;AACH,MAAM,CAAC,IAAM,yBAAyB,GAAG,UAAI,SAAyC;IACpF,OAAA,UAAC,MAAiC;QAChC,OAAA,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EACrC,KAAK,CAAC,SAAS,CAAC,CAAC;IADnB,CACmB;AAFrB,CAEqB,CAAC"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.component.js b/src/app/+item-page/edit-item-page/edit-item-page.component.js new file mode 100644 index 0000000000..66db98092f --- /dev/null +++ b/src/app/+item-page/edit-item-page/edit-item-page.component.js @@ -0,0 +1,49 @@ +import * as tslib_1 from "tslib"; +import { fadeIn, fadeInOut } from '../../shared/animations/fade'; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { map } from 'rxjs/operators'; +import { isNotEmpty } from '../../shared/empty.util'; +import { getItemPageRoute } from '../item-page-routing.module'; +var EditItemPageComponent = /** @class */ (function () { + function EditItemPageComponent(route, router) { + var _this = this; + this.route = route; + this.router = router; + this.router.events.subscribe(function () { + _this.currentPage = _this.route.snapshot.firstChild.routeConfig.path; + }); + } + EditItemPageComponent.prototype.ngOnInit = function () { + this.pages = this.route.routeConfig.children + .map(function (child) { return child.path; }) + .filter(function (path) { return isNotEmpty(path); }); // ignore reroutes + this.itemRD$ = this.route.data.pipe(map(function (data) { return data.item; })); + }; + /** + * Get the item page url + * @param item The item for which the url is requested + */ + EditItemPageComponent.prototype.getItemPage = function (item) { + return getItemPageRoute(item.id); + }; + EditItemPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-edit-item-page', + templateUrl: './edit-item-page.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [ + fadeIn, + fadeInOut + ] + }) + /** + * Page component for editing an item + */ + , + tslib_1.__metadata("design:paramtypes", [ActivatedRoute, Router]) + ], EditItemPageComponent); + return EditItemPageComponent; +}()); +export { EditItemPageComponent }; +//# sourceMappingURL=edit-item-page.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.component.js.map b/src/app/+item-page/edit-item-page/edit-item-page.component.js.map new file mode 100644 index 0000000000..4aa3f73f47 --- /dev/null +++ b/src/app/+item-page/edit-item-page/edit-item-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-item-page.component.js","sourceRoot":"","sources":["edit-item-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAc/D;IAiBE,+BAAoB,KAAqB,EAAU,MAAc;QAAjE,iBAIC;QAJmB,UAAK,GAAL,KAAK,CAAgB;QAAU,WAAM,GAAN,MAAM,CAAQ;QAC/D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;YAC3B,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,wCAAQ,GAAR;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ;aACzC,GAAG,CAAC,UAAC,KAAU,IAAK,OAAA,KAAK,CAAC,IAAI,EAAV,CAAU,CAAC;aAC/B,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,CAAC,CAAC,kBAAkB;QACjE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,EAAT,CAAS,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACH,2CAAW,GAAX,UAAY,IAAU;QACpB,OAAO,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAClC,CAAC;IApCU,qBAAqB;QAZjC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;YAC9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE;gBACV,MAAM;gBACN,SAAS;aACV;SACF,CAAC;QACF;;WAEG;;iDAkB0B,cAAc,EAAkB,MAAM;OAjBtD,qBAAqB,CAqCjC;IAAD,4BAAC;CAAA,AArCD,IAqCC;SArCY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.module.js b/src/app/+item-page/edit-item-page/edit-item-page.module.js new file mode 100644 index 0000000000..e2bde7edc4 --- /dev/null +++ b/src/app/+item-page/edit-item-page/edit-item-page.module.js @@ -0,0 +1,52 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { SharedModule } from '../../shared/shared.module'; +import { EditItemPageRoutingModule } from './edit-item-page.routing.module'; +import { EditItemPageComponent } from './edit-item-page.component'; +import { ItemStatusComponent } from './item-status/item-status.component'; +import { ItemOperationComponent } from './item-operation/item-operation.component'; +import { ModifyItemOverviewComponent } from './modify-item-overview/modify-item-overview.component'; +import { ItemWithdrawComponent } from './item-withdraw/item-withdraw.component'; +import { ItemReinstateComponent } from './item-reinstate/item-reinstate.component'; +import { AbstractSimpleItemActionComponent } from './simple-item-action/abstract-simple-item-action.component'; +import { ItemPrivateComponent } from './item-private/item-private.component'; +import { ItemPublicComponent } from './item-public/item-public.component'; +import { ItemDeleteComponent } from './item-delete/item-delete.component'; +import { ItemMetadataComponent } from './item-metadata/item-metadata.component'; +import { EditInPlaceFieldComponent } from './item-metadata/edit-in-place-field/edit-in-place-field.component'; +import { ItemBitstreamsComponent } from './item-bitstreams/item-bitstreams.component'; +/** + * Module that contains all components related to the Edit Item page administrator functionality + */ +var EditItemPageModule = /** @class */ (function () { + function EditItemPageModule() { + } + EditItemPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule, + EditItemPageRoutingModule + ], + declarations: [ + EditItemPageComponent, + ItemOperationComponent, + AbstractSimpleItemActionComponent, + ModifyItemOverviewComponent, + ItemWithdrawComponent, + ItemReinstateComponent, + ItemPrivateComponent, + ItemPublicComponent, + ItemDeleteComponent, + ItemStatusComponent, + ItemMetadataComponent, + ItemBitstreamsComponent, + EditInPlaceFieldComponent + ] + }) + ], EditItemPageModule); + return EditItemPageModule; +}()); +export { EditItemPageModule }; +//# sourceMappingURL=edit-item-page.module.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.module.js.map b/src/app/+item-page/edit-item-page/edit-item-page.module.js.map new file mode 100644 index 0000000000..430f30c211 --- /dev/null +++ b/src/app/+item-page/edit-item-page/edit-item-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-item-page.module.js","sourceRoot":"","sources":["edit-item-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,iCAAiC,EAAE,MAAM,4DAA4D,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mEAAmE,CAAC;AAC9G,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAEtF;;GAEG;AAuBH;IAAA;IAEA,CAAC;IAFY,kBAAkB;QAtB9B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,yBAAyB;aAC1B;YACD,YAAY,EAAE;gBACZ,qBAAqB;gBACrB,sBAAsB;gBACtB,iCAAiC;gBACjC,2BAA2B;gBAC3B,qBAAqB;gBACrB,sBAAsB;gBACtB,oBAAoB;gBACpB,mBAAmB;gBACnB,mBAAmB;gBACnB,mBAAmB;gBACnB,qBAAqB;gBACrB,uBAAuB;gBACvB,yBAAyB;aAC1B;SACF,CAAC;OACW,kBAAkB,CAE9B;IAAD,yBAAC;CAAA,AAFD,IAEC;SAFY,kBAAkB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js b/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js new file mode 100644 index 0000000000..1893e5e894 --- /dev/null +++ b/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js @@ -0,0 +1,114 @@ +import * as tslib_1 from "tslib"; +import { ItemPageResolver } from '../item-page.resolver'; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { EditItemPageComponent } from './edit-item-page.component'; +import { ItemWithdrawComponent } from './item-withdraw/item-withdraw.component'; +import { ItemReinstateComponent } from './item-reinstate/item-reinstate.component'; +import { ItemPrivateComponent } from './item-private/item-private.component'; +import { ItemPublicComponent } from './item-public/item-public.component'; +import { ItemDeleteComponent } from './item-delete/item-delete.component'; +import { ItemStatusComponent } from './item-status/item-status.component'; +import { ItemMetadataComponent } from './item-metadata/item-metadata.component'; +import { ItemBitstreamsComponent } from './item-bitstreams/item-bitstreams.component'; +var ITEM_EDIT_WITHDRAW_PATH = 'withdraw'; +var ITEM_EDIT_REINSTATE_PATH = 'reinstate'; +var ITEM_EDIT_PRIVATE_PATH = 'private'; +var ITEM_EDIT_PUBLIC_PATH = 'public'; +var ITEM_EDIT_DELETE_PATH = 'delete'; +/** + * Routing module that handles the routing for the Edit Item page administrator functionality + */ +var EditItemPageRoutingModule = /** @class */ (function () { + function EditItemPageRoutingModule() { + } + EditItemPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { + path: '', + component: EditItemPageComponent, + resolve: { + item: ItemPageResolver + }, + children: [ + { + path: '', + redirectTo: 'status', + }, + { + path: 'status', + component: ItemStatusComponent, + data: { title: 'item.edit.tabs.status.title' } + }, + { + path: 'bitstreams', + component: ItemBitstreamsComponent, + data: { title: 'item.edit.tabs.bitstreams.title' } + }, + { + path: 'metadata', + component: ItemMetadataComponent, + data: { title: 'item.edit.tabs.metadata.title' } + }, + { + path: 'view', + /* TODO - change when view page exists */ + component: ItemBitstreamsComponent, + data: { title: 'item.edit.tabs.view.title' } + }, + { + path: 'curate', + /* TODO - change when curate page exists */ + component: ItemBitstreamsComponent, + data: { title: 'item.edit.tabs.curate.title' } + }, + ] + }, + { + path: ITEM_EDIT_WITHDRAW_PATH, + component: ItemWithdrawComponent, + resolve: { + item: ItemPageResolver + } + }, + { + path: ITEM_EDIT_REINSTATE_PATH, + component: ItemReinstateComponent, + resolve: { + item: ItemPageResolver + } + }, + { + path: ITEM_EDIT_PRIVATE_PATH, + component: ItemPrivateComponent, + resolve: { + item: ItemPageResolver + } + }, + { + path: ITEM_EDIT_PUBLIC_PATH, + component: ItemPublicComponent, + resolve: { + item: ItemPageResolver + } + }, + { + path: ITEM_EDIT_DELETE_PATH, + component: ItemDeleteComponent, + resolve: { + item: ItemPageResolver + } + } + ]) + ], + providers: [ + ItemPageResolver, + ] + }) + ], EditItemPageRoutingModule); + return EditItemPageRoutingModule; +}()); +export { EditItemPageRoutingModule }; +//# sourceMappingURL=edit-item-page.routing.module.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js.map b/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js.map new file mode 100644 index 0000000000..85c2e5f787 --- /dev/null +++ b/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-item-page.routing.module.js","sourceRoot":"","sources":["edit-item-page.routing.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js b/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js new file mode 100644 index 0000000000..38c0841ba8 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +var ItemBitstreamsComponent = /** @class */ (function () { + /** + * Component for displaying an item's bitstreams edit page + */ + function ItemBitstreamsComponent() { + } + ItemBitstreamsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-bitstreams', + styleUrls: ['./item-bitstreams.component.scss'], + templateUrl: './item-bitstreams.component.html', + }) + /** + * Component for displaying an item's bitstreams edit page + */ + ], ItemBitstreamsComponent); + return ItemBitstreamsComponent; +}()); +export { ItemBitstreamsComponent }; +//# sourceMappingURL=item-bitstreams.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js.map b/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js.map new file mode 100644 index 0000000000..3398c40f25 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-bitstreams.component.js","sourceRoot":"","sources":["item-bitstreams.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAU1C;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,uBAAuB;QARnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,kCAAkC,CAAC;YAC/C,WAAW,EAAE,kCAAkC;SAChD,CAAC;QACF;;WAEG;OACU,uBAAuB,CAEnC;IAAD,8BAAC;CAAA,AAFD,IAEC;SAFY,uBAAuB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js b/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js new file mode 100644 index 0000000000..bc12c6d8ec --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js @@ -0,0 +1,48 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { first } from 'rxjs/operators'; +import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; +import { getItemEditPath } from '../../item-page-routing.module'; +var ItemDeleteComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemDeleteComponent, _super); + function ItemDeleteComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.messageKey = 'delete'; + return _this; + } + /** + * Perform the delete action to the item + */ + ItemDeleteComponent.prototype.performAction = function () { + var _this = this; + this.itemDataService.delete(this.item).pipe(first()).subscribe(function (succeeded) { + _this.notify(succeeded); + }); + }; + /** + * When the item is successfully delete, navigate to the homepage, otherwise navigate back to the item edit page + * @param response + */ + ItemDeleteComponent.prototype.notify = function (succeeded) { + if (succeeded) { + this.notificationsService.success(this.translateService.get('item.edit.' + this.messageKey + '.success')); + this.router.navigate(['']); + } + else { + this.notificationsService.error(this.translateService.get('item.edit.' + this.messageKey + '.error')); + this.router.navigate([getItemEditPath(this.item.id)]); + } + }; + ItemDeleteComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-delete', + templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' + }) + /** + * Component responsible for rendering the item delete page + */ + ], ItemDeleteComponent); + return ItemDeleteComponent; +}(AbstractSimpleItemActionComponent)); +export { ItemDeleteComponent }; +//# sourceMappingURL=item-delete.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js.map b/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js.map new file mode 100644 index 0000000000..41b8303672 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-delete.component.js","sourceRoot":"","sources":["item-delete.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAChH,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAUjE;IAAyC,+CAAiC;IAP1E;QAAA,qEAmCC;QA1BW,gBAAU,GAAG,QAAQ,CAAC;;IA0BlC,CAAC;IAxBC;;OAEG;IACH,2CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC5D,UAAC,SAAkB;YACjB,KAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,oCAAM,GAAN,UAAO,SAAkB;QACvB,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC;YAC1G,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC5B;aAAM;YACL,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC;YACtG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SACvD;IACH,CAAC;IA3BU,mBAAmB;QAP/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,mBAAmB,CA4B/B;IAAD,0BAAC;CAAA,AA5BD,CAAyC,iCAAiC,GA4BzE;SA5BY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js b/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js new file mode 100644 index 0000000000..714a487ce3 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js @@ -0,0 +1,159 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { hasValue, isNotEmpty } from '../../../../shared/empty.util'; +import { RegistryService } from '../../../../core/registry/registry.service'; +import { cloneDeep } from 'lodash'; +import { BehaviorSubject, of as observableOf } from 'rxjs'; +import { map, take } from 'rxjs/operators'; +import { FieldChangeType } from '../../../../core/data/object-updates/object-updates.actions'; +import { ObjectUpdatesService } from '../../../../core/data/object-updates/object-updates.service'; +var EditInPlaceFieldComponent = /** @class */ (function () { + function EditInPlaceFieldComponent(metadataFieldService, objectUpdatesService) { + this.metadataFieldService = metadataFieldService; + this.objectUpdatesService = objectUpdatesService; + /** + * The current suggestions for the metadatafield when editing + */ + this.metadataFieldSuggestions = new BehaviorSubject([]); + } + /** + * Sets up an observable that keeps track of the current editable and valid state of this field + */ + EditInPlaceFieldComponent.prototype.ngOnInit = function () { + this.editable = this.objectUpdatesService.isEditable(this.url, this.metadata.uuid); + this.valid = this.objectUpdatesService.isValid(this.url, this.metadata.uuid); + }; + /** + * Sends a new change update for this field to the object updates service + */ + EditInPlaceFieldComponent.prototype.update = function (ngModel) { + this.objectUpdatesService.saveChangeFieldUpdate(this.url, this.metadata); + if (hasValue(ngModel)) { + this.checkValidity(ngModel); + } + }; + /** + * Method to check the validity of a form control + * @param ngModel + */ + EditInPlaceFieldComponent.prototype.checkValidity = function (ngModel) { + ngModel.control.setValue(ngModel.viewModel); + ngModel.control.updateValueAndValidity(); + this.objectUpdatesService.setValidFieldUpdate(this.url, this.metadata.uuid, ngModel.control.valid); + }; + /** + * Sends a new editable state for this field to the service to change it + * @param editable The new editable state for this field + */ + EditInPlaceFieldComponent.prototype.setEditable = function (editable) { + this.objectUpdatesService.setEditableFieldUpdate(this.url, this.metadata.uuid, editable); + }; + /** + * Sends a new remove update for this field to the object updates service + */ + EditInPlaceFieldComponent.prototype.remove = function () { + this.objectUpdatesService.saveRemoveFieldUpdate(this.url, this.metadata); + }; + /** + * Notifies the object updates service that the updates for the current field can be removed + */ + EditInPlaceFieldComponent.prototype.removeChangesFromField = function () { + this.objectUpdatesService.removeSingleFieldUpdate(this.url, this.metadata.uuid); + }; + /** + * Sets the current metadatafield based on the fieldUpdate input field + */ + EditInPlaceFieldComponent.prototype.ngOnChanges = function () { + this.metadata = cloneDeep(this.fieldUpdate.field); + }; + /** + * Requests all metadata fields that contain the query string in their key + * Then sets all found metadata fields as metadataFieldSuggestions + * @param query The query to look for + */ + EditInPlaceFieldComponent.prototype.findMetadataFieldSuggestions = function (query) { + var _this = this; + if (isNotEmpty(query)) { + this.metadataFieldService.queryMetadataFields(query).pipe( + // getSucceededRemoteData(), + take(1), map(function (data) { return data.payload.page; })).subscribe(function (fields) { return _this.metadataFieldSuggestions.next(fields.map(function (field) { + return { + displayValue: field.toString().split('.').join('.​'), + value: field.toString() + }; + })); }); + } + else { + this.metadataFieldSuggestions.next([]); + } + }; + /** + * Check if a user should be allowed to edit this field + * @return an observable that emits true when the user should be able to edit this field and false when they should not + */ + EditInPlaceFieldComponent.prototype.canSetEditable = function () { + var _this = this; + return this.editable.pipe(map(function (editable) { + if (editable) { + return false; + } + else { + return _this.fieldUpdate.changeType !== FieldChangeType.REMOVE; + } + })); + }; + /** + * Check if a user should be allowed to disabled editing this field + * @return an observable that emits true when the user should be able to disable editing this field and false when they should not + */ + EditInPlaceFieldComponent.prototype.canSetUneditable = function () { + return this.editable; + }; + /** + * Check if a user should be allowed to remove this field + * @return an observable that emits true when the user should be able to remove this field and false when they should not + */ + EditInPlaceFieldComponent.prototype.canRemove = function () { + return observableOf(this.fieldUpdate.changeType !== FieldChangeType.REMOVE && this.fieldUpdate.changeType !== FieldChangeType.ADD); + }; + /** + * Check if a user should be allowed to undo changes to this field + * @return an observable that emits true when the user should be able to undo changes to this field and false when they should not + */ + EditInPlaceFieldComponent.prototype.canUndo = function () { + var _this = this; + return this.editable.pipe(map(function (editable) { return _this.fieldUpdate.changeType >= 0 || editable; })); + }; + EditInPlaceFieldComponent.prototype.isNotEmpty = function (value) { + return isNotEmpty(value); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], EditInPlaceFieldComponent.prototype, "fieldUpdate", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], EditInPlaceFieldComponent.prototype, "url", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], EditInPlaceFieldComponent.prototype, "metadataFields", void 0); + EditInPlaceFieldComponent = tslib_1.__decorate([ + Component({ + // tslint:disable-next-line:component-selector + selector: '[ds-edit-in-place-field]', + styleUrls: ['./edit-in-place-field.component.scss'], + templateUrl: './edit-in-place-field.component.html', + }) + /** + * Component that displays a single metadatum of an item on the edit page + */ + , + tslib_1.__metadata("design:paramtypes", [RegistryService, + ObjectUpdatesService]) + ], EditInPlaceFieldComponent); + return EditInPlaceFieldComponent; +}()); +export { EditInPlaceFieldComponent }; +//# sourceMappingURL=edit-in-place-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js.map b/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js.map new file mode 100644 index 0000000000..c54ec9f493 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-in-place-field.component.js","sourceRoot":"","sources":["edit-in-place-field.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js b/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js new file mode 100644 index 0000000000..f9a20872c9 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js @@ -0,0 +1,186 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { ItemDataService } from '../../../core/data/item-data.service'; +import { ObjectUpdatesService } from '../../../core/data/object-updates/object-updates.service'; +import { ActivatedRoute, Router } from '@angular/router'; +import { cloneDeep } from 'lodash'; +import { first, map, switchMap, take, tap } from 'rxjs/operators'; +import { getSucceededRemoteData } from '../../../core/shared/operators'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { GLOBAL_CONFIG } from '../../../../config'; +import { TranslateService } from '@ngx-translate/core'; +import { RegistryService } from '../../../core/registry/registry.service'; +import { MetadatumViewModel } from '../../../core/shared/metadata.models'; +import { Metadata } from '../../../core/shared/metadata.utils'; +var ItemMetadataComponent = /** @class */ (function () { + function ItemMetadataComponent(itemService, objectUpdatesService, router, notificationsService, translateService, EnvConfig, route, metadataFieldService) { + this.itemService = itemService; + this.objectUpdatesService = objectUpdatesService; + this.router = router; + this.notificationsService = notificationsService; + this.translateService = translateService; + this.EnvConfig = EnvConfig; + this.route = route; + this.metadataFieldService = metadataFieldService; + /** + * Prefix for this component's notification translate keys + */ + this.notificationsPrefix = 'item.edit.metadata.notifications.'; + } + /** + * Set up and initialize all fields + */ + ItemMetadataComponent.prototype.ngOnInit = function () { + var _this = this; + this.metadataFields$ = this.findMetadataFields(); + this.route.parent.data.pipe(map(function (data) { return data.item; })) + .pipe(first(), map(function (data) { return data.payload; })).subscribe(function (item) { + _this.item = item; + }); + this.discardTimeOut = this.EnvConfig.item.edit.undoTimeout; + this.url = this.router.url; + if (this.url.indexOf('?') > 0) { + this.url = this.url.substr(0, this.url.indexOf('?')); + } + this.hasChanges().pipe(first()).subscribe(function (hasChanges) { + if (!hasChanges) { + _this.initializeOriginalFields(); + } + else { + _this.checkLastModified(); + } + }); + this.updates$ = this.objectUpdatesService.getFieldUpdates(this.url, this.item.metadataAsList); + }; + /** + * Sends a new add update for a field to the object updates service + * @param metadata The metadata to add, if no parameter is supplied, create a new Metadatum + */ + ItemMetadataComponent.prototype.add = function (metadata) { + if (metadata === void 0) { metadata = new MetadatumViewModel(); } + this.objectUpdatesService.saveAddFieldUpdate(this.url, metadata); + }; + /** + * Request the object updates service to discard all current changes to this item + * Shows a notification to remind the user that they can undo this + */ + ItemMetadataComponent.prototype.discard = function () { + var undoNotification = this.notificationsService.info(this.getNotificationTitle('discarded'), this.getNotificationContent('discarded'), { timeOut: this.discardTimeOut }); + this.objectUpdatesService.discardFieldUpdates(this.url, undoNotification); + }; + /** + * Request the object updates service to undo discarding all changes to this item + */ + ItemMetadataComponent.prototype.reinstate = function () { + this.objectUpdatesService.reinstateFieldUpdates(this.url); + }; + /** + * Sends all initial values of this item to the object updates service + */ + ItemMetadataComponent.prototype.initializeOriginalFields = function () { + this.objectUpdatesService.initialize(this.url, this.item.metadataAsList, this.item.lastModified); + }; + /** + * Prevent unnecessary rerendering so fields don't lose focus + */ + ItemMetadataComponent.prototype.trackUpdate = function (index, update) { + return update && update.field ? update.field.uuid : undefined; + }; + /** + * Requests all current metadata for this item and requests the item service to update the item + * Makes sure the new version of the item is rendered on the page + */ + ItemMetadataComponent.prototype.submit = function () { + var _this = this; + this.isValid().pipe(first()).subscribe(function (isValid) { + if (isValid) { + var metadata$ = _this.objectUpdatesService.getUpdatedFields(_this.url, _this.item.metadataAsList); + metadata$.pipe(first(), switchMap(function (metadata) { + var updatedItem = Object.assign(cloneDeep(_this.item), { metadata: Metadata.toMetadataMap(metadata) }); + return _this.itemService.update(updatedItem); + }), tap(function () { return _this.itemService.commitUpdates(); }), getSucceededRemoteData()).subscribe(function (rd) { + _this.item = rd.payload; + _this.initializeOriginalFields(); + _this.updates$ = _this.objectUpdatesService.getFieldUpdates(_this.url, _this.item.metadataAsList); + _this.notificationsService.success(_this.getNotificationTitle('saved'), _this.getNotificationContent('saved')); + }); + } + else { + _this.notificationsService.error(_this.getNotificationTitle('invalid'), _this.getNotificationContent('invalid')); + } + }); + }; + /** + * Checks whether or not there are currently updates for this item + */ + ItemMetadataComponent.prototype.hasChanges = function () { + return this.objectUpdatesService.hasUpdates(this.url); + }; + /** + * Checks whether or not the item is currently reinstatable + */ + ItemMetadataComponent.prototype.isReinstatable = function () { + return this.objectUpdatesService.isReinstatable(this.url); + }; + /** + * Checks if the current item is still in sync with the version in the store + * If it's not, a notification is shown and the changes are removed + */ + ItemMetadataComponent.prototype.checkLastModified = function () { + var _this = this; + var currentVersion = this.item.lastModified; + this.objectUpdatesService.getLastModified(this.url).pipe(first()).subscribe(function (updateVersion) { + if (updateVersion.getDate() !== currentVersion.getDate()) { + _this.notificationsService.warning(_this.getNotificationTitle('outdated'), _this.getNotificationContent('outdated')); + _this.initializeOriginalFields(); + } + }); + }; + /** + * Check if the current page is entirely valid + */ + ItemMetadataComponent.prototype.isValid = function () { + return this.objectUpdatesService.isValidPage(this.url); + }; + /** + * Get translated notification title + * @param key + */ + ItemMetadataComponent.prototype.getNotificationTitle = function (key) { + return this.translateService.instant(this.notificationsPrefix + key + '.title'); + }; + /** + * Get translated notification content + * @param key + */ + ItemMetadataComponent.prototype.getNotificationContent = function (key) { + return this.translateService.instant(this.notificationsPrefix + key + '.content'); + }; + /** + * Method to request all metadata fields and convert them to a list of strings + */ + ItemMetadataComponent.prototype.findMetadataFields = function () { + return this.metadataFieldService.getAllMetadataFields().pipe(getSucceededRemoteData(), take(1), map(function (remoteData$) { return remoteData$.payload.page.map(function (field) { return field.toString(); }); })); + }; + ItemMetadataComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-metadata', + styleUrls: ['./item-metadata.component.scss'], + templateUrl: './item-metadata.component.html', + }) + /** + * Component for displaying an item's metadata edit page + */ + , + tslib_1.__param(5, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [ItemDataService, + ObjectUpdatesService, + Router, + NotificationsService, + TranslateService, Object, ActivatedRoute, + RegistryService]) + ], ItemMetadataComponent); + return ItemMetadataComponent; +}()); +export { ItemMetadataComponent }; +//# sourceMappingURL=item-metadata.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js.map b/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js.map new file mode 100644 index 0000000000..2efc5bc4e1 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-metadata.component.js","sourceRoot":"","sources":["item-metadata.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js b/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js new file mode 100644 index 0000000000..ac6cc8378a --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { ItemOperation } from './itemOperation.model'; +var ItemOperationComponent = /** @class */ (function () { + /** + * Operation that can be performed on an item + */ + function ItemOperationComponent() { + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", ItemOperation) + ], ItemOperationComponent.prototype, "operation", void 0); + ItemOperationComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-operation', + templateUrl: './item-operation.component.html' + }) + /** + * Operation that can be performed on an item + */ + ], ItemOperationComponent); + return ItemOperationComponent; +}()); +export { ItemOperationComponent }; +//# sourceMappingURL=item-operation.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js.map b/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js.map new file mode 100644 index 0000000000..b19f8a3412 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-operation.component.js","sourceRoot":"","sources":["item-operation.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,EAAC,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AASpD;IAHA;;OAEG;IACH;IAIA,CAAC;IAFU;QAAR,KAAK,EAAE;0CAAY,aAAa;6DAAC;IAFvB,sBAAsB;QAPlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACF;;WAEG;OACU,sBAAsB,CAIlC;IAAD,6BAAC;CAAA,AAJD,IAIC;SAJY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js b/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js new file mode 100644 index 0000000000..582d03e091 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js @@ -0,0 +1,21 @@ +/** + * Represents an item operation used on the edit item page with a key, an operation URL to which will be navigated + * when performing the action and an option to disable the operation. + */ +var ItemOperation = /** @class */ (function () { + function ItemOperation(operationKey, operationUrl) { + this.operationKey = operationKey; + this.operationUrl = operationUrl; + this.setDisabled(false); + } + /** + * Set whether this operation should be disabled + * @param disabled + */ + ItemOperation.prototype.setDisabled = function (disabled) { + this.disabled = disabled; + }; + return ItemOperation; +}()); +export { ItemOperation }; +//# sourceMappingURL=itemOperation.model.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js.map b/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js.map new file mode 100644 index 0000000000..302a9610f4 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"itemOperation.model.js","sourceRoot":"","sources":["itemOperation.model.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH;IAME,uBAAY,YAAoB,EAAE,YAAoB;QACpD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,mCAAW,GAAX,UAAY,QAAiB;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEH,oBAAC;AAAD,CAAC,AApBD,IAoBC"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-private/item-private.component.js b/src/app/+item-page/edit-item-page/item-private/item-private.component.js new file mode 100644 index 0000000000..95d003f645 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-private/item-private.component.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { first } from 'rxjs/operators'; +import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; +var ItemPrivateComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemPrivateComponent, _super); + function ItemPrivateComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.messageKey = 'private'; + _this.predicate = function (rd) { return !rd.payload.isDiscoverable; }; + return _this; + } + /** + * Perform the make private action to the item + */ + ItemPrivateComponent.prototype.performAction = function () { + var _this = this; + this.itemDataService.setDiscoverable(this.item.id, false).pipe(first()).subscribe(function (response) { + _this.processRestResponse(response); + }); + }; + ItemPrivateComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-private', + templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' + }) + /** + * Component responsible for rendering the make item private page + */ + ], ItemPrivateComponent); + return ItemPrivateComponent; +}(AbstractSimpleItemActionComponent)); +export { ItemPrivateComponent }; +//# sourceMappingURL=item-private.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-private/item-private.component.js.map b/src/app/+item-page/edit-item-page/item-private/item-private.component.js.map new file mode 100644 index 0000000000..71ff598e2e --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-private/item-private.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-private.component.js","sourceRoot":"","sources":["item-private.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAYhH;IAA0C,gDAAiC;IAP3E;QAAA,qEAsBC;QAbW,gBAAU,GAAG,SAAS,CAAC;QACvB,eAAS,GAAG,UAAC,EAAoB,IAAK,OAAA,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,EAA1B,CAA0B,CAAC;;IAY7E,CAAC;IAVC;;OAEG;IACH,4CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC/E,UAAC,QAAsB;YACrB,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAdU,oBAAoB;QAPhC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,oBAAoB,CAehC;IAAD,2BAAC;CAAA,AAfD,CAA0C,iCAAiC,GAe1E;SAfY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-public/item-public.component.js b/src/app/+item-page/edit-item-page/item-public/item-public.component.js new file mode 100644 index 0000000000..34d76abab2 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-public/item-public.component.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { first } from 'rxjs/operators'; +import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; +var ItemPublicComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemPublicComponent, _super); + function ItemPublicComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.messageKey = 'public'; + _this.predicate = function (rd) { return rd.payload.isDiscoverable; }; + return _this; + } + /** + * Perform the make public action to the item + */ + ItemPublicComponent.prototype.performAction = function () { + var _this = this; + this.itemDataService.setDiscoverable(this.item.id, true).pipe(first()).subscribe(function (response) { + _this.processRestResponse(response); + }); + }; + ItemPublicComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-public', + templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' + }) + /** + * Component responsible for rendering the make item public page + */ + ], ItemPublicComponent); + return ItemPublicComponent; +}(AbstractSimpleItemActionComponent)); +export { ItemPublicComponent }; +//# sourceMappingURL=item-public.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-public/item-public.component.js.map b/src/app/+item-page/edit-item-page/item-public/item-public.component.js.map new file mode 100644 index 0000000000..9a71a24c7f --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-public/item-public.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-public.component.js","sourceRoot":"","sources":["item-public.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAYhH;IAAyC,+CAAiC;IAP1E;QAAA,qEAsBC;QAbW,gBAAU,GAAG,QAAQ,CAAC;QACtB,eAAS,GAAG,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,OAAO,CAAC,cAAc,EAAzB,CAAyB,CAAC;;IAY5E,CAAC;IAVC;;OAEG;IACH,2CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC9E,UAAC,QAAsB;YACrB,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAdU,mBAAmB;QAP/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,mBAAmB,CAe/B;IAAD,0BAAC;CAAA,AAfD,CAAyC,iCAAiC,GAezE;SAfY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js b/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js new file mode 100644 index 0000000000..470c381f5d --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { first } from 'rxjs/operators'; +import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; +var ItemReinstateComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemReinstateComponent, _super); + function ItemReinstateComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.messageKey = 'reinstate'; + _this.predicate = function (rd) { return !rd.payload.isWithdrawn; }; + return _this; + } + /** + * Perform the reinstate action to the item + */ + ItemReinstateComponent.prototype.performAction = function () { + var _this = this; + this.itemDataService.setWithDrawn(this.item.id, false).pipe(first()).subscribe(function (response) { + _this.processRestResponse(response); + }); + }; + ItemReinstateComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-reinstate', + templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' + }) + /** + * Component responsible for rendering the Item Reinstate page + */ + ], ItemReinstateComponent); + return ItemReinstateComponent; +}(AbstractSimpleItemActionComponent)); +export { ItemReinstateComponent }; +//# sourceMappingURL=item-reinstate.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js.map b/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js.map new file mode 100644 index 0000000000..367f0a837a --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-reinstate.component.js","sourceRoot":"","sources":["item-reinstate.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAYhH;IAA4C,kDAAiC;IAP7E;QAAA,qEAsBC;QAbW,gBAAU,GAAG,WAAW,CAAC;QACzB,eAAS,GAAG,UAAC,EAAoB,IAAK,OAAA,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAvB,CAAuB,CAAC;;IAY1E,CAAC;IAVC;;OAEG;IACH,8CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC5E,UAAC,QAAsB;YACrB,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAdU,sBAAsB;QAPlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,sBAAsB,CAelC;IAAD,6BAAC;CAAA,AAfD,CAA4C,iCAAiC,GAe5E;SAfY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-status/item-status.component.js b/src/app/+item-page/edit-item-page/item-status/item-status.component.js new file mode 100644 index 0000000000..b85b66ff05 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-status/item-status.component.js @@ -0,0 +1,76 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { fadeIn, fadeInOut } from '../../../shared/animations/fade'; +import { ActivatedRoute } from '@angular/router'; +import { ItemOperation } from '../item-operation/itemOperation.model'; +import { first, map } from 'rxjs/operators'; +import { getItemEditPath, getItemPageRoute } from '../../item-page-routing.module'; +var ItemStatusComponent = /** @class */ (function () { + function ItemStatusComponent(route) { + this.route = route; + } + ItemStatusComponent.prototype.ngOnInit = function () { + var _this = this; + this.itemRD$ = this.route.parent.data.pipe(map(function (data) { return data.item; })); + this.itemRD$.pipe(first(), map(function (data) { return data.payload; })).subscribe(function (item) { + _this.statusData = Object.assign({ + id: item.id, + handle: item.handle, + lastModified: item.lastModified + }); + _this.statusDataKeys = Object.keys(_this.statusData); + /* + The key is used to build messages + i18n example: 'item.edit.tabs.status.buttons..label' + The value is supposed to be a href for the button + */ + _this.operations = []; + if (item.isWithdrawn) { + _this.operations.push(new ItemOperation('reinstate', _this.getCurrentUrl(item) + '/reinstate')); + } + else { + _this.operations.push(new ItemOperation('withdraw', _this.getCurrentUrl(item) + '/withdraw')); + } + if (item.isDiscoverable) { + _this.operations.push(new ItemOperation('private', _this.getCurrentUrl(item) + '/private')); + } + else { + _this.operations.push(new ItemOperation('public', _this.getCurrentUrl(item) + '/public')); + } + _this.operations.push(new ItemOperation('delete', _this.getCurrentUrl(item) + '/delete')); + }); + }; + /** + * Get the url to the simple item page + * @returns {string} url + */ + ItemStatusComponent.prototype.getItemPage = function (item) { + return getItemPageRoute(item.id); + }; + /** + * Get the current url without query params + * @returns {string} url + */ + ItemStatusComponent.prototype.getCurrentUrl = function (item) { + return getItemEditPath(item.id); + }; + ItemStatusComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-status', + templateUrl: './item-status.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [ + fadeIn, + fadeInOut + ] + }) + /** + * Component for displaying an item's status + */ + , + tslib_1.__metadata("design:paramtypes", [ActivatedRoute]) + ], ItemStatusComponent); + return ItemStatusComponent; +}()); +export { ItemStatusComponent }; +//# sourceMappingURL=item-status.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-status/item-status.component.js.map b/src/app/+item-page/edit-item-page/item-status/item-status.component.js.map new file mode 100644 index 0000000000..fdb5deeb72 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-status/item-status.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-status.component.js","sourceRoot":"","sources":["item-status.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js b/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js new file mode 100644 index 0000000000..0fc78dfbc4 --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { first } from 'rxjs/operators'; +import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; +var ItemWithdrawComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemWithdrawComponent, _super); + function ItemWithdrawComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.messageKey = 'withdraw'; + _this.predicate = function (rd) { return rd.payload.isWithdrawn; }; + return _this; + } + /** + * Perform the withdraw action to the item + */ + ItemWithdrawComponent.prototype.performAction = function () { + var _this = this; + this.itemDataService.setWithDrawn(this.item.id, true).pipe(first()).subscribe(function (response) { + _this.processRestResponse(response); + }); + }; + ItemWithdrawComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-withdraw', + templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' + }) + /** + * Component responsible for rendering the Item Withdraw page + */ + ], ItemWithdrawComponent); + return ItemWithdrawComponent; +}(AbstractSimpleItemActionComponent)); +export { ItemWithdrawComponent }; +//# sourceMappingURL=item-withdraw.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js.map b/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js.map new file mode 100644 index 0000000000..ab69e37d3a --- /dev/null +++ b/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-withdraw.component.js","sourceRoot":"","sources":["item-withdraw.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAYhH;IAA2C,iDAAiC;IAP5E;QAAA,qEAsBC;QAbW,gBAAU,GAAG,UAAU,CAAC;QACxB,eAAS,GAAG,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,OAAO,CAAC,WAAW,EAAtB,CAAsB,CAAC;;IAYzE,CAAC;IAVC;;OAEG;IACH,6CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC3E,UAAC,QAAsB;YACrB,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAdU,qBAAqB;QAPjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,qBAAqB,CAejC;IAAD,4BAAC;CAAA,AAfD,CAA2C,iCAAiC,GAe3E;SAfY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js b/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js new file mode 100644 index 0000000000..29d7d1b974 --- /dev/null +++ b/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../core/shared/item.model'; +var ModifyItemOverviewComponent = /** @class */ (function () { + /** + * Component responsible for rendering a table containing the metadatavalues from the to be edited item + */ + function ModifyItemOverviewComponent() { + } + ModifyItemOverviewComponent.prototype.ngOnInit = function () { + this.metadata = this.item.metadata; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ModifyItemOverviewComponent.prototype, "item", void 0); + ModifyItemOverviewComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-modify-item-overview', + templateUrl: './modify-item-overview.component.html' + }) + /** + * Component responsible for rendering a table containing the metadatavalues from the to be edited item + */ + ], ModifyItemOverviewComponent); + return ModifyItemOverviewComponent; +}()); +export { ModifyItemOverviewComponent }; +//# sourceMappingURL=modify-item-overview.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js.map b/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js.map new file mode 100644 index 0000000000..fb94baa3be --- /dev/null +++ b/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"modify-item-overview.component.js","sourceRoot":"","sources":["modify-item-overview.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,EAAS,MAAM,eAAe,CAAC;AACvD,OAAO,EAAC,IAAI,EAAC,MAAM,iCAAiC,CAAC;AAUrD;IAHA;;OAEG;IACH;IAQA,CAAC;IAHC,8CAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IACrC,CAAC;IALQ;QAAR,KAAK,EAAE;0CAAO,IAAI;6DAAC;IAFT,2BAA2B;QAPvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;OACU,2BAA2B,CAQvC;IAAD,kCAAC;CAAA,AARD,IAQC;SARY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js new file mode 100644 index 0000000000..3ff17e9605 --- /dev/null +++ b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js @@ -0,0 +1,72 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { ItemDataService } from '../../../core/data/item-data.service'; +import { TranslateService } from '@ngx-translate/core'; +import { getSucceededRemoteData } from '../../../core/shared/operators'; +import { first, map } from 'rxjs/operators'; +import { findSuccessfulAccordingTo } from '../edit-item-operators'; +import { getItemEditPath } from '../../item-page-routing.module'; +/** + * Component to render and handle simple item edit actions such as withdrawal and reinstatement. + * This component is not meant to be used itself but to be extended. + */ +var AbstractSimpleItemActionComponent = /** @class */ (function () { + function AbstractSimpleItemActionComponent(route, router, notificationsService, itemDataService, translateService) { + this.route = route; + this.router = router; + this.notificationsService = notificationsService; + this.itemDataService = itemDataService; + this.translateService = translateService; + } + AbstractSimpleItemActionComponent.prototype.ngOnInit = function () { + var _this = this; + this.itemRD$ = this.route.data.pipe(map(function (data) { return data.item; }), getSucceededRemoteData()); + this.itemRD$.pipe(first()).subscribe(function (rd) { + _this.item = rd.payload; + }); + this.confirmMessage = 'item.edit.' + this.messageKey + '.confirm'; + this.cancelMessage = 'item.edit.' + this.messageKey + '.cancel'; + this.headerMessage = 'item.edit.' + this.messageKey + '.header'; + this.descriptionMessage = 'item.edit.' + this.messageKey + '.description'; + }; + /** + * Perform the operation linked to this action + */ + AbstractSimpleItemActionComponent.prototype.performAction = function () { + // Overwrite in subclasses + }; + ; + /** + * Process the response obtained during the performAction method and navigate back to the edit page + * @param response from the action in the performAction method + */ + AbstractSimpleItemActionComponent.prototype.processRestResponse = function (response) { + var _this = this; + if (response.isSuccessful) { + this.itemDataService.findById(this.item.id).pipe(findSuccessfulAccordingTo(this.predicate)).subscribe(function () { + _this.notificationsService.success(_this.translateService.get('item.edit.' + _this.messageKey + '.success')); + _this.router.navigate([getItemEditPath(_this.item.id)]); + }); + } + else { + this.notificationsService.error(this.translateService.get('item.edit.' + this.messageKey + '.error')); + this.router.navigate([getItemEditPath(this.item.id)]); + } + }; + AbstractSimpleItemActionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-simple-action', + templateUrl: './abstract-simple-item-action.component.html' + }), + tslib_1.__metadata("design:paramtypes", [ActivatedRoute, + Router, + NotificationsService, + ItemDataService, + TranslateService]) + ], AbstractSimpleItemActionComponent); + return AbstractSimpleItemActionComponent; +}()); +export { AbstractSimpleItemActionComponent }; +//# sourceMappingURL=abstract-simple-item-action.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js.map b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js.map new file mode 100644 index 0000000000..9b2ef7e6a2 --- /dev/null +++ b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"abstract-simple-item-action.component.js","sourceRoot":"","sources":["abstract-simple-item-action.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js new file mode 100644 index 0000000000..d24aeddd3d --- /dev/null +++ b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js @@ -0,0 +1,129 @@ +import * as tslib_1 from "tslib"; +import { async, TestBed } from '@angular/core/testing'; +import { Item } from '../../../core/shared/item.model'; +import { RouterStub } from '../../../shared/testing/router-stub'; +import { CommonModule } from '@angular/common'; +import { RouterTestingModule } from '@angular/router/testing'; +import { TranslateModule } from '@ngx-translate/core'; +import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; +import { ActivatedRoute, Router } from '@angular/router'; +import { NotificationsServiceStub } from '../../../shared/testing/notifications-service-stub'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; +import { FormsModule } from '@angular/forms'; +import { ItemDataService } from '../../../core/data/item-data.service'; +import { RemoteData } from '../../../core/data/remote-data'; +import { AbstractSimpleItemActionComponent } from './abstract-simple-item-action.component'; +import { By } from '@angular/platform-browser'; +import { of as observableOf } from 'rxjs'; +import { getItemEditPath } from '../../item-page-routing.module'; +import { RestResponse } from '../../../core/cache/response.models'; +/** + * Test component that implements the AbstractSimpleItemActionComponent used to test the + * AbstractSimpleItemActionComponent component + */ +var MySimpleItemActionComponent = /** @class */ (function (_super) { + tslib_1.__extends(MySimpleItemActionComponent, _super); + function MySimpleItemActionComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.messageKey = 'myEditAction'; + _this.predicate = function (rd) { return rd.payload.isWithdrawn; }; + return _this; + } + MySimpleItemActionComponent.prototype.performAction = function () { + // do nothing + }; + MySimpleItemActionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-simple-action', + templateUrl: './abstract-simple-item-action.component.html' + }) + ], MySimpleItemActionComponent); + return MySimpleItemActionComponent; +}(AbstractSimpleItemActionComponent)); +export { MySimpleItemActionComponent }; +var comp; +var fixture; +var mockItem; +var itemPageUrl; +var routerStub; +var mockItemDataService; +var routeStub; +var notificationsServiceStub; +var successfulRestResponse; +var failRestResponse; +describe('AbstractSimpleItemActionComponent', function () { + beforeEach(async(function () { + mockItem = Object.assign(new Item(), { + id: 'fake-id', + handle: 'fake/handle', + lastModified: '2018', + isWithdrawn: true + }); + itemPageUrl = "fake-url/" + mockItem.id; + routerStub = Object.assign(new RouterStub(), { + url: itemPageUrl + "/edit" + }); + mockItemDataService = jasmine.createSpyObj({ + findById: observableOf(new RemoteData(false, false, true, undefined, mockItem)) + }); + routeStub = { + data: observableOf({ + item: new RemoteData(false, false, true, null, { + id: 'fake-id' + }) + }) + }; + notificationsServiceStub = new NotificationsServiceStub(); + TestBed.configureTestingModule({ + imports: [CommonModule, FormsModule, RouterTestingModule.withRoutes([]), TranslateModule.forRoot(), NgbModule.forRoot()], + declarations: [MySimpleItemActionComponent], + providers: [ + { provide: ActivatedRoute, useValue: routeStub }, + { provide: Router, useValue: routerStub }, + { provide: ItemDataService, useValue: mockItemDataService }, + { provide: NotificationsService, useValue: notificationsServiceStub }, + ], schemas: [ + CUSTOM_ELEMENTS_SCHEMA + ] + }).compileComponents(); + })); + beforeEach(function () { + successfulRestResponse = new RestResponse(true, 200, 'OK'); + failRestResponse = new RestResponse(false, 500, 'Internal Server Error'); + fixture = TestBed.createComponent(MySimpleItemActionComponent); + comp = fixture.componentInstance; + fixture.detectChanges(); + }); + afterEach(function () { + fixture.destroy(); + comp = null; + }); + it('should render a page with messages based on the provided messageKey', function () { + var header = fixture.debugElement.query(By.css('h2')).nativeElement; + expect(header.innerHTML).toContain('item.edit.myEditAction.header'); + var description = fixture.debugElement.query(By.css('p')).nativeElement; + expect(description.innerHTML).toContain('item.edit.myEditAction.description'); + var confirmButton = fixture.debugElement.query(By.css('button.perform-action')).nativeElement; + expect(confirmButton.innerHTML).toContain('item.edit.myEditAction.confirm'); + var cancelButton = fixture.debugElement.query(By.css('button.cancel')).nativeElement; + expect(cancelButton.innerHTML).toContain('item.edit.myEditAction.cancel'); + }); + it('should perform action when the button is clicked', function () { + spyOn(comp, 'performAction'); + var performButton = fixture.debugElement.query(By.css('.perform-action')); + performButton.triggerEventHandler('click', null); + expect(comp.performAction).toHaveBeenCalled(); + }); + it('should process a RestResponse to navigate and display success notification', function () { + comp.processRestResponse(successfulRestResponse); + expect(notificationsServiceStub.success).toHaveBeenCalled(); + expect(routerStub.navigate).toHaveBeenCalledWith([getItemEditPath(mockItem.id)]); + }); + it('should process a RestResponse to navigate and display success notification', function () { + comp.processRestResponse(failRestResponse); + expect(notificationsServiceStub.error).toHaveBeenCalled(); + expect(routerStub.navigate).toHaveBeenCalledWith([getItemEditPath(mockItem.id)]); + }); +}); +//# sourceMappingURL=abstract-simple-item-action.component.spec.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js.map b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js.map new file mode 100644 index 0000000000..00ef61cb27 --- /dev/null +++ b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js.map @@ -0,0 +1 @@ +{"version":3,"file":"abstract-simple-item-action.component.spec.js","sourceRoot":"","sources":["abstract-simple-item-action.component.spec.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/field-components/collections/collections.component.js b/src/app/+item-page/field-components/collections/collections.component.js new file mode 100644 index 0000000000..e5aa6e770f --- /dev/null +++ b/src/app/+item-page/field-components/collections/collections.component.js @@ -0,0 +1,40 @@ +import * as tslib_1 from "tslib"; +import { map } from 'rxjs/operators'; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../core/shared/item.model'; +import { RemoteDataBuildService } from '../../../core/cache/builders/remote-data-build.service'; +/** + * This component renders the parent collections section of the item + * inside a 'ds-metadata-field-wrapper' component. + */ +var CollectionsComponent = /** @class */ (function () { + function CollectionsComponent(rdbs) { + this.rdbs = rdbs; + this.label = 'item.page.collections'; + this.separator = '
'; + } + CollectionsComponent.prototype.ngOnInit = function () { + // this.collections = this.item.parents.payload; + // TODO: this should use parents, but the collections + // for an Item aren't returned by the REST API yet, + // only the owning collection + this.collections = this.item.owner.pipe(map(function (rd) { return [rd.payload]; })); + }; + CollectionsComponent.prototype.hasSucceeded = function () { + return this.item.owner.pipe(map(function (rd) { return rd.hasSucceeded; })); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], CollectionsComponent.prototype, "item", void 0); + CollectionsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page-collections', + templateUrl: './collections.component.html' + }), + tslib_1.__metadata("design:paramtypes", [RemoteDataBuildService]) + ], CollectionsComponent); + return CollectionsComponent; +}()); +export { CollectionsComponent }; +//# sourceMappingURL=collections.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/field-components/collections/collections.component.js.map b/src/app/+item-page/field-components/collections/collections.component.js.map new file mode 100644 index 0000000000..7f40f64d6c --- /dev/null +++ b/src/app/+item-page/field-components/collections/collections.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collections.component.js","sourceRoot":"","sources":["collections.component.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAIzD,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wDAAwD,CAAC;AAGhG;;;GAGG;AAMH;IAUE,8BAAoB,IAA4B;QAA5B,SAAI,GAAJ,IAAI,CAAwB;QANhD,UAAK,GAAG,uBAAuB,CAAC;QAEhC,cAAS,GAAG,OAAO,CAAC;IAMpB,CAAC;IAED,uCAAQ,GAAR;QACE,kDAAkD;QAElD,qDAAqD;QACrD,mDAAmD;QACnD,6BAA6B;QAC7B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,EAA0B,IAAK,OAAA,CAAC,EAAE,CAAC,OAAO,CAAC,EAAZ,CAAY,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,2CAAY,GAAZ;QACE,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,EAA0B,IAAK,OAAA,EAAE,CAAC,YAAY,EAAf,CAAe,CAAC,CAAC,CAAC;IACpF,CAAC;IAvBQ;QAAR,KAAK,EAAE;0CAAO,IAAI;sDAAC;IAFT,oBAAoB;QAJhC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,WAAW,EAAE,8BAA8B;SAC5C,CAAC;iDAW0B,sBAAsB;OAVrC,oBAAoB,CA2BhC;IAAD,2BAAC;CAAA,AA3BD,IA2BC;SA3BY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js b/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js new file mode 100644 index 0000000000..fa01685529 --- /dev/null +++ b/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js @@ -0,0 +1,31 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { hasNoValue } from '../../../shared/empty.util'; +/** + * This component renders any content inside this wrapper. + * The wrapper prints a label before the content (if available) + */ +var MetadataFieldWrapperComponent = /** @class */ (function () { + function MetadataFieldWrapperComponent() { + } + /** + * Make hasNoValue() available in the template + */ + MetadataFieldWrapperComponent.prototype.hasNoValue = function (o) { + return hasNoValue(o); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], MetadataFieldWrapperComponent.prototype, "label", void 0); + MetadataFieldWrapperComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-field-wrapper', + styleUrls: ['./metadata-field-wrapper.component.scss'], + templateUrl: './metadata-field-wrapper.component.html' + }) + ], MetadataFieldWrapperComponent); + return MetadataFieldWrapperComponent; +}()); +export { MetadataFieldWrapperComponent }; +//# sourceMappingURL=metadata-field-wrapper.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js.map b/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js.map new file mode 100644 index 0000000000..2742660ca9 --- /dev/null +++ b/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-field-wrapper.component.js","sourceRoot":"","sources":["metadata-field-wrapper.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD;;;GAGG;AAMH;IAAA;IAaA,CAAC;IANC;;OAEG;IACH,kDAAU,GAAV,UAAW,CAAM;QACf,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAPQ;QAAR,KAAK,EAAE;;gEAAe;IALZ,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;OACW,6BAA6B,CAazC;IAAD,oCAAC;CAAA,AAbD,IAaC;SAbY,6BAA6B"} \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js b/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js new file mode 100644 index 0000000000..b82b95572f --- /dev/null +++ b/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js @@ -0,0 +1,42 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { MetadataValuesComponent } from '../metadata-values/metadata-values.component'; +/** + * This component renders the configured 'values' into the ds-metadata-field-wrapper component as a link. + * It puts the given 'separator' between each two values + * and creates an 'a' tag for each value, + * using the 'linktext' as it's value (if it exists) + * and using the values as the 'href' attribute (and as value of the tag when no 'linktext' is defined) + */ +var MetadataUriValuesComponent = /** @class */ (function (_super) { + tslib_1.__extends(MetadataUriValuesComponent, _super); + function MetadataUriValuesComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], MetadataUriValuesComponent.prototype, "linktext", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], MetadataUriValuesComponent.prototype, "mdValues", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], MetadataUriValuesComponent.prototype, "separator", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], MetadataUriValuesComponent.prototype, "label", void 0); + MetadataUriValuesComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-uri-values', + styleUrls: ['./metadata-uri-values.component.scss'], + templateUrl: './metadata-uri-values.component.html' + }) + ], MetadataUriValuesComponent); + return MetadataUriValuesComponent; +}(MetadataValuesComponent)); +export { MetadataUriValuesComponent }; +//# sourceMappingURL=metadata-uri-values.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js.map b/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js.map new file mode 100644 index 0000000000..a3fa56a34f --- /dev/null +++ b/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-uri-values.component.js","sourceRoot":"","sources":["metadata-uri-values.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAGvF;;;;;;GAMG;AAMH;IAAgD,sDAAuB;IAAvE;;IAsBA,CAAC;IAhBU;QAAR,KAAK,EAAE;;gEAAe;IAKd;QAAR,KAAK,EAAE;;gEAA2B;IAK1B;QAAR,KAAK,EAAE;;iEAAmB;IAKlB;QAAR,KAAK,EAAE;;6DAAe;IArBZ,0BAA0B;QALtC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;OACW,0BAA0B,CAsBtC;IAAD,iCAAC;CAAA,AAtBD,CAAgD,uBAAuB,GAsBtE;SAtBY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-values/metadata-values.component.js b/src/app/+item-page/field-components/metadata-values/metadata-values.component.js new file mode 100644 index 0000000000..34e5520561 --- /dev/null +++ b/src/app/+item-page/field-components/metadata-values/metadata-values.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +/** + * This component renders the configured 'values' into the ds-metadata-field-wrapper component. + * It puts the given 'separator' between each two values. + */ +var MetadataValuesComponent = /** @class */ (function () { + function MetadataValuesComponent() { + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], MetadataValuesComponent.prototype, "mdValues", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], MetadataValuesComponent.prototype, "separator", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], MetadataValuesComponent.prototype, "label", void 0); + MetadataValuesComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-values', + styleUrls: ['./metadata-values.component.scss'], + templateUrl: './metadata-values.component.html' + }) + ], MetadataValuesComponent); + return MetadataValuesComponent; +}()); +export { MetadataValuesComponent }; +//# sourceMappingURL=metadata-values.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-values/metadata-values.component.js.map b/src/app/+item-page/field-components/metadata-values/metadata-values.component.js.map new file mode 100644 index 0000000000..5a6bf32478 --- /dev/null +++ b/src/app/+item-page/field-components/metadata-values/metadata-values.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-values.component.js","sourceRoot":"","sources":["metadata-values.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGjD;;;GAGG;AAMH;IAAA;IAiBA,CAAC;IAZU;QAAR,KAAK,EAAE;;6DAA2B;IAK1B;QAAR,KAAK,EAAE;;8DAAmB;IAKlB;QAAR,KAAK,EAAE;;0DAAe;IAfZ,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,kCAAkC,CAAC;YAC/C,WAAW,EAAE,kCAAkC;SAChD,CAAC;OACW,uBAAuB,CAiBnC;IAAD,8BAAC;CAAA,AAjBD,IAiBC;SAjBY,uBAAuB"} \ No newline at end of file diff --git a/src/app/+item-page/full/field-components/file-section/full-file-section.component.js b/src/app/+item-page/full/field-components/file-section/full-file-section.component.js new file mode 100644 index 0000000000..17521d2a84 --- /dev/null +++ b/src/app/+item-page/full/field-components/file-section/full-file-section.component.js @@ -0,0 +1,50 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../core/shared/item.model'; +import { FileSectionComponent } from '../../../simple/field-components/file-section/file-section.component'; +import { map } from 'rxjs/operators'; +/** + * This component renders the file section of the item + * inside a 'ds-metadata-field-wrapper' component. + */ +var FullFileSectionComponent = /** @class */ (function (_super) { + tslib_1.__extends(FullFileSectionComponent, _super); + function FullFileSectionComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.thumbnails = new Map(); + return _this; + } + FullFileSectionComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + }; + FullFileSectionComponent.prototype.initialize = function () { + var _this = this; + var originals = this.item.getFiles(); + var licenses = this.item.getBitstreamsByBundleName('LICENSE'); + this.bitstreamsObs = observableCombineLatest(originals, licenses).pipe(map(function (_a) { + var o = _a[0], l = _a[1]; + return o.concat(l); + })); + this.bitstreamsObs.subscribe(function (files) { + return files.forEach(function (original) { + var thumbnail = _this.item.getThumbnailForOriginal(original); + _this.thumbnails.set(original.id, thumbnail); + }); + }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], FullFileSectionComponent.prototype, "item", void 0); + FullFileSectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page-full-file-section', + styleUrls: ['./full-file-section.component.scss'], + templateUrl: './full-file-section.component.html' + }) + ], FullFileSectionComponent); + return FullFileSectionComponent; +}(FileSectionComponent)); +export { FullFileSectionComponent }; +//# sourceMappingURL=full-file-section.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/full/field-components/file-section/full-file-section.component.js.map b/src/app/+item-page/full/field-components/file-section/full-file-section.component.js.map new file mode 100644 index 0000000000..034e5ed744 --- /dev/null +++ b/src/app/+item-page/full/field-components/file-section/full-file-section.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"full-file-section.component.js","sourceRoot":"","sources":["full-file-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,MAAM,MAAM,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sEAAsE,CAAC;AAC5G,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC;;;GAGG;AAOH;IAA8C,oDAAoB;IALlE;QAAA,qEAkCC;QArBC,gBAAU,GAAuC,IAAI,GAAG,EAAE,CAAC;;IAqB7D,CAAC;IAnBC,2CAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;IACnB,CAAC;IAED,6CAAU,GAAV;QAAA,iBAaC;QAZC,IAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvC,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,CAAC,aAAa,GAAG,uBAAuB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,EAAM;gBAAL,SAAC,EAAE,SAAC;YAAM,OAAI,CAAC,QAAK,CAAC;QAAX,CAAY,CAAC,CAAC,CAAC;QACtG,IAAI,CAAC,aAAa,CAAC,SAAS,CAC1B,UAAC,KAAK;YACJ,OAAA,KAAK,CAAC,OAAO,CACX,UAAC,QAAQ;gBACP,IAAM,SAAS,GAA0B,KAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;gBACrF,KAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC9C,CAAC,CACF;QALD,CAKC,CACJ,CAAA;IACH,CAAC;IAzBQ;QAAR,KAAK,EAAE;0CAAO,IAAI;0DAAC;IAFT,wBAAwB;QALpC,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;OACW,wBAAwB,CA6BpC;IAAD,+BAAC;CAAA,AA7BD,CAA8C,oBAAoB,GA6BjE;SA7BY,wBAAwB"} \ No newline at end of file diff --git a/src/app/+item-page/full/full-item-page.component.js b/src/app/+item-page/full/full-item-page.component.js new file mode 100644 index 0000000000..a4392e855b --- /dev/null +++ b/src/app/+item-page/full/full-item-page.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { filter, map } from 'rxjs/operators'; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { ItemPageComponent } from '../simple/item-page.component'; +import { ItemDataService } from '../../core/data/item-data.service'; +import { MetadataService } from '../../core/metadata/metadata.service'; +import { fadeInOut } from '../../shared/animations/fade'; +import { hasValue } from '../../shared/empty.util'; +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ +var FullItemPageComponent = /** @class */ (function (_super) { + tslib_1.__extends(FullItemPageComponent, _super); + function FullItemPageComponent(route, router, items, metadataService) { + return _super.call(this, route, router, items, metadataService) || this; + } + /*** AoT inheritance fix, will hopefully be resolved in the near future **/ + FullItemPageComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + this.metadata$ = this.itemRD$.pipe(map(function (rd) { return rd.payload; }), filter(function (item) { return hasValue(item); }), map(function (item) { return item.metadata; })); + }; + FullItemPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-full-item-page', + styleUrls: ['./full-item-page.component.scss'], + templateUrl: './full-item-page.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [fadeInOut] + }), + tslib_1.__metadata("design:paramtypes", [ActivatedRoute, Router, ItemDataService, MetadataService]) + ], FullItemPageComponent); + return FullItemPageComponent; +}(ItemPageComponent)); +export { FullItemPageComponent }; +//# sourceMappingURL=full-item-page.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/full/full-item-page.component.js.map b/src/app/+item-page/full/full-item-page.component.js.map new file mode 100644 index 0000000000..56adea9a53 --- /dev/null +++ b/src/app/+item-page/full/full-item-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"full-item-page.component.js","sourceRoot":"","sources":["full-item-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,MAAM,EAAE,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAKpE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD;;;;GAIG;AASH;IAA2C,iDAAiB;IAM1D,+BAAY,KAAqB,EAAE,MAAc,EAAE,KAAsB,EAAE,eAAgC;eACzG,kBAAM,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,CAAC;IAC9C,CAAC;IAED,2EAA2E;IAC3E,wCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAChC,GAAG,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,OAAO,EAAV,CAAU,CAAC,EACzC,MAAM,CAAC,UAAC,IAAU,IAAK,OAAA,QAAQ,CAAC,IAAI,CAAC,EAAd,CAAc,CAAC,EACtC,GAAG,CAAC,UAAC,IAAU,IAAK,OAAA,IAAI,CAAC,QAAQ,EAAb,CAAa,CAAC,CAAE,CAAC;IACzC,CAAC;IAjBU,qBAAqB;QAPjC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;YAC9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;iDAOmB,cAAc,EAAU,MAAM,EAAS,eAAe,EAAmB,eAAe;OANhG,qBAAqB,CAkBjC;IAAD,4BAAC;CAAA,AAlBD,CAA2C,iBAAiB,GAkB3D;SAlBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/item-page-routing.module.js b/src/app/+item-page/item-page-routing.module.js new file mode 100644 index 0000000000..180fa894cb --- /dev/null +++ b/src/app/+item-page/item-page-routing.module.js @@ -0,0 +1,54 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { ItemPageComponent } from './simple/item-page.component'; +import { FullItemPageComponent } from './full/full-item-page.component'; +import { ItemPageResolver } from './item-page.resolver'; +import { URLCombiner } from '../core/url-combiner/url-combiner'; +import { getItemModulePath } from '../app-routing.module'; +import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; +export function getItemPageRoute(itemId) { + return new URLCombiner(getItemModulePath(), itemId).toString(); +} +export function getItemEditPath(id) { + return new URLCombiner(getItemModulePath(), ITEM_EDIT_PATH.replace(/:id/, id)).toString(); +} +var ITEM_EDIT_PATH = ':id/edit'; +var ItemPageRoutingModule = /** @class */ (function () { + function ItemPageRoutingModule() { + } + ItemPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { + path: ':id', + component: ItemPageComponent, + pathMatch: 'full', + resolve: { + item: ItemPageResolver + } + }, + { + path: ':id/full', + component: FullItemPageComponent, + resolve: { + item: ItemPageResolver + } + }, + { + path: ITEM_EDIT_PATH, + loadChildren: './edit-item-page/edit-item-page.module#EditItemPageModule', + canActivate: [AuthenticatedGuard] + }, + ]) + ], + providers: [ + ItemPageResolver, + ] + }) + ], ItemPageRoutingModule); + return ItemPageRoutingModule; +}()); +export { ItemPageRoutingModule }; +//# sourceMappingURL=item-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+item-page/item-page-routing.module.js.map b/src/app/+item-page/item-page-routing.module.js.map new file mode 100644 index 0000000000..d22d886dce --- /dev/null +++ b/src/app/+item-page/item-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page-routing.module.js","sourceRoot":"","sources":["item-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,MAAM,2BAA2B,MAAc;IAC7C,OAAO,IAAI,WAAW,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;AACjE,CAAC;AACD,MAAM,0BAA0B,EAAU;IACxC,OAAO,IAAI,WAAW,CAAC,iBAAiB,EAAE,EAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC1F,CAAC;AAED,IAAM,cAAc,GAAG,UAAU,CAAC;AA+BlC;IAAA;IAEA,CAAC;IAFY,qBAAqB;QA7BjC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,KAAK;wBACX,SAAS,EAAE,iBAAiB;wBAC5B,SAAS,EAAE,MAAM;wBACjB,OAAO,EAAE;4BACP,IAAI,EAAE,gBAAgB;yBACvB;qBACF;oBACD;wBACE,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,qBAAqB;wBAChC,OAAO,EAAE;4BACP,IAAI,EAAE,gBAAgB;yBACvB;qBACF;oBACD;wBACE,IAAI,EAAE,cAAc;wBACpB,YAAY,EAAE,2DAA2D;wBACzE,WAAW,EAAE,CAAC,kBAAkB,CAAC;qBAClC;iBACF,CAAC;aACH;YACD,SAAS,EAAE;gBACT,gBAAgB;aACjB;SACF,CAAC;OACW,qBAAqB,CAEjC;IAAD,4BAAC;CAAA,AAFD,IAEC;SAFY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/item-page.module.js b/src/app/+item-page/item-page.module.js new file mode 100644 index 0000000000..2b7e17d5c3 --- /dev/null +++ b/src/app/+item-page/item-page.module.js @@ -0,0 +1,84 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { SharedModule } from './../shared/shared.module'; +import { GenericItemPageFieldComponent } from './simple/field-components/specific-field/generic/generic-item-page-field.component'; +import { ItemPageComponent } from './simple/item-page.component'; +import { ItemPageRoutingModule } from './item-page-routing.module'; +import { MetadataUriValuesComponent } from './field-components/metadata-uri-values/metadata-uri-values.component'; +import { ItemPageAuthorFieldComponent } from './simple/field-components/specific-field/author/item-page-author-field.component'; +import { ItemPageDateFieldComponent } from './simple/field-components/specific-field/date/item-page-date-field.component'; +import { ItemPageAbstractFieldComponent } from './simple/field-components/specific-field/abstract/item-page-abstract-field.component'; +import { ItemPageUriFieldComponent } from './simple/field-components/specific-field/uri/item-page-uri-field.component'; +import { ItemPageTitleFieldComponent } from './simple/field-components/specific-field/title/item-page-title-field.component'; +import { ItemPageFieldComponent } from './simple/field-components/specific-field/item-page-field.component'; +import { FileSectionComponent } from './simple/field-components/file-section/file-section.component'; +import { CollectionsComponent } from './field-components/collections/collections.component'; +import { FullItemPageComponent } from './full/full-item-page.component'; +import { FullFileSectionComponent } from './full/field-components/file-section/full-file-section.component'; +import { RelatedItemsComponent } from './simple/related-items/related-items-component'; +import { SearchPageModule } from '../+search-page/search-page.module'; +import { PublicationComponent } from './simple/item-types/publication/publication.component'; +import { PersonComponent } from './simple/item-types/person/person.component'; +import { OrgunitComponent } from './simple/item-types/orgunit/orgunit.component'; +import { ProjectComponent } from './simple/item-types/project/project.component'; +import { JournalComponent } from './simple/item-types/journal/journal.component'; +import { JournalVolumeComponent } from './simple/item-types/journal-volume/journal-volume.component'; +import { JournalIssueComponent } from './simple/item-types/journal-issue/journal-issue.component'; +import { ItemComponent } from './simple/item-types/shared/item.component'; +import { EditItemPageModule } from './edit-item-page/edit-item-page.module'; +import { MetadataRepresentationListComponent } from './simple/metadata-representation-list/metadata-representation-list.component'; +import { RelatedEntitiesSearchComponent } from './simple/related-entities/related-entities-search/related-entities-search.component'; +var ItemPageModule = /** @class */ (function () { + function ItemPageModule() { + } + ItemPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule, + EditItemPageModule, + ItemPageRoutingModule, + SearchPageModule + ], + declarations: [ + ItemPageComponent, + FullItemPageComponent, + MetadataUriValuesComponent, + ItemPageAuthorFieldComponent, + ItemPageDateFieldComponent, + ItemPageAbstractFieldComponent, + ItemPageUriFieldComponent, + ItemPageTitleFieldComponent, + ItemPageFieldComponent, + FileSectionComponent, + CollectionsComponent, + FullFileSectionComponent, + PublicationComponent, + ProjectComponent, + OrgunitComponent, + PersonComponent, + RelatedItemsComponent, + ItemComponent, + GenericItemPageFieldComponent, + JournalComponent, + JournalIssueComponent, + JournalVolumeComponent, + MetadataRepresentationListComponent, + RelatedEntitiesSearchComponent + ], + entryComponents: [ + PublicationComponent, + ProjectComponent, + OrgunitComponent, + PersonComponent, + JournalComponent, + JournalIssueComponent, + JournalVolumeComponent + ] + }) + ], ItemPageModule); + return ItemPageModule; +}()); +export { ItemPageModule }; +//# sourceMappingURL=item-page.module.js.map \ No newline at end of file diff --git a/src/app/+item-page/item-page.module.js.map b/src/app/+item-page/item-page.module.js.map new file mode 100644 index 0000000000..1ce9a77657 --- /dev/null +++ b/src/app/+item-page/item-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page.module.js","sourceRoot":"","sources":["item-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oFAAoF,CAAC;AAEnI,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sEAAsE,CAAC;AAClH,OAAO,EAAE,4BAA4B,EAAE,MAAM,kFAAkF,CAAC;AAChI,OAAO,EAAE,0BAA0B,EAAE,MAAM,8EAA8E,CAAC;AAC1H,OAAO,EAAE,8BAA8B,EAAE,MAAM,sFAAsF,CAAC;AACtI,OAAO,EAAE,yBAAyB,EAAE,MAAM,4EAA4E,CAAC;AACvH,OAAO,EAAE,2BAA2B,EAAE,MAAM,gFAAgF,CAAC;AAC7H,OAAO,EAAE,sBAAsB,EAAE,MAAM,oEAAoE,CAAC;AAC5G,OAAO,EAAE,oBAAoB,EAAE,MAAM,+DAA+D,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kEAAkE,CAAC;AAC5G,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6DAA6D,CAAC;AACrG,OAAO,EAAE,qBAAqB,EAAE,MAAM,2DAA2D,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,mCAAmC,EAAE,MAAM,8EAA8E,CAAC;AACnI,OAAO,EAAE,8BAA8B,EAAE,MAAM,qFAAqF,CAAC;AA8CrI;IAAA;IAEA,CAAC;IAFY,cAAc;QA5C1B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,kBAAkB;gBAClB,qBAAqB;gBACrB,gBAAgB;aACjB;YACD,YAAY,EAAE;gBACZ,iBAAiB;gBACjB,qBAAqB;gBACrB,0BAA0B;gBAC1B,4BAA4B;gBAC5B,0BAA0B;gBAC1B,8BAA8B;gBAC9B,yBAAyB;gBACzB,2BAA2B;gBAC3B,sBAAsB;gBACtB,oBAAoB;gBACpB,oBAAoB;gBACpB,wBAAwB;gBACxB,oBAAoB;gBACpB,gBAAgB;gBAChB,gBAAgB;gBAChB,eAAe;gBACf,qBAAqB;gBACrB,aAAa;gBACb,6BAA6B;gBAC7B,gBAAgB;gBAChB,qBAAqB;gBACrB,sBAAsB;gBACtB,mCAAmC;gBACnC,8BAA8B;aAC/B;YACD,eAAe,EAAE;gBACf,oBAAoB;gBACpB,gBAAgB;gBAChB,gBAAgB;gBAChB,eAAe;gBACf,gBAAgB;gBAChB,qBAAqB;gBACrB,sBAAsB;aACvB;SACF,CAAC;OACW,cAAc,CAE1B;IAAD,qBAAC;CAAA,AAFD,IAEC;SAFY,cAAc"} \ No newline at end of file diff --git a/src/app/+item-page/item-page.resolver.js b/src/app/+item-page/item-page.resolver.js new file mode 100644 index 0000000000..4d3a9401e4 --- /dev/null +++ b/src/app/+item-page/item-page.resolver.js @@ -0,0 +1,31 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { ItemDataService } from '../core/data/item-data.service'; +import { hasValue } from '../shared/empty.util'; +import { find } from 'rxjs/operators'; +/** + * This class represents a resolver that requests a specific item before the route is activated + */ +var ItemPageResolver = /** @class */ (function () { + function ItemPageResolver(itemService) { + this.itemService = itemService; + } + /** + * Method for resolving an item based on the parameters in the current route + * @param {ActivatedRouteSnapshot} route The current ActivatedRouteSnapshot + * @param {RouterStateSnapshot} state The current RouterStateSnapshot + * @returns Observable<> Emits the found item based on the parameters in the current route, + * or an error if something went wrong + */ + ItemPageResolver.prototype.resolve = function (route, state) { + return this.itemService.findById(route.params.id) + .pipe(find(function (RD) { return hasValue(RD.error) || RD.hasSucceeded; })); + }; + ItemPageResolver = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [ItemDataService]) + ], ItemPageResolver); + return ItemPageResolver; +}()); +export { ItemPageResolver }; +//# sourceMappingURL=item-page.resolver.js.map \ No newline at end of file diff --git a/src/app/+item-page/item-page.resolver.js.map b/src/app/+item-page/item-page.resolver.js.map new file mode 100644 index 0000000000..87eabedf05 --- /dev/null +++ b/src/app/+item-page/item-page.resolver.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page.resolver.js","sourceRoot":"","sources":["item-page.resolver.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC;;GAEG;AAEH;IACE,0BAAoB,WAA4B;QAA5B,gBAAW,GAAX,WAAW,CAAiB;IAChD,CAAC;IAED;;;;;;OAMG;IACH,kCAAO,GAAP,UAAQ,KAA6B,EAAE,KAA0B;QAC/D,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;aAC9C,IAAI,CACH,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,YAAY,EAArC,CAAqC,CAAC,CACpD,CAAC;IACN,CAAC;IAhBU,gBAAgB;QAD5B,UAAU,EAAE;iDAEsB,eAAe;OADrC,gBAAgB,CAiB5B;IAAD,uBAAC;CAAA,AAjBD,IAiBC;SAjBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/file-section/file-section.component.js b/src/app/+item-page/simple/field-components/file-section/file-section.component.js new file mode 100644 index 0000000000..68e9e5da35 --- /dev/null +++ b/src/app/+item-page/simple/field-components/file-section/file-section.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../core/shared/item.model'; +/** + * This component renders the file section of the item + * inside a 'ds-metadata-field-wrapper' component. + */ +var FileSectionComponent = /** @class */ (function () { + function FileSectionComponent() { + this.label = 'item.page.files'; + this.separator = '
'; + } + FileSectionComponent.prototype.ngOnInit = function () { + this.initialize(); + }; + FileSectionComponent.prototype.initialize = function () { + this.bitstreamsObs = this.item.getFiles(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], FileSectionComponent.prototype, "item", void 0); + FileSectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page-file-section', + templateUrl: './file-section.component.html' + }) + ], FileSectionComponent); + return FileSectionComponent; +}()); +export { FileSectionComponent }; +//# sourceMappingURL=file-section.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/file-section/file-section.component.js.map b/src/app/+item-page/simple/field-components/file-section/file-section.component.js.map new file mode 100644 index 0000000000..8a183516b2 --- /dev/null +++ b/src/app/+item-page/simple/field-components/file-section/file-section.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"file-section.component.js","sourceRoot":"","sources":["file-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAIzD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D;;;GAGG;AAKH;IAJA;QAQE,UAAK,GAAG,iBAAiB,CAAC;QAE1B,cAAS,GAAG,OAAO,CAAC;IAYtB,CAAC;IARC,uCAAQ,GAAR;QACE,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,yCAAU,GAAV;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAdQ;QAAR,KAAK,EAAE;0CAAO,IAAI;sDAAC;IAFT,oBAAoB;QAJhC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,WAAW,EAAE,+BAA+B;SAC7C,CAAC;OACW,oBAAoB,CAkBhC;IAAD,2BAAC;CAAA,AAlBD,IAkBC;SAlBY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js b/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js new file mode 100644 index 0000000000..0465ab5242 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../../core/shared/item.model'; +import { ItemPageFieldComponent } from '../item-page-field.component'; +var ItemPageAbstractFieldComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemPageAbstractFieldComponent, _super); + function ItemPageAbstractFieldComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Fields (schema.element.qualifier) used to render their values. + * In this component, we want to display values for metadata 'dc.description.abstract' + */ + _this.fields = [ + 'dc.description.abstract' + ]; + /** + * Label i18n key for the rendered metadata + */ + _this.label = 'item.page.abstract'; + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemPageAbstractFieldComponent.prototype, "item", void 0); + ItemPageAbstractFieldComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page-abstract-field', + templateUrl: '../item-page-field.component.html' + }) + /** + * This component is used for displaying the abstract (dc.description.abstract) of an item + */ + ], ItemPageAbstractFieldComponent); + return ItemPageAbstractFieldComponent; +}(ItemPageFieldComponent)); +export { ItemPageAbstractFieldComponent }; +//# sourceMappingURL=item-page-abstract-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js.map new file mode 100644 index 0000000000..12f6d277a6 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page-abstract-field.component.js","sourceRoot":"","sources":["item-page-abstract-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAAoD,0DAAsB;IAP1E;QAAA,qEAiCC;QAbG;;;WAGG;QACH,YAAM,GAAa;YACf,yBAAyB;SAC5B,CAAC;QAEF;;WAEG;QACH,WAAK,GAAG,oBAAoB,CAAC;;IAEjC,CAAC;IArBY;QAAR,KAAK,EAAE;0CAAO,IAAI;gEAAC;IALX,8BAA8B;QAP1C,SAAS,CAAC;YACP,QAAQ,EAAE,6BAA6B;YACvC,WAAW,EAAE,mCAAmC;SACnD,CAAC;QACF;;WAEG;OACU,8BAA8B,CA0B1C;IAAD,qCAAC;CAAA,AA1BD,CAAoD,sBAAsB,GA0BzE;SA1BY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js b/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js new file mode 100644 index 0000000000..b551a43564 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js @@ -0,0 +1,40 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../../core/shared/item.model'; +import { ItemPageFieldComponent } from '../item-page-field.component'; +var ItemPageAuthorFieldComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemPageAuthorFieldComponent, _super); + function ItemPageAuthorFieldComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Fields (schema.element.qualifier) used to render their values. + * In this component, we want to display values for metadata 'dc.contributor.author', 'dc.creator' and 'dc.contributor' + */ + _this.fields = [ + 'dc.contributor.author', + 'dc.creator', + 'dc.contributor' + ]; + /** + * Label i18n key for the rendered metadata + */ + _this.label = 'item.page.author'; + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemPageAuthorFieldComponent.prototype, "item", void 0); + ItemPageAuthorFieldComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page-author-field', + templateUrl: '../item-page-field.component.html' + }) + /** + * This component is used for displaying the author (dc.contributor.author, dc.creator and dc.contributor) metadata of an item + */ + ], ItemPageAuthorFieldComponent); + return ItemPageAuthorFieldComponent; +}(ItemPageFieldComponent)); +export { ItemPageAuthorFieldComponent }; +//# sourceMappingURL=item-page-author-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js.map new file mode 100644 index 0000000000..6195e969b9 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page-author-field.component.js","sourceRoot":"","sources":["item-page-author-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAAkD,wDAAsB;IAPxE;QAAA,qEAmCC;QAfC;;;WAGG;QACH,YAAM,GAAa;YACjB,uBAAuB;YACvB,YAAY;YACZ,gBAAgB;SACjB,CAAC;QAEF;;WAEG;QACH,WAAK,GAAG,kBAAkB,CAAC;;IAE7B,CAAC;IAvBU;QAAR,KAAK,EAAE;0CAAO,IAAI;8DAAC;IALT,4BAA4B;QAPxC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,WAAW,EAAE,mCAAmC;SACjD,CAAC;QACF;;WAEG;OACU,4BAA4B,CA4BxC;IAAD,mCAAC;CAAA,AA5BD,CAAkD,sBAAsB,GA4BvE;SA5BY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js b/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js new file mode 100644 index 0000000000..e2634843b7 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js @@ -0,0 +1,43 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../../core/shared/item.model'; +import { ItemPageFieldComponent } from '../item-page-field.component'; +var ItemPageDateFieldComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemPageDateFieldComponent, _super); + function ItemPageDateFieldComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Separator string between multiple values of the metadata fields defined + * @type {string} + */ + _this.separator = ', '; + /** + * Fields (schema.element.qualifier) used to render their values. + * In this component, we want to display values for metadata 'dc.date.issued' + */ + _this.fields = [ + 'dc.date.issued' + ]; + /** + * Label i18n key for the rendered metadata + */ + _this.label = 'item.page.date'; + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemPageDateFieldComponent.prototype, "item", void 0); + ItemPageDateFieldComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page-date-field', + templateUrl: '../item-page-field.component.html' + }) + /** + * This component is used for displaying the issue date (dc.date.issued) metadata of an item + */ + ], ItemPageDateFieldComponent); + return ItemPageDateFieldComponent; +}(ItemPageFieldComponent)); +export { ItemPageDateFieldComponent }; +//# sourceMappingURL=item-page-date-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js.map new file mode 100644 index 0000000000..081f0efca1 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page-date-field.component.js","sourceRoot":"","sources":["item-page-date-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAAgD,sDAAsB;IAPtE;QAAA,qEAiCC;QAnBG;;;WAGG;QACH,eAAS,GAAG,IAAI,CAAC;QAEjB;;;WAGG;QACH,YAAM,GAAa;YACf,gBAAgB;SACnB,CAAC;QAEF;;WAEG;QACH,WAAK,GAAG,gBAAgB,CAAC;;IAE7B,CAAC;IArBY;QAAR,KAAK,EAAE;0CAAO,IAAI;4DAAC;IALX,0BAA0B;QAPtC,SAAS,CAAC;YACP,QAAQ,EAAE,yBAAyB;YACnC,WAAW,EAAE,mCAAmC;SACnD,CAAC;QACF;;WAEG;OACU,0BAA0B,CA0BtC;IAAD,iCAAC;CAAA,AA1BD,CAAgD,sBAAsB,GA0BrE;SA1BY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js b/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js new file mode 100644 index 0000000000..17df38ec6a --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js @@ -0,0 +1,45 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../../core/shared/item.model'; +import { ItemPageFieldComponent } from '../item-page-field.component'; +var GenericItemPageFieldComponent = /** @class */ (function (_super) { + tslib_1.__extends(GenericItemPageFieldComponent, _super); + /** + * This component can be used to represent metadata on a simple item page. + * It is the most generic way of displaying metadata values + * It expects 4 parameters: The item, a seperator, the metadata keys and an i18n key + */ + function GenericItemPageFieldComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], GenericItemPageFieldComponent.prototype, "item", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], GenericItemPageFieldComponent.prototype, "separator", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], GenericItemPageFieldComponent.prototype, "fields", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], GenericItemPageFieldComponent.prototype, "label", void 0); + GenericItemPageFieldComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-generic-item-page-field', + templateUrl: '../item-page-field.component.html' + }) + /** + * This component can be used to represent metadata on a simple item page. + * It is the most generic way of displaying metadata values + * It expects 4 parameters: The item, a seperator, the metadata keys and an i18n key + */ + ], GenericItemPageFieldComponent); + return GenericItemPageFieldComponent; +}(ItemPageFieldComponent)); +export { GenericItemPageFieldComponent }; +//# sourceMappingURL=generic-item-page-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js.map new file mode 100644 index 0000000000..ec14171019 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"generic-item-page-field.component.js","sourceRoot":"","sources":["generic-item-page-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAWtE;IAAmD,yDAAsB;IALzE;;;;OAIG;IACH;;IAuBA,CAAC;IAlBU;QAAR,KAAK,EAAE;0CAAO,IAAI;+DAAC;IAMX;QAAR,KAAK,EAAE;;oEAAmB;IAKlB;QAAR,KAAK,EAAE;;iEAAkB;IAKjB;QAAR,KAAK,EAAE;;gEAAe;IArBZ,6BAA6B;QATzC,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,WAAW,EAAE,mCAAmC;SACjD,CAAC;QACF;;;;WAIG;OACU,6BAA6B,CAuBzC;IAAD,oCAAC;CAAA,AAvBD,CAAmD,sBAAsB,GAuBxE;SAvBY,6BAA6B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js b/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js new file mode 100644 index 0000000000..8e6486e9a9 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../core/shared/item.model'; +/** + * This component can be used to represent metadata on a simple item page. + * It expects one input parameter of type Item to which the metadata belongs. + * This class can be extended to print certain metadata. + */ +var ItemPageFieldComponent = /** @class */ (function () { + function ItemPageFieldComponent() { + /** + * Separator string between multiple values of the metadata fields defined + * @type {string} + */ + this.separator = '
'; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemPageFieldComponent.prototype, "item", void 0); + ItemPageFieldComponent = tslib_1.__decorate([ + Component({ + templateUrl: './item-page-field.component.html' + }) + ], ItemPageFieldComponent); + return ItemPageFieldComponent; +}()); +export { ItemPageFieldComponent }; +//# sourceMappingURL=item-page-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js.map new file mode 100644 index 0000000000..c1aca673a6 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page-field.component.js","sourceRoot":"","sources":["item-page-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D;;;;GAIG;AAKH;IAHA;QAoBI;;;WAGG;QACH,cAAS,GAAG,OAAO,CAAC;IAExB,CAAC;IAlBY;QAAR,KAAK,EAAE;0CAAO,IAAI;wDAAC;IALX,sBAAsB;QAHlC,SAAS,CAAC;YACP,WAAW,EAAE,kCAAkC;SAClD,CAAC;OACW,sBAAsB,CAuBlC;IAAD,6BAAC;CAAA,AAvBD,IAuBC;SAvBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js b/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js new file mode 100644 index 0000000000..7f2a131cd1 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../../core/shared/item.model'; +import { ItemPageFieldComponent } from '../item-page-field.component'; +var ItemPageTitleFieldComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemPageTitleFieldComponent, _super); + function ItemPageTitleFieldComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Fields (schema.element.qualifier) used to render their values. + * In this component, we want to display values for metadata 'dc.title' + */ + _this.fields = [ + 'dc.title' + ]; + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemPageTitleFieldComponent.prototype, "item", void 0); + ItemPageTitleFieldComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page-title-field', + templateUrl: './item-page-title-field.component.html' + }) + /** + * This component is used for displaying the title (dc.title) of an item + */ + ], ItemPageTitleFieldComponent); + return ItemPageTitleFieldComponent; +}(ItemPageFieldComponent)); +export { ItemPageTitleFieldComponent }; +//# sourceMappingURL=item-page-title-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js.map new file mode 100644 index 0000000000..c2ea12c81c --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page-title-field.component.js","sourceRoot":"","sources":["item-page-title-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAAiD,uDAAsB;IAPvE;QAAA,qEA4BC;QARG;;;WAGG;QACH,YAAM,GAAa;YACf,UAAU;SACb,CAAC;;IAEN,CAAC;IAhBY;QAAR,KAAK,EAAE;0CAAO,IAAI;6DAAC;IALX,2BAA2B;QAPvC,SAAS,CAAC;YACP,QAAQ,EAAE,0BAA0B;YACpC,WAAW,EAAE,wCAAwC;SACxD,CAAC;QACF;;WAEG;OACU,2BAA2B,CAqBvC;IAAD,kCAAC;CAAA,AArBD,CAAiD,sBAAsB,GAqBtE;SArBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js b/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js new file mode 100644 index 0000000000..5375baa440 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../../core/shared/item.model'; +import { ItemPageFieldComponent } from '../item-page-field.component'; +var ItemPageUriFieldComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemPageUriFieldComponent, _super); + function ItemPageUriFieldComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Fields (schema.element.qualifier) used to render their values. + * In this component, we want to display values for metadata 'dc.identifier.uri' + */ + _this.fields = [ + 'dc.identifier.uri' + ]; + /** + * Label i18n key for the rendered metadata + */ + _this.label = 'item.page.uri'; + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemPageUriFieldComponent.prototype, "item", void 0); + ItemPageUriFieldComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page-uri-field', + templateUrl: './item-page-uri-field.component.html' + }) + /** + * This component is used for displaying the uri (dc.identifier.uri) metadata of an item + */ + ], ItemPageUriFieldComponent); + return ItemPageUriFieldComponent; +}(ItemPageFieldComponent)); +export { ItemPageUriFieldComponent }; +//# sourceMappingURL=item-page-uri-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js.map new file mode 100644 index 0000000000..19a60b8c67 --- /dev/null +++ b/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page-uri-field.component.js","sourceRoot":"","sources":["item-page-uri-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAA+C,qDAAsB;IAPrE;QAAA,qEAiCC;QAbC;;;WAGG;QACH,YAAM,GAAa;YACjB,mBAAmB;SACpB,CAAC;QAEF;;WAEG;QACH,WAAK,GAAG,eAAe,CAAC;;IAE1B,CAAC;IArBU;QAAR,KAAK,EAAE;0CAAO,IAAI;2DAAC;IALT,yBAAyB;QAPrC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,WAAW,EAAE,sCAAsC;SACpD,CAAC;QACF;;WAEG;OACU,yBAAyB,CA0BrC;IAAD,gCAAC;CAAA,AA1BD,CAA+C,sBAAsB,GA0BpE;SA1BY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-page.component.js b/src/app/+item-page/simple/item-page.component.js new file mode 100644 index 0000000000..13a0b9d906 --- /dev/null +++ b/src/app/+item-page/simple/item-page.component.js @@ -0,0 +1,46 @@ +import * as tslib_1 from "tslib"; +import { map } from 'rxjs/operators'; +import { ChangeDetectionStrategy, Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { ItemDataService } from '../../core/data/item-data.service'; +import { MetadataService } from '../../core/metadata/metadata.service'; +import { fadeInOut } from '../../shared/animations/fade'; +import { redirectToPageNotFoundOn404 } from '../../core/shared/operators'; +import { ItemViewMode } from '../../shared/items/item-type-decorator'; +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ +var ItemPageComponent = /** @class */ (function () { + function ItemPageComponent(route, router, items, metadataService) { + this.route = route; + this.router = router; + this.items = items; + this.metadataService = metadataService; + /** + * The view-mode we're currently on + */ + this.viewMode = ItemViewMode.Full; + } + ItemPageComponent.prototype.ngOnInit = function () { + this.itemRD$ = this.route.data.pipe(map(function (data) { return data.item; }), redirectToPageNotFoundOn404(this.router)); + this.metadataService.processRemoteData(this.itemRD$); + }; + ItemPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-page', + styleUrls: ['./item-page.component.scss'], + templateUrl: './item-page.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [fadeInOut] + }), + tslib_1.__metadata("design:paramtypes", [ActivatedRoute, + Router, + ItemDataService, + MetadataService]) + ], ItemPageComponent); + return ItemPageComponent; +}()); +export { ItemPageComponent }; +//# sourceMappingURL=item-page.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-page.component.js.map b/src/app/+item-page/simple/item-page.component.js.map new file mode 100644 index 0000000000..71d03e30b8 --- /dev/null +++ b/src/app/+item-page/simple/item-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page.component.js","sourceRoot":"","sources":["item-page.component.ts"],"names":[],"mappings":";AACA,OAAO,EAAoB,GAAG,EAAa,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAMpE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAEtE;;;;GAIG;AAQH;IAiBE,2BACU,KAAqB,EACrB,MAAc,EACd,KAAsB,EACtB,eAAgC;QAHhC,UAAK,GAAL,KAAK,CAAgB;QACrB,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAiB;QACtB,oBAAe,GAAf,eAAe,CAAiB;QAT1C;;WAEG;QACH,aAAQ,GAAG,YAAY,CAAC,IAAI,CAAC;IAOzB,CAAC;IAEL,oCAAQ,GAAR;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CACjC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAwB,EAA7B,CAA6B,CAAC,EAC5C,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CACzC,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IA9BU,iBAAiB;QAP7B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;YACzC,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;iDAmBiB,cAAc;YACb,MAAM;YACP,eAAe;YACL,eAAe;OArB/B,iBAAiB,CA+B7B;IAAD,wBAAC;CAAA,AA/BD,IA+BC;SA/BY,iBAAiB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js new file mode 100644 index 0000000000..7067f2b92f --- /dev/null +++ b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js @@ -0,0 +1,43 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; +import { isNotEmpty } from '../../../../shared/empty.util'; +import { ItemComponent } from '../shared/item.component'; +import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +var JournalIssueComponent = /** @class */ (function (_super) { + tslib_1.__extends(JournalIssueComponent, _super); + function JournalIssueComponent(item, ids) { + var _this = _super.call(this, item) || this; + _this.item = item; + _this.ids = ids; + return _this; + } + JournalIssueComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + if (isNotEmpty(this.resolvedRelsAndTypes$)) { + this.volumes$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isJournalVolumeOfIssue'), relationsToItems(this.item.id, this.ids)); + this.publications$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPublicationOfJournalIssue'), relationsToItems(this.item.id, this.ids)); + } + }; + JournalIssueComponent = tslib_1.__decorate([ + rendersItemType('JournalIssue', ItemViewMode.Full), + Component({ + selector: 'ds-journal-issue', + styleUrls: ['./journal-issue.component.scss'], + templateUrl: './journal-issue.component.html' + }) + /** + * The component for displaying metadata and relations of an item of the type Journal Issue + */ + , + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Item, + ItemDataService]) + ], JournalIssueComponent); + return JournalIssueComponent; +}(ItemComponent)); +export { JournalIssueComponent }; +//# sourceMappingURL=journal-issue.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js.map b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js.map new file mode 100644 index 0000000000..32e7878a23 --- /dev/null +++ b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journal-issue.component.js","sourceRoot":"","sources":["journal-issue.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAA2C,iDAAa;IAWtD,+BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IACD,wCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC7C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAClD,0BAA0B,CAAC,6BAA6B,CAAC,EACzD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IA9BU,qBAAqB;QATjC,eAAe,CAAC,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC;QAClD,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,CAAC,gCAAgC,CAAC;YAC7C,WAAW,EAAE,gCAAgC;SAC9C,CAAC;QACF;;WAEG;;QAaE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAbnB,qBAAqB,CA+BjC;IAAD,4BAAC;CAAA,AA/BD,CAA2C,aAAa,GA+BvD;SA/BY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js new file mode 100644 index 0000000000..4c5985eb6f --- /dev/null +++ b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js @@ -0,0 +1,43 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; +import { isNotEmpty } from '../../../../shared/empty.util'; +import { ItemComponent } from '../shared/item.component'; +import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +var JournalVolumeComponent = /** @class */ (function (_super) { + tslib_1.__extends(JournalVolumeComponent, _super); + function JournalVolumeComponent(item, ids) { + var _this = _super.call(this, item) || this; + _this.item = item; + _this.ids = ids; + return _this; + } + JournalVolumeComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + if (isNotEmpty(this.resolvedRelsAndTypes$)) { + this.journals$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isJournalOfVolume'), relationsToItems(this.item.id, this.ids)); + this.issues$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isIssueOfJournalVolume'), relationsToItems(this.item.id, this.ids)); + } + }; + JournalVolumeComponent = tslib_1.__decorate([ + rendersItemType('JournalVolume', ItemViewMode.Full), + Component({ + selector: 'ds-journal-volume', + styleUrls: ['./journal-volume.component.scss'], + templateUrl: './journal-volume.component.html' + }) + /** + * The component for displaying metadata and relations of an item of the type Journal Volume + */ + , + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Item, + ItemDataService]) + ], JournalVolumeComponent); + return JournalVolumeComponent; +}(ItemComponent)); +export { JournalVolumeComponent }; +//# sourceMappingURL=journal-volume.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js.map b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js.map new file mode 100644 index 0000000000..f058ca29d1 --- /dev/null +++ b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journal-volume.component.js","sourceRoot":"","sources":["journal-volume.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAA4C,kDAAa;IAWvD,gCACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IACD,yCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC5C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IA9BU,sBAAsB;QATlC,eAAe,CAAC,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC;QACnD,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACF;;WAEG;;QAaE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAbnB,sBAAsB,CA+BlC;IAAD,6BAAC;CAAA,AA/BD,CAA4C,aAAa,GA+BxD;SA/BY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal/journal.component.js b/src/app/+item-page/simple/item-types/journal/journal.component.js new file mode 100644 index 0000000000..8c528e7910 --- /dev/null +++ b/src/app/+item-page/simple/item-types/journal/journal.component.js @@ -0,0 +1,42 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; +import { isNotEmpty } from '../../../../shared/empty.util'; +import { ItemComponent } from '../shared/item.component'; +import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +var JournalComponent = /** @class */ (function (_super) { + tslib_1.__extends(JournalComponent, _super); + function JournalComponent(item, ids) { + var _this = _super.call(this, item) || this; + _this.item = item; + _this.ids = ids; + return _this; + } + JournalComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + if (isNotEmpty(this.resolvedRelsAndTypes$)) { + this.volumes$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isVolumeOfJournal'), relationsToItems(this.item.id, this.ids)); + } + }; + JournalComponent = tslib_1.__decorate([ + rendersItemType('Journal', ItemViewMode.Full), + Component({ + selector: 'ds-journal', + styleUrls: ['./journal.component.scss'], + templateUrl: './journal.component.html' + }) + /** + * The component for displaying metadata and relations of an item of the type Journal + */ + , + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Item, + ItemDataService]) + ], JournalComponent); + return JournalComponent; +}(ItemComponent)); +export { JournalComponent }; +//# sourceMappingURL=journal.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal/journal.component.js.map b/src/app/+item-page/simple/item-types/journal/journal.component.js.map new file mode 100644 index 0000000000..48133a11ad --- /dev/null +++ b/src/app/+item-page/simple/item-types/journal/journal.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journal.component.js","sourceRoot":"","sources":["journal.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAAsC,4CAAa;IAMjD,0BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IACD,mCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC7C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IArBU,gBAAgB;QAT5B,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC;QAC7C,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,WAAW,EAAE,0BAA0B;SACxC,CAAC;QACF;;WAEG;;QAQE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OARnB,gBAAgB,CAsB5B;IAAD,uBAAC;CAAA,AAtBD,CAAsC,aAAa,GAsBlD;SAtBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js new file mode 100644 index 0000000000..b83f97d0dd --- /dev/null +++ b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js @@ -0,0 +1,44 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; +import { isNotEmpty } from '../../../../shared/empty.util'; +import { ItemComponent } from '../shared/item.component'; +import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +var OrgunitComponent = /** @class */ (function (_super) { + tslib_1.__extends(OrgunitComponent, _super); + function OrgunitComponent(item, ids) { + var _this = _super.call(this, item) || this; + _this.item = item; + _this.ids = ids; + return _this; + } + OrgunitComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + if (isNotEmpty(this.resolvedRelsAndTypes$)) { + this.people$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPersonOfOrgUnit'), relationsToItems(this.item.id, this.ids)); + this.projects$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isProjectOfOrgUnit'), relationsToItems(this.item.id, this.ids)); + this.publications$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPublicationOfOrgUnit'), relationsToItems(this.item.id, this.ids)); + } + }; + OrgunitComponent = tslib_1.__decorate([ + rendersItemType('OrgUnit', ItemViewMode.Full), + Component({ + selector: 'ds-orgunit', + styleUrls: ['./orgunit.component.scss'], + templateUrl: './orgunit.component.html' + }) + /** + * The component for displaying metadata and relations of an item of the type Organisation Unit + */ + , + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Item, + ItemDataService]) + ], OrgunitComponent); + return OrgunitComponent; +}(ItemComponent)); +export { OrgunitComponent }; +//# sourceMappingURL=orgunit.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js.map b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js.map new file mode 100644 index 0000000000..f49ad6c787 --- /dev/null +++ b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"orgunit.component.js","sourceRoot":"","sources":["orgunit.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAAsC,4CAAa;IAgBjD,0BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IAED,mCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC5C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,oBAAoB,CAAC,EAChD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAClD,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IA1CU,gBAAgB;QAT5B,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC;QAC7C,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,WAAW,EAAE,0BAA0B;SACxC,CAAC;QACF;;WAEG;;QAkBE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAlBnB,gBAAgB,CA0CzB;IAAD,uBAAC;CAAA,AA1CJ,CAAsC,aAAa,GA0C/C;SA1CS,gBAAgB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/person/person.component.js b/src/app/+item-page/simple/item-types/person/person.component.js new file mode 100644 index 0000000000..d9743160b2 --- /dev/null +++ b/src/app/+item-page/simple/item-types/person/person.component.js @@ -0,0 +1,50 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; +import { SearchFixedFilterService } from '../../../../+search-page/search-filters/search-filter/search-fixed-filter.service'; +import { isNotEmpty } from '../../../../shared/empty.util'; +import { ItemComponent } from '../shared/item.component'; +import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +var PersonComponent = /** @class */ (function (_super) { + tslib_1.__extends(PersonComponent, _super); + function PersonComponent(item, ids, fixedFilterService) { + var _this = _super.call(this, item) || this; + _this.item = item; + _this.ids = ids; + _this.fixedFilterService = fixedFilterService; + return _this; + } + PersonComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + if (isNotEmpty(this.resolvedRelsAndTypes$)) { + this.publications$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPublicationOfAuthor'), relationsToItems(this.item.id, this.ids)); + this.projects$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isProjectOfPerson'), relationsToItems(this.item.id, this.ids)); + this.orgUnits$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isOrgUnitOfPerson'), relationsToItems(this.item.id, this.ids)); + this.fixedFilterQuery = this.fixedFilterService.getQueryByRelations('isAuthorOfPublication', this.item.id); + this.fixedFilter$ = observableOf('publication'); + } + }; + PersonComponent = tslib_1.__decorate([ + rendersItemType('Person', ItemViewMode.Full), + Component({ + selector: 'ds-person', + styleUrls: ['./person.component.scss'], + templateUrl: './person.component.html' + }) + /** + * The component for displaying metadata and relations of an item of the type Person + */ + , + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Item, + ItemDataService, + SearchFixedFilterService]) + ], PersonComponent); + return PersonComponent; +}(ItemComponent)); +export { PersonComponent }; +//# sourceMappingURL=person.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/person/person.component.js.map b/src/app/+item-page/simple/item-types/person/person.component.js.map new file mode 100644 index 0000000000..66f27ec1bc --- /dev/null +++ b/src/app/+item-page/simple/item-types/person/person.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"person.component.js","sourceRoot":"","sources":["person.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAgB,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,mFAAmF,CAAC;AAC7H,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAAqC,2CAAa;IA0BhD,yBACuB,IAAU,EACvB,GAAoB,EACpB,kBAA4C;QAHtD,YAKE,kBAAM,IAAI,CAAC,SACZ;QALsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;QACpB,wBAAkB,GAAlB,kBAAkB,CAA0B;;IAGtD,CAAC;IACD,kCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAClD,0BAA0B,CAAC,uBAAuB,CAAC,EACnD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,uBAAuB,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3G,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;SACjD;IACH,CAAC;IAvDU,eAAe;QAT3B,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC;QAC5C,SAAS,CAAC;YACT,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,CAAC,yBAAyB,CAAC;YACtC,WAAW,EAAE,yBAAyB;SACvC,CAAC;QACF;;WAEG;;QA4BE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;YACA,wBAAwB;OA7B3C,eAAe,CAwD3B;IAAD,sBAAC;CAAA,AAxDD,CAAqC,aAAa,GAwDjD;SAxDY,eAAe"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/project/project.component.js b/src/app/+item-page/simple/item-types/project/project.component.js new file mode 100644 index 0000000000..c90aaf4a78 --- /dev/null +++ b/src/app/+item-page/simple/item-types/project/project.component.js @@ -0,0 +1,45 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; +import { isNotEmpty } from '../../../../shared/empty.util'; +import { ItemComponent } from '../shared/item.component'; +import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +var ProjectComponent = /** @class */ (function (_super) { + tslib_1.__extends(ProjectComponent, _super); + function ProjectComponent(item, ids) { + var _this = _super.call(this, item) || this; + _this.item = item; + _this.ids = ids; + return _this; + } + ProjectComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + if (isNotEmpty(this.resolvedRelsAndTypes$)) { + this.contributors$ = this.buildRepresentations('OrgUnit', 'project.contributor.other', this.ids); + this.people$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPersonOfProject'), relationsToItems(this.item.id, this.ids)); + this.publications$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPublicationOfProject'), relationsToItems(this.item.id, this.ids)); + this.orgUnits$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isOrgUnitOfProject'), relationsToItems(this.item.id, this.ids)); + } + }; + ProjectComponent = tslib_1.__decorate([ + rendersItemType('Project', ItemViewMode.Full), + Component({ + selector: 'ds-project', + styleUrls: ['./project.component.scss'], + templateUrl: './project.component.html' + }) + /** + * The component for displaying metadata and relations of an item of the type Project + */ + , + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Item, + ItemDataService]) + ], ProjectComponent); + return ProjectComponent; +}(ItemComponent)); +export { ProjectComponent }; +//# sourceMappingURL=project.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/project/project.component.js.map b/src/app/+item-page/simple/item-types/project/project.component.js.map new file mode 100644 index 0000000000..698e52bbdd --- /dev/null +++ b/src/app/+item-page/simple/item-types/project/project.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"project.component.js","sourceRoot":"","sources":["project.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAAsC,4CAAa;IAqBjD,0BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IAED,mCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,2BAA2B,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAEjG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC5C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAClD,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,oBAAoB,CAAC,EAChD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IAjDU,gBAAgB;QAT5B,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC;QAC7C,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,WAAW,EAAE,0BAA0B;SACxC,CAAC;QACF;;WAEG;;QAuBE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAvBnB,gBAAgB,CAkD5B;IAAD,uBAAC;CAAA,AAlDD,CAAsC,aAAa,GAkDlD;SAlDY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/publication/publication.component.js b/src/app/+item-page/simple/item-types/publication/publication.component.js new file mode 100644 index 0000000000..637eebce78 --- /dev/null +++ b/src/app/+item-page/simple/item-types/publication/publication.component.js @@ -0,0 +1,42 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component, Inject } from '@angular/core'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { DEFAULT_ITEM_TYPE, ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; +import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; +import { ItemComponent } from '../shared/item.component'; +import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; +var PublicationComponent = /** @class */ (function (_super) { + tslib_1.__extends(PublicationComponent, _super); + function PublicationComponent(item, ids) { + var _this = _super.call(this, item) || this; + _this.item = item; + _this.ids = ids; + return _this; + } + PublicationComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + if (this.resolvedRelsAndTypes$) { + this.authors$ = this.buildRepresentations('Person', 'dc.contributor.author', this.ids); + this.projects$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isProjectOfPublication'), relationsToItems(this.item.id, this.ids)); + this.orgUnits$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isOrgUnitOfPublication'), relationsToItems(this.item.id, this.ids)); + this.journalIssues$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isJournalIssueOfPublication'), relationsToItems(this.item.id, this.ids)); + } + }; + PublicationComponent = tslib_1.__decorate([ + rendersItemType('Publication', ItemViewMode.Full), + rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Full), + Component({ + selector: 'ds-publication', + styleUrls: ['./publication.component.scss'], + templateUrl: './publication.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + }), + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Item, + ItemDataService]) + ], PublicationComponent); + return PublicationComponent; +}(ItemComponent)); +export { PublicationComponent }; +//# sourceMappingURL=publication.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/publication/publication.component.js.map b/src/app/+item-page/simple/item-types/publication/publication.component.js.map new file mode 100644 index 0000000000..6698442ee8 --- /dev/null +++ b/src/app/+item-page/simple/item-types/publication/publication.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"publication.component.js","sourceRoot":"","sources":["publication.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAEnF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EACL,iBAAiB,EAAE,YAAY,EAC/B,eAAe,EAChB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAUlG;IAA0C,gDAAa;IAqBrD,8BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IAED,uCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAE9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,uBAAuB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAEvF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CACnD,0BAA0B,CAAC,6BAA6B,CAAC,EACzD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SAEH;IACH,CAAC;IAnDU,oBAAoB;QARhC,eAAe,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,CAAC;QACjD,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,IAAI,CAAC;QACrD,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;YAC3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;SAChD,CAAC;QAuBG,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAvBnB,oBAAoB,CAoDhC;IAAD,2BAAC;CAAA,AApDD,CAA0C,aAAa,GAoDtD;SApDY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js b/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js new file mode 100644 index 0000000000..becf6c21c4 --- /dev/null +++ b/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js @@ -0,0 +1,103 @@ +import { ItemMetadataRepresentation } from '../../../../core/shared/metadata-representation/item/item-metadata-representation.model'; +import { MetadatumRepresentation } from '../../../../core/shared/metadata-representation/metadatum/metadatum-representation.model'; +import { MetadataValue } from '../../../../core/shared/metadata.models'; +import { getSucceededRemoteData } from '../../../../core/shared/operators'; +import { hasValue } from '../../../../shared/empty.util'; +import { distinctUntilChanged, flatMap, map } from 'rxjs/operators'; +import { of as observableOf, zip as observableZip } from 'rxjs'; +/** + * Operator for comparing arrays using a mapping function + * The mapping function should turn the source array into an array of basic types, so that the array can + * be compared using these basic types. + * For example: "(o) => o.id" will compare the two arrays by comparing their content by id. + * @param mapFn Function for mapping the arrays + */ +export var compareArraysUsing = function (mapFn) { + return function (a, b) { + if (!Array.isArray(a) || !Array.isArray(b)) { + return false; + } + var aIds = a.map(mapFn); + var bIds = b.map(mapFn); + return aIds.length === bIds.length && + aIds.every(function (e) { return bIds.includes(e); }) && + bIds.every(function (e) { return aIds.includes(e); }); + }; +}; +/** + * Operator for comparing arrays using the object's ids + */ +export var compareArraysUsingIds = function () { + return compareArraysUsing(function (t) { return hasValue(t) ? t.id : undefined; }); +}; +/** + * Fetch the relationships which match the type label given + * @param {string} label Type label + * @returns {(source: Observable<[Relationship[] , RelationshipType[]]>) => Observable} + */ +export var filterRelationsByTypeLabel = function (label) { + return function (source) { + return source.pipe(map(function (_a) { + var relsCurrentPage = _a[0], relTypesCurrentPage = _a[1]; + return relsCurrentPage.filter(function (rel, idx) { + return hasValue(relTypesCurrentPage[idx]) && (relTypesCurrentPage[idx].leftLabel === label || + relTypesCurrentPage[idx].rightLabel === label); + }); + }), distinctUntilChanged(compareArraysUsingIds())); + }; +}; +/** + * Operator for turning a list of relationships into a list of the relevant items + * @param {string} thisId The item's id of which the relations belong to + * @param {ItemDataService} ids The ItemDataService to fetch items from the REST API + * @returns {(source: Observable) => Observable} + */ +export var relationsToItems = function (thisId, ids) { + return function (source) { + return source.pipe(flatMap(function (rels) { + return observableZip.apply(void 0, rels.map(function (rel) { + var queryId = rel.leftId; + if (rel.leftId === thisId) { + queryId = rel.rightId; + } + return ids.findById(queryId); + })); + }), map(function (arr) { + return arr + .filter(function (d) { return d.hasSucceeded; }) + .map(function (d) { return d.payload; }); + }), distinctUntilChanged(compareArraysUsingIds())); + }; +}; +/** + * Operator for turning a list of relationships into a list of metadatarepresentations given the original metadata + * @param parentId The id of the parent item + * @param itemType The type of relation this list resembles (for creating representations) + * @param metadata The list of original Metadatum objects + * @param ids The ItemDataService to use for fetching Items from the Rest API + */ +export var relationsToRepresentations = function (parentId, itemType, metadata, ids) { + return function (source) { + return source.pipe(flatMap(function (rels) { + return observableZip.apply(void 0, metadata + .map(function (metadatum) { return Object.assign(new MetadataValue(), metadatum); }) + .map(function (metadatum) { + if (metadatum.isVirtual) { + var matchingRels = rels.filter(function (rel) { return ('' + rel.id) === metadatum.virtualValue; }); + if (matchingRels.length > 0) { + var matchingRel = matchingRels[0]; + var queryId = matchingRel.leftId; + if (matchingRel.leftId === parentId) { + queryId = matchingRel.rightId; + } + return ids.findById(queryId).pipe(getSucceededRemoteData(), map(function (d) { return Object.assign(new ItemMetadataRepresentation(), d.payload); })); + } + } + else { + return observableOf(Object.assign(new MetadatumRepresentation(itemType), metadatum)); + } + })); + })); + }; +}; +//# sourceMappingURL=item-relationships-utils.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js.map b/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js.map new file mode 100644 index 0000000000..a11c9dbf1c --- /dev/null +++ b/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-relationships-utils.js","sourceRoot":"","sources":["item-relationships-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/shared/item.component.js b/src/app/+item-page/simple/item-types/shared/item.component.js new file mode 100644 index 0000000000..de31db6666 --- /dev/null +++ b/src/app/+item-page/simple/item-types/shared/item.component.js @@ -0,0 +1,53 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { combineLatest as observableCombineLatest, zip as observableZip } from 'rxjs'; +import { distinctUntilChanged, filter, flatMap, map } from 'rxjs/operators'; +import { Item } from '../../../../core/shared/item.model'; +import { getRemoteDataPayload, getSucceededRemoteData } from '../../../../core/shared/operators'; +import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; +import { compareArraysUsingIds, relationsToRepresentations } from './item-relationships-utils'; +var ItemComponent = /** @class */ (function () { + function ItemComponent(item) { + this.item = item; + } + ItemComponent.prototype.ngOnInit = function () { + var relationships$ = this.item.relationships; + if (relationships$) { + var relsCurrentPage$ = relationships$.pipe(filter(function (rd) { return rd.hasSucceeded; }), getRemoteDataPayload(), map(function (pl) { return pl.page; }), distinctUntilChanged(compareArraysUsingIds())); + var relTypesCurrentPage$ = relsCurrentPage$.pipe(flatMap(function (rels) { + return observableZip.apply(void 0, rels.map(function (rel) { return rel.relationshipType; })).pipe(map(function (_a) { + var arr = _a.slice(0); + return arr.map(function (d) { return d.payload; }); + })); + }), distinctUntilChanged(compareArraysUsingIds())); + this.resolvedRelsAndTypes$ = observableCombineLatest(relsCurrentPage$, relTypesCurrentPage$); + } + }; + /** + * Build a list of MetadataRepresentations for the current item. This combines all metadata and relationships of a + * certain type. + * @param itemType The type of item we're building representations of. Used for matching templates. + * @param metadataField The metadata field that resembles the item type. + * @param itemDataService ItemDataService to turn relations into items. + */ + ItemComponent.prototype.buildRepresentations = function (itemType, metadataField, itemDataService) { + var metadata = this.item.findMetadataSortedByPlace(metadataField); + var relsCurrentPage$ = this.item.relationships.pipe(getSucceededRemoteData(), getRemoteDataPayload(), map(function (pl) { return pl.page; }), distinctUntilChanged(compareArraysUsingIds())); + return relsCurrentPage$.pipe(relationsToRepresentations(this.item.id, itemType, metadata, itemDataService)); + }; + ItemComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item', + template: '' + }) + /** + * A generic component for displaying metadata and relations of an item + */ + , + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Item]) + ], ItemComponent); + return ItemComponent; +}()); +export { ItemComponent }; +//# sourceMappingURL=item.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/shared/item.component.js.map b/src/app/+item-page/simple/item-types/shared/item.component.js.map new file mode 100644 index 0000000000..cc6aad248b --- /dev/null +++ b/src/app/+item-page/simple/item-types/shared/item.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item.component.js","sourceRoot":"","sources":["item.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,GAAG,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAClG,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAM5E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AACjG,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAS/F;IAME,uBACuB,IAAU;QAAV,SAAI,GAAJ,IAAI,CAAM;IAC9B,CAAC;IAEJ,gCAAQ,GAAR;QACE,IAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;QAC/C,IAAI,cAAc,EAAE;YAClB,IAAM,gBAAgB,GAAG,cAAc,CAAC,IAAI,CAC1C,MAAM,CAAC,UAAC,EAA2C,IAAK,OAAA,EAAE,CAAC,YAAY,EAAf,CAAe,CAAC,EACxE,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,EAA+B,IAAK,OAAA,EAAE,CAAC,IAAI,EAAP,CAAO,CAAC,EACjD,oBAAoB,CAAC,qBAAqB,EAAE,CAAC,CAC9C,CAAC;YAEF,IAAM,oBAAoB,GAAG,gBAAgB,CAAC,IAAI,CAChD,OAAO,CAAC,UAAC,IAAoB;gBAC3B,OAAA,aAAa,eAAI,IAAI,CAAC,GAAG,CAAC,UAAC,GAAiB,IAAK,OAAA,GAAG,CAAC,gBAAgB,EAApB,CAAoB,CAAC,EAAE,IAAI,CAC1E,GAAG,CAAC,UAAC,EAA6C;wBAA5C,iBAAM;oBAA2C,OAAA,GAAG,CAAC,GAAG,CAAC,UAAC,CAA+B,IAAK,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAC;gBAAvD,CAAuD,CAAC,CAChH;YAFD,CAEC,CACF,EACD,oBAAoB,CAAC,qBAAqB,EAAE,CAAC,CAC9C,CAAC;YAEF,IAAI,CAAC,qBAAqB,GAAG,uBAAuB,CAClD,gBAAgB,EAChB,oBAAoB,CACrB,CAAC;SACH;IACH,CAAC;IAED;;;;;;OAMG;IACH,4CAAoB,GAApB,UAAqB,QAAgB,EAAE,aAAqB,EAAE,eAAgC;QAC5F,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;QACpE,IAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CACnD,sBAAsB,EAAE,EACxB,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,EAA+B,IAAK,OAAA,EAAE,CAAC,IAAI,EAAP,CAAO,CAAC,EACjD,oBAAoB,CAAC,qBAAqB,EAAE,CAAC,CAC9C,CAAC;QAEF,OAAO,gBAAgB,CAAC,IAAI,CAC1B,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAC9E,CAAC;IACJ,CAAC;IAvDU,aAAa;QAPzB,SAAS,CAAC;YACT,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,EAAE;SACb,CAAC;QACF;;WAEG;;QAQE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;OAPtB,aAAa,CAyDzB;IAAD,oBAAC;CAAA,AAzDD,IAyDC;SAzDY,aAAa"} \ No newline at end of file diff --git a/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js b/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js new file mode 100644 index 0000000000..91ce6bc391 --- /dev/null +++ b/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { ItemViewMode } from '../../../shared/items/item-type-decorator'; +var MetadataRepresentationListComponent = /** @class */ (function () { + function MetadataRepresentationListComponent() { + /** + * The view-mode we're currently on + * @type {ElementViewMode} + */ + this.viewMode = ItemViewMode.Metadata; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], MetadataRepresentationListComponent.prototype, "representations", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], MetadataRepresentationListComponent.prototype, "label", void 0); + MetadataRepresentationListComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-representation-list', + templateUrl: './metadata-representation-list.component.html' + }) + /** + * This component is used for displaying metadata + * It expects a list of MetadataRepresentation objects and a label to put on top of the list + */ + ], MetadataRepresentationListComponent); + return MetadataRepresentationListComponent; +}()); +export { MetadataRepresentationListComponent }; +//# sourceMappingURL=metadata-representation-list.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js.map b/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js.map new file mode 100644 index 0000000000..d09bca3bb1 --- /dev/null +++ b/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-representation-list.component.js","sourceRoot":"","sources":["metadata-representation-list.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAUzE;IARA;QAmBE;;;WAGG;QACH,aAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;IACnC,CAAC;IAZU;QAAR,KAAK,EAAE;;gFAA2C;IAK1C;QAAR,KAAK,EAAE;;sEAAe;IATZ,mCAAmC;QAR/C,SAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,WAAW,EAAE,+CAA+C;SAC7D,CAAC;QACF;;;WAGG;OACU,mCAAmC,CAgB/C;IAAD,0CAAC;CAAA,AAhBD,IAgBC;SAhBY,mCAAmC"} \ No newline at end of file diff --git a/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js b/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js new file mode 100644 index 0000000000..4ac1ddc54a --- /dev/null +++ b/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js @@ -0,0 +1,65 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../core/shared/item.model'; +import { SearchFixedFilterService } from '../../../../+search-page/search-filters/search-filter/search-fixed-filter.service'; +import { isNotEmpty } from '../../../../shared/empty.util'; +import { of } from 'rxjs/internal/observable/of'; +var RelatedEntitiesSearchComponent = /** @class */ (function () { + function RelatedEntitiesSearchComponent(fixedFilterService) { + this.fixedFilterService = fixedFilterService; + /** + * Whether or not the search bar and title should be displayed (defaults to true) + * @type {boolean} + */ + this.searchEnabled = true; + /** + * The ratio of the sidebar's width compared to the search results (1-12) (defaults to 4) + * @type {number} + */ + this.sideBarWidth = 4; + } + RelatedEntitiesSearchComponent.prototype.ngOnInit = function () { + if (isNotEmpty(this.relationType) && isNotEmpty(this.item)) { + this.fixedFilter = this.fixedFilterService.getFilterByRelation(this.relationType, this.item.id); + } + if (isNotEmpty(this.relationEntityType)) { + this.fixedFilter$ = of(this.relationEntityType); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], RelatedEntitiesSearchComponent.prototype, "relationType", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], RelatedEntitiesSearchComponent.prototype, "item", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], RelatedEntitiesSearchComponent.prototype, "relationEntityType", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], RelatedEntitiesSearchComponent.prototype, "searchEnabled", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], RelatedEntitiesSearchComponent.prototype, "sideBarWidth", void 0); + RelatedEntitiesSearchComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-related-entities-search', + templateUrl: './related-entities-search.component.html' + }) + /** + * A component to show related items as search results. + * Related items can be facetted, or queried using an + * optional search box. + */ + , + tslib_1.__metadata("design:paramtypes", [SearchFixedFilterService]) + ], RelatedEntitiesSearchComponent); + return RelatedEntitiesSearchComponent; +}()); +export { RelatedEntitiesSearchComponent }; +//# sourceMappingURL=related-entities-search.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js.map b/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js.map new file mode 100644 index 0000000000..f09324c7e3 --- /dev/null +++ b/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"related-entities-search.component.js","sourceRoot":"","sources":["related-entities-search.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,mFAAmF,CAAC;AAC7H,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAWjD;IAmCE,wCAAoB,kBAA4C;QAA5C,uBAAkB,GAAlB,kBAAkB,CAA0B;QAfhE;;;WAGG;QACM,kBAAa,GAAG,IAAI,CAAC;QAE9B;;;WAGG;QACM,iBAAY,GAAG,CAAC,CAAC;IAM1B,CAAC;IAED,iDAAQ,GAAR;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC1D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACjG;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;YACvC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SACjD;IACH,CAAC;IAvCQ;QAAR,KAAK,EAAE;;wEAAsB;IAKrB;QAAR,KAAK,EAAE;0CAAO,IAAI;gEAAC;IAOX;QAAR,KAAK,EAAE;;8EAA4B;IAM3B;QAAR,KAAK,EAAE;;yEAAsB;IAMrB;QAAR,KAAK,EAAE;;wEAAkB;IA9Bf,8BAA8B;QAT1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,WAAW,EAAE,0CAA0C;SACxD,CAAC;QACF;;;;WAIG;;iDAoCuC,wBAAwB;OAnCrD,8BAA8B,CA+C1C;IAAD,qCAAC;CAAA,AA/CD,IA+CC;SA/CY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/related-items/related-items-component.js b/src/app/+item-page/simple/related-items/related-items-component.js new file mode 100644 index 0000000000..291213a01a --- /dev/null +++ b/src/app/+item-page/simple/related-items/related-items-component.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { ItemViewMode } from '../../../shared/items/item-type-decorator'; +var RelatedItemsComponent = /** @class */ (function () { + function RelatedItemsComponent() { + /** + * The view-mode we're currently on + * @type {ElementViewMode} + */ + this.viewMode = ItemViewMode.Element; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], RelatedItemsComponent.prototype, "items", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], RelatedItemsComponent.prototype, "label", void 0); + RelatedItemsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-related-items', + styleUrls: ['./related-items.component.scss'], + templateUrl: './related-items.component.html' + }) + /** + * This component is used for displaying relations between items + * It expects a list of items to display and a label to put on top + */ + ], RelatedItemsComponent); + return RelatedItemsComponent; +}()); +export { RelatedItemsComponent }; +//# sourceMappingURL=related-items-component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/related-items/related-items-component.js.map b/src/app/+item-page/simple/related-items/related-items-component.js.map new file mode 100644 index 0000000000..38a3f95374 --- /dev/null +++ b/src/app/+item-page/simple/related-items/related-items-component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"related-items-component.js","sourceRoot":"","sources":["related-items-component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAWzE;IATA;QAoBE;;;WAGG;QACH,aAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;IAClC,CAAC;IAZU;QAAR,KAAK,EAAE;;wDAAe;IAKd;QAAR,KAAK,EAAE;;wDAAe;IATZ,qBAAqB;QATjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,CAAC,gCAAgC,CAAC;YAC7C,WAAW,EAAE,gCAAgC;SAC9C,CAAC;QACF;;;WAGG;OACU,qBAAqB,CAgBjC;IAAD,4BAAC;CAAA,AAhBD,IAgBC;SAhBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+login-page/login-page-routing.module.js b/src/app/+login-page/login-page-routing.module.js new file mode 100644 index 0000000000..5f1a44d159 --- /dev/null +++ b/src/app/+login-page/login-page-routing.module.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { LoginPageComponent } from './login-page.component'; +var LoginPageRoutingModule = /** @class */ (function () { + function LoginPageRoutingModule() { + } + LoginPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { path: '', pathMatch: 'full', component: LoginPageComponent, data: { title: 'login.title' } } + ]) + ] + }) + ], LoginPageRoutingModule); + return LoginPageRoutingModule; +}()); +export { LoginPageRoutingModule }; +//# sourceMappingURL=login-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+login-page/login-page-routing.module.js.map b/src/app/+login-page/login-page-routing.module.js.map new file mode 100644 index 0000000000..adbe2f99c6 --- /dev/null +++ b/src/app/+login-page/login-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"login-page-routing.module.js","sourceRoot":"","sources":["login-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAS5D;IAAA;IAAsC,CAAC;IAA1B,sBAAsB;QAPlC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAG,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;iBAChG,CAAC;aACH;SACF,CAAC;OACW,sBAAsB,CAAI;IAAD,6BAAC;CAAA,AAAvC,IAAuC;SAA1B,sBAAsB"} \ No newline at end of file diff --git a/src/app/+login-page/login-page.component.js b/src/app/+login-page/login-page.component.js new file mode 100644 index 0000000000..e8575bf49a --- /dev/null +++ b/src/app/+login-page/login-page.component.js @@ -0,0 +1,78 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { filter, take } from 'rxjs/operators'; +import { Store } from '@ngrx/store'; +import { AddAuthenticationMessageAction, AuthenticatedAction, AuthenticationSuccessAction, ResetAuthenticationMessagesAction } from '../core/auth/auth.actions'; +import { hasValue, isNotEmpty } from '../shared/empty.util'; +import { AuthTokenInfo } from '../core/auth/models/auth-token-info.model'; +import { isAuthenticated } from '../core/auth/selectors'; +/** + * This component represents the login page + */ +var LoginPageComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ActivatedRoute} route + * @param {Store} store + */ + function LoginPageComponent(route, store) { + this.route = route; + this.store = store; + } + /** + * Initialize instance variables + */ + LoginPageComponent.prototype.ngOnInit = function () { + var _this = this; + var queryParamsObs = this.route.queryParams; + var authenticated = this.store.select(isAuthenticated); + this.sub = observableCombineLatest(queryParamsObs, authenticated).pipe(filter(function (_a) { + var params = _a[0], auth = _a[1]; + return isNotEmpty(params.token) || isNotEmpty(params.expired); + }), take(1)).subscribe(function (_a) { + var params = _a[0], auth = _a[1]; + var token = params.token; + var authToken; + if (!auth) { + if (isNotEmpty(token)) { + authToken = new AuthTokenInfo(token); + _this.store.dispatch(new AuthenticatedAction(authToken)); + } + else if (isNotEmpty(params.expired)) { + _this.store.dispatch(new AddAuthenticationMessageAction('auth.messages.expired')); + } + } + else { + if (isNotEmpty(token)) { + authToken = new AuthTokenInfo(token); + _this.store.dispatch(new AuthenticationSuccessAction(authToken)); + } + } + }); + }; + /** + * Unsubscribe from subscription + */ + LoginPageComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + // Clear all authentication messages when leaving login page + this.store.dispatch(new ResetAuthenticationMessagesAction()); + }; + LoginPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-login-page', + styleUrls: ['./login-page.component.scss'], + templateUrl: './login-page.component.html' + }), + tslib_1.__metadata("design:paramtypes", [ActivatedRoute, + Store]) + ], LoginPageComponent); + return LoginPageComponent; +}()); +export { LoginPageComponent }; +//# sourceMappingURL=login-page.component.js.map \ No newline at end of file diff --git a/src/app/+login-page/login-page.component.js.map b/src/app/+login-page/login-page.component.js.map new file mode 100644 index 0000000000..011a82cb4d --- /dev/null +++ b/src/app/+login-page/login-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"login-page.component.js","sourceRoot":"","sources":["login-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+login-page/login-page.module.js b/src/app/+login-page/login-page.module.js new file mode 100644 index 0000000000..ddbe2e7613 --- /dev/null +++ b/src/app/+login-page/login-page.module.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { SharedModule } from '../shared/shared.module'; +import { LoginPageComponent } from './login-page.component'; +import { LoginPageRoutingModule } from './login-page-routing.module'; +var LoginPageModule = /** @class */ (function () { + function LoginPageModule() { + } + LoginPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + LoginPageRoutingModule, + CommonModule, + SharedModule, + ], + declarations: [ + LoginPageComponent + ] + }) + ], LoginPageModule); + return LoginPageModule; +}()); +export { LoginPageModule }; +//# sourceMappingURL=login-page.module.js.map \ No newline at end of file diff --git a/src/app/+login-page/login-page.module.js.map b/src/app/+login-page/login-page.module.js.map new file mode 100644 index 0000000000..ace808e89e --- /dev/null +++ b/src/app/+login-page/login-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"login-page.module.js","sourceRoot":"","sources":["login-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAYrE;IAAA;IAEA,CAAC;IAFY,eAAe;QAV3B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,sBAAsB;gBACtB,YAAY;gBACZ,YAAY;aACb;YACD,YAAY,EAAE;gBACZ,kBAAkB;aACnB;SACF,CAAC;OACW,eAAe,CAE3B;IAAD,sBAAC;CAAA,AAFD,IAEC;SAFY,eAAe"} \ No newline at end of file diff --git a/src/app/+logout-page/logout-page-routing.module.js b/src/app/+logout-page/logout-page-routing.module.js new file mode 100644 index 0000000000..781089bb22 --- /dev/null +++ b/src/app/+logout-page/logout-page-routing.module.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { LogoutPageComponent } from './logout-page.component'; +import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; +var LogoutPageRoutingModule = /** @class */ (function () { + function LogoutPageRoutingModule() { + } + LogoutPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { + canActivate: [AuthenticatedGuard], + path: '', + component: LogoutPageComponent, + data: { title: 'logout.title' } + } + ]) + ] + }) + ], LogoutPageRoutingModule); + return LogoutPageRoutingModule; +}()); +export { LogoutPageRoutingModule }; +//# sourceMappingURL=logout-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+logout-page/logout-page-routing.module.js.map b/src/app/+logout-page/logout-page-routing.module.js.map new file mode 100644 index 0000000000..18127e387f --- /dev/null +++ b/src/app/+logout-page/logout-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"logout-page-routing.module.js","sourceRoot":"","sources":["logout-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AActE;IAAA;IAAuC,CAAC;IAA3B,uBAAuB;QAZnC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,IAAI,EAAE,EAAE;wBACR,SAAS,EAAE,mBAAmB;wBAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE;qBAChC;iBACF,CAAC;aACH;SACF,CAAC;OACW,uBAAuB,CAAI;IAAD,8BAAC;CAAA,AAAxC,IAAwC;SAA3B,uBAAuB"} \ No newline at end of file diff --git a/src/app/+logout-page/logout-page.component.js b/src/app/+logout-page/logout-page.component.js new file mode 100644 index 0000000000..472ad78915 --- /dev/null +++ b/src/app/+logout-page/logout-page.component.js @@ -0,0 +1,16 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +var LogoutPageComponent = /** @class */ (function () { + function LogoutPageComponent() { + } + LogoutPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-logout-page', + styleUrls: ['./logout-page.component.scss'], + templateUrl: './logout-page.component.html' + }) + ], LogoutPageComponent); + return LogoutPageComponent; +}()); +export { LogoutPageComponent }; +//# sourceMappingURL=logout-page.component.js.map \ No newline at end of file diff --git a/src/app/+logout-page/logout-page.component.js.map b/src/app/+logout-page/logout-page.component.js.map new file mode 100644 index 0000000000..8c633c70b3 --- /dev/null +++ b/src/app/+logout-page/logout-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"logout-page.component.js","sourceRoot":"","sources":["logout-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAO1C;IAAA;IAEA,CAAC;IAFY,mBAAmB;QAL/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;SAC5C,CAAC;OACW,mBAAmB,CAE/B;IAAD,0BAAC;CAAA,AAFD,IAEC;SAFY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+logout-page/logout-page.module.js b/src/app/+logout-page/logout-page.module.js new file mode 100644 index 0000000000..cfe66270c9 --- /dev/null +++ b/src/app/+logout-page/logout-page.module.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { SharedModule } from '../shared/shared.module'; +import { LogoutPageComponent } from './logout-page.component'; +import { LogoutPageRoutingModule } from './logout-page-routing.module'; +var LogoutPageModule = /** @class */ (function () { + function LogoutPageModule() { + } + LogoutPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + LogoutPageRoutingModule, + CommonModule, + SharedModule, + ], + declarations: [ + LogoutPageComponent + ] + }) + ], LogoutPageModule); + return LogoutPageModule; +}()); +export { LogoutPageModule }; +//# sourceMappingURL=logout-page.module.js.map \ No newline at end of file diff --git a/src/app/+logout-page/logout-page.module.js.map b/src/app/+logout-page/logout-page.module.js.map new file mode 100644 index 0000000000..b3f715b52a --- /dev/null +++ b/src/app/+logout-page/logout-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"logout-page.module.js","sourceRoot":"","sources":["logout-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAYvE;IAAA;IAEA,CAAC;IAFY,gBAAgB;QAV5B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,uBAAuB;gBACvB,YAAY;gBACZ,YAAY;aACb;YACD,YAAY,EAAE;gBACZ,mBAAmB;aACpB;SACF,CAAC;OACW,gBAAgB,CAE5B;IAAD,uBAAC;CAAA,AAFD,IAEC;SAFY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-configuration-value-type.js b/src/app/+my-dspace-page/my-dspace-configuration-value-type.js new file mode 100644 index 0000000000..b376f30f32 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-configuration-value-type.js @@ -0,0 +1,6 @@ +export var MyDSpaceConfigurationValueType; +(function (MyDSpaceConfigurationValueType) { + MyDSpaceConfigurationValueType["Workspace"] = "workspace"; + MyDSpaceConfigurationValueType["Workflow"] = "workflow"; +})(MyDSpaceConfigurationValueType || (MyDSpaceConfigurationValueType = {})); +//# sourceMappingURL=my-dspace-configuration-value-type.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-configuration-value-type.js.map b/src/app/+my-dspace-page/my-dspace-configuration-value-type.js.map new file mode 100644 index 0000000000..b9a6659d3d --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-configuration-value-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-configuration-value-type.js","sourceRoot":"","sources":["my-dspace-configuration-value-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,8BAGX;AAHD,WAAY,8BAA8B;IACxC,yDAAuB,CAAA;IACvB,uDAAqB,CAAA;AACvB,CAAC,EAHW,8BAA8B,KAA9B,8BAA8B,QAGzC"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-configuration.service.js b/src/app/+my-dspace-page/my-dspace-configuration.service.js new file mode 100644 index 0000000000..05cb9192fd --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-configuration.service.js @@ -0,0 +1,110 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { combineLatest } from 'rxjs'; +import { first, map } from 'rxjs/operators'; +import { MyDSpaceConfigurationValueType } from './my-dspace-configuration-value-type'; +import { RoleService } from '../core/roles/role.service'; +import { SearchConfigurationService } from '../+search-page/search-service/search-configuration.service'; +import { RouteService } from '../shared/services/route.service'; +import { PaginationComponentOptions } from '../shared/pagination/pagination-component-options.model'; +import { SortDirection, SortOptions } from '../core/cache/models/sort-options.model'; +import { SearchFixedFilterService } from '../+search-page/search-filters/search-filter/search-fixed-filter.service'; +/** + * Service that performs all actions that have to do with the current mydspace configuration + */ +var MyDSpaceConfigurationService = /** @class */ (function (_super) { + tslib_1.__extends(MyDSpaceConfigurationService, _super); + /** + * Initialize class + * + * @param {roleService} roleService + * @param {SearchFixedFilterService} fixedFilterService + * @param {RouteService} routeService + * @param {ActivatedRoute} route + */ + function MyDSpaceConfigurationService(roleService, fixedFilterService, routeService, route) { + var _this = _super.call(this, routeService, fixedFilterService, route) || this; + _this.roleService = roleService; + _this.fixedFilterService = fixedFilterService; + _this.routeService = routeService; + _this.route = route; + /** + * Default pagination settings + */ + _this.defaultPagination = Object.assign(new PaginationComponentOptions(), { + id: 'mydspace-page', + pageSize: 10, + currentPage: 1 + }); + /** + * Default sort settings + */ + _this.defaultSort = new SortOptions('dc.date.issued', SortDirection.DESC); + /** + * Default configuration parameter setting + */ + _this.defaultConfiguration = 'workspace'; + /** + * Default scope setting + */ + _this.defaultScope = ''; + /** + * Default query setting + */ + _this.defaultQuery = ''; + // override parent class initialization + _this._defaults = null; + _this.initDefaults(); + _this.isSubmitter$ = _this.roleService.isSubmitter(); + _this.isController$ = _this.roleService.isController(); + _this.isAdmin$ = _this.roleService.isAdmin(); + return _this; + } + /** + * Returns the list of available configuration depend on the user role + * + * @return {Observable} + * Emits the available configuration list + */ + MyDSpaceConfigurationService.prototype.getAvailableConfigurationTypes = function () { + return combineLatest(this.isSubmitter$, this.isController$, this.isAdmin$).pipe(first(), map(function (_a) { + var isSubmitter = _a[0], isController = _a[1], isAdmin = _a[2]; + var availableConf = []; + if (isSubmitter) { + availableConf.push(MyDSpaceConfigurationValueType.Workspace); + } + if (isController || isAdmin) { + availableConf.push(MyDSpaceConfigurationValueType.Workflow); + } + return availableConf; + })); + }; + /** + * Returns the select options for the available configuration list + * + * @return {Observable} + * Emits the select options list + */ + MyDSpaceConfigurationService.prototype.getAvailableConfigurationOptions = function () { + return this.getAvailableConfigurationTypes().pipe(first(), map(function (availableConfigurationTypes) { + var configurationOptions = []; + availableConfigurationTypes.forEach(function (type) { + var value = type; + var label = "mydspace.show." + value; + configurationOptions.push({ value: value, label: label }); + }); + return configurationOptions; + })); + }; + MyDSpaceConfigurationService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RoleService, + SearchFixedFilterService, + RouteService, + ActivatedRoute]) + ], MyDSpaceConfigurationService); + return MyDSpaceConfigurationService; +}(SearchConfigurationService)); +export { MyDSpaceConfigurationService }; +//# sourceMappingURL=my-dspace-configuration.service.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-configuration.service.js.map b/src/app/+my-dspace-page/my-dspace-configuration.service.js.map new file mode 100644 index 0000000000..77d772a3c0 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-configuration.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-configuration.service.js","sourceRoot":"","sources":["my-dspace-configuration.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js b/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js new file mode 100644 index 0000000000..a9e7c20e2f --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js @@ -0,0 +1,110 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Output } from '@angular/core'; +import { first } from 'rxjs/operators'; +import { Store } from '@ngrx/store'; +import { TranslateService } from '@ngx-translate/core'; +import { AuthService } from '../../core/auth/auth.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { NotificationOptions } from '../../shared/notifications/models/notification-options.model'; +import { HALEndpointService } from '../../core/shared/hal-endpoint.service'; +import { NotificationType } from '../../shared/notifications/models/notification-type'; +import { hasValue } from '../../shared/empty.util'; +/** + * This component represents the whole mydspace page header + */ +var MyDSpaceNewSubmissionComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {AuthService} authService + * @param {ChangeDetectorRef} changeDetectorRef + * @param {HALEndpointService} halService + * @param {NotificationsService} notificationsService + * @param {Store} store + * @param {TranslateService} translate + */ + function MyDSpaceNewSubmissionComponent(authService, changeDetectorRef, halService, notificationsService, store, translate) { + this.authService = authService; + this.changeDetectorRef = changeDetectorRef; + this.halService = halService; + this.notificationsService = notificationsService; + this.store = store; + this.translate = translate; + this.uploadEnd = new EventEmitter(); + /** + * The UploaderOptions object + */ + this.uploadFilesOptions = { + url: '', + authToken: null, + disableMultipart: false, + itemAlias: null + }; + } + /** + * Initialize url and Bearer token + */ + MyDSpaceNewSubmissionComponent.prototype.ngOnInit = function () { + var _this = this; + this.sub = this.halService.getEndpoint('workspaceitems').pipe(first()).subscribe(function (url) { + _this.uploadFilesOptions.url = url; + _this.uploadFilesOptions.authToken = _this.authService.buildAuthHeader(); + _this.changeDetectorRef.detectChanges(); + }); + }; + /** + * Method called when file upload is completed to notify upload status + */ + MyDSpaceNewSubmissionComponent.prototype.onCompleteItem = function (res) { + if (res && res._embedded && res._embedded.workspaceitems && res._embedded.workspaceitems.length > 0) { + var workspaceitems = res._embedded.workspaceitems; + this.uploadEnd.emit(workspaceitems); + if (workspaceitems.length === 1) { + var options = new NotificationOptions(); + options.timeOut = 0; + var link = '/workspaceitems/' + workspaceitems[0].id + '/edit'; + this.notificationsService.notificationWithAnchor(NotificationType.Success, options, link, 'mydspace.general.text-here', 'mydspace.upload.upload-successful', 'here'); + } + else if (workspaceitems.length > 1) { + this.notificationsService.success(null, this.translate.get('mydspace.upload.upload-multiple-successful', { qty: workspaceitems.length })); + } + } + else { + this.notificationsService.error(null, this.translate.get('mydspace.upload.upload-failed')); + } + }; + /** + * Method called on file upload error + */ + MyDSpaceNewSubmissionComponent.prototype.onUploadError = function () { + this.notificationsService.error(null, this.translate.get('mydspace.upload.upload-failed')); + }; + /** + * Unsubscribe from the subscription + */ + MyDSpaceNewSubmissionComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], MyDSpaceNewSubmissionComponent.prototype, "uploadEnd", void 0); + MyDSpaceNewSubmissionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-my-dspace-new-submission', + styleUrls: ['./my-dspace-new-submission.component.scss'], + templateUrl: './my-dspace-new-submission.component.html' + }), + tslib_1.__metadata("design:paramtypes", [AuthService, + ChangeDetectorRef, + HALEndpointService, + NotificationsService, + Store, + TranslateService]) + ], MyDSpaceNewSubmissionComponent); + return MyDSpaceNewSubmissionComponent; +}()); +export { MyDSpaceNewSubmissionComponent }; +//# sourceMappingURL=my-dspace-new-submission.component.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js.map b/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js.map new file mode 100644 index 0000000000..2f9653bc44 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-new-submission.component.js","sourceRoot":"","sources":["my-dspace-new-submission.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page-routing.module.js b/src/app/+my-dspace-page/my-dspace-page-routing.module.js new file mode 100644 index 0000000000..b99e2dd359 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-page-routing.module.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { MyDSpacePageComponent } from './my-dspace-page.component'; +import { MyDSpaceGuard } from './my-dspace.guard'; +var MyDspacePageRoutingModule = /** @class */ (function () { + /** + * This module defines the default component to load when navigating to the mydspace page path. + */ + function MyDspacePageRoutingModule() { + } + MyDspacePageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { + path: '', + component: MyDSpacePageComponent, + data: { title: 'mydspace.title' }, + canActivate: [ + MyDSpaceGuard + ] + } + ]) + ] + }) + /** + * This module defines the default component to load when navigating to the mydspace page path. + */ + ], MyDspacePageRoutingModule); + return MyDspacePageRoutingModule; +}()); +export { MyDspacePageRoutingModule }; +//# sourceMappingURL=my-dspace-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page-routing.module.js.map b/src/app/+my-dspace-page/my-dspace-page-routing.module.js.map new file mode 100644 index 0000000000..7cb2103924 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-page-routing.module.js","sourceRoot":"","sources":["my-dspace-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAmBlD;IAHA;;OAEG;IACH;IACA,CAAC;IADY,yBAAyB;QAjBrC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,EAAE;wBACR,SAAS,EAAE,qBAAqB;wBAChC,IAAI,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;wBACjC,WAAW,EAAE;4BACX,aAAa;yBACd;qBACF;iBACF,CAAC;aACH;SACF,CAAC;QACF;;WAEG;OACU,yBAAyB,CACrC;IAAD,gCAAC;CAAA,AADD,IACC;SADY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page.component.js b/src/app/+my-dspace-page/my-dspace-page.component.js new file mode 100644 index 0000000000..cdd72e6d47 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-page.component.js @@ -0,0 +1,125 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component, Inject, InjectionToken, Input } from '@angular/core'; +import { BehaviorSubject } from 'rxjs'; +import { switchMap, tap, } from 'rxjs/operators'; +import { pushInOut } from '../shared/animations/push'; +import { HostWindowService } from '../shared/host-window.service'; +import { SearchService } from '../+search-page/search-service/search.service'; +import { SearchSidebarService } from '../+search-page/search-sidebar/search-sidebar.service'; +import { hasValue } from '../shared/empty.util'; +import { getSucceededRemoteData } from '../core/shared/operators'; +import { MyDSpaceResponseParsingService } from '../core/data/mydspace-response-parsing.service'; +import { RoleType } from '../core/roles/role-types'; +import { MyDSpaceConfigurationService } from './my-dspace-configuration.service'; +import { ViewMode } from '../core/shared/view-mode.model'; +import { MyDSpaceRequest } from '../core/data/request.models'; +export var MYDSPACE_ROUTE = '/mydspace'; +export var SEARCH_CONFIG_SERVICE = new InjectionToken('searchConfigurationService'); +/** + * This component represents the whole mydspace page + */ +var MyDSpacePageComponent = /** @class */ (function () { + function MyDSpacePageComponent(service, sidebarService, windowService, searchConfigService) { + this.service = service; + this.sidebarService = sidebarService; + this.windowService = windowService; + this.searchConfigService = searchConfigService; + /** + * True when the search component should show results on the current page + */ + this.inPlaceSearch = true; + /** + * The current search results + */ + this.resultsRD$ = new BehaviorSubject(null); + /** + * Variable for enumeration RoleType + */ + this.roleTypeEnum = RoleType; + /** + * List of available view mode + */ + this.viewModeList = [ViewMode.List, ViewMode.Detail]; + this.isXsOrSm$ = this.windowService.isXsOrSm(); + this.service.setServiceOptions(MyDSpaceResponseParsingService, MyDSpaceRequest); + } + /** + * Initialize available configuration list + * + * Listening to changes in the paginated search options + * If something changes, update the search results + * + * Listen to changes in the scope + * If something changes, update the list of scopes for the dropdown + */ + MyDSpacePageComponent.prototype.ngOnInit = function () { + var _this = this; + this.configurationList$ = this.searchConfigService.getAvailableConfigurationOptions(); + this.searchOptions$ = this.searchConfigService.paginatedSearchOptions; + this.sub = this.searchOptions$.pipe(tap(function () { return _this.resultsRD$.next(null); }), switchMap(function (options) { return _this.service.search(options).pipe(getSucceededRemoteData()); })) + .subscribe(function (results) { + _this.resultsRD$.next(results); + }); + this.scopeListRD$ = this.searchConfigService.getCurrentScope('').pipe(switchMap(function (scopeId) { return _this.service.getScopes(scopeId); })); + }; + /** + * Set the sidebar to a collapsed state + */ + MyDSpacePageComponent.prototype.closeSidebar = function () { + this.sidebarService.collapse(); + }; + /** + * Set the sidebar to an expanded state + */ + MyDSpacePageComponent.prototype.openSidebar = function () { + this.sidebarService.expand(); + }; + /** + * Check if the sidebar is collapsed + * @returns {Observable} emits true if the sidebar is currently collapsed, false if it is expanded + */ + MyDSpacePageComponent.prototype.isSidebarCollapsed = function () { + return this.sidebarService.isCollapsed; + }; + /** + * @returns {string} The base path to the search page + */ + MyDSpacePageComponent.prototype.getSearchLink = function () { + return this.service.getSearchLink(); + }; + /** + * Unsubscribe from the subscription + */ + MyDSpacePageComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], MyDSpacePageComponent.prototype, "inPlaceSearch", void 0); + MyDSpacePageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-my-dspace-page', + styleUrls: ['./my-dspace-page.component.scss'], + templateUrl: './my-dspace-page.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [pushInOut], + providers: [ + { + provide: SEARCH_CONFIG_SERVICE, + useClass: MyDSpaceConfigurationService + } + ] + }), + tslib_1.__param(3, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchSidebarService, + HostWindowService, + MyDSpaceConfigurationService]) + ], MyDSpacePageComponent); + return MyDSpacePageComponent; +}()); +export { MyDSpacePageComponent }; +//# sourceMappingURL=my-dspace-page.component.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page.component.js.map b/src/app/+my-dspace-page/my-dspace-page.component.js.map new file mode 100644 index 0000000000..cb4c79b8d6 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-page.component.js","sourceRoot":"","sources":["my-dspace-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page.module.js b/src/app/+my-dspace-page/my-dspace-page.module.js new file mode 100644 index 0000000000..8467c7193c --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-page.module.js @@ -0,0 +1,75 @@ +import * as tslib_1 from "tslib"; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { SharedModule } from '../shared/shared.module'; +import { MyDspacePageRoutingModule } from './my-dspace-page-routing.module'; +import { MyDSpacePageComponent } from './my-dspace-page.component'; +import { SearchPageModule } from '../+search-page/search-page.module'; +import { MyDSpaceResultsComponent } from './my-dspace-results/my-dspace-results.component'; +import { WorkspaceitemMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component'; +import { ItemMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component'; +import { WorkflowitemMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component'; +import { ClaimedMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component'; +import { PoolMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component'; +import { MyDSpaceNewSubmissionComponent } from './my-dspace-new-submission/my-dspace-new-submission.component'; +import { ItemMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component'; +import { WorkspaceitemMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component'; +import { WorkflowitemMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component'; +import { ClaimedMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component'; +import { PoolMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component'; +import { MyDSpaceGuard } from './my-dspace.guard'; +import { MyDSpaceConfigurationService } from './my-dspace-configuration.service'; +var MyDSpacePageModule = /** @class */ (function () { + /** + * This module handles all components that are necessary for the mydspace page + */ + function MyDSpacePageModule() { + } + MyDSpacePageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule, + MyDspacePageRoutingModule, + SearchPageModule + ], + declarations: [ + MyDSpacePageComponent, + MyDSpaceResultsComponent, + ItemMyDSpaceResultListElementComponent, + WorkspaceitemMyDSpaceResultListElementComponent, + WorkflowitemMyDSpaceResultListElementComponent, + ClaimedMyDSpaceResultListElementComponent, + PoolMyDSpaceResultListElementComponent, + ItemMyDSpaceResultDetailElementComponent, + WorkspaceitemMyDSpaceResultDetailElementComponent, + WorkflowitemMyDSpaceResultDetailElementComponent, + ClaimedMyDSpaceResultDetailElementComponent, + PoolMyDSpaceResultDetailElementComponent, + MyDSpaceNewSubmissionComponent + ], + providers: [ + MyDSpaceGuard, + MyDSpaceConfigurationService + ], + entryComponents: [ + ItemMyDSpaceResultListElementComponent, + WorkspaceitemMyDSpaceResultListElementComponent, + WorkflowitemMyDSpaceResultListElementComponent, + ClaimedMyDSpaceResultListElementComponent, + PoolMyDSpaceResultListElementComponent, + ItemMyDSpaceResultDetailElementComponent, + WorkspaceitemMyDSpaceResultDetailElementComponent, + WorkflowitemMyDSpaceResultDetailElementComponent, + ClaimedMyDSpaceResultDetailElementComponent, + PoolMyDSpaceResultDetailElementComponent + ] + }) + /** + * This module handles all components that are necessary for the mydspace page + */ + ], MyDSpacePageModule); + return MyDSpacePageModule; +}()); +export { MyDSpacePageModule }; +//# sourceMappingURL=my-dspace-page.module.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page.module.js.map b/src/app/+my-dspace-page/my-dspace-page.module.js.map new file mode 100644 index 0000000000..ce351275b3 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-page.module.js","sourceRoot":"","sources":["my-dspace-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAE,+CAA+C,EAAE,MAAM,0IAA0I,CAAC;AAC3M,OAAO,EAAE,sCAAsC,EAAE,MAAM,wHAAwH,CAAC;AAChL,OAAO,EAAE,8CAA8C,EAAE,MAAM,wIAAwI,CAAC;AACxM,OAAO,EAAE,yCAAyC,EAAE,MAAM,8HAA8H,CAAC;AACzL,OAAO,EAAE,sCAAsC,EAAE,MAAM,wHAAwH,CAAC;AAChL,OAAO,EAAE,8BAA8B,EAAE,MAAM,+DAA+D,CAAC;AAC/G,OAAO,EAAE,wCAAwC,EAAE,MAAM,8HAA8H,CAAC;AACxL,OAAO,EAAE,iDAAiD,EAAE,MAAM,gJAAgJ,CAAC;AACnN,OAAO,EAAE,gDAAgD,EAAE,MAAM,8IAA8I,CAAC;AAChN,OAAO,EAAE,2CAA2C,EAAE,MAAM,oIAAoI,CAAC;AACjM,OAAO,EAAE,wCAAwC,EAAE,MAAM,6HAA6H,CAAC;AACvL,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AA6CjF;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,kBAAkB;QA3C9B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,yBAAyB;gBACzB,gBAAgB;aACjB;YACD,YAAY,EAAE;gBACZ,qBAAqB;gBACrB,wBAAwB;gBACxB,sCAAsC;gBACtC,+CAA+C;gBAC/C,8CAA8C;gBAC9C,yCAAyC;gBACzC,sCAAsC;gBACtC,wCAAwC;gBACxC,iDAAiD;gBACjD,gDAAgD;gBAChD,2CAA2C;gBAC3C,wCAAwC;gBACxC,8BAA8B;aAC/B;YACD,SAAS,EAAE;gBACT,aAAa;gBACb,4BAA4B;aAC7B;YACD,eAAe,EAAE;gBACf,sCAAsC;gBACtC,+CAA+C;gBAC/C,8CAA8C;gBAC9C,yCAAyC;gBACzC,sCAAsC;gBACtC,wCAAwC;gBACxC,iDAAiD;gBACjD,gDAAgD;gBAChD,2CAA2C;gBAC3C,wCAAwC;aACzC;SACF,CAAC;QAEF;;WAEG;OACU,kBAAkB,CAE9B;IAAD,yBAAC;CAAA,AAFD,IAEC;SAFY,kBAAkB"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-result.model.js b/src/app/+my-dspace-page/my-dspace-result.model.js new file mode 100644 index 0000000000..ad78c4dda3 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-result.model.js @@ -0,0 +1,10 @@ +/** + * Represents a search result object of a certain () DSpaceObject + */ +var MyDSpaceResult = /** @class */ (function () { + function MyDSpaceResult() { + } + return MyDSpaceResult; +}()); +export { MyDSpaceResult }; +//# sourceMappingURL=my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-result.model.js.map b/src/app/+my-dspace-page/my-dspace-result.model.js.map new file mode 100644 index 0000000000..d0b3965ec7 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-result.model.js","sourceRoot":"","sources":["my-dspace-result.model.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH;IAAA;IAWA,CAAC;IAAD,qBAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js b/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js new file mode 100644 index 0000000000..25c023bcc2 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js @@ -0,0 +1,49 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { RemoteData } from '../../core/data/remote-data'; +import { fadeIn, fadeInOut } from '../../shared/animations/fade'; +import { SearchOptions } from '../../+search-page/search-options.model'; +import { ViewMode } from '../../core/shared/view-mode.model'; +import { isEmpty } from '../../shared/empty.util'; +/** + * Component that represents all results for mydspace page + */ +var MyDSpaceResultsComponent = /** @class */ (function () { + function MyDSpaceResultsComponent() { + /** + * A boolean representing if search results entry are separated by a line + */ + this.hasBorder = true; + } + /** + * Check if mydspace search results are loading + */ + MyDSpaceResultsComponent.prototype.isLoading = function () { + return !this.searchResults || isEmpty(this.searchResults) || this.searchResults.isLoading; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", RemoteData) + ], MyDSpaceResultsComponent.prototype, "searchResults", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SearchOptions) + ], MyDSpaceResultsComponent.prototype, "searchConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], MyDSpaceResultsComponent.prototype, "viewMode", void 0); + MyDSpaceResultsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-my-dspace-results', + templateUrl: './my-dspace-results.component.html', + animations: [ + fadeIn, + fadeInOut + ] + }) + ], MyDSpaceResultsComponent); + return MyDSpaceResultsComponent; +}()); +export { MyDSpaceResultsComponent }; +//# sourceMappingURL=my-dspace-results.component.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js.map b/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js.map new file mode 100644 index 0000000000..30f1ba499f --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-results.component.js","sourceRoot":"","sources":["my-dspace-results.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;GAEG;AASH;IARA;QAyBE;;WAEG;QACH,cAAS,GAAG,IAAI,CAAC;IAQnB,CAAC;IANC;;OAEG;IACH,4CAAS,GAAT;QACE,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;IAC5F,CAAC;IAtBQ;QAAR,KAAK,EAAE;0CAAgB,UAAU;mEAA8C;IAKvE;QAAR,KAAK,EAAE;0CAAe,aAAa;kEAAC;IAK5B;QAAR,KAAK,EAAE;;8DAAoB;IAfjB,wBAAwB;QARpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,WAAW,EAAE,oCAAoC;YACjD,UAAU,EAAE;gBACV,MAAM;gBACN,SAAS;aACV;SACF,CAAC;OACW,wBAAwB,CA4BpC;IAAD,+BAAC;CAAA,AA5BD,IA4BC;SA5BY,wBAAwB"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace.guard.js b/src/app/+my-dspace-page/my-dspace.guard.js new file mode 100644 index 0000000000..764b202b44 --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace.guard.js @@ -0,0 +1,58 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Router } from '@angular/router'; +import { first, map } from 'rxjs/operators'; +import { isEmpty } from '../shared/empty.util'; +import { MYDSPACE_ROUTE } from './my-dspace-page.component'; +import { MyDSpaceConfigurationService } from './my-dspace-configuration.service'; +/** + * Prevent unauthorized activating and loading of mydspace configuration + * @class MyDSpaceGuard + */ +var MyDSpaceGuard = /** @class */ (function () { + /** + * @constructor + */ + function MyDSpaceGuard(configurationService, router) { + this.configurationService = configurationService; + this.router = router; + } + /** + * True when configuration is valid + * @method canActivate + */ + MyDSpaceGuard.prototype.canActivate = function (route, state) { + var _this = this; + return this.configurationService.getAvailableConfigurationTypes().pipe(first(), map(function (configurationList) { return _this.validateConfigurationParam(route.queryParamMap.get('configuration'), configurationList); })); + }; + /** + * Check if the given configuration is present in the list of those available + * + * @param configuration + * the configuration to validate + * @param configurationList + * the list of available configuration + * + */ + MyDSpaceGuard.prototype.validateConfigurationParam = function (configuration, configurationList) { + var configurationDefault = configurationList[0]; + if (isEmpty(configuration) || !configurationList.includes(configuration)) { + // If configuration param is empty or is not included in available configurations redirect to a default configuration value + var navigationExtras = { + queryParams: { configuration: configurationDefault } + }; + this.router.navigate([MYDSPACE_ROUTE], navigationExtras); + return false; + } + else { + return true; + } + }; + MyDSpaceGuard = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [MyDSpaceConfigurationService, Router]) + ], MyDSpaceGuard); + return MyDSpaceGuard; +}()); +export { MyDSpaceGuard }; +//# sourceMappingURL=my-dspace.guard.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace.guard.js.map b/src/app/+my-dspace-page/my-dspace.guard.js.map new file mode 100644 index 0000000000..4d5a62145c --- /dev/null +++ b/src/app/+my-dspace-page/my-dspace.guard.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace.guard.js","sourceRoot":"","sources":["my-dspace.guard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAyD,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAGrH,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF;;;GAGG;AAEH;IAEE;;OAEG;IACH,uBAAoB,oBAAkD,EAAU,MAAc;QAA1E,yBAAoB,GAApB,oBAAoB,CAA8B;QAAU,WAAM,GAAN,MAAM,CAAQ;IAC9F,CAAC;IAED;;;OAGG;IACH,mCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QAArE,iBAIC;QAHC,OAAO,IAAI,CAAC,oBAAoB,CAAC,8BAA8B,EAAE,CAAC,IAAI,CACpE,KAAK,EAAE,EACP,GAAG,CAAC,UAAC,iBAAiB,IAAK,OAAA,KAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,iBAAiB,CAAC,EAA5F,CAA4F,CAAC,CAAC,CAAC;IAC9H,CAAC;IAED;;;;;;;;OAQG;IACK,kDAA0B,GAAlC,UAAmC,aAAqB,EAAE,iBAAmD;QAC3G,IAAM,oBAAoB,GAAW,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,aAA+C,CAAC,EAAE;YAC1G,2HAA2H;YAC3H,IAAM,gBAAgB,GAAqB;gBACzC,WAAW,EAAE,EAAC,aAAa,EAAE,oBAAoB,EAAC;aACnD,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE,gBAAgB,CAAC,CAAC;YACzD,OAAO,KAAK,CAAC;SACd;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAxCU,aAAa;QADzB,UAAU,EAAE;iDAM+B,4BAA4B,EAAkB,MAAM;OALnF,aAAa,CAyCzB;IAAD,oBAAC;CAAA,AAzCD,IAyCC;SAzCY,aAAa"} \ No newline at end of file diff --git a/src/app/+search-page/filtered-search-page.component.js b/src/app/+search-page/filtered-search-page.component.js new file mode 100644 index 0000000000..88508309bf --- /dev/null +++ b/src/app/+search-page/filtered-search-page.component.js @@ -0,0 +1,64 @@ +import * as tslib_1 from "tslib"; +import { HostWindowService } from '../shared/host-window.service'; +import { SearchService } from './search-service/search.service'; +import { SearchSidebarService } from './search-sidebar/search-sidebar.service'; +import { SearchPageComponent } from './search-page.component'; +import { ChangeDetectionStrategy, Component, Inject, Input } from '@angular/core'; +import { pushInOut } from '../shared/animations/push'; +import { RouteService } from '../shared/services/route.service'; +import { SearchConfigurationService } from './search-service/search-configuration.service'; +import { SEARCH_CONFIG_SERVICE } from '../+my-dspace-page/my-dspace-page.component'; +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ +var FilteredSearchPageComponent = /** @class */ (function (_super) { + tslib_1.__extends(FilteredSearchPageComponent, _super); + function FilteredSearchPageComponent(service, sidebarService, windowService, searchConfigService, routeService) { + var _this = _super.call(this, service, sidebarService, windowService, searchConfigService, routeService) || this; + _this.service = service; + _this.sidebarService = sidebarService; + _this.windowService = windowService; + _this.searchConfigService = searchConfigService; + _this.routeService = routeService; + return _this; + } + /** + * Get the current paginated search options after updating the fixed filter using the fixedFilterQuery input + * This is to make sure the fixed filter is included in the paginated search options, as it is not part of any + * query or route parameters + * @returns {Observable} + */ + FilteredSearchPageComponent.prototype.getSearchOptions = function () { + this.searchConfigService.updateFixedFilter(this.fixedFilterQuery); + return this.searchConfigService.paginatedSearchOptions; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], FilteredSearchPageComponent.prototype, "fixedFilterQuery", void 0); + FilteredSearchPageComponent = tslib_1.__decorate([ + Component({ selector: 'ds-filtered-search-page', + styleUrls: ['./search-page.component.scss'], + templateUrl: './search-page.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [pushInOut], + providers: [ + { + provide: SEARCH_CONFIG_SERVICE, + useClass: SearchConfigurationService + } + ] + }), + tslib_1.__param(3, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchSidebarService, + HostWindowService, + SearchConfigurationService, + RouteService]) + ], FilteredSearchPageComponent); + return FilteredSearchPageComponent; +}(SearchPageComponent)); +export { FilteredSearchPageComponent }; +//# sourceMappingURL=filtered-search-page.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/filtered-search-page.component.js.map b/src/app/+search-page/filtered-search-page.component.js.map new file mode 100644 index 0000000000..6d20938921 --- /dev/null +++ b/src/app/+search-page/filtered-search-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"filtered-search-page.component.js","sourceRoot":"","sources":["filtered-search-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+CAA+C,CAAC;AAG3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAEpF;;;;GAIG;AAcH;IAAiD,uDAAmB;IAQlE,qCAAsB,OAAsB,EACtB,cAAoC,EACpC,aAAgC,EACJ,mBAA+C,EAC3E,YAA0B;QAJhD,YAKE,kBAAM,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,mBAAmB,EAAE,YAAY,CAAC,SACjF;QANqB,aAAO,GAAP,OAAO,CAAe;QACtB,oBAAc,GAAd,cAAc,CAAsB;QACpC,mBAAa,GAAb,aAAa,CAAmB;QACJ,yBAAmB,GAAnB,mBAAmB,CAA4B;QAC3E,kBAAY,GAAZ,YAAY,CAAc;;IAEhD,CAAC;IAED;;;;;OAKG;IACO,sDAAgB,GAA1B;QACE,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC;IACzD,CAAC;IAnBQ;QAAR,KAAK,EAAE;;yEAA0B;IANvB,2BAA2B;QAbvC,SAAS,CAAC,EAAC,QAAQ,EAAE,yBAAyB;YAC7C,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;YAC3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,qBAAqB;oBAC9B,QAAQ,EAAE,0BAA0B;iBACrC;aACF;SACF,CAAC;QAaa,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDAHX,aAAa;YACN,oBAAoB;YACrB,iBAAiB;YACiB,0BAA0B;YAC7D,YAAY;OAZrC,2BAA2B,CA2BvC;IAAD,kCAAC;CAAA,AA3BD,CAAiD,mBAAmB,GA2BnE;SA3BY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+search-page/filtered-search-page.guard.js b/src/app/+search-page/filtered-search-page.guard.js new file mode 100644 index 0000000000..bdcd16be92 --- /dev/null +++ b/src/app/+search-page/filtered-search-page.guard.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +var FilteredSearchPageGuard = /** @class */ (function () { + /** + * Assemble the correct i18n key for the filtered search page's title depending on the current route's filter parameter + * and title data. + * The format of the key will be "{title}{filter}.title" with: + * - title: The prefix of the key stored in route.data + * - filter: The current filter stored in route.params + */ + function FilteredSearchPageGuard() { + } + FilteredSearchPageGuard.prototype.canActivate = function (route, state) { + var filter = route.params.filter; + var newTitle = route.data.title + filter + '.title'; + route.data = { title: newTitle }; + return true; + }; + FilteredSearchPageGuard = tslib_1.__decorate([ + Injectable() + /** + * Assemble the correct i18n key for the filtered search page's title depending on the current route's filter parameter + * and title data. + * The format of the key will be "{title}{filter}.title" with: + * - title: The prefix of the key stored in route.data + * - filter: The current filter stored in route.params + */ + ], FilteredSearchPageGuard); + return FilteredSearchPageGuard; +}()); +export { FilteredSearchPageGuard }; +//# sourceMappingURL=filtered-search-page.guard.js.map \ No newline at end of file diff --git a/src/app/+search-page/filtered-search-page.guard.js.map b/src/app/+search-page/filtered-search-page.guard.js.map new file mode 100644 index 0000000000..8d79db77c6 --- /dev/null +++ b/src/app/+search-page/filtered-search-page.guard.js.map @@ -0,0 +1 @@ +{"version":3,"file":"filtered-search-page.guard.js","sourceRoot":"","sources":["filtered-search-page.guard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAY3C;IAPA;;;;;;OAMG;IACH;IAWA,CAAC;IAVC,6CAAW,GAAX,UACE,KAA6B,EAC7B,KAA0B;QAC1B,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAEnC,IAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;QAEtD,KAAK,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAVU,uBAAuB;QARnC,UAAU,EAAE;QACb;;;;;;WAMG;OACU,uBAAuB,CAWnC;IAAD,8BAAC;CAAA,AAXD,IAWC;SAXY,uBAAuB"} \ No newline at end of file diff --git a/src/app/+search-page/normalized-search-result.model.js b/src/app/+search-page/normalized-search-result.model.js new file mode 100644 index 0000000000..e2eb112dcc --- /dev/null +++ b/src/app/+search-page/normalized-search-result.model.js @@ -0,0 +1,21 @@ +import * as tslib_1 from "tslib"; +import { autoserialize } from 'cerialize'; +import { MetadataMap } from '../core/shared/metadata.models'; +/** + * Represents a normalized version of a search result object of a certain DSpaceObject + */ +var NormalizedSearchResult = /** @class */ (function () { + function NormalizedSearchResult() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedSearchResult.prototype, "indexableObject", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", MetadataMap) + ], NormalizedSearchResult.prototype, "hitHighlights", void 0); + return NormalizedSearchResult; +}()); +export { NormalizedSearchResult }; +//# sourceMappingURL=normalized-search-result.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/normalized-search-result.model.js.map b/src/app/+search-page/normalized-search-result.model.js.map new file mode 100644 index 0000000000..93ab151537 --- /dev/null +++ b/src/app/+search-page/normalized-search-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-search-result.model.js","sourceRoot":"","sources":["normalized-search-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAmB,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAG7D;;GAEG;AACH;IAAA;IAaA,CAAC;IARC;QADC,aAAa;;mEACU;IAMxB;QADC,aAAa;0CACC,WAAW;iEAAC;IAE7B,6BAAC;CAAA,AAbD,IAaC;SAbY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+search-page/paginated-search-options.model.js b/src/app/+search-page/paginated-search-options.model.js new file mode 100644 index 0000000000..1fb02b758b --- /dev/null +++ b/src/app/+search-page/paginated-search-options.model.js @@ -0,0 +1,35 @@ +import * as tslib_1 from "tslib"; +import { isNotEmpty } from '../shared/empty.util'; +import { SearchOptions } from './search-options.model'; +/** + * This model class represents all parameters needed to request information about a certain page of a search request, in a certain order + */ +var PaginatedSearchOptions = /** @class */ (function (_super) { + tslib_1.__extends(PaginatedSearchOptions, _super); + function PaginatedSearchOptions(options) { + var _this = _super.call(this, options) || this; + _this.pagination = options.pagination; + _this.sort = options.sort; + return _this; + } + /** + * Method to generate the URL that can be used to request a certain page with specific sort options + * @param {string} url The URL to the REST endpoint + * @param {string[]} args A list of query arguments that should be included in the URL + * @returns {string} URL with all paginated search options and passed arguments as query parameters + */ + PaginatedSearchOptions.prototype.toRestUrl = function (url, args) { + if (args === void 0) { args = []; } + if (isNotEmpty(this.sort)) { + args.push("sort=" + this.sort.field + "," + this.sort.direction); + } + if (isNotEmpty(this.pagination)) { + args.push("page=" + (this.pagination.currentPage - 1)); + args.push("size=" + this.pagination.pageSize); + } + return _super.prototype.toRestUrl.call(this, url, args); + }; + return PaginatedSearchOptions; +}(SearchOptions)); +export { PaginatedSearchOptions }; +//# sourceMappingURL=paginated-search-options.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/paginated-search-options.model.js.map b/src/app/+search-page/paginated-search-options.model.js.map new file mode 100644 index 0000000000..0f76a75ef4 --- /dev/null +++ b/src/app/+search-page/paginated-search-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"paginated-search-options.model.js","sourceRoot":"","sources":["paginated-search-options.model.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAIvD;;GAEG;AACH;IAA4C,kDAAa;IAIvD,gCAAY,OAAuM;QAAnN,YACE,kBAAM,OAAO,CAAC,SAGf;QAFC,KAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,KAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;;IAC3B,CAAC;IAED;;;;;OAKG;IACH,0CAAS,GAAT,UAAU,GAAW,EAAE,IAAmB;QAAnB,qBAAA,EAAA,SAAmB;QACxC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACzB,IAAI,CAAC,IAAI,CAAC,UAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,SAAI,IAAI,CAAC,IAAI,CAAC,SAAW,CAAC,CAAC;SAC7D;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,WAAQ,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,CAAC,CAAE,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,CAAC,UAAQ,IAAI,CAAC,UAAU,CAAC,QAAU,CAAC,CAAC;SAC/C;QACD,OAAO,iBAAM,SAAS,YAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IACH,6BAAC;AAAD,CAAC,AA1BD,CAA4C,aAAa,GA0BxD"} \ No newline at end of file diff --git a/src/app/+search-page/search-filter.model.js b/src/app/+search-page/search-filter.model.js new file mode 100644 index 0000000000..09d992cdda --- /dev/null +++ b/src/app/+search-page/search-filter.model.js @@ -0,0 +1,19 @@ +/** + * Represents a search filter + */ +import { hasValue } from '../shared/empty.util'; +var SearchFilter = /** @class */ (function () { + function SearchFilter(key, values, operator) { + this.key = key; + this.values = values; + if (hasValue(operator)) { + this.operator = operator; + } + else { + this.operator = 'query'; + } + } + return SearchFilter; +}()); +export { SearchFilter }; +//# sourceMappingURL=search-filter.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filter.model.js.map b/src/app/+search-page/search-filter.model.js.map new file mode 100644 index 0000000000..3ea619f211 --- /dev/null +++ b/src/app/+search-page/search-filter.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-filter.model.js","sourceRoot":"","sources":["search-filter.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;IAKE,sBAAY,GAAW,EAAE,MAAgB,EAAE,QAAiB;QAC1D,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;SACzB;IACH,CAAC;IACH,mBAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js new file mode 100644 index 0000000000..c60af10c9d --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js @@ -0,0 +1,41 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { FilterType } from '../../../search-service/filter-type.model'; +import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; +import { renderFacetFor } from '../search-filter-type-decorator'; +var SearchAuthorityFilterComponent = /** @class */ (function (_super) { + tslib_1.__extends(SearchAuthorityFilterComponent, _super); + function SearchAuthorityFilterComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * TODO to review after https://github.com/DSpace/dspace-angular/issues/368 is resolved + * Retrieve facet value from search link + */ + SearchAuthorityFilterComponent.prototype.getFacetValue = function (facet) { + var search = facet.search; + var hashes = search.slice(search.indexOf('?') + 1).split('&'); + var params = {}; + hashes.map(function (hash) { + var _a = hash.split('='), key = _a[0], val = _a[1]; + params[key] = decodeURIComponent(val); + }); + return params[this.filterConfig.paramName]; + }; + SearchAuthorityFilterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-authority-filter', + styleUrls: ['./search-authority-filter.component.scss'], + templateUrl: './search-authority-filter.component.html', + animations: [facetLoad] + }) + /** + * Component that represents an authority facet for a specific filter configuration + */ + , + renderFacetFor(FilterType.authority) + ], SearchAuthorityFilterComponent); + return SearchAuthorityFilterComponent; +}(SearchFacetFilterComponent)); +export { SearchAuthorityFilterComponent }; +//# sourceMappingURL=search-authority-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js.map new file mode 100644 index 0000000000..dece0f17bf --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-authority-filter.component.js","sourceRoot":"","sources":["search-authority-filter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AAC7G,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAcjE;IAAoD,0DAA0B;IAA9E;;IAiBA,CAAC;IAfC;;;OAGG;IACO,sDAAa,GAAvB,UAAwB,KAAiB;QACvC,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChE,IAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,UAAC,IAAI;YACR,IAAA,oBAA4B,EAA3B,WAAG,EAAE,WAAG,CAAoB;YACnC,MAAM,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAhBU,8BAA8B;QAX1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,SAAS,EAAE,CAAC,0CAA0C,CAAC;YACvD,WAAW,EAAE,0CAA0C;YACvD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QAEF;;WAEG;;QACF,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC;OACxB,8BAA8B,CAiB1C;IAAD,qCAAC;CAAA,AAjBD,CAAoD,0BAA0B,GAiB7E;SAjBY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js new file mode 100644 index 0000000000..13c8bf6667 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { FilterType } from '../../../search-service/filter-type.model'; +import { renderFacetFor } from '../search-filter-type-decorator'; +import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; +var SearchBooleanFilterComponent = /** @class */ (function (_super) { + tslib_1.__extends(SearchBooleanFilterComponent, _super); + function SearchBooleanFilterComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + SearchBooleanFilterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-boolean-filter', + styleUrls: ['./search-boolean-filter.component.scss'], + templateUrl: './search-boolean-filter.component.html', + animations: [facetLoad] + }) + /** + * Component that represents a boolean facet for a specific filter configuration + */ + , + renderFacetFor(FilterType.boolean) + ], SearchBooleanFilterComponent); + return SearchBooleanFilterComponent; +}(SearchFacetFilterComponent)); +export { SearchBooleanFilterComponent }; +//# sourceMappingURL=search-boolean-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js.map new file mode 100644 index 0000000000..7f1313439a --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-boolean-filter.component.js","sourceRoot":"","sources":["search-boolean-filter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,SAAS,EACT,0BAA0B,EAC3B,MAAM,sDAAsD,CAAC;AAa9D;IAAkD,wDAA0B;IAA5E;;IACA,CAAC;IADY,4BAA4B;QAXxC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;YACrD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QAEF;;WAEG;;QACF,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC;OACtB,4BAA4B,CACxC;IAAD,mCAAC;CAAA,AADD,CAAkD,0BAA0B,GAC3E;SADY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js new file mode 100644 index 0000000000..df9ea204fd --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js @@ -0,0 +1,119 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest, Observable } from 'rxjs'; +import { map } from 'rxjs/operators'; +import { Component, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { FacetValue } from '../../../../search-service/facet-value.model'; +import { SearchFilterConfig } from '../../../../search-service/search-filter-config.model'; +import { SearchService } from '../../../../search-service/search.service'; +import { SearchFilterService } from '../../search-filter.service'; +import { SearchConfigurationService } from '../../../../search-service/search-configuration.service'; +import { hasValue } from '../../../../../shared/empty.util'; +import { FilterType } from '../../../../search-service/filter-type.model'; +var SearchFacetOptionComponent = /** @class */ (function () { + function SearchFacetOptionComponent(searchService, filterService, searchConfigService, router) { + this.searchService = searchService; + this.filterService = filterService; + this.searchConfigService = searchConfigService; + this.router = router; + } + /** + * Initializes all observable instance variables and starts listening to them + */ + SearchFacetOptionComponent.prototype.ngOnInit = function () { + var _this = this; + this.isVisible = this.isChecked().pipe(map(function (checked) { return !checked; })); + this.sub = observableCombineLatest(this.selectedValues$, this.searchConfigService.searchOptions) + .subscribe(function (_a) { + var selectedValues = _a[0], searchOptions = _a[1]; + _this.updateAddParams(selectedValues); + }); + }; + /** + * Checks if a value for this filter is currently active + */ + SearchFacetOptionComponent.prototype.isChecked = function () { + return this.filterService.isFilterActiveWithValue(this.filterConfig.paramName, this.getFacetValue()); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchFacetOptionComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.searchService.getSearchLink(); + }; + /** + * Calculates the parameters that should change if a given value for this filter would be added to the active filters + * @param {string[]} selectedValues The values that are currently selected for this filter + */ + SearchFacetOptionComponent.prototype.updateAddParams = function (selectedValues) { + var _a; + this.addQueryParams = (_a = {}, + _a[this.filterConfig.paramName] = selectedValues.map(function (facetValue) { return facetValue.label; }).concat([this.getFacetValue()]), + _a.page = 1, + _a); + }; + /** + * TODO to review after https://github.com/DSpace/dspace-angular/issues/368 is resolved + * Retrieve facet value related to facet type + */ + SearchFacetOptionComponent.prototype.getFacetValue = function () { + if (this.filterConfig.type === FilterType.authority) { + var search = this.filterValue.search; + var hashes = search.slice(search.indexOf('?') + 1).split('&'); + var params_1 = {}; + hashes.map(function (hash) { + var _a = hash.split('='), key = _a[0], val = _a[1]; + params_1[key] = decodeURIComponent(val); + }); + return params_1[this.filterConfig.paramName]; + } + else { + return this.filterValue.value; + } + }; + /** + * Make sure the subscription is unsubscribed from when this component is destroyed + */ + SearchFacetOptionComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FacetValue) + ], SearchFacetOptionComponent.prototype, "filterValue", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SearchFilterConfig) + ], SearchFacetOptionComponent.prototype, "filterConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Observable) + ], SearchFacetOptionComponent.prototype, "selectedValues$", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchFacetOptionComponent.prototype, "inPlaceSearch", void 0); + SearchFacetOptionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-facet-option', + styleUrls: ['./search-facet-option.component.scss'], + templateUrl: './search-facet-option.component.html', + }) + /** + * Represents a single option in a filter facet + */ + , + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchFilterService, + SearchConfigurationService, + Router]) + ], SearchFacetOptionComponent); + return SearchFacetOptionComponent; +}()); +export { SearchFacetOptionComponent }; +//# sourceMappingURL=search-facet-option.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js.map new file mode 100644 index 0000000000..7288ceb481 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-facet-option.component.js","sourceRoot":"","sources":["search-facet-option.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js new file mode 100644 index 0000000000..96439ed56f --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js @@ -0,0 +1,97 @@ +import * as tslib_1 from "tslib"; +import { map } from 'rxjs/operators'; +import { Component, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { FacetValue } from '../../../../search-service/facet-value.model'; +import { SearchFilterConfig } from '../../../../search-service/search-filter-config.model'; +import { SearchService } from '../../../../search-service/search.service'; +import { SearchFilterService } from '../../search-filter.service'; +import { RANGE_FILTER_MAX_SUFFIX, RANGE_FILTER_MIN_SUFFIX } from '../../search-range-filter/search-range-filter.component'; +import { SearchConfigurationService } from '../../../../search-service/search-configuration.service'; +import { hasValue } from '../../../../../shared/empty.util'; +var rangeDelimiter = '-'; +var SearchFacetRangeOptionComponent = /** @class */ (function () { + function SearchFacetRangeOptionComponent(searchService, filterService, searchConfigService, router) { + this.searchService = searchService; + this.filterService = filterService; + this.searchConfigService = searchConfigService; + this.router = router; + } + /** + * Initializes all observable instance variables and starts listening to them + */ + SearchFacetRangeOptionComponent.prototype.ngOnInit = function () { + var _this = this; + this.isVisible = this.isChecked().pipe(map(function (checked) { return !checked; })); + this.sub = this.searchConfigService.searchOptions.subscribe(function () { + _this.updateChangeParams(); + }); + }; + /** + * Checks if a value for this filter is currently active + */ + SearchFacetRangeOptionComponent.prototype.isChecked = function () { + return this.filterService.isFilterActiveWithValue(this.filterConfig.paramName, this.filterValue.value); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchFacetRangeOptionComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.searchService.getSearchLink(); + }; + /** + * Calculates the parameters that should change if a given values for this range filter would be changed + */ + SearchFacetRangeOptionComponent.prototype.updateChangeParams = function () { + var _a; + var parts = this.filterValue.value.split(rangeDelimiter); + var min = parts.length > 1 ? parts[0].trim() : this.filterValue.value; + var max = parts.length > 1 ? parts[1].trim() : this.filterValue.value; + this.changeQueryParams = (_a = {}, + _a[this.filterConfig.paramName + RANGE_FILTER_MIN_SUFFIX] = [min], + _a[this.filterConfig.paramName + RANGE_FILTER_MAX_SUFFIX] = [max], + _a.page = 1, + _a); + }; + /** + * Make sure the subscription is unsubscribed from when this component is destroyed + */ + SearchFacetRangeOptionComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FacetValue) + ], SearchFacetRangeOptionComponent.prototype, "filterValue", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SearchFilterConfig) + ], SearchFacetRangeOptionComponent.prototype, "filterConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchFacetRangeOptionComponent.prototype, "inPlaceSearch", void 0); + SearchFacetRangeOptionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-facet-range-option', + styleUrls: ['./search-facet-range-option.component.scss'], + templateUrl: './search-facet-range-option.component.html', + }) + /** + * Represents a single option in a range filter facet + */ + , + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchFilterService, + SearchConfigurationService, + Router]) + ], SearchFacetRangeOptionComponent); + return SearchFacetRangeOptionComponent; +}()); +export { SearchFacetRangeOptionComponent }; +//# sourceMappingURL=search-facet-range-option.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js.map new file mode 100644 index 0000000000..1be8dad372 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-facet-range-option.component.js","sourceRoot":"","sources":["search-facet-range-option.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js new file mode 100644 index 0000000000..4696e08d7f --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js @@ -0,0 +1,114 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest, Observable } from 'rxjs'; +import { Component, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { SearchFilterConfig } from '../../../../search-service/search-filter-config.model'; +import { SearchService } from '../../../../search-service/search.service'; +import { SearchFilterService } from '../../search-filter.service'; +import { hasValue } from '../../../../../shared/empty.util'; +import { SearchConfigurationService } from '../../../../search-service/search-configuration.service'; +import { FacetValue } from '../../../../search-service/facet-value.model'; +import { FilterType } from '../../../../search-service/filter-type.model'; +var SearchFacetSelectedOptionComponent = /** @class */ (function () { + function SearchFacetSelectedOptionComponent(searchService, filterService, searchConfigService, router) { + this.searchService = searchService; + this.filterService = filterService; + this.searchConfigService = searchConfigService; + this.router = router; + } + /** + * Initializes all observable instance variables and starts listening to them + */ + SearchFacetSelectedOptionComponent.prototype.ngOnInit = function () { + var _this = this; + this.sub = observableCombineLatest(this.selectedValues$, this.searchConfigService.searchOptions) + .subscribe(function (_a) { + var selectedValues = _a[0], searchOptions = _a[1]; + _this.updateRemoveParams(selectedValues); + }); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchFacetSelectedOptionComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.searchService.getSearchLink(); + }; + /** + * Calculates the parameters that should change if a given value for this filter would be removed from the active filters + * @param {string[]} selectedValues The values that are currently selected for this filter + */ + SearchFacetSelectedOptionComponent.prototype.updateRemoveParams = function (selectedValues) { + var _this = this; + var _a; + this.removeQueryParams = (_a = {}, + _a[this.filterConfig.paramName] = selectedValues + .filter(function (facetValue) { return facetValue.label !== _this.selectedValue.label; }) + .map(function (facetValue) { return _this.getFacetValue(facetValue); }), + _a.page = 1, + _a); + }; + /** + * TODO to review after https://github.com/DSpace/dspace-angular/issues/368 is resolved + * Retrieve facet value related to facet type + */ + SearchFacetSelectedOptionComponent.prototype.getFacetValue = function (facetValue) { + if (this.filterConfig.type === FilterType.authority) { + var search = facetValue.search; + var hashes = search.slice(search.indexOf('?') + 1).split('&'); + var params_1 = {}; + hashes.map(function (hash) { + var _a = hash.split('='), key = _a[0], val = _a[1]; + params_1[key] = decodeURIComponent(val); + }); + return params_1[this.filterConfig.paramName]; + } + else { + return facetValue.value; + } + }; + /** + * Make sure the subscription is unsubscribed from when this component is destroyed + */ + SearchFacetSelectedOptionComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FacetValue) + ], SearchFacetSelectedOptionComponent.prototype, "selectedValue", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SearchFilterConfig) + ], SearchFacetSelectedOptionComponent.prototype, "filterConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Observable) + ], SearchFacetSelectedOptionComponent.prototype, "selectedValues$", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchFacetSelectedOptionComponent.prototype, "inPlaceSearch", void 0); + SearchFacetSelectedOptionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-facet-selected-option', + styleUrls: ['./search-facet-selected-option.component.scss'], + templateUrl: './search-facet-selected-option.component.html', + }) + /** + * Represents a single selected option in a filter facet + */ + , + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchFilterService, + SearchConfigurationService, + Router]) + ], SearchFacetSelectedOptionComponent); + return SearchFacetSelectedOptionComponent; +}()); +export { SearchFacetSelectedOptionComponent }; +//# sourceMappingURL=search-facet-selected-option.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js.map new file mode 100644 index 0000000000..c4abc53a8f --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-facet-selected-option.component.js","sourceRoot":"","sources":["search-facet-selected-option.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js new file mode 100644 index 0000000000..4568cd59d5 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js @@ -0,0 +1,53 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { renderFilterType } from '../search-filter-type-decorator'; +import { SearchFilterConfig } from '../../../search-service/search-filter-config.model'; +import { FILTER_CONFIG, IN_PLACE_SEARCH } from '../search-filter.service'; +var SearchFacetFilterWrapperComponent = /** @class */ (function () { + function SearchFacetFilterWrapperComponent(injector) { + this.injector = injector; + } + /** + * Initialize and add the filter config to the injector + */ + SearchFacetFilterWrapperComponent.prototype.ngOnInit = function () { + var _this = this; + this.searchFilter = this.getSearchFilter(); + this.objectInjector = Injector.create({ + providers: [ + { provide: FILTER_CONFIG, useFactory: function () { return (_this.filterConfig); }, deps: [] }, + { provide: IN_PLACE_SEARCH, useFactory: function () { return (_this.inPlaceSearch); }, deps: [] } + ], + parent: this.injector + }); + }; + /** + * Find the correct component based on the filter config's type + */ + SearchFacetFilterWrapperComponent.prototype.getSearchFilter = function () { + var type = this.filterConfig.type; + return renderFilterType(type); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SearchFilterConfig) + ], SearchFacetFilterWrapperComponent.prototype, "filterConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchFacetFilterWrapperComponent.prototype, "inPlaceSearch", void 0); + SearchFacetFilterWrapperComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-facet-filter-wrapper', + templateUrl: './search-facet-filter-wrapper.component.html' + }) + /** + * Wrapper component that renders a specific facet filter based on the filter config's type + */ + , + tslib_1.__metadata("design:paramtypes", [Injector]) + ], SearchFacetFilterWrapperComponent); + return SearchFacetFilterWrapperComponent; +}()); +export { SearchFacetFilterWrapperComponent }; +//# sourceMappingURL=search-facet-filter-wrapper.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js.map new file mode 100644 index 0000000000..3a9d5693bf --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-facet-filter-wrapper.component.js","sourceRoot":"","sources":["search-facet-filter-wrapper.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAY1E;IAoBE,2CAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtC,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR;QAAA,iBASC;QARC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,YAAY,CAAC,EAAnB,CAAmB,EAAE,IAAI,EAAE,EAAE,EAAE;gBAC3E,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,aAAa,CAAC,EAApB,CAAoB,EAAE,IAAI,EAAE,EAAE,EAAE;aAC/E;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,2DAAe,GAAvB;QACE,IAAM,IAAI,GAAe,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QAChD,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAvCQ;QAAR,KAAK,EAAE;0CAAe,kBAAkB;2EAAC;IAKjC;QAAR,KAAK,EAAE;;4EAAe;IATZ,iCAAiC;QAR7C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,WAAW,EAAE,8CAA8C;SAC5D,CAAC;QAEF;;WAEG;;iDAqB6B,QAAQ;OApB3B,iCAAiC,CA4C7C;IAAD,wCAAC;CAAA,AA5CD,IA4CC;SA5CY,iCAAiC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js new file mode 100644 index 0000000000..b81b89113b --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js @@ -0,0 +1,268 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest, of as observableOf, BehaviorSubject } from 'rxjs'; +import { switchMap, distinctUntilChanged, map, take, tap } from 'rxjs/operators'; +import { animate, state, style, transition, trigger } from '@angular/animations'; +import { Component, Inject } from '@angular/core'; +import { Router } from '@angular/router'; +import { RemoteDataBuildService } from '../../../../core/cache/builders/remote-data-build.service'; +import { RemoteData } from '../../../../core/data/remote-data'; +import { hasNoValue, hasValue, isNotEmpty } from '../../../../shared/empty.util'; +import { EmphasizePipe } from '../../../../shared/utils/emphasize.pipe'; +import { FacetValue } from '../../../search-service/facet-value.model'; +import { SearchFilterConfig } from '../../../search-service/search-filter-config.model'; +import { SearchService } from '../../../search-service/search.service'; +import { FILTER_CONFIG, IN_PLACE_SEARCH, SearchFilterService } from '../search-filter.service'; +import { SearchConfigurationService } from '../../../search-service/search-configuration.service'; +import { getSucceededRemoteData } from '../../../../core/shared/operators'; +import { SEARCH_CONFIG_SERVICE } from '../../../../+my-dspace-page/my-dspace-page.component'; +var SearchFacetFilterComponent = /** @class */ (function () { + function SearchFacetFilterComponent(searchService, filterService, rdbs, router, searchConfigService, inPlaceSearch, filterConfig) { + this.searchService = searchService; + this.filterService = filterService; + this.rdbs = rdbs; + this.router = router; + this.searchConfigService = searchConfigService; + this.inPlaceSearch = inPlaceSearch; + this.filterConfig = filterConfig; + /** + * Emits true if the current page is also the last page available + */ + this.isLastPage$ = new BehaviorSubject(false); + /** + * List of subscriptions to unsubscribe from + */ + this.subs = []; + /** + * Emits the result values for this filter found by the current filter query + */ + this.filterSearchResults = observableOf([]); + this.collapseNextUpdate = true; + /** + * State of the requested facets used to time the animation + */ + this.animationState = 'loading'; + } + /** + * Initializes all observable instance variables and starts listening to them + */ + SearchFacetFilterComponent.prototype.ngOnInit = function () { + var _this = this; + this.filterValues$ = new BehaviorSubject(new RemoteData(true, false, undefined, undefined, undefined)); + this.currentPage = this.getCurrentPage().pipe(distinctUntilChanged()); + this.searchOptions$ = this.searchConfigService.searchOptions; + this.subs.push(this.searchOptions$.subscribe(function () { return _this.updateFilterValueList(); })); + var facetValues$ = observableCombineLatest(this.searchOptions$, this.currentPage).pipe(map(function (_a) { + var options = _a[0], page = _a[1]; + return { options: options, page: page }; + }), switchMap(function (_a) { + var options = _a.options, page = _a.page; + return _this.searchService.getFacetValuesFor(_this.filterConfig, page, options) + .pipe(getSucceededRemoteData(), map(function (results) { + return { + values: observableOf(results), + page: page + }; + })); + })); + var filterValues = []; + this.subs.push(facetValues$.subscribe(function (facetOutcome) { + var newValues$ = facetOutcome.values; + if (_this.collapseNextUpdate) { + _this.showFirstPageOnly(); + facetOutcome.page = 1; + _this.collapseNextUpdate = false; + } + if (facetOutcome.page === 1) { + filterValues = []; + } + filterValues = filterValues.concat([newValues$]); + _this.subs.push(_this.rdbs.aggregate(filterValues).pipe(tap(function (rd) { + _this.selectedValues$ = _this.filterService.getSelectedValuesForFilter(_this.filterConfig).pipe(map(function (selectedValues) { + return selectedValues.map(function (value) { + var fValue = [].concat.apply([], rd.payload.map(function (page) { return page.page; })).find(function (facetValue) { return facetValue.value === value; }); + if (hasValue(fValue)) { + return fValue; + } + return Object.assign(new FacetValue(), { label: value, value: value }); + }); + })); + })).subscribe(function (rd) { + _this.animationState = 'ready'; + _this.filterValues$.next(rd); + })); + _this.subs.push(newValues$.pipe(take(1)).subscribe(function (rd) { + _this.isLastPage$.next(hasNoValue(rd.payload.next)); + })); + })); + }; + /** + * Prepare for refreshing the values of this filter + */ + SearchFacetFilterComponent.prototype.updateFilterValueList = function () { + this.animationState = 'loading'; + this.collapseNextUpdate = true; + this.filter = ''; + }; + /** + * Checks if a value for this filter is currently active + */ + SearchFacetFilterComponent.prototype.isChecked = function (value) { + return this.filterService.isFilterActiveWithValue(this.filterConfig.paramName, value.value); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchFacetFilterComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.searchService.getSearchLink(); + }; + /** + * @returns {string[]} The base path to the search page, or the current page when inPlaceSearch is true, split in separate pieces + */ + SearchFacetFilterComponent.prototype.getSearchLinkParts = function () { + if (this.inPlaceSearch) { + return []; + } + return this.getSearchLink().split('/'); + }; + /** + * Show the next page as well + */ + SearchFacetFilterComponent.prototype.showMore = function () { + this.filterService.incrementPage(this.filterConfig.name); + }; + /** + * Make sure only the first page is shown + */ + SearchFacetFilterComponent.prototype.showFirstPageOnly = function () { + this.filterService.resetPage(this.filterConfig.name); + }; + /** + * @returns {Observable} The current page of this filter + */ + SearchFacetFilterComponent.prototype.getCurrentPage = function () { + return this.filterService.getPage(this.filterConfig.name); + }; + /** + * @returns {string} the current URL + */ + SearchFacetFilterComponent.prototype.getCurrentUrl = function () { + return this.router.url; + }; + /** + * Submits a new active custom value to the filter from the input field + * @param data The string from the input field + */ + SearchFacetFilterComponent.prototype.onSubmit = function (data) { + var _this = this; + this.selectedValues$.pipe(take(1)).subscribe(function (selectedValues) { + var _a; + if (isNotEmpty(data)) { + _this.router.navigate(_this.getSearchLinkParts(), { + queryParams: (_a = {}, + _a[_this.filterConfig.paramName] = selectedValues.map(function (facet) { return _this.getFacetValue(facet); }).concat([ + data + ]), + _a), + queryParamsHandling: 'merge' + }); + _this.filter = ''; + } + _this.filterSearchResults = observableOf([]); + }); + }; + /** + * On click, set the input's value to the clicked data + * @param data The value of the option that was clicked + */ + SearchFacetFilterComponent.prototype.onClick = function (data) { + this.filter = data; + }; + /** + * For usage of the hasValue function in the template + */ + SearchFacetFilterComponent.prototype.hasValue = function (o) { + return hasValue(o); + }; + /** + * Unsubscribe from all subscriptions + */ + SearchFacetFilterComponent.prototype.ngOnDestroy = function () { + this.subs + .filter(function (sub) { return hasValue(sub); }) + .forEach(function (sub) { return sub.unsubscribe(); }); + }; + /** + * Updates the found facet value suggestions for a given query + * Transforms the found values into display values + * @param data The query for which is being searched + */ + SearchFacetFilterComponent.prototype.findSuggestions = function (data) { + var _this = this; + if (isNotEmpty(data)) { + this.searchOptions$.pipe(take(1)).subscribe(function (options) { + _this.filterSearchResults = _this.searchService.getFacetValuesFor(_this.filterConfig, 1, options, data.toLowerCase()) + .pipe(getSucceededRemoteData(), map(function (rd) { + return rd.payload.page.map(function (facet) { + return { + displayValue: _this.getDisplayValue(facet, data), + value: _this.getFacetValue(facet) + }; + }); + })); + }); + } + else { + this.filterSearchResults = observableOf([]); + } + }; + /** + * Retrieve facet value + */ + SearchFacetFilterComponent.prototype.getFacetValue = function (facet) { + return facet.value; + }; + /** + * Transforms the facet value string, so if the query matches part of the value, it's emphasized in the value + * @param {FacetValue} facet The value of the facet as returned by the server + * @param {string} query The query that was used to search facet values + * @returns {string} The facet value with the query part emphasized + */ + SearchFacetFilterComponent.prototype.getDisplayValue = function (facet, query) { + return new EmphasizePipe().transform(facet.value, query) + ' (' + facet.count + ')'; + }; + /** + * Prevent unnecessary rerendering + */ + SearchFacetFilterComponent.prototype.trackUpdate = function (index, value) { + return value ? value.search : undefined; + }; + SearchFacetFilterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-facet-filter', + template: "", + }) + /** + * Super class for all different representations of facets + */ + , + tslib_1.__param(4, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__param(5, Inject(IN_PLACE_SEARCH)), + tslib_1.__param(6, Inject(FILTER_CONFIG)), + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchFilterService, + RemoteDataBuildService, + Router, + SearchConfigurationService, Boolean, SearchFilterConfig]) + ], SearchFacetFilterComponent); + return SearchFacetFilterComponent; +}()); +export { SearchFacetFilterComponent }; +export var facetLoad = trigger('facetLoad', [ + state('ready', style({ opacity: 1 })), + state('loading', style({ opacity: 0 })), + transition('loading <=> ready', animate(100)), +]); +//# sourceMappingURL=search-facet-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js.map new file mode 100644 index 0000000000..bdc01cd6f9 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-facet-filter.component.js","sourceRoot":"","sources":["search-facet-filter.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js b/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js new file mode 100644 index 0000000000..93c6385690 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js @@ -0,0 +1,26 @@ +/** + * Contains the mapping between a facet component and a FilterType + */ +var filterTypeMap = new Map(); +/** + * Sets the mapping for a facet component in relation to a filter type + * @param {FilterType} type The type for which the matching component is mapped + * @returns Decorator function that performs the actual mapping on initialization of the facet component + */ +export function renderFacetFor(type) { + return function decorator(objectElement) { + if (!objectElement) { + return; + } + filterTypeMap.set(type, objectElement); + }; +} +/** + * Requests the matching facet component based on a given filter type + * @param {FilterType} type The filter type for which the facet component is requested + * @returns The facet component's constructor that matches the given filter type + */ +export function renderFilterType(type) { + return filterTypeMap.get(type); +} +//# sourceMappingURL=search-filter-type-decorator.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js.map b/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js.map new file mode 100644 index 0000000000..8158a42178 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-filter-type-decorator.js","sourceRoot":"","sources":["search-filter-type-decorator.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,IAAM,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;AAEhC;;;;GAIG;AACH,MAAM,yBAAyB,IAAgB;IAC7C,OAAO,mBAAmB,aAAkB;QAC1C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,2BAA2B,IAAgB;IAC/C,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.actions.js b/src/app/+search-page/search-filters/search-filter/search-filter.actions.js new file mode 100644 index 0000000000..e71accb843 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter.actions.js @@ -0,0 +1,125 @@ +import * as tslib_1 from "tslib"; +import { type } from '../../../shared/ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var SearchFilterActionTypes = { + COLLAPSE: type('dspace/search-filter/COLLAPSE'), + INITIALIZE: type('dspace/search-filter/INITIALIZE'), + EXPAND: type('dspace/search-filter/EXPAND'), + TOGGLE: type('dspace/search-filter/TOGGLE'), + DECREMENT_PAGE: type('dspace/search-filter/DECREMENT_PAGE'), + INCREMENT_PAGE: type('dspace/search-filter/INCREMENT_PAGE'), + RESET_PAGE: type('dspace/search-filter/RESET_PAGE') +}; +var SearchFilterAction = /** @class */ (function () { + /** + * Initialize with the filter's name + * @param {string} name of the filter + */ + function SearchFilterAction(name) { + this.filterName = name; + } + return SearchFilterAction; +}()); +export { SearchFilterAction }; +/* tslint:disable:max-classes-per-file */ +/** + * Used to collapse a filter + */ +var SearchFilterCollapseAction = /** @class */ (function (_super) { + tslib_1.__extends(SearchFilterCollapseAction, _super); + function SearchFilterCollapseAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SearchFilterActionTypes.COLLAPSE; + return _this; + } + return SearchFilterCollapseAction; +}(SearchFilterAction)); +export { SearchFilterCollapseAction }; +/** + * Used to expand a filter + */ +var SearchFilterExpandAction = /** @class */ (function (_super) { + tslib_1.__extends(SearchFilterExpandAction, _super); + function SearchFilterExpandAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SearchFilterActionTypes.EXPAND; + return _this; + } + return SearchFilterExpandAction; +}(SearchFilterAction)); +export { SearchFilterExpandAction }; +/** + * Used to collapse a filter when it's expanded and expand it when it's collapsed + */ +var SearchFilterToggleAction = /** @class */ (function (_super) { + tslib_1.__extends(SearchFilterToggleAction, _super); + function SearchFilterToggleAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SearchFilterActionTypes.TOGGLE; + return _this; + } + return SearchFilterToggleAction; +}(SearchFilterAction)); +export { SearchFilterToggleAction }; +/** + * Used to set the initial state of a filter + */ +var SearchFilterInitializeAction = /** @class */ (function (_super) { + tslib_1.__extends(SearchFilterInitializeAction, _super); + function SearchFilterInitializeAction(filter) { + var _this = _super.call(this, filter.name) || this; + _this.type = SearchFilterActionTypes.INITIALIZE; + _this.initiallyExpanded = filter.isOpenByDefault; + return _this; + } + return SearchFilterInitializeAction; +}(SearchFilterAction)); +export { SearchFilterInitializeAction }; +/** + * Used to set the state of a filter to the previous page + */ +var SearchFilterDecrementPageAction = /** @class */ (function (_super) { + tslib_1.__extends(SearchFilterDecrementPageAction, _super); + function SearchFilterDecrementPageAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SearchFilterActionTypes.DECREMENT_PAGE; + return _this; + } + return SearchFilterDecrementPageAction; +}(SearchFilterAction)); +export { SearchFilterDecrementPageAction }; +/** + * Used to set the state of a filter to the next page + */ +var SearchFilterIncrementPageAction = /** @class */ (function (_super) { + tslib_1.__extends(SearchFilterIncrementPageAction, _super); + function SearchFilterIncrementPageAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SearchFilterActionTypes.INCREMENT_PAGE; + return _this; + } + return SearchFilterIncrementPageAction; +}(SearchFilterAction)); +export { SearchFilterIncrementPageAction }; +/** + * Used to set the state of a filter to the first page + */ +var SearchFilterResetPageAction = /** @class */ (function (_super) { + tslib_1.__extends(SearchFilterResetPageAction, _super); + function SearchFilterResetPageAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = SearchFilterActionTypes.RESET_PAGE; + return _this; + } + return SearchFilterResetPageAction; +}(SearchFilterAction)); +export { SearchFilterResetPageAction }; +/* tslint:enable:max-classes-per-file */ +//# sourceMappingURL=search-filter.actions.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.actions.js.map b/src/app/+search-page/search-filters/search-filter/search-filter.actions.js.map new file mode 100644 index 0000000000..93f1be5b65 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-filter.actions.js","sourceRoot":"","sources":["search-filter.actions.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAGjD;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,uBAAuB,GAAG;IACrC,QAAQ,EAAE,IAAI,CAAC,+BAA+B,CAAC;IAC/C,UAAU,EAAE,IAAI,CAAC,iCAAiC,CAAC;IACnD,MAAM,EAAE,IAAI,CAAC,6BAA6B,CAAC;IAC3C,MAAM,EAAE,IAAI,CAAC,6BAA6B,CAAC;IAC3C,cAAc,EAAE,IAAI,CAAC,qCAAqC,CAAC;IAC3D,cAAc,EAAE,IAAI,CAAC,qCAAqC,CAAC;IAC3D,UAAU,EAAE,IAAI,CAAC,iCAAiC,CAAC;CACpD,CAAC;AAEF;IAWE;;;OAGG;IACH,4BAAY,IAAY;QACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;IACH,yBAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED,yCAAyC;AACzC;;GAEG;AACH;IAAgD,sDAAkB;IAAlE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,QAAQ,CAAC;;IAC1C,CAAC;IAAD,iCAAC;AAAD,CAAC,AAFD,CAAgD,kBAAkB,GAEjE;;AAED;;GAEG;AACH;IAA8C,oDAAkB;IAAhE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC;;IACxC,CAAC;IAAD,+BAAC;AAAD,CAAC,AAFD,CAA8C,kBAAkB,GAE/D;;AAED;;GAEG;AACH;IAA8C,oDAAkB;IAAhE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC;;IACxC,CAAC;IAAD,+BAAC;AAAD,CAAC,AAFD,CAA8C,kBAAkB,GAE/D;;AAED;;GAEG;AACH;IAAkD,wDAAkB;IAGlE,sCAAY,MAA0B;QAAtC,YACE,kBAAM,MAAM,CAAC,IAAI,CAAC,SAEnB;QALD,UAAI,GAAG,uBAAuB,CAAC,UAAU,CAAC;QAIxC,KAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,eAAe,CAAC;;IAClD,CAAC;IACH,mCAAC;AAAD,CAAC,AAPD,CAAkD,kBAAkB,GAOnE;;AAED;;GAEG;AACH;IAAqD,2DAAkB;IAAvE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,cAAc,CAAC;;IAChD,CAAC;IAAD,sCAAC;AAAD,CAAC,AAFD,CAAqD,kBAAkB,GAEtE;;AAED;;GAEG;AACH;IAAqD,2DAAkB;IAAvE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,cAAc,CAAC;;IAChD,CAAC;IAAD,sCAAC;AAAD,CAAC,AAFD,CAAqD,kBAAkB,GAEtE;;AAED;;GAEG;AACH;IAAiD,uDAAkB;IAAnE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,UAAU,CAAC;;IAC5C,CAAC;IAAD,kCAAC;AAAD,CAAC,AAFD,CAAiD,kBAAkB,GAElE;;AACD,wCAAwC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-filter.component.js new file mode 100644 index 0000000000..c0e2b075b6 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter.component.js @@ -0,0 +1,128 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Input } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { filter, map, startWith, switchMap, take } from 'rxjs/operators'; +import { SearchFilterConfig } from '../../search-service/search-filter-config.model'; +import { SearchFilterService } from './search-filter.service'; +import { slide } from '../../../shared/animations/slide'; +import { isNotEmpty } from '../../../shared/empty.util'; +import { SearchService } from '../../search-service/search.service'; +import { SearchConfigurationService } from '../../search-service/search-configuration.service'; +import { SEARCH_CONFIG_SERVICE } from '../../../+my-dspace-page/my-dspace-page.component'; +var SearchFilterComponent = /** @class */ (function () { + function SearchFilterComponent(filterService, searchService, searchConfigService) { + this.filterService = filterService; + this.searchService = searchService; + this.searchConfigService = searchConfigService; + /** + * True when the filter is 100% collapsed in the UI + */ + this.closed = true; + } + /** + * Requests the current set values for this filter + * If the filter config is open by default OR the filter has at least one value, the filter should be initially expanded + * Else, the filter should initially be collapsed + */ + SearchFilterComponent.prototype.ngOnInit = function () { + var _this = this; + this.selectedValues$ = this.getSelectedValues(); + this.active$ = this.isActive(); + this.collapsed$ = this.isCollapsed(); + this.initializeFilter(); + this.selectedValues$.pipe(take(1)).subscribe(function (selectedValues) { + if (isNotEmpty(selectedValues)) { + _this.filterService.expand(_this.filter.name); + } + }); + }; + /** + * Changes the state for this filter to collapsed when it's expanded and to expanded it when it's collapsed + */ + SearchFilterComponent.prototype.toggle = function () { + this.filterService.toggle(this.filter.name); + }; + /** + * Checks if the filter is currently collapsed + * @returns {Observable} Emits true when the current state of the filter is collapsed, false when it's expanded + */ + SearchFilterComponent.prototype.isCollapsed = function () { + return this.filterService.isCollapsed(this.filter.name); + }; + /** + * Sets the initial state of the filter + */ + SearchFilterComponent.prototype.initializeFilter = function () { + this.filterService.initializeFilter(this.filter); + }; + /** + * @returns {Observable} Emits a list of all values that are currently active for this filter + */ + SearchFilterComponent.prototype.getSelectedValues = function () { + return this.filterService.getSelectedValuesForFilter(this.filter); + }; + /** + * Method to change this.collapsed to false when the slide animation ends and is sliding open + * @param event The animation event + */ + SearchFilterComponent.prototype.finishSlide = function (event) { + if (event.fromState === 'collapsed') { + this.closed = false; + } + }; + /** + * Method to change this.collapsed to true when the slide animation starts and is sliding closed + * @param event The animation event + */ + SearchFilterComponent.prototype.startSlide = function (event) { + if (event.toState === 'collapsed') { + this.closed = true; + } + }; + /** + * Check if a given filter is supposed to be shown or not + * @returns {Observable} Emits true whenever a given filter config should be shown + */ + SearchFilterComponent.prototype.isActive = function () { + var _this = this; + return this.selectedValues$.pipe(switchMap(function (isActive) { + if (isNotEmpty(isActive)) { + return observableOf(true); + } + else { + return _this.searchConfigService.searchOptions.pipe(switchMap(function (options) { + return _this.searchService.getFacetValuesFor(_this.filter, 1, options).pipe(filter(function (RD) { return !RD.isLoading; }), map(function (valuesRD) { + return valuesRD.payload.totalElements > 0; + })); + })); + } + }), startWith(true)); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SearchFilterConfig) + ], SearchFilterComponent.prototype, "filter", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchFilterComponent.prototype, "inPlaceSearch", void 0); + SearchFilterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-filter', + styleUrls: ['./search-filter.component.scss'], + templateUrl: './search-filter.component.html', + animations: [slide], + }) + /** + * Represents a part of the filter section for a single type of filter + */ + , + tslib_1.__param(2, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__metadata("design:paramtypes", [SearchFilterService, + SearchService, + SearchConfigurationService]) + ], SearchFilterComponent); + return SearchFilterComponent; +}()); +export { SearchFilterComponent }; +//# sourceMappingURL=search-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-filter.component.js.map new file mode 100644 index 0000000000..5487ebcfd9 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-filter.component.js","sourceRoot":"","sources":["search-filter.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js b/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js new file mode 100644 index 0000000000..4faacb58ea --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js @@ -0,0 +1,77 @@ +import { SearchFilterActionTypes } from './search-filter.actions'; +var initialState = Object.create(null); +/** + * Performs a search filter action on the current state + * @param {SearchFiltersState} state The state before the action is performed + * @param {SearchFilterAction} action The action that should be performed + * @returns {SearchFiltersState} The state after the action is performed + */ +export function filterReducer(state, action) { + if (state === void 0) { state = initialState; } + var _a, _b, _c, _d, _e, _f, _g; + switch (action.type) { + case SearchFilterActionTypes.INITIALIZE: { + var initAction = action; + return Object.assign({}, state, (_a = {}, + _a[action.filterName] = { + filterCollapsed: !initAction.initiallyExpanded, + page: 1 + }, + _a)); + return state; + } + case SearchFilterActionTypes.COLLAPSE: { + return Object.assign({}, state, (_b = {}, + _b[action.filterName] = { + filterCollapsed: true, + page: state[action.filterName].page + }, + _b)); + } + case SearchFilterActionTypes.EXPAND: { + return Object.assign({}, state, (_c = {}, + _c[action.filterName] = { + filterCollapsed: false, + page: state[action.filterName].page + }, + _c)); + } + case SearchFilterActionTypes.DECREMENT_PAGE: { + var page = state[action.filterName].page - 1; + return Object.assign({}, state, (_d = {}, + _d[action.filterName] = { + filterCollapsed: state[action.filterName].filterCollapsed, + page: (page >= 1 ? page : 1) + }, + _d)); + } + case SearchFilterActionTypes.INCREMENT_PAGE: { + return Object.assign({}, state, (_e = {}, + _e[action.filterName] = { + filterCollapsed: state[action.filterName].filterCollapsed, + page: state[action.filterName].page + 1 + }, + _e)); + } + case SearchFilterActionTypes.RESET_PAGE: { + return Object.assign({}, state, (_f = {}, + _f[action.filterName] = { + filterCollapsed: state[action.filterName].filterCollapsed, + page: 1 + }, + _f)); + } + case SearchFilterActionTypes.TOGGLE: { + return Object.assign({}, state, (_g = {}, + _g[action.filterName] = { + filterCollapsed: !state[action.filterName].filterCollapsed, + page: state[action.filterName].page + }, + _g)); + } + default: { + return state; + } + } +} +//# sourceMappingURL=search-filter.reducer.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js.map b/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js.map new file mode 100644 index 0000000000..b92bdebe3f --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-filter.reducer.js","sourceRoot":"","sources":["search-filter.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.service.js b/src/app/+search-page/search-filters/search-filter/search-filter.service.js new file mode 100644 index 0000000000..968b10698e --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter.service.js @@ -0,0 +1,230 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { mergeMap, map, distinctUntilChanged } from 'rxjs/operators'; +import { Injectable, InjectionToken } from '@angular/core'; +import { createSelector, select, Store } from '@ngrx/store'; +import { SearchFilterCollapseAction, SearchFilterDecrementPageAction, SearchFilterExpandAction, SearchFilterIncrementPageAction, SearchFilterInitializeAction, SearchFilterResetPageAction, SearchFilterToggleAction } from './search-filter.actions'; +import { hasValue, isNotEmpty, } from '../../../shared/empty.util'; +import { RouteService } from '../../../shared/services/route.service'; +import { SortDirection, SortOptions } from '../../../core/cache/models/sort-options.model'; +import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model'; +import { SearchFixedFilterService } from './search-fixed-filter.service'; +// const spy = create(); +var filterStateSelector = function (state) { return state.searchFilter; }; +export var FILTER_CONFIG = new InjectionToken('filterConfig'); +export var IN_PLACE_SEARCH = new InjectionToken('inPlaceSearch'); +/** + * Service that performs all actions that have to do with search filters and facets + */ +var SearchFilterService = /** @class */ (function () { + function SearchFilterService(store, routeService, fixedFilterService) { + this.store = store; + this.routeService = routeService; + this.fixedFilterService = fixedFilterService; + } + /** + * Checks if a given filter is active with a given value + * @param {string} paramName The parameter name of the filter's configuration for which to search + * @param {string} filterValue The value for which to search + * @returns {Observable} Emit true when the filter is active with the given value + */ + SearchFilterService.prototype.isFilterActiveWithValue = function (paramName, filterValue) { + return this.routeService.hasQueryParamWithValue(paramName, filterValue); + }; + /** + * Checks if a given filter is active with any value + * @param {string} paramName The parameter name of the filter's configuration for which to search + * @returns {Observable} Emit true when the filter is active with any value + */ + SearchFilterService.prototype.isFilterActive = function (paramName) { + return this.routeService.hasQueryParam(paramName); + }; + /** + * Fetch the current active scope from the query parameters + * @returns {Observable} + */ + SearchFilterService.prototype.getCurrentScope = function () { + return this.routeService.getQueryParameterValue('scope'); + }; + /** + * Fetch the current query from the query parameters + * @returns {Observable} + */ + SearchFilterService.prototype.getCurrentQuery = function () { + return this.routeService.getQueryParameterValue('query'); + }; + /** + * Fetch the current pagination from query parameters 'page' and 'pageSize' + * and combine them with a given pagination + * @param pagination Pagination options to combine the query parameters with + * @returns {Observable} + */ + SearchFilterService.prototype.getCurrentPagination = function (pagination) { + if (pagination === void 0) { pagination = {}; } + var page$ = this.routeService.getQueryParameterValue('page'); + var size$ = this.routeService.getQueryParameterValue('pageSize'); + return observableCombineLatest(page$, size$).pipe(map(function (_a) { + var page = _a[0], size = _a[1]; + return Object.assign(new PaginationComponentOptions(), pagination, { + currentPage: page || 1, + pageSize: size || pagination.pageSize + }); + })); + }; + /** + * Fetch the current sorting options from query parameters 'sortDirection' and 'sortField' + * and combine them with given sorting options + * @param {SortOptions} defaultSort Sorting options to combine the query parameters with + * @returns {Observable} + */ + SearchFilterService.prototype.getCurrentSort = function (defaultSort) { + var sortDirection$ = this.routeService.getQueryParameterValue('sortDirection'); + var sortField$ = this.routeService.getQueryParameterValue('sortField'); + return observableCombineLatest(sortDirection$, sortField$).pipe(map(function (_a) { + var sortDirection = _a[0], sortField = _a[1]; + var field = sortField || defaultSort.field; + var direction = SortDirection[sortDirection] || defaultSort.direction; + return new SortOptions(field, direction); + })); + }; + /** + * Fetch the current active filters from the query parameters + * @returns {Observable} + */ + SearchFilterService.prototype.getCurrentFilters = function () { + return this.routeService.getQueryParamsWithPrefix('f.'); + }; + /** + * Fetch the current active fixed filter from the route parameters and return the query by filter name + * @returns {Observable} + */ + SearchFilterService.prototype.getCurrentFixedFilter = function () { + var _this = this; + var filter = this.routeService.getRouteParameterValue('filter'); + return filter.pipe(mergeMap(function (f) { return _this.fixedFilterService.getQueryByFilterName(f); })); + }; + /** + * Fetch the current view from the query parameters + * @returns {Observable} + */ + SearchFilterService.prototype.getCurrentView = function () { + return this.routeService.getQueryParameterValue('view'); + }; + /** + * Requests the active filter values set for a given filter + * @param {SearchFilterConfig} filterConfig The configuration for which the filters are active + * @returns {Observable} Emits the active filters for the given filter configuration + */ + SearchFilterService.prototype.getSelectedValuesForFilter = function (filterConfig) { + var values$ = this.routeService.getQueryParameterValues(filterConfig.paramName); + var prefixValues$ = this.routeService.getQueryParamsWithPrefix(filterConfig.paramName + '.').pipe(map(function (params) { return [].concat.apply([], Object.values(params)); })); + return observableCombineLatest(values$, prefixValues$).pipe(map(function (_a) { + var values = _a[0], prefixValues = _a[1]; + if (isNotEmpty(values)) { + return values; + } + return prefixValues; + })); + }; + /** + * Checks if the state of a given filter is currently collapsed or not + * @param {string} filterName The filtername for which the collapsed state is checked + * @returns {Observable} Emits the current collapsed state of the given filter, if it's unavailable, return false + */ + SearchFilterService.prototype.isCollapsed = function (filterName) { + return this.store.pipe(select(filterByNameSelector(filterName)), map(function (object) { + if (object) { + return object.filterCollapsed; + } + else { + return false; + } + }), distinctUntilChanged()); + }; + /** + * Request the current page of a given filter + * @param {string} filterName The filter name for which the page state is checked + * @returns {Observable} Emits the current page state of the given filter, if it's unavailable, return 1 + */ + SearchFilterService.prototype.getPage = function (filterName) { + return this.store.pipe(select(filterByNameSelector(filterName)), map(function (object) { + if (object) { + return object.page; + } + else { + return 1; + } + }), distinctUntilChanged()); + }; + /** + * Dispatches a collapse action to the store for a given filter + * @param {string} filterName The filter for which the action is dispatched + */ + SearchFilterService.prototype.collapse = function (filterName) { + this.store.dispatch(new SearchFilterCollapseAction(filterName)); + }; + /** + * Dispatches an expand action to the store for a given filter + * @param {string} filterName The filter for which the action is dispatched + */ + SearchFilterService.prototype.expand = function (filterName) { + this.store.dispatch(new SearchFilterExpandAction(filterName)); + }; + /** + * Dispatches a toggle action to the store for a given filter + * @param {string} filterName The filter for which the action is dispatched + */ + SearchFilterService.prototype.toggle = function (filterName) { + this.store.dispatch(new SearchFilterToggleAction(filterName)); + }; + /** + * Dispatches an initialize action to the store for a given filter + * @param {SearchFilterConfig} filter The filter for which the action is dispatched + */ + SearchFilterService.prototype.initializeFilter = function (filter) { + this.store.dispatch(new SearchFilterInitializeAction(filter)); + }; + /** + * Dispatches a decrement action to the store for a given filter + * @param {string} filterName The filter for which the action is dispatched + */ + SearchFilterService.prototype.decrementPage = function (filterName) { + this.store.dispatch(new SearchFilterDecrementPageAction(filterName)); + }; + /** + * Dispatches an increment page action to the store for a given filter + * @param {string} filterName The filter for which the action is dispatched + */ + SearchFilterService.prototype.incrementPage = function (filterName) { + this.store.dispatch(new SearchFilterIncrementPageAction(filterName)); + }; + /** + * Dispatches a reset page action to the store for a given filter + * @param {string} filterName The filter for which the action is dispatched + */ + SearchFilterService.prototype.resetPage = function (filterName) { + this.store.dispatch(new SearchFilterResetPageAction(filterName)); + }; + SearchFilterService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store, + RouteService, + SearchFixedFilterService]) + ], SearchFilterService); + return SearchFilterService; +}()); +export { SearchFilterService }; +function filterByNameSelector(name) { + return keySelector(name); +} +export function keySelector(key) { + return createSelector(filterStateSelector, function (state) { + if (hasValue(state)) { + return state[key]; + } + else { + return undefined; + } + }); +} +//# sourceMappingURL=search-filter.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.service.js.map b/src/app/+search-page/search-filters/search-filter/search-filter.service.js.map new file mode 100644 index 0000000000..301699c23b --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-filter.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-filter.service.js","sourceRoot":"","sources":["search-filter.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js b/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js new file mode 100644 index 0000000000..abdd3cf6b7 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js @@ -0,0 +1,73 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { map } from 'rxjs/operators'; +import { of as observableOf } from 'rxjs'; +import { HALEndpointService } from '../../../core/shared/hal-endpoint.service'; +import { GetRequest } from '../../../core/data/request.models'; +import { RequestService } from '../../../core/data/request.service'; +import { FilteredDiscoveryPageResponseParsingService } from '../../../core/data/filtered-discovery-page-response-parsing.service'; +import { hasValue } from '../../../shared/empty.util'; +import { configureRequest, getResponseFromEntry } from '../../../core/shared/operators'; +import { RouteService } from '../../../shared/services/route.service'; +/** + * Service for performing actions on the filtered-discovery-pages REST endpoint + */ +var SearchFixedFilterService = /** @class */ (function () { + function SearchFixedFilterService(routeService, requestService, halService) { + this.routeService = routeService; + this.requestService = requestService; + this.halService = halService; + this.queryByFilterPath = 'filtered-discovery-pages'; + } + /** + * Get the filter query for a certain filter by name + * @param {string} filterName Name of the filter + * @returns {Observable} Filter query + */ + SearchFixedFilterService.prototype.getQueryByFilterName = function (filterName) { + if (hasValue(filterName)) { + var requestUuid_1 = this.requestService.generateRequestId(); + this.halService.getEndpoint(this.queryByFilterPath).pipe(map(function (url) { + url += ('/' + filterName); + var request = new GetRequest(requestUuid_1, url); + return Object.assign(request, { + getResponseParser: function () { + return FilteredDiscoveryPageResponseParsingService; + } + }); + }), configureRequest(this.requestService)).subscribe(); + // get search results from response cache + var filterQuery = this.requestService.getByUUID(requestUuid_1).pipe(getResponseFromEntry(), map(function (response) { + return response.filterQuery; + })); + return filterQuery; + } + return observableOf(undefined); + }; + /** + * Get the query for looking up items by relation type + * @param {string} relationType Relation type + * @param {string} itemUUID Item UUID + * @returns {string} Query + */ + SearchFixedFilterService.prototype.getQueryByRelations = function (relationType, itemUUID) { + return "query=relation." + relationType + ":" + itemUUID; + }; + /** + * Get the filter for a relation with the item's UUID + * @param relationType The type of relation e.g. 'isAuthorOfPublication' + * @param itemUUID The item's UUID + */ + SearchFixedFilterService.prototype.getFilterByRelation = function (relationType, itemUUID) { + return "f." + relationType + "=" + itemUUID; + }; + SearchFixedFilterService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RouteService, + RequestService, + HALEndpointService]) + ], SearchFixedFilterService); + return SearchFixedFilterService; +}()); +export { SearchFixedFilterService }; +//# sourceMappingURL=search-fixed-filter.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js.map b/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js.map new file mode 100644 index 0000000000..c8db35eb42 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-fixed-filter.service.js","sourceRoot":"","sources":["search-fixed-filter.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAW,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAgB,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAe,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE,OAAO,EAAE,2CAA2C,EAAE,MAAM,qEAAqE,CAAC;AAClI,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAGtE;;GAEG;AAEH;IAGE,kCAAoB,YAA0B,EACxB,cAA8B,EAChC,UAA8B;QAF9B,iBAAY,GAAZ,YAAY,CAAc;QACxB,mBAAc,GAAd,cAAc,CAAgB;QAChC,eAAU,GAAV,UAAU,CAAoB;QAJ1C,sBAAiB,GAAG,0BAA0B,CAAC;IAMvD,CAAC;IAED;;;;OAIG;IACH,uDAAoB,GAApB,UAAqB,UAAkB;QACrC,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;YACxB,IAAM,aAAW,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CACtD,GAAG,CAAC,UAAC,GAAW;gBACd,GAAG,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,CAAC;gBAC1B,IAAM,OAAO,GAAG,IAAI,UAAU,CAAC,aAAW,EAAE,GAAG,CAAC,CAAC;gBACjD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;oBAC5B,iBAAiB,EAAjB;wBACE,OAAO,2CAA2C,CAAC;oBACrD,CAAC;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,EACF,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CACtC,CAAC,SAAS,EAAE,CAAC;YAEd,yCAAyC;YACzC,IAAM,WAAW,GAAuB,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,aAAW,CAAC,CAAC,IAAI,CACrF,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAwC;gBAC3C,OAAA,QAAQ,CAAC,WAAW;YAApB,CAAoB,CACrB,CAAC,CAAC;YACL,OAAO,WAAW,CAAC;SACpB;QACD,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,sDAAmB,GAAnB,UAAoB,YAAoB,EAAE,QAAgB;QACxD,OAAO,oBAAkB,YAAY,SAAI,QAAU,CAAC;IACtD,CAAC;IAED;;;;OAIG;IACH,sDAAmB,GAAnB,UAAoB,YAAoB,EAAE,QAAgB;QACxD,OAAO,OAAK,YAAY,SAAI,QAAU,CAAC;IACzC,CAAC;IA1DU,wBAAwB;QADpC,UAAU,EAAE;iDAIuB,YAAY;YACR,cAAc;YACpB,kBAAkB;OALvC,wBAAwB,CA4DpC;IAAD,+BAAC;CAAA,AA5DD,IA4DC;SA5DY,wBAAwB"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js new file mode 100644 index 0000000000..09c692a143 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { FilterType } from '../../../search-service/filter-type.model'; +import { renderFacetFor } from '../search-filter-type-decorator'; +import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; +var SearchHierarchyFilterComponent = /** @class */ (function (_super) { + tslib_1.__extends(SearchHierarchyFilterComponent, _super); + function SearchHierarchyFilterComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + SearchHierarchyFilterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-hierarchy-filter', + styleUrls: ['./search-hierarchy-filter.component.scss'], + templateUrl: './search-hierarchy-filter.component.html', + animations: [facetLoad] + }) + /** + * Component that represents a hierarchy facet for a specific filter configuration + */ + , + renderFacetFor(FilterType.hierarchy) + ], SearchHierarchyFilterComponent); + return SearchHierarchyFilterComponent; +}(SearchFacetFilterComponent)); +export { SearchHierarchyFilterComponent }; +//# sourceMappingURL=search-hierarchy-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js.map new file mode 100644 index 0000000000..d8838f8f27 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-hierarchy-filter.component.js","sourceRoot":"","sources":["search-hierarchy-filter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,SAAS,EACT,0BAA0B,EAC3B,MAAM,sDAAsD,CAAC;AAa9D;IAAoD,0DAA0B;IAA9E;;IACA,CAAC;IADY,8BAA8B;QAX1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,SAAS,EAAE,CAAC,0CAA0C,CAAC;YACvD,WAAW,EAAE,0CAA0C;YACvD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QAEF;;WAEG;;QACF,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC;OACxB,8BAA8B,CAC1C;IAAD,qCAAC;CAAA,AADD,CAAoD,0BAA0B,GAC7E;SADY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js new file mode 100644 index 0000000000..ff1ccbacb5 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js @@ -0,0 +1,135 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { map, startWith } from 'rxjs/operators'; +import { isPlatformBrowser } from '@angular/common'; +import { Component, Inject, PLATFORM_ID } from '@angular/core'; +import { RemoteDataBuildService } from '../../../../core/cache/builders/remote-data-build.service'; +import { FilterType } from '../../../search-service/filter-type.model'; +import { renderFacetFor } from '../search-filter-type-decorator'; +import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; +import { SearchFilterConfig } from '../../../search-service/search-filter-config.model'; +import { FILTER_CONFIG, IN_PLACE_SEARCH, SearchFilterService } from '../search-filter.service'; +import { SearchService } from '../../../search-service/search.service'; +import { Router } from '@angular/router'; +import * as moment from 'moment'; +import { RouteService } from '../../../../shared/services/route.service'; +import { hasValue } from '../../../../shared/empty.util'; +import { SearchConfigurationService } from '../../../search-service/search-configuration.service'; +import { SEARCH_CONFIG_SERVICE } from '../../../../+my-dspace-page/my-dspace-page.component'; +/** + * The suffix for a range filters' minimum in the frontend URL + */ +export var RANGE_FILTER_MIN_SUFFIX = '.min'; +/** + * The suffix for a range filters' maximum in the frontend URL + */ +export var RANGE_FILTER_MAX_SUFFIX = '.max'; +/** + * The date formats that are possible to appear in a date filter + */ +var dateFormats = ['YYYY', 'YYYY-MM', 'YYYY-MM-DD']; +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ +var SearchRangeFilterComponent = /** @class */ (function (_super) { + tslib_1.__extends(SearchRangeFilterComponent, _super); + function SearchRangeFilterComponent(searchService, filterService, router, rdbs, searchConfigService, inPlaceSearch, filterConfig, platformId, route) { + var _this = _super.call(this, searchService, filterService, rdbs, router, searchConfigService, inPlaceSearch, filterConfig) || this; + _this.searchService = searchService; + _this.filterService = filterService; + _this.router = router; + _this.rdbs = rdbs; + _this.searchConfigService = searchConfigService; + _this.inPlaceSearch = inPlaceSearch; + _this.filterConfig = filterConfig; + _this.platformId = platformId; + _this.route = route; + /** + * Fallback minimum for the range + */ + _this.min = 1950; + /** + * Fallback maximum for the range + */ + _this.max = 2018; + return _this; + } + /** + * Initialize with the min and max values as configured in the filter configuration + * Set the initial values of the range + */ + SearchRangeFilterComponent.prototype.ngOnInit = function () { + var _this = this; + _super.prototype.ngOnInit.call(this); + this.min = moment(this.filterConfig.minValue, dateFormats).year() || this.min; + this.max = moment(this.filterConfig.maxValue, dateFormats).year() || this.max; + var iniMin = this.route.getQueryParameterValue(this.filterConfig.paramName + RANGE_FILTER_MIN_SUFFIX).pipe(startWith(undefined)); + var iniMax = this.route.getQueryParameterValue(this.filterConfig.paramName + RANGE_FILTER_MAX_SUFFIX).pipe(startWith(undefined)); + this.sub = observableCombineLatest(iniMin, iniMax).pipe(map(function (_a) { + var min = _a[0], max = _a[1]; + var minimum = hasValue(min) ? min : _this.min; + var maximum = hasValue(max) ? max : _this.max; + return [minimum, maximum]; + })).subscribe(function (minmax) { return _this.range = minmax; }); + }; + /** + * Submits new custom range values to the range filter from the widget + */ + SearchRangeFilterComponent.prototype.onSubmit = function () { + var _a; + var newMin = this.range[0] !== this.min ? [this.range[0]] : null; + var newMax = this.range[1] !== this.max ? [this.range[1]] : null; + this.router.navigate(this.getSearchLinkParts(), { + queryParams: (_a = {}, + _a[this.filterConfig.paramName + RANGE_FILTER_MIN_SUFFIX] = newMin, + _a[this.filterConfig.paramName + RANGE_FILTER_MAX_SUFFIX] = newMax, + _a), + queryParamsHandling: 'merge' + }); + this.filter = ''; + }; + /** + * TODO when upgrading nouislider, verify that this check is still needed. + * Prevents AoT bug + * @returns {boolean} True if the platformId is a platform browser + */ + SearchRangeFilterComponent.prototype.shouldShowSlider = function () { + return isPlatformBrowser(this.platformId); + }; + /** + * Unsubscribe from all subscriptions + */ + SearchRangeFilterComponent.prototype.ngOnDestroy = function () { + _super.prototype.ngOnDestroy.call(this); + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + SearchRangeFilterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-range-filter', + styleUrls: ['./search-range-filter.component.scss'], + templateUrl: './search-range-filter.component.html', + animations: [facetLoad] + }) + /** + * Component that represents a range facet for a specific filter configuration + */ + , + renderFacetFor(FilterType.range), + tslib_1.__param(4, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__param(5, Inject(IN_PLACE_SEARCH)), + tslib_1.__param(6, Inject(FILTER_CONFIG)), + tslib_1.__param(7, Inject(PLATFORM_ID)), + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchFilterService, + Router, + RemoteDataBuildService, + SearchConfigurationService, Boolean, SearchFilterConfig, Object, RouteService]) + ], SearchRangeFilterComponent); + return SearchRangeFilterComponent; +}(SearchFacetFilterComponent)); +export { SearchRangeFilterComponent }; +//# sourceMappingURL=search-range-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js.map new file mode 100644 index 0000000000..bed7729db0 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-range-filter.component.js","sourceRoot":"","sources":["search-range-filter.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js new file mode 100644 index 0000000000..18d28f8e62 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { FilterType } from '../../../search-service/filter-type.model'; +import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; +import { renderFacetFor } from '../search-filter-type-decorator'; +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ +var SearchTextFilterComponent = /** @class */ (function (_super) { + tslib_1.__extends(SearchTextFilterComponent, _super); + function SearchTextFilterComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + SearchTextFilterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-text-filter', + styleUrls: ['./search-text-filter.component.scss'], + templateUrl: './search-text-filter.component.html', + animations: [facetLoad] + }) + /** + * Component that represents a text facet for a specific filter configuration + */ + , + renderFacetFor(FilterType.text) + ], SearchTextFilterComponent); + return SearchTextFilterComponent; +}(SearchFacetFilterComponent)); +export { SearchTextFilterComponent }; +//# sourceMappingURL=search-text-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js.map new file mode 100644 index 0000000000..71627953b9 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-text-filter.component.js","sourceRoot":"","sources":["search-text-filter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EACL,SAAS,EACT,0BAA0B,EAC3B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;;;GAIG;AAaH;IAA+C,qDAA0B;IAAzE;;IACA,CAAC;IADY,yBAAyB;QAXrC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,SAAS,EAAE,CAAC,qCAAqC,CAAC;YAClD,WAAW,EAAE,qCAAqC;YAClD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QAEF;;WAEG;;QACF,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC;OACnB,yBAAyB,CACrC;IAAD,gCAAC;CAAA,AADD,CAA+C,0BAA0B,GACxE;SADY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filters.component.js b/src/app/+search-page/search-filters/search-filters.component.js new file mode 100644 index 0000000000..6891734cde --- /dev/null +++ b/src/app/+search-page/search-filters/search-filters.component.js @@ -0,0 +1,66 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Input } from '@angular/core'; +import { map, switchMap } from 'rxjs/operators'; +import { SearchService } from '../search-service/search.service'; +import { SearchConfigurationService } from '../search-service/search-configuration.service'; +import { SearchFilterService } from './search-filter/search-filter.service'; +import { getSucceededRemoteData } from '../../core/shared/operators'; +import { SEARCH_CONFIG_SERVICE } from '../../+my-dspace-page/my-dspace-page.component'; +var SearchFiltersComponent = /** @class */ (function () { + /** + * Initialize instance variables + * @param {SearchService} searchService + * @param {SearchConfigurationService} searchConfigService + * @param {SearchFilterService} filterService + */ + function SearchFiltersComponent(searchService, filterService, searchConfigService) { + this.searchService = searchService; + this.filterService = filterService; + this.searchConfigService = searchConfigService; + } + SearchFiltersComponent.prototype.ngOnInit = function () { + var _this = this; + this.filters = this.searchConfigService.searchOptions.pipe(switchMap(function (options) { return _this.searchService.getConfig(options.scope, options.configuration).pipe(getSucceededRemoteData()); })); + this.clearParams = this.searchConfigService.getCurrentFrontendFilters().pipe(map(function (filters) { + Object.keys(filters).forEach(function (f) { return filters[f] = null; }); + return filters; + })); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchFiltersComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.searchService.getSearchLink(); + }; + /** + * Prevent unnecessary rerendering + */ + SearchFiltersComponent.prototype.trackUpdate = function (index, config) { + return config ? config.name : undefined; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchFiltersComponent.prototype, "inPlaceSearch", void 0); + SearchFiltersComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-filters', + styleUrls: ['./search-filters.component.scss'], + templateUrl: './search-filters.component.html', + }) + /** + * This component represents the part of the search sidebar that contains filters. + */ + , + tslib_1.__param(2, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchFilterService, + SearchConfigurationService]) + ], SearchFiltersComponent); + return SearchFiltersComponent; +}()); +export { SearchFiltersComponent }; +//# sourceMappingURL=search-filters.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filters.component.js.map b/src/app/+search-page/search-filters/search-filters.component.js.map new file mode 100644 index 0000000000..bb04fb1904 --- /dev/null +++ b/src/app/+search-page/search-filters/search-filters.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-filters.component.js","sourceRoot":"","sources":["search-filters.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGjE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAGjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAWvF;IAiBE;;;;;OAKG;IACH,gCACU,aAA4B,EAC5B,aAAkC,EACH,mBAA+C;QAF9E,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAqB;QACH,wBAAmB,GAAnB,mBAAmB,CAA4B;IAExF,CAAC;IAED,yCAAQ,GAAR;QAAA,iBAUC;QARC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,IAAI,CACxD,SAAS,CAAC,UAAC,OAAO,IAAK,OAAA,KAAI,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,EAAjG,CAAiG,CAAC,CAC1H,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,OAAO;YACvF,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,EAAjB,CAAiB,CAAC,CAAC;YACvD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,8CAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,4CAAW,GAAX,UAAY,KAAK,EAAE,MAA0B;QAC3C,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1C,CAAC;IA1CQ;QAAR,KAAK,EAAE;;iEAAe;IAfZ,sBAAsB;QATlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QAEF;;WAEG;;QA2BE,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDAFP,aAAa;YACb,mBAAmB;YACkB,0BAA0B;OA1B7E,sBAAsB,CA2DlC;IAAD,6BAAC;CAAA,AA3DD,IA2DC;SA3DY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+search-page/search-labels/search-labels.component.js b/src/app/+search-page/search-labels/search-labels.component.js new file mode 100644 index 0000000000..220e4c9d5a --- /dev/null +++ b/src/app/+search-page/search-labels/search-labels.component.js @@ -0,0 +1,76 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Input } from '@angular/core'; +import { SearchService } from '../search-service/search.service'; +import { map } from 'rxjs/operators'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { SearchConfigurationService } from '../search-service/search-configuration.service'; +import { SEARCH_CONFIG_SERVICE } from '../../+my-dspace-page/my-dspace-page.component'; +var SearchLabelsComponent = /** @class */ (function () { + /** + * Initialize the instance variable + */ + function SearchLabelsComponent(searchService, searchConfigService) { + this.searchService = searchService; + this.searchConfigService = searchConfigService; + this.appliedFilters = this.searchConfigService.getCurrentFrontendFilters(); + } + /** + * Calculates the parameters that should change if a given value for the given filter would be removed from the active filters + * @param {string} filterField The filter field parameter name from which the value should be removed + * @param {string} filterValue The value that is removed for this given filter field + * @returns {Observable} The changed filter parameters + */ + SearchLabelsComponent.prototype.getRemoveParams = function (filterField, filterValue) { + return this.appliedFilters.pipe(map(function (filters) { + var _a; + var field = Object.keys(filters).find(function (f) { return f === filterField; }); + var newValues = hasValue(filters[field]) ? filters[field].filter(function (v) { return v !== filterValue; }) : null; + return _a = {}, + _a[field] = isNotEmpty(newValues) ? newValues : null, + _a.page = 1, + _a; + })); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchLabelsComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.searchService.getSearchLink(); + }; + /** + * TODO to review after https://github.com/DSpace/dspace-angular/issues/368 is resolved + * Strips authority operator from filter value + * e.g. 'test ,authority' => 'test' + * + * @param value + */ + SearchLabelsComponent.prototype.normalizeFilterValue = function (value) { + // const pattern = /,[^,]*$/g; + var pattern = /,authority*$/g; + return value.replace(pattern, ''); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchLabelsComponent.prototype, "inPlaceSearch", void 0); + SearchLabelsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-labels', + styleUrls: ['./search-labels.component.scss'], + templateUrl: './search-labels.component.html', + }) + /** + * Component that represents the labels containing the currently active filters + */ + , + tslib_1.__param(1, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchConfigurationService]) + ], SearchLabelsComponent); + return SearchLabelsComponent; +}()); +export { SearchLabelsComponent }; +//# sourceMappingURL=search-labels.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-labels/search-labels.component.js.map b/src/app/+search-page/search-labels/search-labels.component.js.map new file mode 100644 index 0000000000..8667c2d341 --- /dev/null +++ b/src/app/+search-page/search-labels/search-labels.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-labels.component.js","sourceRoot":"","sources":["search-labels.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAGjE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAWvF;IAWE;;OAEG;IACH,+BACU,aAA4B,EACE,mBAA+C;QAD7E,kBAAa,GAAb,aAAa,CAAe;QACE,wBAAmB,GAAnB,mBAAmB,CAA4B;QACrF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,CAAC;IAC7E,CAAC;IAED;;;;;OAKG;IACH,+CAAe,GAAf,UAAgB,WAAmB,EAAE,WAAmB;QACtD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAC7B,GAAG,CAAC,UAAC,OAAO;;YACV,IAAM,KAAK,GAAW,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,WAAW,EAAjB,CAAiB,CAAC,CAAC;YAC1E,IAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,WAAW,EAAjB,CAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACpG;gBACE,GAAC,KAAK,IAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;gBACjD,OAAI,GAAE,CAAC;mBACP;QACJ,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED;;OAEG;IACI,6CAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;;OAMG;IACH,oDAAoB,GAApB,UAAqB,KAAa;QAChC,8BAA8B;QAC9B,IAAM,OAAO,GAAG,eAAe,CAAC;QAChC,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAnDQ;QAAR,KAAK,EAAE;;gEAAe;IATZ,qBAAqB;QATjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,CAAC,gCAAgC,CAAC;YAC7C,WAAW,EAAE,gCAAgC;SAC9C,CAAC;QAEF;;WAEG;;QAiBE,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDADP,aAAa;YACuB,0BAA0B;OAhB5E,qBAAqB,CA6DjC;IAAD,4BAAC;CAAA,AA7DD,IA6DC;SA7DY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+search-page/search-options.model.js b/src/app/+search-page/search-options.model.js new file mode 100644 index 0000000000..5ef1cf890e --- /dev/null +++ b/src/app/+search-page/search-options.model.js @@ -0,0 +1,57 @@ +import { isNotEmpty } from '../shared/empty.util'; +import { URLCombiner } from '../core/url-combiner/url-combiner'; +import 'core-js/library/fn/object/entries'; +import { SetViewMode } from '../shared/view-mode'; +/** + * This model class represents all parameters needed to request information about a certain search request + */ +var SearchOptions = /** @class */ (function () { + function SearchOptions(options) { + this.view = SetViewMode.List; + this.configuration = options.configuration; + this.scope = options.scope; + this.query = options.query; + this.dsoType = options.dsoType; + this.filters = options.filters; + this.fixedFilter = options.fixedFilter; + } + /** + * Method to generate the URL that can be used request information about a search request + * @param {string} url The URL to the REST endpoint + * @param {string[]} args A list of query arguments that should be included in the URL + * @returns {string} URL with all search options and passed arguments as query parameters + */ + SearchOptions.prototype.toRestUrl = function (url, args) { + if (args === void 0) { args = []; } + if (isNotEmpty(this.configuration)) { + args.push("configuration=" + this.configuration); + } + if (isNotEmpty(this.fixedFilter)) { + args.push(this.fixedFilter); + } + if (isNotEmpty(this.query)) { + args.push("query=" + this.query); + } + if (isNotEmpty(this.scope)) { + args.push("scope=" + this.scope); + } + if (isNotEmpty(this.dsoType)) { + args.push("dsoType=" + this.dsoType); + } + if (isNotEmpty(this.filters)) { + this.filters.forEach(function (filter) { + filter.values.forEach(function (value) { + var filterValue = value.includes(',') ? "" + value : value + "," + filter.operator; + args.push(filter.key + "=" + filterValue); + }); + }); + } + if (isNotEmpty(args)) { + url = new URLCombiner(url, "?" + args.join('&')).toString(); + } + return url; + }; + return SearchOptions; +}()); +export { SearchOptions }; +//# sourceMappingURL=search-options.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-options.model.js.map b/src/app/+search-page/search-options.model.js.map new file mode 100644 index 0000000000..fce041dabd --- /dev/null +++ b/src/app/+search-page/search-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-options.model.js","sourceRoot":"","sources":["search-options.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,mCAAmC,CAAC;AAG3C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD;;GAEG;AACH;IASE,uBAAY,OAA0I;QAPtJ,SAAI,GAAiB,WAAW,CAAC,IAAI,CAAC;QAQlC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACH,iCAAS,GAAT,UAAU,GAAW,EAAE,IAAmB;QAAnB,qBAAA,EAAA,SAAmB;QACxC,IAAI,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,mBAAiB,IAAI,CAAC,aAAe,CAAC,CAAC;SAClD;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC7B;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,WAAS,IAAI,CAAC,KAAO,CAAC,CAAC;SAClC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,WAAS,IAAI,CAAC,KAAO,CAAC,CAAC;SAClC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,aAAW,IAAI,CAAC,OAAS,CAAC,CAAC;SACtC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC5B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAC,MAAoB;gBACxC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK;oBAC1B,IAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAG,KAAO,CAAC,CAAC,CAAI,KAAK,SAAI,MAAM,CAAC,QAAU,CAAC;oBACrF,IAAI,CAAC,IAAI,CAAI,MAAM,CAAC,GAAG,SAAI,WAAa,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;YACpB,GAAG,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,MAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;SAC7D;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACH,oBAAC;AAAD,CAAC,AArDD,IAqDC"} \ No newline at end of file diff --git a/src/app/+search-page/search-page-routing.module.js b/src/app/+search-page/search-page-routing.module.js new file mode 100644 index 0000000000..1f9647fcd1 --- /dev/null +++ b/src/app/+search-page/search-page-routing.module.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { SearchPageComponent } from './search-page.component'; +import { FilteredSearchPageComponent } from './filtered-search-page.component'; +import { FilteredSearchPageGuard } from './filtered-search-page.guard'; +var SearchPageRoutingModule = /** @class */ (function () { + function SearchPageRoutingModule() { + } + SearchPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { path: '', component: SearchPageComponent, data: { title: 'search.title' } }, + { path: ':filter', component: FilteredSearchPageComponent, canActivate: [FilteredSearchPageGuard], data: { title: 'search.' } } + ]) + ] + }) + ], SearchPageRoutingModule); + return SearchPageRoutingModule; +}()); +export { SearchPageRoutingModule }; +//# sourceMappingURL=search-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-page-routing.module.js.map b/src/app/+search-page/search-page-routing.module.js.map new file mode 100644 index 0000000000..f732e3deb7 --- /dev/null +++ b/src/app/+search-page/search-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-page-routing.module.js","sourceRoot":"","sources":["search-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAUvE;IAAA;IAAuC,CAAC;IAA3B,uBAAuB;QARnC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;oBAC7E,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,2BAA2B,EAAE,WAAW,EAAE,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAC;iBAC/H,CAAC;aACH;SACF,CAAC;OACW,uBAAuB,CAAI;IAAD,8BAAC;CAAA,AAAxC,IAAwC;SAA3B,uBAAuB"} \ No newline at end of file diff --git a/src/app/+search-page/search-page.component.js b/src/app/+search-page/search-page.component.js new file mode 100644 index 0000000000..108971af35 --- /dev/null +++ b/src/app/+search-page/search-page.component.js @@ -0,0 +1,152 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component, Inject, Input } from '@angular/core'; +import { Observable, BehaviorSubject } from 'rxjs'; +import { switchMap, } from 'rxjs/operators'; +import { pushInOut } from '../shared/animations/push'; +import { HostWindowService } from '../shared/host-window.service'; +import { SearchService } from './search-service/search.service'; +import { SearchSidebarService } from './search-sidebar/search-sidebar.service'; +import { hasValue, isNotEmpty } from '../shared/empty.util'; +import { SearchConfigurationService } from './search-service/search-configuration.service'; +import { getSucceededRemoteData } from '../core/shared/operators'; +import { RouteService } from '../shared/services/route.service'; +import { SEARCH_CONFIG_SERVICE } from '../+my-dspace-page/my-dspace-page.component'; +export var SEARCH_ROUTE = '/search'; +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ +var SearchPageComponent = /** @class */ (function () { + function SearchPageComponent(service, sidebarService, windowService, searchConfigService, routeService) { + this.service = service; + this.sidebarService = sidebarService; + this.windowService = windowService; + this.searchConfigService = searchConfigService; + this.routeService = routeService; + /** + * The current search results + */ + this.resultsRD$ = new BehaviorSubject(null); + /** + * True when the search component should show results on the current page + */ + this.inPlaceSearch = true; + /** + * Whether or not the search bar should be visible + */ + this.searchEnabled = true; + /** + * The width of the sidebar (bootstrap columns) + */ + this.sideBarWidth = 3; + this.isXsOrSm$ = this.windowService.isXsOrSm(); + } + /** + * Listening to changes in the paginated search options + * If something changes, update the search results + * + * Listen to changes in the scope + * If something changes, update the list of scopes for the dropdown + */ + SearchPageComponent.prototype.ngOnInit = function () { + var _this = this; + this.searchOptions$ = this.getSearchOptions(); + this.sub = this.searchOptions$.pipe(switchMap(function (options) { return _this.service.search(options).pipe(getSucceededRemoteData()); })) + .subscribe(function (results) { + _this.resultsRD$.next(results); + }); + this.scopeListRD$ = this.searchConfigService.getCurrentScope('').pipe(switchMap(function (scopeId) { return _this.service.getScopes(scopeId); })); + if (!isNotEmpty(this.fixedFilter$)) { + this.fixedFilter$ = this.routeService.getRouteParameterValue('filter'); + } + }; + /** + * Get the current paginated search options + * @returns {Observable} + */ + SearchPageComponent.prototype.getSearchOptions = function () { + return this.searchConfigService.paginatedSearchOptions; + }; + /** + * Set the sidebar to a collapsed state + */ + SearchPageComponent.prototype.closeSidebar = function () { + this.sidebarService.collapse(); + }; + /** + * Set the sidebar to an expanded state + */ + SearchPageComponent.prototype.openSidebar = function () { + this.sidebarService.expand(); + }; + /** + * Check if the sidebar is collapsed + * @returns {Observable} emits true if the sidebar is currently collapsed, false if it is expanded + */ + SearchPageComponent.prototype.isSidebarCollapsed = function () { + return this.sidebarService.isCollapsed; + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchPageComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.service.getSearchLink(); + }; + /** + * Unsubscribe from the subscription + */ + SearchPageComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchPageComponent.prototype, "inPlaceSearch", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchPageComponent.prototype, "searchEnabled", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchPageComponent.prototype, "sideBarWidth", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Observable) + ], SearchPageComponent.prototype, "fixedFilter$", void 0); + SearchPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-page', + styleUrls: ['./search-page.component.scss'], + templateUrl: './search-page.component.html', + changeDetection: ChangeDetectionStrategy.OnPush, + animations: [pushInOut], + providers: [ + { + provide: SEARCH_CONFIG_SERVICE, + useClass: SearchConfigurationService + } + ] + }) + /** + * This component represents the whole search page + * It renders search results depending on the current search options + */ + , + tslib_1.__param(3, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__metadata("design:paramtypes", [SearchService, + SearchSidebarService, + HostWindowService, + SearchConfigurationService, + RouteService]) + ], SearchPageComponent); + return SearchPageComponent; +}()); +export { SearchPageComponent }; +//# sourceMappingURL=search-page.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-page.component.js.map b/src/app/+search-page/search-page.component.js.map new file mode 100644 index 0000000000..c92bd82da8 --- /dev/null +++ b/src/app/+search-page/search-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-page.component.js","sourceRoot":"","sources":["search-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-page.module.js b/src/app/+search-page/search-page.module.js new file mode 100644 index 0000000000..6162af9d69 --- /dev/null +++ b/src/app/+search-page/search-page.module.js @@ -0,0 +1,111 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { CoreModule } from '../core/core.module'; +import { SharedModule } from '../shared/shared.module'; +import { SearchPageRoutingModule } from './search-page-routing.module'; +import { SearchPageComponent } from './search-page.component'; +import { SearchResultsComponent } from './search-results/search-results.component'; +import { ItemSearchResultGridElementComponent } from '../shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component'; +import { CommunitySearchResultGridElementComponent } from '../shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component'; +import { CollectionSearchResultGridElementComponent } from '../shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component'; +import { SearchSidebarComponent } from './search-sidebar/search-sidebar.component'; +import { SearchSidebarService } from './search-sidebar/search-sidebar.service'; +import { SearchSidebarEffects } from './search-sidebar/search-sidebar.effects'; +import { SearchSettingsComponent } from './search-settings/search-settings.component'; +import { EffectsModule } from '@ngrx/effects'; +import { SearchFiltersComponent } from './search-filters/search-filters.component'; +import { SearchFilterComponent } from './search-filters/search-filter/search-filter.component'; +import { SearchFacetFilterComponent } from './search-filters/search-filter/search-facet-filter/search-facet-filter.component'; +import { SearchFilterService } from './search-filters/search-filter/search-filter.service'; +import { FilteredSearchPageComponent } from './filtered-search-page.component'; +import { SearchFixedFilterService } from './search-filters/search-filter/search-fixed-filter.service'; +import { FilteredSearchPageGuard } from './filtered-search-page.guard'; +import { SearchLabelsComponent } from './search-labels/search-labels.component'; +import { SearchRangeFilterComponent } from './search-filters/search-filter/search-range-filter/search-range-filter.component'; +import { SearchTextFilterComponent } from './search-filters/search-filter/search-text-filter/search-text-filter.component'; +import { SearchFacetFilterWrapperComponent } from './search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component'; +import { SearchBooleanFilterComponent } from './search-filters/search-filter/search-boolean-filter/search-boolean-filter.component'; +import { SearchHierarchyFilterComponent } from './search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component'; +import { SearchConfigurationService } from './search-service/search-configuration.service'; +import { SearchFacetOptionComponent } from './search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component'; +import { SearchFacetSelectedOptionComponent } from './search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component'; +import { SearchFacetRangeOptionComponent } from './search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component'; +import { SearchSwitchConfigurationComponent } from './search-switch-configuration/search-switch-configuration.component'; +import { SearchAuthorityFilterComponent } from './search-filters/search-filter/search-authority-filter/search-authority-filter.component'; +var effects = [ + SearchSidebarEffects +]; +var components = [ + SearchPageComponent, + SearchResultsComponent, + SearchSidebarComponent, + SearchSettingsComponent, + ItemSearchResultGridElementComponent, + CollectionSearchResultGridElementComponent, + CommunitySearchResultGridElementComponent, + SearchFiltersComponent, + SearchFilterComponent, + SearchFacetFilterComponent, + SearchLabelsComponent, + SearchFacetFilterComponent, + SearchFacetFilterWrapperComponent, + SearchRangeFilterComponent, + SearchTextFilterComponent, + SearchHierarchyFilterComponent, + SearchBooleanFilterComponent, + SearchFacetOptionComponent, + SearchFacetSelectedOptionComponent, + SearchFacetRangeOptionComponent, + SearchSwitchConfigurationComponent, + SearchAuthorityFilterComponent, + FilteredSearchPageComponent +]; +var SearchPageModule = /** @class */ (function () { + /** + * This module handles all components and pipes that are necessary for the search page + */ + function SearchPageModule() { + } + SearchPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + SearchPageRoutingModule, + CommonModule, + SharedModule, + EffectsModule.forFeature(effects), + CoreModule.forRoot() + ], + declarations: components, + providers: [ + SearchSidebarService, + SearchFilterService, + SearchFixedFilterService, + FilteredSearchPageGuard, + SearchFilterService, + SearchConfigurationService + ], + entryComponents: [ + ItemSearchResultGridElementComponent, + CollectionSearchResultGridElementComponent, + CommunitySearchResultGridElementComponent, + SearchFacetFilterComponent, + SearchRangeFilterComponent, + SearchTextFilterComponent, + SearchHierarchyFilterComponent, + SearchBooleanFilterComponent, + SearchFacetOptionComponent, + SearchFacetSelectedOptionComponent, + SearchFacetRangeOptionComponent, + SearchAuthorityFilterComponent + ], + exports: components + }) + /** + * This module handles all components and pipes that are necessary for the search page + */ + ], SearchPageModule); + return SearchPageModule; +}()); +export { SearchPageModule }; +//# sourceMappingURL=search-page.module.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-page.module.js.map b/src/app/+search-page/search-page.module.js.map new file mode 100644 index 0000000000..628bc18c81 --- /dev/null +++ b/src/app/+search-page/search-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-page.module.js","sourceRoot":"","sources":["search-page.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-result.model.js b/src/app/+search-page/search-result.model.js new file mode 100644 index 0000000000..c3ce849864 --- /dev/null +++ b/src/app/+search-page/search-result.model.js @@ -0,0 +1,10 @@ +/** + * Represents a search result object of a certain () DSpaceObject + */ +var SearchResult = /** @class */ (function () { + function SearchResult() { + } + return SearchResult; +}()); +export { SearchResult }; +//# sourceMappingURL=search-result.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-result.model.js.map b/src/app/+search-page/search-result.model.js.map new file mode 100644 index 0000000000..05c50b603a --- /dev/null +++ b/src/app/+search-page/search-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-result.model.js","sourceRoot":"","sources":["search-result.model.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH;IAAA;IAWA,CAAC;IAAD,mBAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/+search-page/search-results/search-results.component.js b/src/app/+search-page/search-results/search-results.component.js new file mode 100644 index 0000000000..e9cab0d935 --- /dev/null +++ b/src/app/+search-page/search-results/search-results.component.js @@ -0,0 +1,80 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { RemoteData } from '../../core/data/remote-data'; +import { fadeIn, fadeInOut } from '../../shared/animations/fade'; +import { SetViewMode } from '../../shared/view-mode'; +import { SearchOptions } from '../search-options.model'; +import { isNotEmpty } from '../../shared/empty.util'; +import { SortOptions } from '../../core/cache/models/sort-options.model'; +var SearchResultsComponent = /** @class */ (function () { + function SearchResultsComponent() { + /** + * Whether or not to hide the header of the results + * Defaults to a visible header + */ + this.disableHeader = false; + } + /** + * Get the i18n key for the title depending on the fixed filter + * Defaults to 'search.results.head' if there's no fixed filter found + * @returns {string} + */ + SearchResultsComponent.prototype.getTitleKey = function () { + if (isNotEmpty(this.fixedFilter)) { + return 'search.' + this.fixedFilter + '.results.head'; + } + else { + return 'search.results.head'; + } + }; + /** + * Method to change the given string by surrounding it by quotes if not already present. + */ + SearchResultsComponent.prototype.surroundStringWithQuotes = function (input) { + var result = input; + if (isNotEmpty(result) && !(result.startsWith('\"') && result.endsWith('\"'))) { + result = "\"" + result + "\""; + } + return result; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", RemoteData) + ], SearchResultsComponent.prototype, "searchResults", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SearchOptions) + ], SearchResultsComponent.prototype, "searchConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SortOptions) + ], SearchResultsComponent.prototype, "sortConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SearchResultsComponent.prototype, "viewMode", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SearchResultsComponent.prototype, "fixedFilter", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchResultsComponent.prototype, "disableHeader", void 0); + SearchResultsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-results', + templateUrl: './search-results.component.html', + animations: [ + fadeIn, + fadeInOut + ] + }) + /** + * Component that represents all results from a search + */ + ], SearchResultsComponent); + return SearchResultsComponent; +}()); +export { SearchResultsComponent }; +//# sourceMappingURL=search-results.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-results/search-results.component.js.map b/src/app/+search-page/search-results/search-results.component.js.map new file mode 100644 index 0000000000..e9c7499aaa --- /dev/null +++ b/src/app/+search-page/search-results/search-results.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-results.component.js","sourceRoot":"","sources":["search-results.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAczE;IAZA;QAsCE;;;WAGG;QACM,kBAAa,GAAG,KAAK,CAAC;IA2BjC,CAAC;IAzBC;;;;OAIG;IACH,4CAAW,GAAX;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAChC,OAAO,SAAS,GAAG,IAAI,CAAC,WAAW,GAAG,eAAe,CAAA;SACtD;aAAM;YACL,OAAO,qBAAqB,CAAC;SAC9B;IACH,CAAC;IAED;;OAEG;IACH,yDAAwB,GAAxB,UAAyB,KAAa;QACpC,IAAI,MAAM,GAAG,KAAK,CAAC;QAEnB,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE;YAC7E,MAAM,GAAG,OAAI,MAAM,OAAG,CAAC;SACxB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IApDQ;QAAR,KAAK,EAAE;0CAAgB,UAAU;iEAA4C;IAKrE;QAAR,KAAK,EAAE;0CAAe,aAAa;gEAAC;IAK5B;QAAR,KAAK,EAAE;0CAAa,WAAW;8DAAC;IAKxB;QAAR,KAAK,EAAE;;4DAAuB;IAKtB;QAAR,KAAK,EAAE;;+DAAqB;IAMpB;QAAR,KAAK,EAAE;;iEAAuB;IA9BpB,sBAAsB;QAZlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;YAC9C,UAAU,EAAE;gBACV,MAAM;gBACN,SAAS;aACV;SACF,CAAC;QAEF;;WAEG;OACU,sBAAsB,CAyDlC;IAAD,6BAAC;CAAA,AAzDD,IAyDC;SAzDY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/facet-value.model.js b/src/app/+search-page/search-service/facet-value.model.js new file mode 100644 index 0000000000..282b1f6b8f --- /dev/null +++ b/src/app/+search-page/search-service/facet-value.model.js @@ -0,0 +1,28 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs } from 'cerialize'; +/** + * Class representing possible values for a certain filter + */ +var FacetValue = /** @class */ (function () { + function FacetValue() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], FacetValue.prototype, "label", void 0); + tslib_1.__decorate([ + autoserializeAs(String, 'label'), + tslib_1.__metadata("design:type", String) + ], FacetValue.prototype, "value", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], FacetValue.prototype, "count", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], FacetValue.prototype, "search", void 0); + return FacetValue; +}()); +export { FacetValue }; +//# sourceMappingURL=facet-value.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/facet-value.model.js.map b/src/app/+search-page/search-service/facet-value.model.js.map new file mode 100644 index 0000000000..0e7b9e7285 --- /dev/null +++ b/src/app/+search-page/search-service/facet-value.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"facet-value.model.js","sourceRoot":"","sources":["facet-value.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE3D;;GAEG;AACH;IAAA;IAwBA,CAAC;IAnBC;QADC,aAAa;;6CACA;IAMd;QADC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC;;6CACnB;IAMd;QADC,aAAa;;6CACA;IAMd;QADC,aAAa;;8CACC;IACjB,iBAAC;CAAA,AAxBD,IAwBC;SAxBY,UAAU"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/filter-type.model.js b/src/app/+search-page/search-service/filter-type.model.js new file mode 100644 index 0000000000..2f4007d130 --- /dev/null +++ b/src/app/+search-page/search-service/filter-type.model.js @@ -0,0 +1,27 @@ +/** + * Enumeration containing all possible types for filters + */ +export var FilterType; +(function (FilterType) { + /** + * Represents authority facets + */ + FilterType["authority"] = "authority"; + /** + * Represents simple text facets + */ + FilterType["text"] = "text"; + /** + * Represents date facets + */ + FilterType["range"] = "date"; + /** + * Represents hierarchically structured facets + */ + FilterType["hierarchy"] = "hierarchical"; + /** + * Represents binary facets + */ + FilterType["boolean"] = "standard"; +})(FilterType || (FilterType = {})); +//# sourceMappingURL=filter-type.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/filter-type.model.js.map b/src/app/+search-page/search-service/filter-type.model.js.map new file mode 100644 index 0000000000..0d78daf73d --- /dev/null +++ b/src/app/+search-page/search-service/filter-type.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"filter-type.model.js","sourceRoot":"","sources":["filter-type.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,UAyBX;AAzBD,WAAY,UAAU;IACpB;;OAEG;IACH,qCAAuB,CAAA;IAEvB;;OAEG;IACH,2BAAa,CAAA;IAEb;;OAEG;IACH,4BAAc,CAAA;IAEd;;OAEG;IACH,wCAA0B,CAAA;IAE1B;;OAEG;IACH,kCAAoB,CAAA;AACtB,CAAC,EAzBW,UAAU,KAAV,UAAU,QAyBrB"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-configuration.service.js b/src/app/+search-page/search-service/search-configuration.service.js new file mode 100644 index 0000000000..82d397801a --- /dev/null +++ b/src/app/+search-page/search-service/search-configuration.service.js @@ -0,0 +1,313 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { BehaviorSubject, combineLatest as observableCombineLatest, merge as observableMerge, of as observableOf } from 'rxjs'; +import { filter, flatMap, map } from 'rxjs/operators'; +import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; +import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; +import { PaginatedSearchOptions } from '../paginated-search-options.model'; +import { RouteService } from '../../shared/services/route.service'; +import { hasNoValue, hasValue, isNotEmpty, isNotEmptyOperator } from '../../shared/empty.util'; +import { RemoteData } from '../../core/data/remote-data'; +import { getSucceededRemoteData } from '../../core/shared/operators'; +import { SearchFilter } from '../search-filter.model'; +import { DSpaceObjectType } from '../../core/shared/dspace-object-type.model'; +import { SearchFixedFilterService } from '../search-filters/search-filter/search-fixed-filter.service'; +/** + * Service that performs all actions that have to do with the current search configuration + */ +var SearchConfigurationService = /** @class */ (function () { + /** + * Initialize the search options + * @param {RouteService} routeService + * @param {SearchFixedFilterService} fixedFilterService + * @param {ActivatedRoute} route + */ + function SearchConfigurationService(routeService, fixedFilterService, route) { + this.routeService = routeService; + this.fixedFilterService = fixedFilterService; + this.route = route; + /** + * Default pagination settings + */ + this.defaultPagination = Object.assign(new PaginationComponentOptions(), { + id: 'search-page-configuration', + pageSize: 10, + currentPage: 1 + }); + /** + * Default sort settings + */ + this.defaultSort = new SortOptions('score', SortDirection.DESC); + /** + * Default configuration parameter setting + */ + this.defaultConfiguration = 'default'; + /** + * Default scope setting + */ + this.defaultScope = ''; + /** + * Default query setting + */ + this.defaultQuery = ''; + /** + * List of subscriptions to unsubscribe from on destroy + */ + this.subs = new Array(); + this.initDefaults(); + } + /** + * Initialize the search options + */ + SearchConfigurationService.prototype.initDefaults = function () { + var _this = this; + this.defaults + .pipe(getSucceededRemoteData()) + .subscribe(function (defRD) { + var defs = defRD.payload; + _this.paginatedSearchOptions = new BehaviorSubject(defs); + _this.searchOptions = new BehaviorSubject(defs); + _this.subs.push(_this.subscribeToSearchOptions(defs)); + _this.subs.push(_this.subscribeToPaginatedSearchOptions(defs)); + }); + }; + /** + * @returns {Observable} Emits the current configuration string + */ + SearchConfigurationService.prototype.getCurrentConfiguration = function (defaultConfiguration) { + return this.routeService.getQueryParameterValue('configuration').pipe(map(function (configuration) { + return configuration || defaultConfiguration; + })); + }; + /** + * @returns {Observable} Emits the current scope's identifier + */ + SearchConfigurationService.prototype.getCurrentScope = function (defaultScope) { + return this.routeService.getQueryParameterValue('scope').pipe(map(function (scope) { + return scope || defaultScope; + })); + }; + /** + * @returns {Observable} Emits the current query string + */ + SearchConfigurationService.prototype.getCurrentQuery = function (defaultQuery) { + return this.routeService.getQueryParameterValue('query').pipe(map(function (query) { + return query || defaultQuery; + })); + }; + /** + * @returns {Observable} Emits the current DSpaceObject type as a number + */ + SearchConfigurationService.prototype.getCurrentDSOType = function () { + return this.routeService.getQueryParameterValue('dsoType').pipe(filter(function (type) { return isNotEmpty(type) && hasValue(DSpaceObjectType[type.toUpperCase()]); }), map(function (type) { return DSpaceObjectType[type.toUpperCase()]; })); + }; + /** + * @returns {Observable} Emits the current pagination settings + */ + SearchConfigurationService.prototype.getCurrentPagination = function (defaultPagination) { + var page$ = this.routeService.getQueryParameterValue('page'); + var size$ = this.routeService.getQueryParameterValue('pageSize'); + return observableCombineLatest(page$, size$).pipe(map(function (_a) { + var page = _a[0], size = _a[1]; + return Object.assign(new PaginationComponentOptions(), defaultPagination, { + currentPage: page || defaultPagination.currentPage, + pageSize: size || defaultPagination.pageSize + }); + })); + }; + /** + * @returns {Observable} Emits the current sorting settings + */ + SearchConfigurationService.prototype.getCurrentSort = function (defaultSort) { + var _this = this; + var sortDirection$ = this.routeService.getQueryParameterValue('sortDirection'); + var sortField$ = this.routeService.getQueryParameterValue('sortField'); + return observableCombineLatest(sortDirection$, sortField$).pipe(map(function (_a) { + var sortDirection = _a[0], sortField = _a[1]; + // Dirty fix because sometimes the observable value is null somehow + sortField = _this.route.snapshot.queryParamMap.get('sortField'); + var field = sortField || defaultSort.field; + var direction = SortDirection[sortDirection] || defaultSort.direction; + return new SortOptions(field, direction); + })); + }; + /** + * @returns {Observable} Emits the current active filters with their values as they are sent to the backend + */ + SearchConfigurationService.prototype.getCurrentFilters = function () { + return this.routeService.getQueryParamsWithPrefix('f.').pipe(map(function (filterParams) { + if (isNotEmpty(filterParams)) { + var filters_1 = []; + Object.keys(filterParams).forEach(function (key) { + if (key.endsWith('.min') || key.endsWith('.max')) { + var realKey_1 = key.slice(0, -4); + if (hasNoValue(filters_1.find(function (f) { return f.key === realKey_1; }))) { + var min = filterParams[realKey_1 + '.min'] ? filterParams[realKey_1 + '.min'][0] : '*'; + var max = filterParams[realKey_1 + '.max'] ? filterParams[realKey_1 + '.max'][0] : '*'; + filters_1.push(new SearchFilter(realKey_1, ['[' + min + ' TO ' + max + ']'])); + } + } + else { + filters_1.push(new SearchFilter(key, filterParams[key])); + } + }); + return filters_1; + } + return []; + })); + }; + /** + * @returns {Observable} Emits the current fixed filter as a string + */ + SearchConfigurationService.prototype.getCurrentFixedFilter = function () { + var _this = this; + return this.routeService.getRouteParameterValue('filter').pipe(flatMap(function (f) { return _this.fixedFilterService.getQueryByFilterName(f); })); + }; + /** + * @returns {Observable} Emits the current active filters with their values as they are displayed in the frontend URL + */ + SearchConfigurationService.prototype.getCurrentFrontendFilters = function () { + return this.routeService.getQueryParamsWithPrefix('f.'); + }; + /** + * Sets up a subscription to all necessary parameters to make sure the searchOptions emits a new value every time they update + * @param {SearchOptions} defaults Default values for when no parameters are available + * @returns {Subscription} The subscription to unsubscribe from + */ + SearchConfigurationService.prototype.subscribeToSearchOptions = function (defaults) { + var _this = this; + return observableMerge(this.getConfigurationPart(defaults.configuration), this.getScopePart(defaults.scope), this.getQueryPart(defaults.query), this.getDSOTypePart(), this.getFiltersPart(), this.getFixedFilterPart()).subscribe(function (update) { + var currentValue = _this.searchOptions.getValue(); + var updatedValue = Object.assign(currentValue, update); + _this.searchOptions.next(updatedValue); + }); + }; + /** + * Sets up a subscription to all necessary parameters to make sure the paginatedSearchOptions emits a new value every time they update + * @param {PaginatedSearchOptions} defaults Default values for when no parameters are available + * @returns {Subscription} The subscription to unsubscribe from + */ + SearchConfigurationService.prototype.subscribeToPaginatedSearchOptions = function (defaults) { + var _this = this; + return observableMerge(this.getPaginationPart(defaults.pagination), this.getSortPart(defaults.sort), this.getConfigurationPart(defaults.configuration), this.getScopePart(defaults.scope), this.getQueryPart(defaults.query), this.getDSOTypePart(), this.getFiltersPart(), this.getFixedFilterPart()).subscribe(function (update) { + var currentValue = _this.paginatedSearchOptions.getValue(); + var updatedValue = Object.assign(currentValue, update); + _this.paginatedSearchOptions.next(updatedValue); + }); + }; + Object.defineProperty(SearchConfigurationService.prototype, "defaults", { + /** + * Default values for the Search Options + */ + get: function () { + if (hasNoValue(this._defaults)) { + var options = new PaginatedSearchOptions({ + pagination: this.defaultPagination, + configuration: this.defaultConfiguration, + sort: this.defaultSort, + scope: this.defaultScope, + query: this.defaultQuery + }); + this._defaults = observableOf(new RemoteData(false, false, true, null, options)); + } + return this._defaults; + }, + enumerable: true, + configurable: true + }); + /** + * Make sure to unsubscribe from all existing subscription to prevent memory leaks + */ + SearchConfigurationService.prototype.ngOnDestroy = function () { + this.subs.forEach(function (sub) { + sub.unsubscribe(); + }); + this.subs = []; + }; + /** + * @returns {Observable} Emits the current configuration settings as a partial SearchOptions object + */ + SearchConfigurationService.prototype.getConfigurationPart = function (defaultConfiguration) { + return this.getCurrentConfiguration(defaultConfiguration).pipe(map(function (configuration) { + return { configuration: configuration }; + })); + }; + /** + * @returns {Observable} Emits the current scope's identifier + */ + SearchConfigurationService.prototype.getScopePart = function (defaultScope) { + return this.getCurrentScope(defaultScope).pipe(map(function (scope) { + return { scope: scope }; + })); + }; + /** + * @returns {Observable} Emits the current query string as a partial SearchOptions object + */ + SearchConfigurationService.prototype.getQueryPart = function (defaultQuery) { + return this.getCurrentQuery(defaultQuery).pipe(map(function (query) { + return { query: query }; + })); + }; + /** + * @returns {Observable} Emits the current query string as a partial SearchOptions object + */ + SearchConfigurationService.prototype.getDSOTypePart = function () { + return this.getCurrentDSOType().pipe(map(function (dsoType) { + return { dsoType: dsoType }; + })); + }; + /** + * @returns {Observable} Emits the current pagination settings as a partial SearchOptions object + */ + SearchConfigurationService.prototype.getPaginationPart = function (defaultPagination) { + return this.getCurrentPagination(defaultPagination).pipe(map(function (pagination) { + return { pagination: pagination }; + })); + }; + /** + * @returns {Observable} Emits the current sorting settings as a partial SearchOptions object + */ + SearchConfigurationService.prototype.getSortPart = function (defaultSort) { + return this.getCurrentSort(defaultSort).pipe(map(function (sort) { + return { sort: sort }; + })); + }; + /** + * @returns {Observable} Emits the current active filters as a partial SearchOptions object + */ + SearchConfigurationService.prototype.getFiltersPart = function () { + return this.getCurrentFilters().pipe(map(function (filters) { + return { filters: filters }; + })); + }; + /** + * @returns {Observable} Emits the current fixed filter as a partial SearchOptions object + */ + SearchConfigurationService.prototype.getFixedFilterPart = function () { + return this.getCurrentFixedFilter().pipe(isNotEmptyOperator(), map(function (fixedFilter) { + return { fixedFilter: fixedFilter }; + })); + }; + /** + * Update the fixed filter in paginated and non-paginated search options with a given value + * @param {string} fixedFilter + */ + SearchConfigurationService.prototype.updateFixedFilter = function (fixedFilter) { + var currentPaginatedValue = this.paginatedSearchOptions.getValue(); + var updatedPaginatedValue = Object.assign(currentPaginatedValue, { fixedFilter: fixedFilter }); + this.paginatedSearchOptions.next(updatedPaginatedValue); + var currentValue = this.searchOptions.getValue(); + var updatedValue = Object.assign(currentValue, { fixedFilter: fixedFilter }); + this.searchOptions.next(updatedValue); + }; + SearchConfigurationService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RouteService, + SearchFixedFilterService, + ActivatedRoute]) + ], SearchConfigurationService); + return SearchConfigurationService; +}()); +export { SearchConfigurationService }; +//# sourceMappingURL=search-configuration.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-configuration.service.js.map b/src/app/+search-page/search-service/search-configuration.service.js.map new file mode 100644 index 0000000000..588ab4b935 --- /dev/null +++ b/src/app/+search-page/search-service/search-configuration.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-configuration.service.js","sourceRoot":"","sources":["search-configuration.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-filter-config.model.js b/src/app/+search-page/search-service/search-filter-config.model.js new file mode 100644 index 0000000000..44fe2b8a48 --- /dev/null +++ b/src/app/+search-page/search-service/search-filter-config.model.js @@ -0,0 +1,56 @@ +import * as tslib_1 from "tslib"; +import { FilterType } from './filter-type.model'; +import { autoserialize, autoserializeAs } from 'cerialize'; +/** + * The configuration for a search filter + */ +var SearchFilterConfig = /** @class */ (function () { + function SearchFilterConfig() { + /** + * @type {number} The page size used for this facet + */ + this.pageSize = 5; + } + Object.defineProperty(SearchFilterConfig.prototype, "paramName", { + /** + * Name of this configuration that can be used in a url + * @returns Parameter name + */ + get: function () { + return 'f.' + this.name; + }, + enumerable: true, + configurable: true + }); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchFilterConfig.prototype, "name", void 0); + tslib_1.__decorate([ + autoserializeAs(String, 'facetType'), + tslib_1.__metadata("design:type", String) + ], SearchFilterConfig.prototype, "type", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], SearchFilterConfig.prototype, "hasFacets", void 0); + tslib_1.__decorate([ + autoserializeAs(String, 'facetLimit'), + tslib_1.__metadata("design:type", Object) + ], SearchFilterConfig.prototype, "pageSize", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], SearchFilterConfig.prototype, "isOpenByDefault", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchFilterConfig.prototype, "maxValue", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchFilterConfig.prototype, "minValue", void 0); + return SearchFilterConfig; +}()); +export { SearchFilterConfig }; +//# sourceMappingURL=search-filter-config.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-filter-config.model.js.map b/src/app/+search-page/search-service/search-filter-config.model.js.map new file mode 100644 index 0000000000..7831d132a2 --- /dev/null +++ b/src/app/+search-page/search-service/search-filter-config.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-filter-config.model.js","sourceRoot":"","sources":["search-filter-config.model.ts"],"names":[],"mappings":";AAAE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE3D;;GAEG;AACH;IAAA;QAoBE;;WAEG;QAEH,aAAQ,GAAG,CAAC,CAAC;IA2Bf,CAAC;IAHC,sBAAI,yCAAS;QAJb;;;WAGG;aACH;YACE,OAAO,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAC1B,CAAC;;;OAAA;IA5CD;QADC,aAAa;;oDACD;IAMb;QADC,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC;;oDACpB;IAMjB;QADC,aAAa;;yDACK;IAMnB;QADC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC;;wDACzB;IAMb;QADC,aAAa;;+DACW;IAMzB;QADC,aAAa;;wDACG;IAMjB;QADC,aAAa;;wDACG;IASnB,yBAAC;CAAA,AAnDD,IAmDC;SAnDY,kBAAkB"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-query-response.model.js b/src/app/+search-page/search-service/search-query-response.model.js new file mode 100644 index 0000000000..bde61becbc --- /dev/null +++ b/src/app/+search-page/search-service/search-query-response.model.js @@ -0,0 +1,70 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs } from 'cerialize'; +import { PageInfo } from '../../core/shared/page-info.model'; +import { NormalizedSearchResult } from '../normalized-search-result.model'; +/** + * Class representing the response returned by the server when performing a search request + */ +var SearchQueryResponse = /** @class */ (function () { + function SearchQueryResponse() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "scope", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "query", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Array) + ], SearchQueryResponse.prototype, "appliedFilters", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], SearchQueryResponse.prototype, "sort", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "configuration", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "type", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", PageInfo) + ], SearchQueryResponse.prototype, "page", void 0); + tslib_1.__decorate([ + autoserializeAs(NormalizedSearchResult), + tslib_1.__metadata("design:type", Array) + ], SearchQueryResponse.prototype, "objects", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], SearchQueryResponse.prototype, "facets", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "self", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "next", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "previous", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "first", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SearchQueryResponse.prototype, "last", void 0); + return SearchQueryResponse; +}()); +export { SearchQueryResponse }; +//# sourceMappingURL=search-query-response.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-query-response.model.js.map b/src/app/+search-page/search-service/search-query-response.model.js.map new file mode 100644 index 0000000000..d365b0de2c --- /dev/null +++ b/src/app/+search-page/search-service/search-query-response.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-query-response.model.js","sourceRoot":"","sources":["search-query-response.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E;;GAEG;AACH;IAAA;IAiFA,CAAC;IA5EC;QADC,aAAa;;sDACA;IAMd;QADC,aAAa;;sDACA;IAMd;QADC,aAAa;;+DACQ;IAMtB;QADC,aAAa;;qDACJ;IAMV;QADC,aAAa;;8DACQ;IAMtB;QADC,aAAa;;qDACM;IAMpB;QADC,aAAa;0CACR,QAAQ;qDAAC;IAMf;QADC,eAAe,CAAC,sBAAsB,CAAC;;wDACN;IAGlC;QADC,aAAa;;uDACF;IAMZ;QADC,aAAa;;qDACD;IAMb;QADC,aAAa;;qDACD;IAMb;QADC,aAAa;;yDACG;IAMjB;QADC,aAAa;;sDACA;IAMd;QADC,aAAa;;qDACD;IACf,0BAAC;CAAA,AAjFD,IAiFC;SAjFY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-result-element-decorator.js b/src/app/+search-page/search-service/search-result-element-decorator.js new file mode 100644 index 0000000000..aeadebaea2 --- /dev/null +++ b/src/app/+search-page/search-service/search-result-element-decorator.js @@ -0,0 +1,42 @@ +import { isNull } from '../../shared/empty.util'; +/** + * Contains the mapping between a search result component and a DSpaceObject + */ +var searchResultMap = new Map(); +/** + * Used to map Search Result components to their matching DSpaceObject + * @param {GenericConstructor} domainConstructor The constructor of the DSpaceObject + * @returns Decorator function that performs the actual mapping on initialization of the component + */ +export function searchResultFor(domainConstructor, configuration) { + if (configuration === void 0) { configuration = null; } + return function decorator(searchResult) { + if (!searchResult) { + return; + } + if (isNull(configuration)) { + searchResultMap.set(domainConstructor, searchResult); + } + else { + if (!searchResultMap.get(configuration)) { + searchResultMap.set(configuration, new Map()); + } + searchResultMap.get(configuration).set(domainConstructor, searchResult); + } + }; +} +/** + * Requests the matching component based on a given DSpaceObject's constructor + * @param {GenericConstructor} domainConstructor The DSpaceObject's constructor for which the search result component is requested + * @returns The component's constructor that matches the given DSpaceObject + */ +export function getSearchResultFor(domainConstructor, configuration) { + if (configuration === void 0) { configuration = null; } + if (isNull(configuration) || configuration === 'default') { + return searchResultMap.get(domainConstructor); + } + else { + return searchResultMap.get(configuration).get(domainConstructor); + } +} +//# sourceMappingURL=search-result-element-decorator.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-result-element-decorator.js.map b/src/app/+search-page/search-service/search-result-element-decorator.js.map new file mode 100644 index 0000000000..f9f3969332 --- /dev/null +++ b/src/app/+search-page/search-service/search-result-element-decorator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-result-element-decorator.js","sourceRoot":"","sources":["search-result-element-decorator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD;;GAEG;AACH,IAAM,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;AAElC;;;;GAIG;AACH,MAAM,0BAA0B,iBAAqD,EAAE,aAA4B;IAA5B,8BAAA,EAAA,oBAA4B;IACjH,OAAO,mBAAmB,YAAiB;QACzC,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO;SACR;QACD,IAAI,MAAM,CAAC,aAAa,CAAC,EAAE;YACzB,eAAe,CAAC,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;SACtD;aAAM;YACL,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;gBACvC,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;aAC/C;YACD,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;SACzE;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,6BAA6B,iBAAqD,EAAE,aAA4B;IAA5B,8BAAA,EAAA,oBAA4B;IACpH,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,KAAK,SAAS,EAAE;QACxD,OAAO,eAAe,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;KAC/C;SAAM;QACL,OAAO,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;KAClE;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search.service.js b/src/app/+search-page/search-service/search.service.js new file mode 100644 index 0000000000..972f0a466e --- /dev/null +++ b/src/app/+search-page/search-service/search.service.js @@ -0,0 +1,279 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest, of as observableOf } from 'rxjs'; +import { Injectable } from '@angular/core'; +import { Router } from '@angular/router'; +import { first, map, switchMap } from 'rxjs/operators'; +import { RemoteDataBuildService } from '../../core/cache/builders/remote-data-build.service'; +import { PaginatedList } from '../../core/data/paginated-list'; +import { GetRequest } from '../../core/data/request.models'; +import { RequestService } from '../../core/data/request.service'; +import { DSpaceObject } from '../../core/shared/dspace-object.model'; +import { HALEndpointService } from '../../core/shared/hal-endpoint.service'; +import { configureRequest, filterSuccessfulResponses, getResponseFromEntry, getSucceededRemoteData } from '../../core/shared/operators'; +import { URLCombiner } from '../../core/url-combiner/url-combiner'; +import { hasValue, isEmpty, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; +import { SearchFilterConfig } from './search-filter-config.model'; +import { SearchResponseParsingService } from '../../core/data/search-response-parsing.service'; +import { getSearchResultFor } from './search-result-element-decorator'; +import { FacetValueResponseParsingService } from '../../core/data/facet-value-response-parsing.service'; +import { FacetConfigResponseParsingService } from '../../core/data/facet-config-response-parsing.service'; +import { CommunityDataService } from '../../core/data/community-data.service'; +import { ViewMode } from '../../core/shared/view-mode.model'; +import { ResourceType } from '../../core/shared/resource-type'; +import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.service'; +import { RouteService } from '../../shared/services/route.service'; +/** + * Service that performs all general actions that have to do with the search page + */ +var SearchService = /** @class */ (function () { + function SearchService(router, routeService, requestService, rdb, halService, communityService, dspaceObjectService) { + this.router = router; + this.routeService = routeService; + this.requestService = requestService; + this.rdb = rdb; + this.halService = halService; + this.communityService = communityService; + this.dspaceObjectService = dspaceObjectService; + /** + * Endpoint link path for retrieving general search results + */ + this.searchLinkPath = 'discover/search/objects'; + /** + * Endpoint link path for retrieving facet config incl values + */ + this.facetLinkPathPrefix = 'discover/facets/'; + /** + * The ResponseParsingService constructor name + */ + this.parser = SearchResponseParsingService; + /** + * The RestRequest constructor name + */ + this.request = GetRequest; + } + /** + * Method to set service options + * @param {GenericConstructor} parser The ResponseParsingService constructor name + * @param {boolean} request The RestRequest constructor name + */ + SearchService.prototype.setServiceOptions = function (parser, request) { + if (parser) { + this.parser = parser; + } + if (request) { + this.request = request; + } + }; + /** + * Method to retrieve a paginated list of search results from the server + * @param {PaginatedSearchOptions} searchOptions The configuration necessary to perform this search + * @returns {Observable>>>} Emits a paginated list with all search results found + */ + SearchService.prototype.search = function (searchOptions) { + var _this = this; + var requestObs = this.halService.getEndpoint(this.searchLinkPath).pipe(map(function (url) { + if (hasValue(searchOptions)) { + url = searchOptions.toRestUrl(url); + } + var request = new _this.request(_this.requestService.generateRequestId(), url); + var getResponseParserFn = function () { + return _this.parser; + }; + return Object.assign(request, { + getResponseParser: getResponseParserFn + }); + }), configureRequest(this.requestService)); + var requestEntryObs = requestObs.pipe(switchMap(function (request) { return _this.requestService.getByHref(request.href); })); + // get search results from response cache + var sqrObs = requestEntryObs.pipe(filterSuccessfulResponses(), map(function (response) { return response.results; })); + // turn dspace href from search results to effective list of DSpaceObjects + // Turn list of observable remote data DSO's into observable remote data object with list of DSO + var dsoObs = sqrObs.pipe(map(function (sqr) { + return sqr.objects + .filter(function (nsr) { return isNotUndefined(nsr.indexableObject); }) + .map(function (nsr) { + return _this.rdb.buildSingle(nsr.indexableObject); + }); + }), switchMap(function (input) { return _this.rdb.aggregate(input); })); + // Create search results again with the correct dso objects linked to each result + var tDomainListObs = observableCombineLatest(sqrObs, dsoObs).pipe(map(function (_a) { + var sqr = _a[0], dsos = _a[1]; + return sqr.objects.map(function (object, index) { + var co = DSpaceObject; + if (dsos.payload[index]) { + var constructor = dsos.payload[index].constructor; + co = getSearchResultFor(constructor, searchOptions.configuration); + return Object.assign(new co(), object, { + indexableObject: dsos.payload[index] + }); + } + else { + return undefined; + } + }); + })); + var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); + var payloadObs = observableCombineLatest(tDomainListObs, pageInfoObs).pipe(map(function (_a) { + var tDomainList = _a[0], pageInfo = _a[1]; + return new PaginatedList(pageInfo, tDomainList); + })); + return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); + }; + /** + * Request the filter configuration for a given scope or the whole repository + * @param {string} scope UUID of the object for which config the filter config is requested, when no scope is provided the configuration for the whole repository is loaded + * @param {string} configurationName the name of the configuration + * @returns {Observable>} The found filter configuration + */ + SearchService.prototype.getConfig = function (scope, configurationName) { + var _this = this; + var requestObs = this.halService.getEndpoint(this.facetLinkPathPrefix).pipe(map(function (url) { + var args = []; + if (isNotEmpty(scope)) { + args.push("scope=" + scope); + } + if (isNotEmpty(configurationName)) { + args.push("configuration=" + configurationName); + } + if (isNotEmpty(args)) { + url = new URLCombiner(url, "?" + args.join('&')).toString(); + } + var request = new _this.request(_this.requestService.generateRequestId(), url); + return Object.assign(request, { + getResponseParser: function () { + return FacetConfigResponseParsingService; + } + }); + }), configureRequest(this.requestService)); + var requestEntryObs = requestObs.pipe(switchMap(function (request) { return _this.requestService.getByHref(request.href); })); + // get search results from response cache + var facetConfigObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { + return response.results.map(function (result) { return Object.assign(new SearchFilterConfig(), result); }); + })); + return this.rdb.toRemoteDataObservable(requestEntryObs, facetConfigObs); + }; + /** + * Method to request a single page of filter values for a given value + * @param {SearchFilterConfig} filterConfig The filter config for which we want to request filter values + * @param {number} valuePage The page number of the filter values + * @param {SearchOptions} searchOptions The search configuration for the current search + * @param {string} filterQuery The optional query used to filter out filter values + * @returns {Observable>>} Emits the given page of facet values + */ + SearchService.prototype.getFacetValuesFor = function (filterConfig, valuePage, searchOptions, filterQuery) { + var _this = this; + var requestObs = this.halService.getEndpoint(this.facetLinkPathPrefix + filterConfig.name).pipe(map(function (url) { + var args = ["page=" + (valuePage - 1), "size=" + filterConfig.pageSize]; + if (hasValue(filterQuery)) { + args.push("prefix=" + filterQuery); + } + if (hasValue(searchOptions)) { + url = searchOptions.toRestUrl(url, args); + } + var request = new _this.request(_this.requestService.generateRequestId(), url); + return Object.assign(request, { + getResponseParser: function () { + return FacetValueResponseParsingService; + } + }); + }), configureRequest(this.requestService), first()); + var requestEntryObs = requestObs.pipe(switchMap(function (request) { return _this.requestService.getByHref(request.href); })); + // get search results from response cache + var facetValueObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.results; })); + var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); + var payloadObs = observableCombineLatest(facetValueObs, pageInfoObs).pipe(map(function (_a) { + var facetValue = _a[0], pageInfo = _a[1]; + return new PaginatedList(pageInfo, facetValue); + })); + return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); + }; + /** + * Request a list of DSpaceObjects that can be used as a scope, based on the current scope + * @param {string} scopeId UUID of the current scope, if the scope is empty, the repository wide scopes will be returned + * @returns {Observable} Emits a list of DSpaceObjects which represent possible scopes + */ + SearchService.prototype.getScopes = function (scopeId) { + if (isEmpty(scopeId)) { + var top_1 = this.communityService.findTop({ elementsPerPage: 9999 }).pipe(map(function (communities) { return communities.payload.page; })); + return top_1; + } + var scopeObject = this.dspaceObjectService.findById(scopeId).pipe(getSucceededRemoteData()); + var scopeList = scopeObject.pipe(switchMap(function (dsoRD) { + if (dsoRD.payload.type === ResourceType.Community) { + var community_1 = dsoRD.payload; + return observableCombineLatest(community_1.subcommunities, community_1.collections).pipe(map(function (_a) { + var subCommunities = _a[0], collections = _a[1]; + /*if this is a community, we also need to show the direct children*/ + return [community_1].concat(subCommunities.payload.page, collections.payload.page); + })); + } + else { + return observableOf([dsoRD.payload]); + } + })); + return scopeList; + }; + /** + * Requests the current view mode based on the current URL + * @returns {Observable} The current view mode + */ + SearchService.prototype.getViewMode = function () { + return this.routeService.getQueryParamMap().pipe(map(function (params) { + if (isNotEmpty(params.get('view')) && hasValue(params.get('view'))) { + return params.get('view'); + } + else { + return ViewMode.List; + } + })); + }; + /** + * Changes the current view mode in the current URL + * @param {ViewMode} viewMode Mode to switch to + */ + SearchService.prototype.setViewMode = function (viewMode, searchLinkParts) { + var _this = this; + this.routeService.getQueryParameterValue('pageSize').pipe(first()) + .subscribe(function (pageSize) { + var queryParams = { view: viewMode, page: 1 }; + if (viewMode === ViewMode.Detail) { + queryParams = Object.assign(queryParams, { pageSize: '1' }); + } + else if (pageSize === '1') { + queryParams = Object.assign(queryParams, { pageSize: '10' }); + } + var navigationExtras = { + queryParams: queryParams, + queryParamsHandling: 'merge' + }; + _this.router.navigate(hasValue(searchLinkParts) ? searchLinkParts : [_this.getSearchLink()], navigationExtras); + }); + }; + /** + * @returns {string} The base path to the search page + */ + SearchService.prototype.getSearchLink = function () { + return '/search'; + }; + /** + * Unsubscribe from the subscription + */ + SearchService.prototype.ngOnDestroy = function () { + if (this.sub !== undefined) { + this.sub.unsubscribe(); + } + }; + SearchService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Router, + RouteService, + RequestService, + RemoteDataBuildService, + HALEndpointService, + CommunityDataService, + DSpaceObjectDataService]) + ], SearchService); + return SearchService; +}()); +export { SearchService }; +//# sourceMappingURL=search.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search.service.js.map b/src/app/+search-page/search-service/search.service.js.map new file mode 100644 index 0000000000..a264603707 --- /dev/null +++ b/src/app/+search-page/search-service/search.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search.service.js","sourceRoot":"","sources":["search.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAChG,OAAO,EAAE,UAAU,EAAa,MAAM,eAAe,CAAC;AACtD,OAAO,EAAoC,MAAM,EAAmB,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAM7F,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAAE,UAAU,EAAe,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAErE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAKxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAG/F,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AACxG,OAAO,EAAE,iCAAiC,EAAE,MAAM,uDAAuD,CAAC;AAG1G,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE;;GAEG;AAEH;IA0BE,uBAAoB,MAAc,EACd,YAA0B,EACxB,cAA8B,EAChC,GAA2B,EAC3B,UAA8B,EAC9B,gBAAsC,EACtC,mBAA4C;QAN5C,WAAM,GAAN,MAAM,CAAQ;QACd,iBAAY,GAAZ,YAAY,CAAc;QACxB,mBAAc,GAAd,cAAc,CAAgB;QAChC,QAAG,GAAH,GAAG,CAAwB;QAC3B,eAAU,GAAV,UAAU,CAAoB;QAC9B,qBAAgB,GAAhB,gBAAgB,CAAsB;QACtC,wBAAmB,GAAnB,mBAAmB,CAAyB;QA/BhE;;WAEG;QACK,mBAAc,GAAG,yBAAyB,CAAC;QAEnD;;WAEG;QACK,wBAAmB,GAAG,kBAAkB,CAAC;QAEjD;;WAEG;QACK,WAAM,GAA+C,4BAA4B,CAAC;QAE1F;;WAEG;QACK,YAAO,GAAoC,UAAU,CAAC;IAe9D,CAAC;IAED;;;;OAIG;IACH,yCAAiB,GAAjB,UAAkB,MAAkD,EAAE,OAAwC;QAC5G,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;SACtB;QACD,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;SACxB;IACH,CAAC;IAED;;;;OAIG;IACH,8BAAM,GAAN,UAAO,aAAsC;QAA7C,iBAuEC;QAtEC,IAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CACtE,GAAG,CAAC,UAAC,GAAW;YACd,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE;gBAC3B,GAAG,GAAI,aAAwC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aAChE;YACD,IAAM,OAAO,GAAG,IAAI,KAAI,CAAC,OAAO,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;YAE/E,IAAM,mBAAmB,GAAqD;gBAC5E,OAAO,KAAI,CAAC,MAAM,CAAC;YACrB,CAAC,CAAC;YAEF,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;gBAC5B,iBAAiB,EAAE,mBAAmB;aACvC,CAAC,CAAC;QACL,CAAC,CAAC,EACF,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CACtC,CAAC;QACF,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,SAAS,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,CACjF,CAAC;QAEF,yCAAyC;QACzC,IAAM,MAAM,GAAoC,eAAe,CAAC,IAAI,CAClE,yBAAyB,EAAE,EAC3B,GAAG,CAAC,UAAC,QAA+B,IAAK,OAAA,QAAQ,CAAC,OAAO,EAAhB,CAAgB,CAAC,CAC3D,CAAC;QAEF,0EAA0E;QAC1E,gGAAgG;QAChG,IAAM,MAAM,GAA2C,MAAM,CAAC,IAAI,CAChE,GAAG,CAAC,UAAC,GAAwB;YAC3B,OAAO,GAAG,CAAC,OAAO;iBACf,MAAM,CAAC,UAAC,GAA2B,IAAK,OAAA,cAAc,CAAC,GAAG,CAAC,eAAe,CAAC,EAAnC,CAAmC,CAAC;iBAC5E,GAAG,CAAC,UAAC,GAA2B;gBACjC,OAAO,KAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACnD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,EACF,SAAS,CAAC,UAAC,KAAkD,IAAK,OAAA,KAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAzB,CAAyB,CAAC,CAC7F,CAAC;QAEF,iFAAiF;QACjF,IAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CACjE,GAAG,CAAC,UAAC,EAAW;gBAAV,WAAG,EAAE,YAAI;YACb,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,MAA8B,EAAE,KAAa;gBACnE,IAAI,EAAE,GAAG,YAAY,CAAC;gBACtB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACvB,IAAM,WAAW,GAAuC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAiD,CAAC;oBAC9H,EAAE,GAAG,kBAAkB,CAAC,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;oBAClE,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE;wBACrC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;qBACrC,CAAC,CAAC;iBACJ;qBAAM;oBACL,OAAO,SAAS,CAAC;iBAClB;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CACH,CAAC;QAEF,IAAM,WAAW,GAAyB,eAAe,CAAC,IAAI,CAC5D,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAmC,IAAK,OAAA,QAAQ,CAAC,QAAQ,EAAjB,CAAiB,CAAC,CAChE,CAAC;QAEF,IAAM,UAAU,GAAG,uBAAuB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC,IAAI,CAC1E,GAAG,CAAC,UAAC,EAAuB;gBAAtB,mBAAW,EAAE,gBAAQ;YACzB,OAAO,IAAI,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAClD,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACH,iCAAS,GAAT,UAAU,KAAc,EAAE,iBAA0B;QAApD,iBAuCC;QAtCC,IAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAC3E,GAAG,CAAC,UAAC,GAAW;YACd,IAAM,IAAI,GAAa,EAAE,CAAC;YAE1B,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;gBACrB,IAAI,CAAC,IAAI,CAAC,WAAS,KAAO,CAAC,CAAC;aAC7B;YAED,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE;gBACjC,IAAI,CAAC,IAAI,CAAC,mBAAiB,iBAAmB,CAAC,CAAC;aACjD;YAED,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpB,GAAG,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,MAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;aAC7D;YAED,IAAM,OAAO,GAAG,IAAI,KAAI,CAAC,OAAO,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC/E,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;gBAC5B,iBAAiB,EAAjB;oBACE,OAAO,iCAAiC,CAAC;gBAC3C,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,EACF,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CACtC,CAAC;QAEF,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,SAAS,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,CACjF,CAAC;QAEF,yCAAyC;QACzC,IAAM,cAAc,GAAqC,eAAe,CAAC,IAAI,CAC3E,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAoC;YACvC,OAAA,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,MAAW,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,IAAI,kBAAkB,EAAE,EAAE,MAAM,CAAC,EAA/C,CAA+C,CAAC;QAAtF,CAAsF,CAAC,CAC1F,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;;;OAOG;IACH,yCAAiB,GAAjB,UAAkB,YAAgC,EAAE,SAAiB,EAAE,aAA6B,EAAE,WAAoB;QAA1H,iBA4CC;QA3CC,IAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAC/F,GAAG,CAAC,UAAC,GAAW;YACd,IAAM,IAAI,GAAa,CAAC,WAAQ,SAAS,GAAG,CAAC,CAAE,EAAE,UAAQ,YAAY,CAAC,QAAU,CAAC,CAAC;YAClF,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE;gBACzB,IAAI,CAAC,IAAI,CAAC,YAAU,WAAa,CAAC,CAAC;aACpC;YACD,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE;gBAC3B,GAAG,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aAC1C;YAED,IAAM,OAAO,GAAG,IAAI,KAAI,CAAC,OAAO,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC/E,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;gBAC5B,iBAAiB,EAAjB;oBACE,OAAO,gCAAgC,CAAC;gBAC1C,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,EACF,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,EACrC,KAAK,EAAE,CACR,CAAC;QAEF,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,SAAS,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,CACjF,CAAC;QAEF,yCAAyC;QACzC,IAAM,aAAa,GAA6B,eAAe,CAAC,IAAI,CAClE,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAmC,IAAK,OAAA,QAAQ,CAAC,OAAO,EAAhB,CAAgB,CAAC,CAC/D,CAAC;QAEF,IAAM,WAAW,GAAyB,eAAe,CAAC,IAAI,CAC5D,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAmC,IAAK,OAAA,QAAQ,CAAC,QAAQ,EAAjB,CAAiB,CAAC,CAChE,CAAC;QAEF,IAAM,UAAU,GAAG,uBAAuB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,IAAI,CACzE,GAAG,CAAC,UAAC,EAAsB;gBAArB,kBAAU,EAAE,gBAAQ;YACxB,OAAO,IAAI,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QACjD,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAED;;;;OAIG;IACH,iCAAS,GAAT,UAAU,OAAgB;QAExB,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YACpB,IAAM,KAAG,GAA4B,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAChG,GAAG,CACD,UAAC,WAAiD,IAAK,OAAA,WAAW,CAAC,OAAO,CAAC,IAAI,EAAxB,CAAwB,CAChF,CACF,CAAC;YACF,OAAO,KAAG,CAAC;SACZ;QAED,IAAM,WAAW,GAAyC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;QACpI,IAAM,SAAS,GAA+B,WAAW,CAAC,IAAI,CAC5D,SAAS,CAAC,UAAC,KAA+B;YACtC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,CAAC,SAAS,EAAE;gBACjD,IAAM,WAAS,GAAc,KAAK,CAAC,OAAoB,CAAC;gBACxD,OAAO,uBAAuB,CAAC,WAAS,CAAC,cAAc,EAAE,WAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAClF,GAAG,CAAC,UAAC,EAA6B;wBAA5B,sBAAc,EAAE,mBAAW;oBAC/B,oEAAoE;oBACpE,QAAQ,WAAS,SAAK,cAAc,CAAC,OAAO,CAAC,IAAI,EAAK,WAAW,CAAC,OAAO,CAAC,IAAI,EAAC;gBACjF,CAAC,CAAC,CACH,CAAC;aACH;iBAAM;gBACL,OAAO,YAAY,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;aACtC;QACH,CAAC,CACF,CAAC,CAAC;QAEL,OAAO,SAAS,CAAC;IAEnB,CAAC;IAED;;;OAGG;IACH,mCAAW,GAAX;QACE,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,MAAM;YAC1D,IAAI,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE;gBAClE,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;aAC3B;iBAAM;gBACL,OAAO,QAAQ,CAAC,IAAI,CAAC;aACtB;QACH,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;;OAGG;IACH,mCAAW,GAAX,UAAY,QAAkB,EAAE,eAA0B;QAA1D,iBAgBC;QAfC,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;aAC/D,SAAS,CAAC,UAAC,QAAQ;YAClB,IAAI,WAAW,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC9C,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,EAAE;gBAChC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAC,QAAQ,EAAE,GAAG,EAAC,CAAC,CAAC;aAC3D;iBAAM,IAAI,QAAQ,KAAK,GAAG,EAAE;gBAC3B,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;aAC5D;YACD,IAAM,gBAAgB,GAAqB;gBACzC,WAAW,EAAE,WAAW;gBACxB,mBAAmB,EAAE,OAAO;aAC7B,CAAC;YAEF,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,KAAI,CAAC,aAAa,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAC/G,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;OAEG;IACH,qCAAa,GAAb;QACE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,mCAAW,GAAX;QACE,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE;YAC1B,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IA5TU,aAAa;QADzB,UAAU,EAAE;iDA2BiB,MAAM;YACA,YAAY;YACR,cAAc;YAC3B,sBAAsB;YACf,kBAAkB;YACZ,oBAAoB;YACjB,uBAAuB;OAhCrD,aAAa,CA6TzB;IAAD,oBAAC;CAAA,AA7TD,IA6TC;SA7TY,aAAa"} \ No newline at end of file diff --git a/src/app/+search-page/search-settings/search-settings.component.js b/src/app/+search-page/search-settings/search-settings.component.js new file mode 100644 index 0000000000..4569822552 --- /dev/null +++ b/src/app/+search-page/search-settings/search-settings.component.js @@ -0,0 +1,97 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Input } from '@angular/core'; +import { SearchService } from '../search-service/search.service'; +import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; +import { ActivatedRoute, Router } from '@angular/router'; +import { SearchConfigurationService } from '../search-service/search-configuration.service'; +import { SEARCH_CONFIG_SERVICE } from '../../+my-dspace-page/my-dspace-page.component'; +var SearchSettingsComponent = /** @class */ (function () { + function SearchSettingsComponent(service, route, router, searchConfigurationService) { + this.service = service; + this.route = route; + this.router = router; + this.searchConfigurationService = searchConfigurationService; + /** + * All sort options that are shown in the settings + */ + this.searchOptionPossibilities = [new SortOptions('score', SortDirection.DESC), new SortOptions('dc.title', SortDirection.ASC), new SortOptions('dc.title', SortDirection.DESC)]; + } + /** + * Initialize paginated search options + */ + SearchSettingsComponent.prototype.ngOnInit = function () { + this.searchOptions$ = this.searchConfigurationService.paginatedSearchOptions; + }; + /** + * Method to change the current page size (results per page) + * @param {Event} event Change event containing the new page size value + */ + SearchSettingsComponent.prototype.reloadRPP = function (event) { + var value = event.target.value; + var navigationExtras = { + queryParams: { + pageSize: value, + page: 1 + }, + queryParamsHandling: 'merge' + }; + this.router.navigate(this.getSearchLinkParts(), navigationExtras); + }; + /** + * Method to change the current sort field and direction + * @param {Event} event Change event containing the sort direction and sort field + */ + SearchSettingsComponent.prototype.reloadOrder = function (event) { + var values = event.target.value.split(','); + var navigationExtras = { + queryParams: { + sortDirection: values[1], + sortField: values[0], + page: 1 + }, + queryParamsHandling: 'merge' + }; + this.router.navigate(this.getSearchLinkParts(), navigationExtras); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchSettingsComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.service.getSearchLink(); + }; + /** + * @returns {string[]} The base path to the search page, or the current page when inPlaceSearch is true, split in separate pieces + */ + SearchSettingsComponent.prototype.getSearchLinkParts = function () { + if (this.service) { + return []; + } + return this.getSearchLink().split('/'); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchSettingsComponent.prototype, "inPlaceSearch", void 0); + SearchSettingsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-settings', + styleUrls: ['./search-settings.component.scss'], + templateUrl: './search-settings.component.html' + }) + /** + * This component represents the part of the search sidebar that contains the general search settings. + */ + , + tslib_1.__param(3, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__metadata("design:paramtypes", [SearchService, + ActivatedRoute, + Router, + SearchConfigurationService]) + ], SearchSettingsComponent); + return SearchSettingsComponent; +}()); +export { SearchSettingsComponent }; +//# sourceMappingURL=search-settings.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-settings/search-settings.component.js.map b/src/app/+search-page/search-settings/search-settings.component.js.map new file mode 100644 index 0000000000..17ea1709c3 --- /dev/null +++ b/src/app/+search-page/search-settings/search-settings.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-settings.component.js","sourceRoot":"","sources":["search-settings.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.actions.js b/src/app/+search-page/search-sidebar/search-sidebar.actions.js new file mode 100644 index 0000000000..0d9d950384 --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.actions.js @@ -0,0 +1,46 @@ +import { type } from '../../shared/ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var SearchSidebarActionTypes = { + COLLAPSE: type('dspace/search-sidebar/COLLAPSE'), + EXPAND: type('dspace/search-sidebar/EXPAND'), + TOGGLE: type('dspace/search-sidebar/TOGGLE') +}; +/* tslint:disable:max-classes-per-file */ +/** + * Used to collapse the sidebar + */ +var SearchSidebarCollapseAction = /** @class */ (function () { + function SearchSidebarCollapseAction() { + this.type = SearchSidebarActionTypes.COLLAPSE; + } + return SearchSidebarCollapseAction; +}()); +export { SearchSidebarCollapseAction }; +/** + * Used to expand the sidebar + */ +var SearchSidebarExpandAction = /** @class */ (function () { + function SearchSidebarExpandAction() { + this.type = SearchSidebarActionTypes.EXPAND; + } + return SearchSidebarExpandAction; +}()); +export { SearchSidebarExpandAction }; +/** + * Used to collapse the sidebar when it's expanded and expand it when it's collapsed + */ +var SearchSidebarToggleAction = /** @class */ (function () { + function SearchSidebarToggleAction() { + this.type = SearchSidebarActionTypes.TOGGLE; + } + return SearchSidebarToggleAction; +}()); +export { SearchSidebarToggleAction }; +//# sourceMappingURL=search-sidebar.actions.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.actions.js.map b/src/app/+search-page/search-sidebar/search-sidebar.actions.js.map new file mode 100644 index 0000000000..4cb6a1db1a --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-sidebar.actions.js","sourceRoot":"","sources":["search-sidebar.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,wBAAwB,GAAG;IACtC,QAAQ,EAAE,IAAI,CAAC,gCAAgC,CAAC;IAChD,MAAM,EAAE,IAAI,CAAC,8BAA8B,CAAC;IAC5C,MAAM,EAAE,IAAI,CAAC,8BAA8B,CAAC;CAC7C,CAAC;AAEF,yCAAyC;AACzC;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,wBAAwB,CAAC,QAAQ,CAAC;IAC3C,CAAC;IAAD,kCAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,wBAAwB,CAAC,MAAM,CAAC;IACzC,CAAC;IAAD,gCAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,wBAAwB,CAAC,MAAM,CAAC;IACzC,CAAC;IAAD,gCAAC;AAAD,CAAC,AAFD,IAEC"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.js b/src/app/+search-page/search-sidebar/search-sidebar.component.js new file mode 100644 index 0000000000..669647c3aa --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.component.js @@ -0,0 +1,48 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ +var SearchSidebarComponent = /** @class */ (function () { + function SearchSidebarComponent() { + /** + * Emits event when the user clicks a button to open or close the sidebar + */ + this.toggleSidebar = new EventEmitter(); + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], SearchSidebarComponent.prototype, "configurationList", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchSidebarComponent.prototype, "resultCount", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchSidebarComponent.prototype, "viewModeList", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchSidebarComponent.prototype, "inPlaceSearch", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], SearchSidebarComponent.prototype, "toggleSidebar", void 0); + SearchSidebarComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-sidebar', + styleUrls: ['./search-sidebar.component.scss'], + templateUrl: './search-sidebar.component.html', + }) + /** + * Component representing the sidebar on the search page + */ + ], SearchSidebarComponent); + return SearchSidebarComponent; +}()); +export { SearchSidebarComponent }; +//# sourceMappingURL=search-sidebar.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.js.map b/src/app/+search-page/search-sidebar/search-sidebar.component.js.map new file mode 100644 index 0000000000..8582442a2b --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-sidebar.component.js","sourceRoot":"","sources":["search-sidebar.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAIvE;;;;GAIG;AAWH;IATA;QA+BE;;WAEG;QACO,kBAAa,GAAG,IAAI,YAAY,EAAW,CAAC;IAExD,CAAC;IAtBU;QAAR,KAAK,EAAE;;qEAAgD;IAK/C;QAAR,KAAK,EAAE;;+DAAa;IAKZ;QAAR,KAAK,EAAE;;gEAAc;IAKb;QAAR,KAAK,EAAE;;iEAAe;IAKb;QAAT,MAAM,EAAE;;iEAA6C;IAzB3C,sBAAsB;QATlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QAEF;;WAEG;OACU,sBAAsB,CA2BlC;IAAD,6BAAC;CAAA,AA3BD,IA2BC;SA3BY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.effects.js b/src/app/+search-page/search-sidebar/search-sidebar.effects.js new file mode 100644 index 0000000000..8f788ba393 --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.effects.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { map, tap, filter } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { Effect, Actions, ofType } from '@ngrx/effects'; +import * as fromRouter from '@ngrx/router-store'; +import { SearchSidebarCollapseAction } from './search-sidebar.actions'; +import { URLBaser } from '../../core/url-baser/url-baser'; +/** + * Makes sure that if the user navigates to another route, the sidebar is collapsed + */ +var SearchSidebarEffects = /** @class */ (function () { + function SearchSidebarEffects(actions$) { + var _this = this; + this.actions$ = actions$; + this.routeChange$ = this.actions$ + .pipe(ofType(fromRouter.ROUTER_NAVIGATION), filter(function (action) { return _this.previousPath !== _this.getBaseUrl(action); }), tap(function (action) { + _this.previousPath = _this.getBaseUrl(action); + }), map(function () { return new SearchSidebarCollapseAction(); })); + } + SearchSidebarEffects.prototype.getBaseUrl = function (action) { + /* tslint:disable:no-string-literal */ + var url = action['payload'].routerState.url; + return new URLBaser(url).toString(); + /* tslint:enable:no-string-literal */ + }; + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SearchSidebarEffects.prototype, "routeChange$", void 0); + SearchSidebarEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions]) + ], SearchSidebarEffects); + return SearchSidebarEffects; +}()); +export { SearchSidebarEffects }; +//# sourceMappingURL=search-sidebar.effects.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.effects.js.map b/src/app/+search-page/search-sidebar/search-sidebar.effects.js.map new file mode 100644 index 0000000000..3d714074ee --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-sidebar.effects.js","sourceRoot":"","sources":["search-sidebar.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE1D;;GAEG;AAEH;IAYE,8BAAoB,QAAiB;QAArC,iBAEC;QAFmB,aAAQ,GAAR,QAAQ,CAAS;QAV3B,iBAAY,GAAG,IAAI,CAAC,QAAQ;aACnC,IAAI,CACH,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,EACpC,MAAM,CAAC,UAAC,MAAM,IAAK,OAAA,KAAI,CAAC,YAAY,KAAK,KAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAA7C,CAA6C,CAAC,EACjE,GAAG,CAAC,UAAC,MAAM;YACT,KAAI,CAAC,YAAY,GAAG,KAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC7C,CAAC,CAAC,EACF,GAAG,CAAC,cAAM,OAAA,IAAI,2BAA2B,EAAE,EAAjC,CAAiC,CAAC,CAC7C,CAAC;IAIJ,CAAC;IAED,yCAAU,GAAV,UAAW,MAAW;QACpB,sCAAsC;QACtC,IAAM,GAAG,GAAW,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC;QACtD,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QACpC,qCAAqC;IACvC,CAAC;IAnBS;QAAT,MAAM,EAAE;;8DAQL;IAVO,oBAAoB;QADhC,UAAU,EAAE;iDAamB,OAAO;OAZ1B,oBAAoB,CAuBhC;IAAD,2BAAC;CAAA,AAvBD,IAuBC;SAvBY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.reducer.js b/src/app/+search-page/search-sidebar/search-sidebar.reducer.js new file mode 100644 index 0000000000..8ac297eafb --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.reducer.js @@ -0,0 +1,34 @@ +import { SearchSidebarActionTypes } from './search-sidebar.actions'; +var initialState = { + sidebarCollapsed: true +}; +/** + * Performs a search sidebar action on the current state + * @param {SearchSidebarState} state The state before the action is performed + * @param {SearchSidebarAction} action The action that should be performed + * @returns {SearchSidebarState} The state after the action is performed + */ +export function sidebarReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case SearchSidebarActionTypes.COLLAPSE: { + return Object.assign({}, state, { + sidebarCollapsed: true + }); + } + case SearchSidebarActionTypes.EXPAND: { + return Object.assign({}, state, { + sidebarCollapsed: false + }); + } + case SearchSidebarActionTypes.TOGGLE: { + return Object.assign({}, state, { + sidebarCollapsed: !state.sidebarCollapsed + }); + } + default: { + return state; + } + } +} +//# sourceMappingURL=search-sidebar.reducer.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.reducer.js.map b/src/app/+search-page/search-sidebar/search-sidebar.reducer.js.map new file mode 100644 index 0000000000..f75abc15de --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-sidebar.reducer.js","sourceRoot":"","sources":["search-sidebar.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AASzF,IAAM,YAAY,GAAuB;IACvC,gBAAgB,EAAE,IAAI;CACvB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,yBAAyB,KAAoB,EAAE,MAA2B;IAAjD,sBAAA,EAAA,oBAAoB;IACjD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,wBAAwB,CAAC,QAAQ,CAAC,CAAC;YACtC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAC;SACJ;QAED,KAAK,wBAAwB,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,gBAAgB,EAAE,KAAK;aACxB,CAAC,CAAC;SAEJ;QAED,KAAK,wBAAwB,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,gBAAgB,EAAE,CAAC,KAAK,CAAC,gBAAgB;aAC1C,CAAC,CAAC;SAEJ;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.service.js b/src/app/+search-page/search-sidebar/search-sidebar.service.js new file mode 100644 index 0000000000..fc4c506fd5 --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.service.js @@ -0,0 +1,53 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { Injectable } from '@angular/core'; +import { createSelector, select, Store } from '@ngrx/store'; +import { SearchSidebarCollapseAction, SearchSidebarExpandAction } from './search-sidebar.actions'; +import { HostWindowService } from '../../shared/host-window.service'; +import { map } from 'rxjs/operators'; +var sidebarStateSelector = function (state) { return state.searchSidebar; }; +var sidebarCollapsedSelector = createSelector(sidebarStateSelector, function (sidebar) { return sidebar.sidebarCollapsed; }); +/** + * Service that performs all actions that have to do with the search sidebar + */ +var SearchSidebarService = /** @class */ (function () { + function SearchSidebarService(store, windowService) { + this.store = store; + this.windowService = windowService; + this.isXsOrSm$ = this.windowService.isXsOrSm(); + this.isCollapsedInStore = this.store.pipe(select(sidebarCollapsedSelector)); + } + Object.defineProperty(SearchSidebarService.prototype, "isCollapsed", { + /** + * Checks if the sidebar should currently be collapsed + * @returns {Observable} Emits true if the user's screen size is mobile or when the state in the store is currently collapsed + */ + get: function () { + return observableCombineLatest(this.isXsOrSm$, this.isCollapsedInStore).pipe(map(function (_a) { + var mobile = _a[0], store = _a[1]; + return mobile ? store : true; + })); + }, + enumerable: true, + configurable: true + }); + /** + * Dispatches a collapse action to the store + */ + SearchSidebarService.prototype.collapse = function () { + this.store.dispatch(new SearchSidebarCollapseAction()); + }; + /** + * Dispatches an expand action to the store + */ + SearchSidebarService.prototype.expand = function () { + this.store.dispatch(new SearchSidebarExpandAction()); + }; + SearchSidebarService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store, HostWindowService]) + ], SearchSidebarService); + return SearchSidebarService; +}()); +export { SearchSidebarService }; +//# sourceMappingURL=search-sidebar.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.service.js.map b/src/app/+search-page/search-sidebar/search-sidebar.service.js.map new file mode 100644 index 0000000000..fd0635dd46 --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-sidebar.service.js","sourceRoot":"","sources":["search-sidebar.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,MAAM,MAAM,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAElG,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,IAAM,oBAAoB,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,aAAa,EAAnB,CAAmB,CAAC;AACtE,IAAM,wBAAwB,GAAG,cAAc,CAAC,oBAAoB,EAAE,UAAC,OAA2B,IAAK,OAAA,OAAO,CAAC,gBAAgB,EAAxB,CAAwB,CAAC,CAAC;AAEjI;;GAEG;AAEH;IAWE,8BAAoB,KAAsB,EAAU,aAAgC;QAAhE,UAAK,GAAL,KAAK,CAAiB;QAAU,kBAAa,GAAb,aAAa,CAAmB;QAClF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC/C,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAC9E,CAAC;IAMD,sBAAI,6CAAW;QAJf;;;WAGG;aACH;YACE,OAAO,uBAAuB,CAC5B,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,kBAAkB,CACxB,CAAC,IAAI,CACJ,GAAG,CAAC,UAAC,EAAe;oBAAd,cAAM,EAAE,aAAK;gBAAM,OAAA,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YAArB,CAAqB,CAAC,CAChD,CAAC;QACJ,CAAC;;;OAAA;IAED;;OAEG;IACI,uCAAQ,GAAf;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,2BAA2B,EAAE,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACI,qCAAM,GAAb;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,yBAAyB,EAAE,CAAC,CAAC;IACvD,CAAC;IAzCU,oBAAoB;QADhC,UAAU,EAAE;iDAYgB,KAAK,EAAmC,iBAAiB;OAXzE,oBAAoB,CA0ChC;IAAD,2BAAC;CAAA,AA1CD,IA0CC;SA1CY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js b/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js new file mode 100644 index 0000000000..9866eff61c --- /dev/null +++ b/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=search-configuration-option.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js.map b/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js.map new file mode 100644 index 0000000000..bba49d72a6 --- /dev/null +++ b/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-configuration-option.model.js","sourceRoot":"","sources":["search-configuration-option.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js b/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js new file mode 100644 index 0000000000..84dfd0c960 --- /dev/null +++ b/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js @@ -0,0 +1,74 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { hasValue } from '../../shared/empty.util'; +import { SEARCH_CONFIG_SERVICE } from '../../+my-dspace-page/my-dspace-page.component'; +import { SearchConfigurationService } from '../search-service/search-configuration.service'; +import { SearchService } from '../search-service/search.service'; +var SearchSwitchConfigurationComponent = /** @class */ (function () { + function SearchSwitchConfigurationComponent(router, searchService, searchConfigService) { + this.router = router; + this.searchService = searchService; + this.searchConfigService = searchConfigService; + /** + * The list of available configuration options + */ + this.configurationList = []; + } + /** + * Init current configuration + */ + SearchSwitchConfigurationComponent.prototype.ngOnInit = function () { + var _this = this; + this.searchConfigService.getCurrentConfiguration('default') + .subscribe(function (currentConfiguration) { return _this.selectedOption = currentConfiguration; }); + }; + /** + * Init current configuration + */ + SearchSwitchConfigurationComponent.prototype.onSelect = function () { + var navigationExtras = { + queryParams: { configuration: this.selectedOption }, + }; + this.router.navigate([this.searchService.getSearchLink()], navigationExtras); + }; + /** + * Define the select 'compareWith' method to tell Angular how to compare the values + * + * @param item1 + * @param item2 + */ + SearchSwitchConfigurationComponent.prototype.compare = function (item1, item2) { + return item1 === item2; + }; + /** + * Make sure the subscription is unsubscribed from when this component is destroyed + */ + SearchSwitchConfigurationComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], SearchSwitchConfigurationComponent.prototype, "configurationList", void 0); + SearchSwitchConfigurationComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-switch-configuration', + styleUrls: ['./search-switch-configuration.component.scss'], + templateUrl: './search-switch-configuration.component.html', + }) + /** + * Represents a select that allow to switch over available search configurations + */ + , + tslib_1.__param(2, Inject(SEARCH_CONFIG_SERVICE)), + tslib_1.__metadata("design:paramtypes", [Router, + SearchService, + SearchConfigurationService]) + ], SearchSwitchConfigurationComponent); + return SearchSwitchConfigurationComponent; +}()); +export { SearchSwitchConfigurationComponent }; +//# sourceMappingURL=search-switch-configuration.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js.map b/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js.map new file mode 100644 index 0000000000..7fe1fa3af7 --- /dev/null +++ b/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-switch-configuration.component.js","sourceRoot":"","sources":["search-switch-configuration.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAoB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAI3D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAG5F,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAUjE;IAiBE,4CAAoB,MAAc,EACd,aAA4B,EACG,mBAA+C;QAF9E,WAAM,GAAN,MAAM,CAAQ;QACd,kBAAa,GAAb,aAAa,CAAe;QACG,wBAAmB,GAAnB,mBAAmB,CAA4B;QAjBlG;;WAEG;QACM,sBAAiB,GAAgC,EAAE,CAAC;IAe7D,CAAC;IAED;;OAEG;IACH,qDAAQ,GAAR;QAAA,iBAGC;QAFC,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,SAAS,CAAC;aACxD,SAAS,CAAC,UAAC,oBAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,GAAG,oBAAoB,EAA1C,CAA0C,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACH,qDAAQ,GAAR;QACE,IAAM,gBAAgB,GAAqB;YACzC,WAAW,EAAE,EAAC,aAAa,EAAE,IAAI,CAAC,cAAc,EAAC;SAClD,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACH,oDAAO,GAAP,UAAQ,KAAqC,EAAE,KAAqC;QAClF,OAAO,KAAK,KAAK,KAAK,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,wDAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IArDQ;QAAR,KAAK,EAAE;;iFAAqD;IALlD,kCAAkC;QAR9C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAC,8CAA8C,CAAC;YAC3D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;QACF;;WAEG;;QAoBY,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDAFd,MAAM;YACC,aAAa;YACwB,0BAA0B;OAnBvF,kCAAkC,CA2D9C;IAAD,yCAAC;CAAA,AA3DD,IA2DC;SA3DY,kCAAkC"} \ No newline at end of file diff --git a/src/app/+submit-page/submit-page-routing.module.js b/src/app/+submit-page/submit-page-routing.module.js new file mode 100644 index 0000000000..8f11bedf79 --- /dev/null +++ b/src/app/+submit-page/submit-page-routing.module.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; +import { SubmissionSubmitComponent } from '../submission/submit/submission-submit.component'; +var SubmitPageRoutingModule = /** @class */ (function () { + /** + * This module defines the default component to load when navigating to the submit page path. + */ + function SubmitPageRoutingModule() { + } + SubmitPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { + canActivate: [AuthenticatedGuard], + path: '', + pathMatch: 'full', + component: SubmissionSubmitComponent, + data: { title: 'submission.submit.title' } + } + ]) + ] + }) + /** + * This module defines the default component to load when navigating to the submit page path. + */ + ], SubmitPageRoutingModule); + return SubmitPageRoutingModule; +}()); +export { SubmitPageRoutingModule }; +//# sourceMappingURL=submit-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+submit-page/submit-page-routing.module.js.map b/src/app/+submit-page/submit-page-routing.module.js.map new file mode 100644 index 0000000000..227670133b --- /dev/null +++ b/src/app/+submit-page/submit-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submit-page-routing.module.js","sourceRoot":"","sources":["submit-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kDAAkD,CAAC;AAkB7F;IAHA;;OAEG;IACH;IAAuC,CAAC;IAA3B,uBAAuB;QAhBnC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,IAAI,EAAE,EAAE;wBACR,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,yBAAyB;wBACpC,IAAI,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE;qBAC3C;iBACF,CAAC;aACH;SACF,CAAC;QACF;;WAEG;OACU,uBAAuB,CAAI;IAAD,8BAAC;CAAA,AAAxC,IAAwC;SAA3B,uBAAuB"} \ No newline at end of file diff --git a/src/app/+submit-page/submit-page.module.js b/src/app/+submit-page/submit-page.module.js new file mode 100644 index 0000000000..8ed8939182 --- /dev/null +++ b/src/app/+submit-page/submit-page.module.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { SharedModule } from '../shared/shared.module'; +import { SubmitPageRoutingModule } from './submit-page-routing.module'; +import { SubmissionModule } from '../submission/submission.module'; +var SubmitPageModule = /** @class */ (function () { + /** + * This module handles all modules that need to access the submit page. + */ + function SubmitPageModule() { + } + SubmitPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + SubmitPageRoutingModule, + CommonModule, + SharedModule, + SubmissionModule, + ], + }) + /** + * This module handles all modules that need to access the submit page. + */ + ], SubmitPageModule); + return SubmitPageModule; +}()); +export { SubmitPageModule }; +//# sourceMappingURL=submit-page.module.js.map \ No newline at end of file diff --git a/src/app/+submit-page/submit-page.module.js.map b/src/app/+submit-page/submit-page.module.js.map new file mode 100644 index 0000000000..e686e4169e --- /dev/null +++ b/src/app/+submit-page/submit-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submit-page.module.js","sourceRoot":"","sources":["submit-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAanE;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,gBAAgB;QAX5B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,uBAAuB;gBACvB,YAAY;gBACZ,YAAY;gBACZ,gBAAgB;aACjB;SACF,CAAC;QACF;;WAEG;OACU,gBAAgB,CAE5B;IAAD,uBAAC;CAAA,AAFD,IAEC;SAFY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js b/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js new file mode 100644 index 0000000000..0b22883628 --- /dev/null +++ b/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; +import { SubmissionEditComponent } from '../submission/edit/submission-edit.component'; +var WorkflowitemsEditPageRoutingModule = /** @class */ (function () { + /** + * This module defines the default component to load when navigating to the workflowitems edit page path. + */ + function WorkflowitemsEditPageRoutingModule() { + } + WorkflowitemsEditPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { path: '', redirectTo: '/home', pathMatch: 'full' }, + { + canActivate: [AuthenticatedGuard], + path: ':id/edit', + component: SubmissionEditComponent, + data: { title: 'submission.edit.title' } + } + ]) + ] + }) + /** + * This module defines the default component to load when navigating to the workflowitems edit page path. + */ + ], WorkflowitemsEditPageRoutingModule); + return WorkflowitemsEditPageRoutingModule; +}()); +export { WorkflowitemsEditPageRoutingModule }; +//# sourceMappingURL=workflowitems-edit-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js.map b/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js.map new file mode 100644 index 0000000000..2304b1f2cc --- /dev/null +++ b/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workflowitems-edit-page-routing.module.js","sourceRoot":"","sources":["workflowitems-edit-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAkBvF;IAHA;;OAEG;IACH;IAAkD,CAAC;IAAtC,kCAAkC;QAhB9C,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;oBACpD;wBACE,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,uBAAuB;wBAClC,IAAI,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE;qBACzC;iBACF,CAAC;aACH;SACF,CAAC;QACF;;WAEG;OACU,kCAAkC,CAAI;IAAD,yCAAC;CAAA,AAAnD,IAAmD;SAAtC,kCAAkC"} \ No newline at end of file diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js b/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js new file mode 100644 index 0000000000..68112b1cc0 --- /dev/null +++ b/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { SharedModule } from '../shared/shared.module'; +import { WorkflowitemsEditPageRoutingModule } from './workflowitems-edit-page-routing.module'; +import { SubmissionModule } from '../submission/submission.module'; +var WorkflowitemsEditPageModule = /** @class */ (function () { + /** + * This module handles all modules that need to access the workflowitems edit page. + */ + function WorkflowitemsEditPageModule() { + } + WorkflowitemsEditPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + WorkflowitemsEditPageRoutingModule, + CommonModule, + SharedModule, + SubmissionModule, + ], + declarations: [] + }) + /** + * This module handles all modules that need to access the workflowitems edit page. + */ + ], WorkflowitemsEditPageModule); + return WorkflowitemsEditPageModule; +}()); +export { WorkflowitemsEditPageModule }; +//# sourceMappingURL=workflowitems-edit-page.module.js.map \ No newline at end of file diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js.map b/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js.map new file mode 100644 index 0000000000..7e5bddcf4c --- /dev/null +++ b/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workflowitems-edit-page.module.js","sourceRoot":"","sources":["workflowitems-edit-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAcnE;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,2BAA2B;QAZvC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,kCAAkC;gBAClC,YAAY;gBACZ,YAAY;gBACZ,gBAAgB;aACjB;YACD,YAAY,EAAE,EAAE;SACjB,CAAC;QACF;;WAEG;OACU,2BAA2B,CAEvC;IAAD,kCAAC;CAAA,AAFD,IAEC;SAFY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js new file mode 100644 index 0000000000..a6a04a9a5d --- /dev/null +++ b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; +import { SubmissionEditComponent } from '../submission/edit/submission-edit.component'; +var WorkspaceitemsEditPageRoutingModule = /** @class */ (function () { + /** + * This module defines the default component to load when navigating to the workspaceitems edit page path + */ + function WorkspaceitemsEditPageRoutingModule() { + } + WorkspaceitemsEditPageRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forChild([ + { path: '', redirectTo: '/home', pathMatch: 'full' }, + { + canActivate: [AuthenticatedGuard], + path: ':id/edit', + component: SubmissionEditComponent, + data: { title: 'submission.edit.title' } + } + ]) + ] + }) + /** + * This module defines the default component to load when navigating to the workspaceitems edit page path + */ + ], WorkspaceitemsEditPageRoutingModule); + return WorkspaceitemsEditPageRoutingModule; +}()); +export { WorkspaceitemsEditPageRoutingModule }; +//# sourceMappingURL=workspaceitems-edit-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js.map b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js.map new file mode 100644 index 0000000000..378ddd7a97 --- /dev/null +++ b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitems-edit-page-routing.module.js","sourceRoot":"","sources":["workspaceitems-edit-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAkBvF;IAHA;;OAEG;IACH;IAAmD,CAAC;IAAvC,mCAAmC;QAhB/C,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;oBACpD;wBACE,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,uBAAuB;wBAClC,IAAI,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE;qBACzC;iBACF,CAAC;aACH;SACF,CAAC;QACF;;WAEG;OACU,mCAAmC,CAAI;IAAD,0CAAC;CAAA,AAApD,IAAoD;SAAvC,mCAAmC"} \ No newline at end of file diff --git a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js new file mode 100644 index 0000000000..13cafca2c9 --- /dev/null +++ b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { SharedModule } from '../shared/shared.module'; +import { WorkspaceitemsEditPageRoutingModule } from './workspaceitems-edit-page-routing.module'; +import { SubmissionModule } from '../submission/submission.module'; +var WorkspaceitemsEditPageModule = /** @class */ (function () { + /** + * This module handles all modules that need to access the workspaceitems edit page. + */ + function WorkspaceitemsEditPageModule() { + } + WorkspaceitemsEditPageModule = tslib_1.__decorate([ + NgModule({ + imports: [ + WorkspaceitemsEditPageRoutingModule, + CommonModule, + SharedModule, + SubmissionModule, + ], + declarations: [] + }) + /** + * This module handles all modules that need to access the workspaceitems edit page. + */ + ], WorkspaceitemsEditPageModule); + return WorkspaceitemsEditPageModule; +}()); +export { WorkspaceitemsEditPageModule }; +//# sourceMappingURL=workspaceitems-edit-page.module.js.map \ No newline at end of file diff --git a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js.map b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js.map new file mode 100644 index 0000000000..192b392b9f --- /dev/null +++ b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitems-edit-page.module.js","sourceRoot":"","sources":["workspaceitems-edit-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAcnE;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,4BAA4B;QAZxC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,mCAAmC;gBACnC,YAAY;gBACZ,YAAY;gBACZ,gBAAgB;aACjB;YACD,YAAY,EAAE,EAAE;SACjB,CAAC;QACF;;WAEG;OACU,4BAA4B,CAExC;IAAD,mCAAC;CAAA,AAFD,IAEC;SAFY,4BAA4B"} \ No newline at end of file diff --git a/src/app/app-routing.module.js b/src/app/app-routing.module.js new file mode 100644 index 0000000000..76fc1d5f7d --- /dev/null +++ b/src/app/app-routing.module.js @@ -0,0 +1,48 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { RouterModule } from '@angular/router'; +import { PageNotFoundComponent } from './pagenotfound/pagenotfound.component'; +import { AuthenticatedGuard } from './core/auth/authenticated.guard'; +var ITEM_MODULE_PATH = 'items'; +export function getItemModulePath() { + return "/" + ITEM_MODULE_PATH; +} +var COLLECTION_MODULE_PATH = 'collections'; +export function getCollectionModulePath() { + return "/" + COLLECTION_MODULE_PATH; +} +var COMMUNITY_MODULE_PATH = 'communities'; +export function getCommunityModulePath() { + return "/" + COMMUNITY_MODULE_PATH; +} +var AppRoutingModule = /** @class */ (function () { + function AppRoutingModule() { + } + AppRoutingModule = tslib_1.__decorate([ + NgModule({ + imports: [ + RouterModule.forRoot([ + { path: '', redirectTo: '/home', pathMatch: 'full' }, + { path: 'home', loadChildren: './+home-page/home-page.module#HomePageModule' }, + { path: COMMUNITY_MODULE_PATH, loadChildren: './+community-page/community-page.module#CommunityPageModule' }, + { path: COLLECTION_MODULE_PATH, loadChildren: './+collection-page/collection-page.module#CollectionPageModule' }, + { path: ITEM_MODULE_PATH, loadChildren: './+item-page/item-page.module#ItemPageModule' }, + { path: 'mydspace', loadChildren: './+my-dspace-page/my-dspace-page.module#MyDSpacePageModule', canActivate: [AuthenticatedGuard] }, + { path: 'search', loadChildren: './+search-page/search-page.module#SearchPageModule' }, + { path: 'browse', loadChildren: './+browse-by/browse-by.module#BrowseByModule' }, + { path: 'admin', loadChildren: './+admin/admin.module#AdminModule', canActivate: [AuthenticatedGuard] }, + { path: 'login', loadChildren: './+login-page/login-page.module#LoginPageModule' }, + { path: 'logout', loadChildren: './+logout-page/logout-page.module#LogoutPageModule' }, + { path: 'submit', loadChildren: './+submit-page/submit-page.module#SubmitPageModule' }, + { path: 'workspaceitems', loadChildren: './+workspaceitems-edit-page/workspaceitems-edit-page.module#WorkspaceitemsEditPageModule' }, + { path: 'workflowitems', loadChildren: './+workflowitems-edit-page/workflowitems-edit-page.module#WorkflowitemsEditPageModule' }, + { path: '**', pathMatch: 'full', component: PageNotFoundComponent }, + ]) + ], + exports: [RouterModule] + }) + ], AppRoutingModule); + return AppRoutingModule; +}()); +export { AppRoutingModule }; +//# sourceMappingURL=app-routing.module.js.map \ No newline at end of file diff --git a/src/app/app-routing.module.js.map b/src/app/app-routing.module.js.map new file mode 100644 index 0000000000..35290f0a06 --- /dev/null +++ b/src/app/app-routing.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app-routing.module.js","sourceRoot":"","sources":["app-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,IAAM,gBAAgB,GAAG,OAAO,CAAC;AACjC,MAAM;IACJ,OAAO,MAAI,gBAAkB,CAAC;AAChC,CAAC;AACD,IAAM,sBAAsB,GAAG,aAAa,CAAC;AAC7C,MAAM;IACJ,OAAO,MAAI,sBAAwB,CAAC;AACtC,CAAC;AACD,IAAM,qBAAqB,GAAG,aAAa,CAAC;AAC5C,MAAM;IACJ,OAAO,MAAI,qBAAuB,CAAC;AACrC,CAAC;AAuBD;IAAA;IAEA,CAAC;IAFY,gBAAgB;QAtB5B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,OAAO,CAAC;oBACnB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;oBACpD,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,8CAA8C,EAAE;oBAC9E,EAAE,IAAI,EAAE,qBAAqB,EAAE,YAAY,EAAE,6DAA6D,EAAE;oBAC5G,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,gEAAgE,EAAE;oBAChH,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,8CAA8C,EAAE;oBACxF,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,4DAA4D,EAAE,WAAW,EAAE,CAAC,kBAAkB,CAAC,EAAE;oBACnI,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,oDAAoD,EAAE;oBACtF,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,8CAA8C,EAAE;oBAChF,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,mCAAmC,EAAE,WAAW,EAAE,CAAC,kBAAkB,CAAC,EAAE;oBACvG,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,iDAAiD,EAAE;oBAClF,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,oDAAoD,EAAE;oBACtF,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,oDAAoD,EAAE;oBACtF,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,0FAA0F,EAAE;oBACpI,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,uFAAuF,EAAE;oBAChI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,qBAAqB,EAAE;iBACpE,CAAC;aACH;YACD,OAAO,EAAE,CAAC,YAAY,CAAC;SACxB,CAAC;OACW,gBAAgB,CAE5B;IAAD,uBAAC;CAAA,AAFD,IAEC;SAFY,gBAAgB"} \ No newline at end of file diff --git a/src/app/app.component.js b/src/app/app.component.js new file mode 100644 index 0000000000..6c9ccae304 --- /dev/null +++ b/src/app/app.component.js @@ -0,0 +1,131 @@ +import * as tslib_1 from "tslib"; +import { filter, map, take } from 'rxjs/operators'; +import { ChangeDetectionStrategy, Component, HostListener, Inject, ViewEncapsulation } from '@angular/core'; +import { NavigationCancel, NavigationEnd, NavigationStart, Router } from '@angular/router'; +import { select, Store } from '@ngrx/store'; +import { TranslateService } from '@ngx-translate/core'; +import { GLOBAL_CONFIG } from '../config'; +import { MetadataService } from './core/metadata/metadata.service'; +import { HostWindowResizeAction } from './shared/host-window.actions'; +import { NativeWindowRef, NativeWindowService } from './shared/services/window.service'; +import { isAuthenticated } from './core/auth/selectors'; +import { AuthService } from './core/auth/auth.service'; +import { Angulartics2GoogleAnalytics } from 'angulartics2/ga'; +import { RouteService } from './shared/services/route.service'; +import variables from '../styles/_exposed_variables.scss'; +import { CSSVariableService } from './shared/sass-helper/sass-helper.service'; +import { MenuService } from './shared/menu/menu.service'; +import { MenuID } from './shared/menu/initial-menus-state'; +import { slideSidebarPadding } from './shared/animations/slide'; +import { combineLatest as combineLatestObservable } from 'rxjs'; +import { HostWindowService } from './shared/host-window.service'; +var AppComponent = /** @class */ (function () { + function AppComponent(config, _window, translate, store, metadata, angulartics2GoogleAnalytics, authService, router, routeService, cssService, menuService, windowService) { + this.config = config; + this._window = _window; + this.translate = translate; + this.store = store; + this.metadata = metadata; + this.angulartics2GoogleAnalytics = angulartics2GoogleAnalytics; + this.authService = authService; + this.router = router; + this.routeService = routeService; + this.cssService = cssService; + this.menuService = menuService; + this.windowService = windowService; + this.isLoading = true; + // Load all the languages that are defined as active from the config file + translate.addLangs(config.languages.filter(function (LangConfig) { return LangConfig.active === true; }).map(function (a) { return a.code; })); + // Load the default language from the config file + translate.setDefaultLang(config.defaultLanguage); + // Attempt to get the browser language from the user + if (translate.getLangs().includes(translate.getBrowserLang())) { + translate.use(translate.getBrowserLang()); + } + else { + translate.use(config.defaultLanguage); + } + metadata.listenForRouteChange(); + routeService.saveRouting(); + if (config.debug) { + console.info(config); + } + this.storeCSSVariables(); + } + AppComponent.prototype.ngOnInit = function () { + var _this = this; + var env = this.config.production ? 'Production' : 'Development'; + var color = this.config.production ? 'red' : 'green'; + console.info("Environment: %c" + env, "color: " + color + "; font-weight: bold;"); + this.dispatchWindowSize(this._window.nativeWindow.innerWidth, this._window.nativeWindow.innerHeight); + // Whether is not authenticathed try to retrieve a possible stored auth token + this.store.pipe(select(isAuthenticated), take(1), filter(function (authenticated) { return !authenticated; })).subscribe(function (authenticated) { return _this.authService.checkAuthenticationToken(); }); + this.sidebarVisible = this.menuService.isMenuVisible(MenuID.ADMIN); + this.collapsedSidebarWidth = this.cssService.getVariable('collapsedSidebarWidth'); + this.totalSidebarWidth = this.cssService.getVariable('totalSidebarWidth'); + var sidebarCollapsed = this.menuService.isMenuCollapsed(MenuID.ADMIN); + this.slideSidebarOver = combineLatestObservable(sidebarCollapsed, this.windowService.isXsOrSm()) + .pipe(map(function (_a) { + var collapsed = _a[0], mobile = _a[1]; + return collapsed || mobile; + })); + }; + AppComponent.prototype.storeCSSVariables = function () { + var _this = this; + var vars = variables.locals || {}; + Object.keys(vars).forEach(function (name) { + _this.cssService.addCSSVariable(name, vars[name]); + }); + }; + AppComponent.prototype.ngAfterViewInit = function () { + var _this = this; + this.router.events + .subscribe(function (event) { + if (event instanceof NavigationStart) { + _this.isLoading = true; + } + else if (event instanceof NavigationEnd || + event instanceof NavigationCancel) { + _this.isLoading = false; + } + }); + }; + AppComponent.prototype.onResize = function (event) { + this.dispatchWindowSize(event.target.innerWidth, event.target.innerHeight); + }; + AppComponent.prototype.dispatchWindowSize = function (width, height) { + this.store.dispatch(new HostWindowResizeAction(width, height)); + }; + tslib_1.__decorate([ + HostListener('window:resize', ['$event']), + tslib_1.__metadata("design:type", Function), + tslib_1.__metadata("design:paramtypes", [Object]), + tslib_1.__metadata("design:returntype", void 0) + ], AppComponent.prototype, "onResize", null); + AppComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-app', + templateUrl: './app.component.html', + styleUrls: ['./app.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, + encapsulation: ViewEncapsulation.None, + animations: [slideSidebarPadding] + }), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__param(1, Inject(NativeWindowService)), + tslib_1.__metadata("design:paramtypes", [Object, NativeWindowRef, + TranslateService, + Store, + MetadataService, + Angulartics2GoogleAnalytics, + AuthService, + Router, + RouteService, + CSSVariableService, + MenuService, + HostWindowService]) + ], AppComponent); + return AppComponent; +}()); +export { AppComponent }; +//# sourceMappingURL=app.component.js.map \ No newline at end of file diff --git a/src/app/app.component.js.map b/src/app/app.component.js.map new file mode 100644 index 0000000000..a358d006a6 --- /dev/null +++ b/src/app/app.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app.component.js","sourceRoot":"","sources":["app.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/app.effects.js b/src/app/app.effects.js new file mode 100644 index 0000000000..479b5f3a0d --- /dev/null +++ b/src/app/app.effects.js @@ -0,0 +1,9 @@ +import { StoreEffects } from './store.effects'; +import { NotificationsEffects } from './shared/notifications/notifications.effects'; +import { NavbarEffects } from './navbar/navbar.effects'; +export var appEffects = [ + StoreEffects, + NavbarEffects, + NotificationsEffects, +]; +//# sourceMappingURL=app.effects.js.map \ No newline at end of file diff --git a/src/app/app.effects.js.map b/src/app/app.effects.js.map new file mode 100644 index 0000000000..9ef8d3dea5 --- /dev/null +++ b/src/app/app.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app.effects.js","sourceRoot":"","sources":["app.effects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,MAAM,CAAC,IAAM,UAAU,GAAG;IACxB,YAAY;IACZ,aAAa;IACb,oBAAoB;CACrB,CAAC"} \ No newline at end of file diff --git a/src/app/app.metareducers.js b/src/app/app.metareducers.js new file mode 100644 index 0000000000..2d6e982204 --- /dev/null +++ b/src/app/app.metareducers.js @@ -0,0 +1,33 @@ +import { StoreActionTypes } from './store.actions'; +// fallback ngrx debugger +var actionCounter = 0; +export function debugMetaReducer(reducer) { + return function (state, action) { + actionCounter++; + console.log('@ngrx action', actionCounter, action.type); + console.log('state', JSON.stringify(state)); + console.log('action', JSON.stringify(action)); + console.log('------------------------------------'); + return reducer(state, action); + }; +} +export function universalMetaReducer(reducer) { + return function (state, action) { + switch (action.type) { + case StoreActionTypes.REHYDRATE: + state = Object.assign({}, state, action.payload); + break; + case StoreActionTypes.REPLAY: + default: + break; + } + return reducer(state, action); + }; +} +export var debugMetaReducers = [ + debugMetaReducer +]; +export var appMetaReducers = [ + universalMetaReducer +]; +//# sourceMappingURL=app.metareducers.js.map \ No newline at end of file diff --git a/src/app/app.metareducers.js.map b/src/app/app.metareducers.js.map new file mode 100644 index 0000000000..a40db6d9d1 --- /dev/null +++ b/src/app/app.metareducers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app.metareducers.js","sourceRoot":"","sources":["app.metareducers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,yBAAyB;AACzB,IAAI,aAAa,GAAG,CAAC,CAAC;AAEtB,MAAM,2BAA2B,OAAO;IACtC,OAAO,UAAC,KAAK,EAAE,MAAM;QACnB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC,CAAA;AACH,CAAC;AAED,MAAM,+BAA+B,OAAO;IAC1C,OAAO,UAAC,KAAK,EAAE,MAAM;QACnB,QAAQ,MAAM,CAAC,IAAI,EAAE;YACnB,KAAK,gBAAgB,CAAC,SAAS;gBAC7B,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACjD,MAAM;YACR,KAAK,gBAAgB,CAAC,MAAM,CAAC;YAC7B;gBACE,MAAM;SACT;QACD,OAAO,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC,CAAA;AACH,CAAC;AAED,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC/B,gBAAgB;CACjB,CAAC;AAEF,MAAM,CAAC,IAAM,eAAe,GAAG;IAC7B,oBAAoB;CACrB,CAAC"} \ No newline at end of file diff --git a/src/app/app.module.js b/src/app/app.module.js new file mode 100644 index 0000000000..7737eb411d --- /dev/null +++ b/src/app/app.module.js @@ -0,0 +1,112 @@ +import * as tslib_1 from "tslib"; +import { APP_BASE_HREF, CommonModule } from '@angular/common'; +import { HttpClientModule } from '@angular/common/http'; +import { NgModule } from '@angular/core'; +import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; +import { EffectsModule } from '@ngrx/effects'; +import { RouterStateSerializer, StoreRouterConnectingModule } from '@ngrx/router-store'; +import { META_REDUCERS, StoreModule } from '@ngrx/store'; +import { StoreDevtoolsModule } from '@ngrx/store-devtools'; +import { TranslateModule } from '@ngx-translate/core'; +import { storeFreeze } from 'ngrx-store-freeze'; +import { ENV_CONFIG, GLOBAL_CONFIG } from '../config'; +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; +import { appEffects } from './app.effects'; +import { appMetaReducers, debugMetaReducers } from './app.metareducers'; +import { appReducers } from './app.reducer'; +import { CoreModule } from './core/core.module'; +import { FooterComponent } from './footer/footer.component'; +import { HeaderComponent } from './header/header.component'; +import { PageNotFoundComponent } from './pagenotfound/pagenotfound.component'; +import { DSpaceRouterStateSerializer } from './shared/ngrx/dspace-router-state-serializer'; +import { NotificationsBoardComponent } from './shared/notifications/notifications-board/notifications-board.component'; +import { NotificationComponent } from './shared/notifications/notification/notification.component'; +import { SharedModule } from './shared/shared.module'; +import { ScrollToModule } from '@nicky-lenaers/ngx-scroll-to'; +import { HeaderNavbarWrapperComponent } from './header-nav-wrapper/header-navbar-wrapper.component'; +import { AdminSidebarComponent } from './+admin/admin-sidebar/admin-sidebar.component'; +import { AdminSidebarSectionComponent } from './+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component'; +import { ExpandableAdminSidebarSectionComponent } from './+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component'; +import { NavbarModule } from './navbar/navbar.module'; +export function getConfig() { + return ENV_CONFIG; +} +export function getBase() { + return ENV_CONFIG.ui.nameSpace; +} +export function getMetaReducers(config) { + var metaReducers = config.production ? appMetaReducers : appMetaReducers.concat([storeFreeze]); + return config.debug ? metaReducers.concat(debugMetaReducers) : metaReducers; +} +var IMPORTS = [ + CommonModule, + SharedModule, + NavbarModule, + HttpClientModule, + AppRoutingModule, + CoreModule.forRoot(), + ScrollToModule.forRoot(), + NgbModule.forRoot(), + TranslateModule.forRoot(), + EffectsModule.forRoot(appEffects), + StoreModule.forRoot(appReducers), + StoreRouterConnectingModule, +]; +IMPORTS.push(StoreDevtoolsModule.instrument({ + maxAge: 100, + logOnly: ENV_CONFIG.production, +})); +var PROVIDERS = [ + { + provide: GLOBAL_CONFIG, + useFactory: (getConfig) + }, + { + provide: APP_BASE_HREF, + useFactory: (getBase) + }, + { + provide: META_REDUCERS, + useFactory: getMetaReducers, + deps: [GLOBAL_CONFIG] + }, + { + provide: RouterStateSerializer, + useClass: DSpaceRouterStateSerializer + } +]; +var DECLARATIONS = [ + AppComponent, + HeaderComponent, + HeaderNavbarWrapperComponent, + AdminSidebarComponent, + AdminSidebarSectionComponent, + ExpandableAdminSidebarSectionComponent, + FooterComponent, + PageNotFoundComponent, + NotificationComponent, + NotificationsBoardComponent +]; +var EXPORTS = [ + AppComponent +]; +var AppModule = /** @class */ (function () { + function AppModule() { + } + AppModule = tslib_1.__decorate([ + NgModule({ + imports: IMPORTS.slice(), + providers: PROVIDERS.slice(), + declarations: DECLARATIONS.slice(), + exports: EXPORTS.slice(), + entryComponents: [ + AdminSidebarSectionComponent, + ExpandableAdminSidebarSectionComponent + ] + }) + ], AppModule); + return AppModule; +}()); +export { AppModule }; +//# sourceMappingURL=app.module.js.map \ No newline at end of file diff --git a/src/app/app.module.js.map b/src/app/app.module.js.map new file mode 100644 index 0000000000..f3c9afee6b --- /dev/null +++ b/src/app/app.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app.module.js","sourceRoot":"","sources":["app.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/app.reducer.js b/src/app/app.reducer.js new file mode 100644 index 0000000000..0969455919 --- /dev/null +++ b/src/app/app.reducer.js @@ -0,0 +1,38 @@ +import { createSelector } from '@ngrx/store'; +import * as fromRouter from '@ngrx/router-store'; +import { hostWindowReducer } from './shared/host-window.reducer'; +import { formReducer } from './shared/form/form.reducer'; +import { sidebarReducer } from './+search-page/search-sidebar/search-sidebar.reducer'; +import { filterReducer } from './+search-page/search-filters/search-filter/search-filter.reducer'; +import { notificationsReducer } from './shared/notifications/notifications.reducers'; +import { truncatableReducer } from './shared/truncatable/truncatable.reducer'; +import { metadataRegistryReducer } from './+admin/admin-registries/metadata-registry/metadata-registry.reducers'; +import { hasValue } from './shared/empty.util'; +import { cssVariablesReducer } from './shared/sass-helper/sass-helper.reducer'; +import { menusReducer } from './shared/menu/menu.reducer'; +import { historyReducer } from './shared/history/history.reducer'; +export var appReducers = { + router: fromRouter.routerReducer, + history: historyReducer, + hostWindow: hostWindowReducer, + forms: formReducer, + metadataRegistry: metadataRegistryReducer, + notifications: notificationsReducer, + searchSidebar: sidebarReducer, + searchFilter: filterReducer, + truncatable: truncatableReducer, + cssVariables: cssVariablesReducer, + menus: menusReducer, +}; +export var routerStateSelector = function (state) { return state.router; }; +export function keySelector(key, selector) { + return createSelector(selector, function (state) { + if (hasValue(state)) { + return state[key]; + } + else { + return undefined; + } + }); +} +//# sourceMappingURL=app.reducer.js.map \ No newline at end of file diff --git a/src/app/app.reducer.js.map b/src/app/app.reducer.js.map new file mode 100644 index 0000000000..f974cbb806 --- /dev/null +++ b/src/app/app.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"app.reducer.js","sourceRoot":"","sources":["app.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,cAAc,EAAoB,MAAM,aAAa,CAAC;AACjF,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAmB,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,WAAW,EAAa,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAEL,cAAc,EACf,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EACL,aAAa,EAEd,MAAM,mEAAmE,CAAC;AAC3E,OAAO,EACL,oBAAoB,EAErB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAqB,MAAM,0CAA0C,CAAC;AACjG,OAAO,EACL,uBAAuB,EAExB,MAAM,wEAAwE,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAqB,MAAM,0CAA0C,CAAC;AAClG,OAAO,EAAE,YAAY,EAAc,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,cAAc,EAAgB,MAAM,kCAAkC,CAAC;AAgBhF,MAAM,CAAC,IAAM,WAAW,GAA+B;IACrD,MAAM,EAAE,UAAU,CAAC,aAAa;IAChC,OAAO,EAAE,cAAc;IACvB,UAAU,EAAE,iBAAiB;IAC7B,KAAK,EAAE,WAAW;IAClB,gBAAgB,EAAE,uBAAuB;IACzC,aAAa,EAAE,oBAAoB;IACnC,aAAa,EAAE,cAAc;IAC7B,YAAY,EAAE,aAAa;IAC3B,WAAW,EAAE,kBAAkB;IAC/B,YAAY,EAAE,mBAAmB;IACjC,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,MAAM,EAAZ,CAAY,CAAC;AAErE,MAAM,sBAAyB,GAAW,EAAE,QAAQ;IAClD,OAAO,cAAc,CAAC,QAAQ,EAAE,UAAC,KAAK;QACpC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;SACnB;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/core/auth/auth-object-factory.js b/src/app/core/auth/auth-object-factory.js new file mode 100644 index 0000000000..05147480aa --- /dev/null +++ b/src/app/core/auth/auth-object-factory.js @@ -0,0 +1,27 @@ +import { AuthType } from './auth-type'; +import { NormalizedAuthStatus } from './models/normalized-auth-status.model'; +import { NormalizedEPerson } from '../eperson/models/normalized-eperson.model'; +import { NormalizedGroup } from '../eperson/models/normalized-group.model'; +var AuthObjectFactory = /** @class */ (function () { + function AuthObjectFactory() { + } + AuthObjectFactory.getConstructor = function (type) { + switch (type) { + case AuthType.EPerson: { + return NormalizedEPerson; + } + case AuthType.Group: { + return NormalizedGroup; + } + case AuthType.Status: { + return NormalizedAuthStatus; + } + default: { + return undefined; + } + } + }; + return AuthObjectFactory; +}()); +export { AuthObjectFactory }; +//# sourceMappingURL=auth-object-factory.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth-object-factory.js.map b/src/app/core/auth/auth-object-factory.js.map new file mode 100644 index 0000000000..ea5535cf11 --- /dev/null +++ b/src/app/core/auth/auth-object-factory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-object-factory.js","sourceRoot":"","sources":["auth-object-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAG/E,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAE3E;IAAA;IAoBA,CAAC;IAnBe,gCAAc,GAA5B,UAA6B,IAAI;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACrB,OAAO,iBAAiB,CAAA;aACzB;YAED,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACnB,OAAO,eAAe,CAAA;aACvB;YAED,KAAK,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACpB,OAAO,oBAAoB,CAAA;aAC5B;YAED,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,wBAAC;AAAD,CAAC,AApBD,IAoBC"} \ No newline at end of file diff --git a/src/app/core/auth/auth-request.service.js b/src/app/core/auth/auth-request.service.js new file mode 100644 index 0000000000..481513ed82 --- /dev/null +++ b/src/app/core/auth/auth-request.service.js @@ -0,0 +1,49 @@ +import * as tslib_1 from "tslib"; +import { of as observableOf, throwError as observableThrowError } from 'rxjs'; +import { distinctUntilChanged, filter, map, mergeMap, tap } from 'rxjs/operators'; +import { Inject, Injectable } from '@angular/core'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { RequestService } from '../data/request.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { isNotEmpty } from '../../shared/empty.util'; +import { AuthGetRequest, AuthPostRequest } from '../data/request.models'; +import { getResponseFromEntry } from '../shared/operators'; +var AuthRequestService = /** @class */ (function () { + function AuthRequestService(EnvConfig, halService, requestService) { + this.EnvConfig = EnvConfig; + this.halService = halService; + this.requestService = requestService; + this.linkName = 'authn'; + this.browseEndpoint = ''; + } + AuthRequestService.prototype.fetchRequest = function (request) { + return this.requestService.getByUUID(request.uuid).pipe(getResponseFromEntry(), mergeMap(function (response) { + if (response.isSuccessful && isNotEmpty(response)) { + return observableOf(response.response); + } + else if (!response.isSuccessful) { + return observableThrowError(new Error(response.errorMessage)); + } + })); + }; + AuthRequestService.prototype.getEndpointByMethod = function (endpoint, method) { + return isNotEmpty(method) ? endpoint + "/" + method : "" + endpoint; + }; + AuthRequestService.prototype.postToEndpoint = function (method, body, options) { + var _this = this; + return this.halService.getEndpoint(this.linkName).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByMethod(endpointURL, method); }), distinctUntilChanged(), map(function (endpointURL) { return new AuthPostRequest(_this.requestService.generateRequestId(), endpointURL, body, options); }), tap(function (request) { return _this.requestService.configure(request, true); }), mergeMap(function (request) { return _this.fetchRequest(request); }), distinctUntilChanged()); + }; + AuthRequestService.prototype.getRequest = function (method, options) { + var _this = this; + return this.halService.getEndpoint(this.linkName).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByMethod(endpointURL, method); }), distinctUntilChanged(), map(function (endpointURL) { return new AuthGetRequest(_this.requestService.generateRequestId(), endpointURL, options); }), tap(function (request) { return _this.requestService.configure(request, true); }), mergeMap(function (request) { return _this.fetchRequest(request); }), distinctUntilChanged()); + }; + AuthRequestService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, HALEndpointService, + RequestService]) + ], AuthRequestService); + return AuthRequestService; +}()); +export { AuthRequestService }; +//# sourceMappingURL=auth-request.service.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth-request.service.js.map b/src/app/core/auth/auth-request.service.js.map new file mode 100644 index 0000000000..ad250e852d --- /dev/null +++ b/src/app/core/auth/auth-request.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-request.service.js","sourceRoot":"","sources":["auth-request.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,MAAM,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAwC,MAAM,wBAAwB,CAAC;AAG/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D;IAIE,4BAA6C,SAAuB,EAC9C,UAA8B,EAC9B,cAA8B;QAFP,cAAS,GAAT,SAAS,CAAc;QAC9C,eAAU,GAAV,UAAU,CAAoB;QAC9B,mBAAc,GAAd,cAAc,CAAgB;QAL1C,aAAQ,GAAG,OAAO,CAAC;QACnB,mBAAc,GAAG,EAAE,CAAC;IAK9B,CAAC;IAES,yCAAY,GAAtB,UAAuB,OAAoB;QACzC,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CACrD,oBAAoB,EAAE,EACtB,QAAQ,CAAC,UAAC,QAAQ;YAChB,IAAI,QAAQ,CAAC,YAAY,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;gBACjD,OAAO,YAAY,CAAE,QAA+B,CAAC,QAAQ,CAAC,CAAC;aAChE;iBAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;gBACjC,OAAO,oBAAoB,CAAC,IAAI,KAAK,CAAE,QAA0B,CAAC,YAAY,CAAC,CAAC,CAAC;aAClF;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAES,gDAAmB,GAA7B,UAA8B,QAAgB,EAAE,MAAc;QAC5D,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAI,QAAQ,SAAI,MAAQ,CAAC,CAAC,CAAC,KAAG,QAAU,CAAC;IACtE,CAAC;IAEM,2CAAc,GAArB,UAAsB,MAAc,EAAE,IAAS,EAAE,OAAqB;QAAtE,iBASC;QARC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CACpD,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,EAC1C,GAAG,CAAC,UAAC,WAAW,IAAK,OAAA,KAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,EAA7C,CAA6C,CAAC,EACnE,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,IAAI,eAAe,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,EAAxF,CAAwF,CAAC,EACtH,GAAG,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,EAA5C,CAA4C,CAAC,EAC3E,QAAQ,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAA1B,CAA0B,CAAC,EAC9D,oBAAoB,EAAE,CAAC,CAAC;IAC5B,CAAC;IAEM,uCAAU,GAAjB,UAAkB,MAAc,EAAE,OAAqB;QAAvD,iBASC;QARC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CACpD,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,EAC1C,GAAG,CAAC,UAAC,WAAW,IAAK,OAAA,KAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,EAA7C,CAA6C,CAAC,EACnE,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,IAAI,cAAc,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,EAAjF,CAAiF,CAAC,EAC/G,GAAG,CAAC,UAAC,OAAmB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,EAA5C,CAA4C,CAAC,EAC1E,QAAQ,CAAC,UAAC,OAAmB,IAAK,OAAA,KAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAA1B,CAA0B,CAAC,EAC7D,oBAAoB,EAAE,CAAC,CAAC;IAC5B,CAAC;IA9CU,kBAAkB;QAD9B,UAAU,EAAE;QAKE,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACA,kBAAkB;YACd,cAAc;OANzC,kBAAkB,CA+C9B;IAAD,yBAAC;CAAA,AA/CD,IA+CC;SA/CY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/auth/auth-response-parsing.service.js b/src/app/core/auth/auth-response-parsing.service.js new file mode 100644 index 0000000000..25c63cf323 --- /dev/null +++ b/src/app/core/auth/auth-response-parsing.service.js @@ -0,0 +1,36 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { AuthObjectFactory } from './auth-object-factory'; +import { BaseResponseParsingService } from '../data/base-response-parsing.service'; +import { AuthStatusResponse } from '../cache/response.models'; +import { GLOBAL_CONFIG } from '../../../config'; +import { isNotEmpty } from '../../shared/empty.util'; +import { ObjectCacheService } from '../cache/object-cache.service'; +var AuthResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(AuthResponseParsingService, _super); + function AuthResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = AuthObjectFactory; + _this.toCache = true; + return _this; + } + AuthResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links) && (data.statusCode === 200)) { + var response = this.process(data.payload, request.uuid); + return new AuthStatusResponse(response, data.statusCode, data.statusText); + } + else { + return new AuthStatusResponse(data.payload, data.statusCode, data.statusText); + } + }; + AuthResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], AuthResponseParsingService); + return AuthResponseParsingService; +}(BaseResponseParsingService)); +export { AuthResponseParsingService }; +//# sourceMappingURL=auth-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth-response-parsing.service.js.map b/src/app/core/auth/auth-response-parsing.service.js.map new file mode 100644 index 0000000000..5fbc2f9b2a --- /dev/null +++ b/src/app/core/auth/auth-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-response-parsing.service.js","sourceRoot":"","sources":["auth-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAgB,MAAM,0BAA0B,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AASnE;IAAgD,sDAA0B;IAKxE,oCAA6C,SAAuB,EAC9C,WAA+B;QADrD,YAEE,iBAAO,SACR;QAH4C,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAJ3C,mBAAa,GAAG,iBAAiB,CAAC;QAClC,aAAO,GAAG,IAAI,CAAC;;IAKzB,CAAC;IAED,0CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,GAAG,CAAC,EAAE;YAC5F,IAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAyC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAClG,OAAO,IAAI,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAC3E;aAAM;YACL,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAA+B,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACvG;IACH,CAAC;IAjBU,0BAA0B;QADtC,UAAU,EAAE;QAME,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAN1C,0BAA0B,CAkBtC;IAAD,iCAAC;CAAA,AAlBD,CAAgD,0BAA0B,GAkBzE;SAlBY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/auth/auth-type.js b/src/app/core/auth/auth-type.js new file mode 100644 index 0000000000..994f098291 --- /dev/null +++ b/src/app/core/auth/auth-type.js @@ -0,0 +1,7 @@ +export var AuthType; +(function (AuthType) { + AuthType["EPerson"] = "eperson"; + AuthType["Status"] = "status"; + AuthType["Group"] = "group"; +})(AuthType || (AuthType = {})); +//# sourceMappingURL=auth-type.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth-type.js.map b/src/app/core/auth/auth-type.js.map new file mode 100644 index 0000000000..27d96c5d60 --- /dev/null +++ b/src/app/core/auth/auth-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-type.js","sourceRoot":"","sources":["auth-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;IACjB,2BAAe,CAAA;AACjB,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB"} \ No newline at end of file diff --git a/src/app/core/auth/auth.actions.js b/src/app/core/auth/auth.actions.js new file mode 100644 index 0000000000..8606512d82 --- /dev/null +++ b/src/app/core/auth/auth.actions.js @@ -0,0 +1,310 @@ +// import type function +import { type } from '../../shared/ngrx/type'; +export var AuthActionTypes = { + AUTHENTICATE: type('dspace/auth/AUTHENTICATE'), + AUTHENTICATE_ERROR: type('dspace/auth/AUTHENTICATE_ERROR'), + AUTHENTICATE_SUCCESS: type('dspace/auth/AUTHENTICATE_SUCCESS'), + AUTHENTICATED: type('dspace/auth/AUTHENTICATED'), + AUTHENTICATED_ERROR: type('dspace/auth/AUTHENTICATED_ERROR'), + AUTHENTICATED_SUCCESS: type('dspace/auth/AUTHENTICATED_SUCCESS'), + CHECK_AUTHENTICATION_TOKEN: type('dspace/auth/CHECK_AUTHENTICATION_TOKEN'), + CHECK_AUTHENTICATION_TOKEN_ERROR: type('dspace/auth/CHECK_AUTHENTICATION_TOKEN_ERROR'), + REDIRECT_TOKEN_EXPIRED: type('dspace/auth/REDIRECT_TOKEN_EXPIRED'), + REDIRECT_AUTHENTICATION_REQUIRED: type('dspace/auth/REDIRECT_AUTHENTICATION_REQUIRED'), + REFRESH_TOKEN: type('dspace/auth/REFRESH_TOKEN'), + REFRESH_TOKEN_SUCCESS: type('dspace/auth/REFRESH_TOKEN_SUCCESS'), + REFRESH_TOKEN_ERROR: type('dspace/auth/REFRESH_TOKEN_ERROR'), + ADD_MESSAGE: type('dspace/auth/ADD_MESSAGE'), + RESET_MESSAGES: type('dspace/auth/RESET_MESSAGES'), + LOG_OUT: type('dspace/auth/LOG_OUT'), + LOG_OUT_ERROR: type('dspace/auth/LOG_OUT_ERROR'), + LOG_OUT_SUCCESS: type('dspace/auth/LOG_OUT_SUCCESS'), + REGISTRATION: type('dspace/auth/REGISTRATION'), + REGISTRATION_ERROR: type('dspace/auth/REGISTRATION_ERROR'), + REGISTRATION_SUCCESS: type('dspace/auth/REGISTRATION_SUCCESS'), + SET_REDIRECT_URL: type('dspace/auth/SET_REDIRECT_URL'), +}; +/* tslint:disable:max-classes-per-file */ +/** + * Authenticate. + * @class AuthenticateAction + * @implements {Action} + */ +var AuthenticateAction = /** @class */ (function () { + function AuthenticateAction(email, password) { + this.type = AuthActionTypes.AUTHENTICATE; + this.payload = { email: email, password: password }; + } + return AuthenticateAction; +}()); +export { AuthenticateAction }; +/** + * Checks if user is authenticated. + * @class AuthenticatedAction + * @implements {Action} + */ +var AuthenticatedAction = /** @class */ (function () { + function AuthenticatedAction(token) { + this.type = AuthActionTypes.AUTHENTICATED; + this.payload = token; + } + return AuthenticatedAction; +}()); +export { AuthenticatedAction }; +/** + * Authenticated check success. + * @class AuthenticatedSuccessAction + * @implements {Action} + */ +var AuthenticatedSuccessAction = /** @class */ (function () { + function AuthenticatedSuccessAction(authenticated, authToken, user) { + this.type = AuthActionTypes.AUTHENTICATED_SUCCESS; + this.payload = { authenticated: authenticated, authToken: authToken, user: user }; + } + return AuthenticatedSuccessAction; +}()); +export { AuthenticatedSuccessAction }; +/** + * Authenticated check error. + * @class AuthenticatedErrorAction + * @implements {Action} + */ +var AuthenticatedErrorAction = /** @class */ (function () { + function AuthenticatedErrorAction(payload) { + this.type = AuthActionTypes.AUTHENTICATED_ERROR; + this.payload = payload; + } + return AuthenticatedErrorAction; +}()); +export { AuthenticatedErrorAction }; +/** + * Authentication error. + * @class AuthenticationErrorAction + * @implements {Action} + */ +var AuthenticationErrorAction = /** @class */ (function () { + function AuthenticationErrorAction(payload) { + this.type = AuthActionTypes.AUTHENTICATE_ERROR; + this.payload = payload; + } + return AuthenticationErrorAction; +}()); +export { AuthenticationErrorAction }; +/** + * Authentication success. + * @class AuthenticationSuccessAction + * @implements {Action} + */ +var AuthenticationSuccessAction = /** @class */ (function () { + function AuthenticationSuccessAction(token) { + this.type = AuthActionTypes.AUTHENTICATE_SUCCESS; + this.payload = token; + } + return AuthenticationSuccessAction; +}()); +export { AuthenticationSuccessAction }; +/** + * Check if token is already present upon initial load. + * @class CheckAuthenticationTokenAction + * @implements {Action} + */ +var CheckAuthenticationTokenAction = /** @class */ (function () { + function CheckAuthenticationTokenAction() { + this.type = AuthActionTypes.CHECK_AUTHENTICATION_TOKEN; + } + return CheckAuthenticationTokenAction; +}()); +export { CheckAuthenticationTokenAction }; +/** + * Check Authentication Token Error. + * @class CheckAuthenticationTokenErrorAction + * @implements {Action} + */ +var CheckAuthenticationTokenErrorAction = /** @class */ (function () { + function CheckAuthenticationTokenErrorAction() { + this.type = AuthActionTypes.CHECK_AUTHENTICATION_TOKEN_ERROR; + } + return CheckAuthenticationTokenErrorAction; +}()); +export { CheckAuthenticationTokenErrorAction }; +/** + * Sign out. + * @class LogOutAction + * @implements {Action} + */ +var LogOutAction = /** @class */ (function () { + function LogOutAction(payload) { + this.payload = payload; + this.type = AuthActionTypes.LOG_OUT; + } + return LogOutAction; +}()); +export { LogOutAction }; +/** + * Sign out error. + * @class LogOutErrorAction + * @implements {Action} + */ +var LogOutErrorAction = /** @class */ (function () { + function LogOutErrorAction(payload) { + this.type = AuthActionTypes.LOG_OUT_ERROR; + this.payload = payload; + } + return LogOutErrorAction; +}()); +export { LogOutErrorAction }; +/** + * Sign out success. + * @class LogOutSuccessAction + * @implements {Action} + */ +var LogOutSuccessAction = /** @class */ (function () { + function LogOutSuccessAction(payload) { + this.payload = payload; + this.type = AuthActionTypes.LOG_OUT_SUCCESS; + } + return LogOutSuccessAction; +}()); +export { LogOutSuccessAction }; +/** + * Redirect to login page when authentication is required. + * @class RedirectWhenAuthenticationIsRequiredAction + * @implements {Action} + */ +var RedirectWhenAuthenticationIsRequiredAction = /** @class */ (function () { + function RedirectWhenAuthenticationIsRequiredAction(message) { + this.type = AuthActionTypes.REDIRECT_AUTHENTICATION_REQUIRED; + this.payload = message; + } + return RedirectWhenAuthenticationIsRequiredAction; +}()); +export { RedirectWhenAuthenticationIsRequiredAction }; +/** + * Redirect to login page when token is expired. + * @class RedirectWhenTokenExpiredAction + * @implements {Action} + */ +var RedirectWhenTokenExpiredAction = /** @class */ (function () { + function RedirectWhenTokenExpiredAction(message) { + this.type = AuthActionTypes.REDIRECT_TOKEN_EXPIRED; + this.payload = message; + } + return RedirectWhenTokenExpiredAction; +}()); +export { RedirectWhenTokenExpiredAction }; +/** + * Refresh authentication token. + * @class RefreshTokenAction + * @implements {Action} + */ +var RefreshTokenAction = /** @class */ (function () { + function RefreshTokenAction(token) { + this.type = AuthActionTypes.REFRESH_TOKEN; + this.payload = token; + } + return RefreshTokenAction; +}()); +export { RefreshTokenAction }; +/** + * Refresh authentication token success. + * @class RefreshTokenSuccessAction + * @implements {Action} + */ +var RefreshTokenSuccessAction = /** @class */ (function () { + function RefreshTokenSuccessAction(token) { + this.type = AuthActionTypes.REFRESH_TOKEN_SUCCESS; + this.payload = token; + } + return RefreshTokenSuccessAction; +}()); +export { RefreshTokenSuccessAction }; +/** + * Refresh authentication token error. + * @class RefreshTokenErrorAction + * @implements {Action} + */ +var RefreshTokenErrorAction = /** @class */ (function () { + function RefreshTokenErrorAction() { + this.type = AuthActionTypes.REFRESH_TOKEN_ERROR; + } + return RefreshTokenErrorAction; +}()); +export { RefreshTokenErrorAction }; +/** + * Sign up. + * @class RegistrationAction + * @implements {Action} + */ +var RegistrationAction = /** @class */ (function () { + function RegistrationAction(user) { + this.type = AuthActionTypes.REGISTRATION; + this.payload = user; + } + return RegistrationAction; +}()); +export { RegistrationAction }; +/** + * Sign up error. + * @class RegistrationErrorAction + * @implements {Action} + */ +var RegistrationErrorAction = /** @class */ (function () { + function RegistrationErrorAction(payload) { + this.type = AuthActionTypes.REGISTRATION_ERROR; + this.payload = payload; + } + return RegistrationErrorAction; +}()); +export { RegistrationErrorAction }; +/** + * Sign up success. + * @class RegistrationSuccessAction + * @implements {Action} + */ +var RegistrationSuccessAction = /** @class */ (function () { + function RegistrationSuccessAction(user) { + this.type = AuthActionTypes.REGISTRATION_SUCCESS; + this.payload = user; + } + return RegistrationSuccessAction; +}()); +export { RegistrationSuccessAction }; +/** + * Add uthentication message. + * @class AddAuthenticationMessageAction + * @implements {Action} + */ +var AddAuthenticationMessageAction = /** @class */ (function () { + function AddAuthenticationMessageAction(message) { + this.type = AuthActionTypes.ADD_MESSAGE; + this.payload = message; + } + return AddAuthenticationMessageAction; +}()); +export { AddAuthenticationMessageAction }; +/** + * Reset error. + * @class ResetAuthenticationMessagesAction + * @implements {Action} + */ +var ResetAuthenticationMessagesAction = /** @class */ (function () { + function ResetAuthenticationMessagesAction() { + this.type = AuthActionTypes.RESET_MESSAGES; + } + return ResetAuthenticationMessagesAction; +}()); +export { ResetAuthenticationMessagesAction }; +/** + * Change the redirect url. + * @class SetRedirectUrlAction + * @implements {Action} + */ +var SetRedirectUrlAction = /** @class */ (function () { + function SetRedirectUrlAction(url) { + this.type = AuthActionTypes.SET_REDIRECT_URL; + this.payload = url; + } + return SetRedirectUrlAction; +}()); +export { SetRedirectUrlAction }; +//# sourceMappingURL=auth.actions.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.actions.js.map b/src/app/core/auth/auth.actions.js.map new file mode 100644 index 0000000000..5e240d85ae --- /dev/null +++ b/src/app/core/auth/auth.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth.actions.js","sourceRoot":"","sources":["auth.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/auth.effects.js b/src/app/core/auth/auth.effects.js new file mode 100644 index 0000000000..450974774d --- /dev/null +++ b/src/app/core/auth/auth.effects.js @@ -0,0 +1,130 @@ +import * as tslib_1 from "tslib"; +import { of as observableOf, Observable } from 'rxjs'; +import { filter, debounceTime, switchMap, take, tap, catchError, map } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +// import @ngrx +import { Actions, Effect, ofType } from '@ngrx/effects'; +import { select, Store } from '@ngrx/store'; +// import services +import { AuthService } from './auth.service'; +// import actions +import { AuthActionTypes, AuthenticatedAction, AuthenticatedErrorAction, AuthenticatedSuccessAction, AuthenticationErrorAction, AuthenticationSuccessAction, CheckAuthenticationTokenErrorAction, LogOutErrorAction, LogOutSuccessAction, RefreshTokenErrorAction, RefreshTokenSuccessAction, RegistrationErrorAction, RegistrationSuccessAction } from './auth.actions'; +import { isAuthenticated } from './selectors'; +import { StoreActionTypes } from '../../store.actions'; +var AuthEffects = /** @class */ (function () { + /** + * @constructor + * @param {Actions} actions$ + * @param {AuthService} authService + * @param {Store} store + */ + function AuthEffects(actions$, authService, store) { + var _this = this; + this.actions$ = actions$; + this.authService = authService; + this.store = store; + /** + * Authenticate user. + * @method authenticate + */ + this.authenticate$ = this.actions$.pipe(ofType(AuthActionTypes.AUTHENTICATE), switchMap(function (action) { + return _this.authService.authenticate(action.payload.email, action.payload.password).pipe(take(1), map(function (response) { return new AuthenticationSuccessAction(response.token); }), catchError(function (error) { return observableOf(new AuthenticationErrorAction(error)); })); + })); + this.authenticateSuccess$ = this.actions$.pipe(ofType(AuthActionTypes.AUTHENTICATE_SUCCESS), tap(function (action) { return _this.authService.storeToken(action.payload); }), map(function (action) { return new AuthenticatedAction(action.payload); })); + this.authenticated$ = this.actions$.pipe(ofType(AuthActionTypes.AUTHENTICATED), switchMap(function (action) { + return _this.authService.authenticatedUser(action.payload).pipe(map(function (user) { return new AuthenticatedSuccessAction((user !== null), action.payload, user); }), catchError(function (error) { return observableOf(new AuthenticatedErrorAction(error)); })); + })); + // It means "reacts to this action but don't send another" + this.authenticatedError$ = this.actions$.pipe(ofType(AuthActionTypes.AUTHENTICATED_ERROR), tap(function (action) { return _this.authService.removeToken(); })); + this.checkToken$ = this.actions$.pipe(ofType(AuthActionTypes.CHECK_AUTHENTICATION_TOKEN), switchMap(function () { + return _this.authService.hasValidAuthenticationToken().pipe(map(function (token) { return new AuthenticatedAction(token); }), catchError(function (error) { return observableOf(new CheckAuthenticationTokenErrorAction()); })); + })); + this.createUser$ = this.actions$.pipe(ofType(AuthActionTypes.REGISTRATION), debounceTime(500), // to remove when functionality is implemented + switchMap(function (action) { + return _this.authService.create(action.payload).pipe(map(function (user) { return new RegistrationSuccessAction(user); }), catchError(function (error) { return observableOf(new RegistrationErrorAction(error)); })); + })); + this.refreshToken$ = this.actions$.pipe(ofType(AuthActionTypes.REFRESH_TOKEN), switchMap(function (action) { + return _this.authService.refreshAuthenticationToken(action.payload).pipe(map(function (token) { return new RefreshTokenSuccessAction(token); }), catchError(function (error) { return observableOf(new RefreshTokenErrorAction()); })); + })); + // It means "reacts to this action but don't send another" + this.refreshTokenSuccess$ = this.actions$.pipe(ofType(AuthActionTypes.REFRESH_TOKEN_SUCCESS), tap(function (action) { return _this.authService.replaceToken(action.payload); })); + /** + * When the store is rehydrated in the browser, + * clear a possible invalid token or authentication errors + */ + this.clearInvalidTokenOnRehydrate$ = this.actions$.pipe(ofType(StoreActionTypes.REHYDRATE), switchMap(function () { + return _this.store.pipe(select(isAuthenticated), take(1), filter(function (authenticated) { return !authenticated; }), tap(function () { return _this.authService.removeToken(); }), tap(function () { return _this.authService.resetAuthenticationError(); })); + })); + this.logOut$ = this.actions$ + .pipe(ofType(AuthActionTypes.LOG_OUT), switchMap(function () { + return _this.authService.logout().pipe(map(function (value) { return new LogOutSuccessAction(); }), catchError(function (error) { return observableOf(new LogOutErrorAction(error)); })); + })); + this.logOutSuccess$ = this.actions$ + .pipe(ofType(AuthActionTypes.LOG_OUT_SUCCESS), tap(function () { return _this.authService.removeToken(); }), tap(function () { return _this.authService.clearRedirectUrl(); }), tap(function () { return _this.authService.refreshAfterLogout(); })); + this.redirectToLogin$ = this.actions$ + .pipe(ofType(AuthActionTypes.REDIRECT_AUTHENTICATION_REQUIRED), tap(function () { return _this.authService.removeToken(); }), tap(function () { return _this.authService.redirectToLogin(); })); + this.redirectToLoginTokenExpired$ = this.actions$ + .pipe(ofType(AuthActionTypes.REDIRECT_TOKEN_EXPIRED), tap(function () { return _this.authService.removeToken(); }), tap(function () { return _this.authService.redirectToLoginWhenTokenExpired(); })); + } + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "authenticate$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "authenticateSuccess$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "authenticated$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "authenticatedError$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "checkToken$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "createUser$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "refreshToken$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "refreshTokenSuccess$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "clearInvalidTokenOnRehydrate$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "logOut$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "logOutSuccess$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "redirectToLogin$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Observable) + ], AuthEffects.prototype, "redirectToLoginTokenExpired$", void 0); + AuthEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions, + AuthService, + Store]) + ], AuthEffects); + return AuthEffects; +}()); +export { AuthEffects }; +//# sourceMappingURL=auth.effects.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.effects.js.map b/src/app/core/auth/auth.effects.js.map new file mode 100644 index 0000000000..55b0d4ebb9 --- /dev/null +++ b/src/app/core/auth/auth.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth.effects.js","sourceRoot":"","sources":["auth.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/auth.interceptor.js b/src/app/core/auth/auth.interceptor.js new file mode 100644 index 0000000000..07f91b2409 --- /dev/null +++ b/src/app/core/auth/auth.interceptor.js @@ -0,0 +1,144 @@ +import * as tslib_1 from "tslib"; +import { of as observableOf, throwError as observableThrowError } from 'rxjs'; +import { catchError, filter, map } from 'rxjs/operators'; +import { Injectable, Injector } from '@angular/core'; +import { HttpErrorResponse, HttpResponse } from '@angular/common/http'; +import { find } from 'lodash'; +import { AuthService } from './auth.service'; +import { AuthStatus } from './models/auth-status.model'; +import { AuthTokenInfo } from './models/auth-token-info.model'; +import { isNotEmpty, isUndefined, isNotNull } from '../../shared/empty.util'; +import { RedirectWhenTokenExpiredAction, RefreshTokenAction } from './auth.actions'; +import { Store } from '@ngrx/store'; +import { Router } from '@angular/router'; +var AuthInterceptor = /** @class */ (function () { + function AuthInterceptor(inj, router, store) { + this.inj = inj; + this.router = router; + this.store = store; + // Intercetor is called twice per request, + // so to prevent RefreshTokenAction is dispatched twice + // we're creating a refresh token request list + this.refreshTokenRequestUrls = []; + } + AuthInterceptor.prototype.isUnauthorized = function (response) { + // invalid_token The access token provided is expired, revoked, malformed, or invalid for other reasons + return response.status === 401; + }; + AuthInterceptor.prototype.isSuccess = function (response) { + return (response.status === 200 || response.status === 204); + }; + AuthInterceptor.prototype.isAuthRequest = function (http) { + return http && http.url + && (http.url.endsWith('/authn/login') + || http.url.endsWith('/authn/logout') + || http.url.endsWith('/authn/status')); + }; + AuthInterceptor.prototype.isLoginResponse = function (http) { + return http.url && http.url.endsWith('/authn/login'); + }; + AuthInterceptor.prototype.isLogoutResponse = function (http) { + return http.url && http.url.endsWith('/authn/logout'); + }; + AuthInterceptor.prototype.makeAuthStatusObject = function (authenticated, accessToken, error) { + var authStatus = new AuthStatus(); + authStatus.id = null; + authStatus.okay = true; + if (authenticated) { + authStatus.authenticated = true; + authStatus.token = new AuthTokenInfo(accessToken); + } + else { + authStatus.authenticated = false; + authStatus.error = isNotEmpty(error) ? ((typeof error === 'string') ? JSON.parse(error) : error) : null; + } + return authStatus; + }; + AuthInterceptor.prototype.intercept = function (req, next) { + var _this = this; + var authService = this.inj.get(AuthService); + var token = authService.getToken(); + var newReq; + if (authService.isTokenExpired()) { + authService.setRedirectUrl(this.router.url); + // The access token is expired + // Redirect to the login route + this.store.dispatch(new RedirectWhenTokenExpiredAction('auth.messages.expired')); + return observableOf(null); + } + else if (!this.isAuthRequest(req) && isNotEmpty(token)) { + // Intercept a request that is not to the authentication endpoint + authService.isTokenExpiring().pipe(filter(function (isExpiring) { return isExpiring; })) + .subscribe(function () { + // If the current request url is already in the refresh token request list, skip it + if (isUndefined(find(_this.refreshTokenRequestUrls, req.url))) { + // When a token is about to expire, refresh it + _this.store.dispatch(new RefreshTokenAction(token)); + _this.refreshTokenRequestUrls.push(req.url); + } + }); + // Get the auth header from the service. + var Authorization = authService.buildAuthHeader(token); + // Clone the request to add the new header. + newReq = req.clone({ headers: req.headers.set('authorization', Authorization) }); + } + else { + newReq = req; + } + // Pass on the new request instead of the original request. + return next.handle(newReq).pipe(map(function (response) { + // Intercept a Login/Logout response + if (response instanceof HttpResponse && _this.isSuccess(response) && (_this.isLoginResponse(response) || _this.isLogoutResponse(response))) { + // It's a success Login/Logout response + var authRes = void 0; + if (_this.isLoginResponse(response)) { + // login successfully + var newToken = response.headers.get('authorization'); + authRes = response.clone({ body: _this.makeAuthStatusObject(true, newToken) }); + // clean eventually refresh Requests list + _this.refreshTokenRequestUrls = []; + } + else { + // logout successfully + authRes = response.clone({ body: _this.makeAuthStatusObject(false) }); + } + return authRes; + } + else { + return response; + } + }), catchError(function (error, caught) { + // Intercept an error response + if (error instanceof HttpErrorResponse) { + // Checks if is a response from a request to an authentication endpoint + if (_this.isAuthRequest(error)) { + // clean eventually refresh Requests list + _this.refreshTokenRequestUrls = []; + // Create a new HttpResponse and return it, so it can be handle properly by AuthService. + var authResponse = new HttpResponse({ + body: _this.makeAuthStatusObject(false, null, error.error), + headers: error.headers, + status: error.status, + statusText: error.statusText, + url: error.url + }); + return observableOf(authResponse); + } + else if (_this.isUnauthorized(error) && isNotNull(token) && authService.isTokenExpired()) { + // The access token provided is expired, revoked, malformed, or invalid for other reasons + // Redirect to the login route + _this.store.dispatch(new RedirectWhenTokenExpiredAction('auth.messages.expired')); + } + } + // Return error response as is. + return observableThrowError(error); + })); + }; + AuthInterceptor = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Injector, Router, Store]) + ], AuthInterceptor); + return AuthInterceptor; +}()); +export { AuthInterceptor }; +//# sourceMappingURL=auth.interceptor.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.interceptor.js.map b/src/app/core/auth/auth.interceptor.js.map new file mode 100644 index 0000000000..cdbdadcd12 --- /dev/null +++ b/src/app/core/auth/auth.interceptor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth.interceptor.js","sourceRoot":"","sources":["auth.interceptor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/auth.reducer.js b/src/app/core/auth/auth.reducer.js new file mode 100644 index 0000000000..a8c0b8a9cc --- /dev/null +++ b/src/app/core/auth/auth.reducer.js @@ -0,0 +1,131 @@ +// import actions +import { AuthActionTypes } from './auth.actions'; +/** + * The initial state. + */ +var initialState = { + authenticated: false, + loaded: false, + loading: false, +}; +/** + * The reducer function. + * @function reducer + * @param {State} state Current state + * @param {AuthActions} action Incoming action + */ +export function authReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case AuthActionTypes.AUTHENTICATE: + return Object.assign({}, state, { + error: undefined, + loading: true, + info: undefined + }); + case AuthActionTypes.AUTHENTICATED: + return Object.assign({}, state, { + loading: true + }); + case AuthActionTypes.AUTHENTICATED_ERROR: + return Object.assign({}, state, { + authenticated: false, + authToken: undefined, + error: action.payload.message, + loaded: true, + loading: false + }); + case AuthActionTypes.AUTHENTICATED_SUCCESS: + return Object.assign({}, state, { + authenticated: true, + authToken: action.payload.authToken, + loaded: true, + error: undefined, + loading: false, + info: undefined, + user: action.payload.user + }); + case AuthActionTypes.AUTHENTICATE_ERROR: + case AuthActionTypes.REGISTRATION_ERROR: + return Object.assign({}, state, { + authenticated: false, + authToken: undefined, + error: action.payload.message, + loading: false + }); + case AuthActionTypes.AUTHENTICATED: + case AuthActionTypes.AUTHENTICATE_SUCCESS: + case AuthActionTypes.LOG_OUT: + return state; + case AuthActionTypes.CHECK_AUTHENTICATION_TOKEN: + return Object.assign({}, state, { + loading: true + }); + case AuthActionTypes.CHECK_AUTHENTICATION_TOKEN_ERROR: + return Object.assign({}, state, { + loading: false + }); + case AuthActionTypes.LOG_OUT_ERROR: + return Object.assign({}, state, { + authenticated: true, + error: action.payload.message + }); + case AuthActionTypes.LOG_OUT_SUCCESS: + case AuthActionTypes.REFRESH_TOKEN_ERROR: + return Object.assign({}, state, { + authenticated: false, + authToken: undefined, + error: undefined, + loaded: false, + loading: false, + info: undefined, + refreshing: false, + user: undefined + }); + case AuthActionTypes.REDIRECT_AUTHENTICATION_REQUIRED: + case AuthActionTypes.REDIRECT_TOKEN_EXPIRED: + return Object.assign({}, state, { + authenticated: false, + authToken: undefined, + loaded: false, + loading: false, + info: action.payload, + user: undefined + }); + case AuthActionTypes.REGISTRATION: + return Object.assign({}, state, { + authenticated: false, + authToken: undefined, + error: undefined, + loading: true, + info: undefined + }); + case AuthActionTypes.REGISTRATION_SUCCESS: + return state; + case AuthActionTypes.REFRESH_TOKEN: + return Object.assign({}, state, { + refreshing: true, + }); + case AuthActionTypes.REFRESH_TOKEN_SUCCESS: + return Object.assign({}, state, { + authToken: action.payload, + refreshing: false, + }); + case AuthActionTypes.ADD_MESSAGE: + return Object.assign({}, state, { + info: action.payload, + }); + case AuthActionTypes.RESET_MESSAGES: + return Object.assign({}, state, { + error: undefined, + info: undefined, + }); + case AuthActionTypes.SET_REDIRECT_URL: + return Object.assign({}, state, { + redirectUrl: action.payload, + }); + default: + return state; + } +} +//# sourceMappingURL=auth.reducer.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.reducer.js.map b/src/app/core/auth/auth.reducer.js.map new file mode 100644 index 0000000000..72c87ecf8d --- /dev/null +++ b/src/app/core/auth/auth.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth.reducer.js","sourceRoot":"","sources":["auth.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/auth.service.js b/src/app/core/auth/auth.service.js new file mode 100644 index 0000000000..a7a691369c --- /dev/null +++ b/src/app/core/auth/auth.service.js @@ -0,0 +1,365 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable, Optional } from '@angular/core'; +import { PRIMARY_OUTLET, Router } from '@angular/router'; +import { HttpHeaders } from '@angular/common/http'; +import { REQUEST, RESPONSE } from '@nguniversal/express-engine/tokens'; +import { of as observableOf } from 'rxjs'; +import { distinctUntilChanged, filter, map, startWith, switchMap, take, withLatestFrom } from 'rxjs/operators'; +import { select, Store } from '@ngrx/store'; +import { AuthRequestService } from './auth-request.service'; +import { TOKENITEM } from './models/auth-token-info.model'; +import { isEmpty, isNotEmpty, isNotNull, isNotUndefined } from '../../shared/empty.util'; +import { CookieService } from '../../shared/services/cookie.service'; +import { getAuthenticationToken, getRedirectUrl, isAuthenticated, isTokenRefreshing } from './selectors'; +import { routerStateSelector } from '../../app.reducer'; +import { ResetAuthenticationMessagesAction, SetRedirectUrlAction } from './auth.actions'; +import { NativeWindowRef, NativeWindowService } from '../../shared/services/window.service'; +import { Base64EncodeUrl } from '../../shared/utils/encode-decode.util'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +export var LOGIN_ROUTE = '/login'; +export var LOGOUT_ROUTE = '/logout'; +export var REDIRECT_COOKIE = 'dsRedirectUrl'; +/** + * The auth service. + */ +var AuthService = /** @class */ (function () { + function AuthService(req, _window, authRequestService, response, router, storage, store, rdbService) { + var _this = this; + this.req = req; + this._window = _window; + this.authRequestService = authRequestService; + this.response = response; + this.router = router; + this.storage = storage; + this.store = store; + this.rdbService = rdbService; + this.store.pipe(select(isAuthenticated), startWith(false)).subscribe(function (authenticated) { return _this._authenticated = authenticated; }); + // If current route is different from the one setted in authentication guard + // and is not the login route, clear redirect url and messages + var routeUrl$ = this.store.pipe(select(routerStateSelector), filter(function (routerState) { return isNotUndefined(routerState) && isNotUndefined(routerState.state); }), filter(function (routerState) { return !_this.isLoginRoute(routerState.state.url); }), map(function (routerState) { return routerState.state.url; })); + var redirectUrl$ = this.store.pipe(select(getRedirectUrl), distinctUntilChanged()); + routeUrl$.pipe(withLatestFrom(redirectUrl$), map(function (_a) { + var routeUrl = _a[0], redirectUrl = _a[1]; + return [routeUrl, redirectUrl]; + })).pipe(filter(function (_a) { + var routeUrl = _a[0], redirectUrl = _a[1]; + return isNotEmpty(redirectUrl) && (routeUrl !== redirectUrl); + })) + .subscribe(function () { + _this.clearRedirectUrl(); + }); + } + /** + * Check if is a login page route + * + * @param {string} url + * @returns {Boolean}. + */ + AuthService.prototype.isLoginRoute = function (url) { + var urlTree = this.router.parseUrl(url); + var g = urlTree.root.children[PRIMARY_OUTLET]; + var segment = '/' + g.toString(); + return segment === LOGIN_ROUTE; + }; + /** + * Authenticate the user + * + * @param {string} user The user name + * @param {string} password The user's password + * @returns {Observable} The authenticated user observable. + */ + AuthService.prototype.authenticate = function (user, password) { + // Attempt authenticating the user using the supplied credentials. + var body = ("password=" + Base64EncodeUrl(password) + "&user=" + Base64EncodeUrl(user)); + var options = Object.create({}); + var headers = new HttpHeaders(); + headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); + options.headers = headers; + return this.authRequestService.postToEndpoint('login', body, options).pipe(map(function (status) { + if (status.authenticated) { + return status; + } + else { + throw (new Error('Invalid email or password')); + } + })); + }; + /** + * Determines if the user is authenticated + * @returns {Observable} + */ + AuthService.prototype.isAuthenticated = function () { + return this.store.pipe(select(isAuthenticated)); + }; + /** + * Returns the authenticated user + * @returns {User} + */ + AuthService.prototype.authenticatedUser = function (token) { + var _this = this; + // Determine if the user has an existing auth session on the server + var options = Object.create({}); + var headers = new HttpHeaders(); + headers = headers.append('Accept', 'application/json'); + headers = headers.append('Authorization', "Bearer " + token.accessToken); + options.headers = headers; + return this.authRequestService.getRequest('status', options).pipe(map(function (status) { return _this.rdbService.build(status); }), switchMap(function (status) { + if (status.authenticated) { + return status.eperson.pipe(map(function (eperson) { return eperson.payload; })); + } + else { + throw (new Error('Not authenticated')); + } + })); + }; + /** + * Checks if token is present into browser storage and is valid. (NB Check is done only on SSR) + */ + AuthService.prototype.checkAuthenticationToken = function () { + return; + }; + /** + * Checks if token is present into storage and is not expired + */ + AuthService.prototype.hasValidAuthenticationToken = function () { + var _this = this; + return this.store.pipe(select(getAuthenticationToken), take(1), map(function (authTokenInfo) { + var token; + // Retrieve authentication token info and check if is valid + token = isNotEmpty(authTokenInfo) ? authTokenInfo : _this.storage.get(TOKENITEM); + if (isNotEmpty(token) && token.hasOwnProperty('accessToken') && isNotEmpty(token.accessToken) && !_this.isTokenExpired(token)) { + return token; + } + else { + throw false; + } + })); + }; + /** + * Checks if token is present into storage + */ + AuthService.prototype.refreshAuthenticationToken = function (token) { + var options = Object.create({}); + var headers = new HttpHeaders(); + headers = headers.append('Accept', 'application/json'); + headers = headers.append('Authorization', "Bearer " + token.accessToken); + options.headers = headers; + return this.authRequestService.postToEndpoint('login', {}, options).pipe(map(function (status) { + if (status.authenticated) { + return status.token; + } + else { + throw (new Error('Not authenticated')); + } + })); + }; + /** + * Clear authentication errors + */ + AuthService.prototype.resetAuthenticationError = function () { + this.store.dispatch(new ResetAuthenticationMessagesAction()); + }; + /** + * Create a new user + * @returns {User} + */ + AuthService.prototype.create = function (user) { + // Normally you would do an HTTP request to POST the user + // details and then return the new user object + // but, let's just return the new user for this example. + // this._authenticated = true; + return observableOf(user); + }; + /** + * End session + * @returns {Observable} + */ + AuthService.prototype.logout = function () { + // Send a request that sign end the session + var headers = new HttpHeaders(); + headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); + var options = Object.create({ headers: headers, responseType: 'text' }); + return this.authRequestService.getRequest('logout', options).pipe(map(function (status) { + if (!status.authenticated) { + return true; + } + else { + throw (new Error('auth.errors.invalid-user')); + } + })); + }; + /** + * Retrieve authentication token info and make authorization header + * @returns {string} + */ + AuthService.prototype.buildAuthHeader = function (token) { + if (isEmpty(token)) { + token = this.getToken(); + } + return (this._authenticated && isNotNull(token)) ? "Bearer " + token.accessToken : ''; + }; + /** + * Get authentication token info + * @returns {AuthTokenInfo} + */ + AuthService.prototype.getToken = function () { + var token; + this.store.pipe(select(getAuthenticationToken)) + .subscribe(function (authTokenInfo) { + // Retrieve authentication token info and check if is valid + token = authTokenInfo || null; + }); + return token; + }; + /** + * Check if a token is next to be expired + * @returns {boolean} + */ + AuthService.prototype.isTokenExpiring = function () { + var _this = this; + return this.store.pipe(select(isTokenRefreshing), take(1), map(function (isRefreshing) { + if (_this.isTokenExpired() || isRefreshing) { + return false; + } + else { + var token = _this.getToken(); + return token.expires - (60 * 5 * 1000) < Date.now(); + } + })); + }; + /** + * Check if a token is expired + * @returns {boolean} + */ + AuthService.prototype.isTokenExpired = function (token) { + token = token || this.getToken(); + return token && token.expires < Date.now(); + }; + /** + * Save authentication token info + * + * @param {AuthTokenInfo} token The token to save + * @returns {AuthTokenInfo} + */ + AuthService.prototype.storeToken = function (token) { + // Add 1 day to the current date + var expireDate = Date.now() + (1000 * 60 * 60 * 24); + // Set the cookie expire date + var expires = new Date(expireDate); + var options = { expires: expires }; + // Save cookie with the token + return this.storage.set(TOKENITEM, token, options); + }; + /** + * Remove authentication token info + */ + AuthService.prototype.removeToken = function () { + return this.storage.remove(TOKENITEM); + }; + /** + * Replace authentication token info with a new one + */ + AuthService.prototype.replaceToken = function (token) { + this.removeToken(); + return this.storeToken(token); + }; + /** + * Redirect to the login route + */ + AuthService.prototype.redirectToLogin = function () { + this.router.navigate([LOGIN_ROUTE]); + }; + /** + * Redirect to the login route when token has expired + */ + AuthService.prototype.redirectToLoginWhenTokenExpired = function () { + var redirectUrl = LOGIN_ROUTE + '?expired=true'; + if (this._window.nativeWindow.location) { + // Hard redirect to login page, so that all state is definitely lost + this._window.nativeWindow.location.href = redirectUrl; + } + else if (this.response) { + if (!this.response._headerSent) { + this.response.redirect(302, redirectUrl); + } + } + else { + this.router.navigateByUrl(redirectUrl); + } + }; + /** + * Redirect to the route navigated before the login + */ + AuthService.prototype.redirectToPreviousUrl = function () { + var _this = this; + this.getRedirectUrl().pipe(take(1)) + .subscribe(function (redirectUrl) { + if (isNotEmpty(redirectUrl)) { + _this.clearRedirectUrl(); + _this.router.onSameUrlNavigation = 'reload'; + var url = decodeURIComponent(redirectUrl); + _this.router.navigateByUrl(url); + /* TODO Reenable hard redirect when REST API can handle x-forwarded-for, see https://github.com/DSpace/DSpace/pull/2207 */ + // this._window.nativeWindow.location.href = url; + } + else { + _this.router.navigate(['/']); + /* TODO Reenable hard redirect when REST API can handle x-forwarded-for, see https://github.com/DSpace/DSpace/pull/2207 */ + // this._window.nativeWindow.location.href = '/'; + } + }); + }; + /** + * Refresh route navigated + */ + AuthService.prototype.refreshAfterLogout = function () { + this.router.navigate(['/home']); + // Hard redirect to home page, so that all state is definitely lost + this._window.nativeWindow.location.href = '/home'; + }; + /** + * Get redirect url + */ + AuthService.prototype.getRedirectUrl = function () { + var redirectUrl = this.storage.get(REDIRECT_COOKIE); + if (isNotEmpty(redirectUrl)) { + return observableOf(redirectUrl); + } + else { + return this.store.pipe(select(getRedirectUrl)); + } + }; + /** + * Set redirect url + */ + AuthService.prototype.setRedirectUrl = function (url) { + // Add 1 hour to the current date + var expireDate = Date.now() + (1000 * 60 * 60); + // Set the cookie expire date + var expires = new Date(expireDate); + var options = { expires: expires }; + this.storage.set(REDIRECT_COOKIE, url, options); + this.store.dispatch(new SetRedirectUrlAction(isNotUndefined(url) ? url : '')); + }; + /** + * Clear redirect url + */ + AuthService.prototype.clearRedirectUrl = function () { + this.store.dispatch(new SetRedirectUrlAction('')); + this.storage.remove(REDIRECT_COOKIE); + }; + AuthService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(REQUEST)), + tslib_1.__param(1, Inject(NativeWindowService)), + tslib_1.__param(3, Optional()), tslib_1.__param(3, Inject(RESPONSE)), + tslib_1.__metadata("design:paramtypes", [Object, NativeWindowRef, + AuthRequestService, Object, Router, + CookieService, + Store, + RemoteDataBuildService]) + ], AuthService); + return AuthService; +}()); +export { AuthService }; +//# sourceMappingURL=auth.service.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.service.js.map b/src/app/core/auth/auth.service.js.map new file mode 100644 index 0000000000..272f9a9a86 --- /dev/null +++ b/src/app/core/auth/auth.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["auth.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/authenticated.guard.js b/src/app/core/auth/authenticated.guard.js new file mode 100644 index 0000000000..194cf6c659 --- /dev/null +++ b/src/app/core/auth/authenticated.guard.js @@ -0,0 +1,68 @@ +import * as tslib_1 from "tslib"; +import { take } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { Router } from '@angular/router'; +import { select, Store } from '@ngrx/store'; +import { isAuthenticated } from './selectors'; +import { AuthService } from './auth.service'; +import { RedirectWhenAuthenticationIsRequiredAction } from './auth.actions'; +/** + * Prevent unauthorized activating and loading of routes + * @class AuthenticatedGuard + */ +var AuthenticatedGuard = /** @class */ (function () { + /** + * @constructor + */ + function AuthenticatedGuard(authService, router, store) { + this.authService = authService; + this.router = router; + this.store = store; + } + /** + * True when user is authenticated + * @method canActivate + */ + AuthenticatedGuard.prototype.canActivate = function (route, state) { + var url = state.url; + return this.handleAuth(url); + }; + /** + * True when user is authenticated + * @method canActivateChild + */ + AuthenticatedGuard.prototype.canActivateChild = function (route, state) { + return this.canActivate(route, state); + }; + /** + * True when user is authenticated + * @method canLoad + */ + AuthenticatedGuard.prototype.canLoad = function (route) { + var url = "/" + route.path; + return this.handleAuth(url); + }; + AuthenticatedGuard.prototype.handleAuth = function (url) { + var _this = this; + // get observable + var observable = this.store.pipe(select(isAuthenticated)); + // redirect to sign in page if user is not authenticated + observable.pipe( + // .filter(() => isEmpty(this.router.routerState.snapshot.url) || this.router.routerState.snapshot.url === url) + take(1)) + .subscribe(function (authenticated) { + if (!authenticated) { + _this.authService.setRedirectUrl(url); + _this.store.dispatch(new RedirectWhenAuthenticationIsRequiredAction('Login required')); + } + }); + return observable; + }; + AuthenticatedGuard = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [AuthService, Router, Store]) + ], AuthenticatedGuard); + return AuthenticatedGuard; +}()); +export { AuthenticatedGuard }; +//# sourceMappingURL=authenticated.guard.js.map \ No newline at end of file diff --git a/src/app/core/auth/authenticated.guard.js.map b/src/app/core/auth/authenticated.guard.js.map new file mode 100644 index 0000000000..0cb1af8138 --- /dev/null +++ b/src/app/core/auth/authenticated.guard.js.map @@ -0,0 +1 @@ +{"version":3,"file":"authenticated.guard.js","sourceRoot":"","sources":["authenticated.guard.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAuD,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAGnH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAI5C,OAAO,EAAE,eAAe,EAA2B,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,0CAA0C,EAAE,MAAM,gBAAgB,CAAC;AAG5E;;;GAGG;AAEH;IAEE;;OAEG;IACH,4BAAoB,WAAwB,EAAU,MAAc,EAAU,KAAuB;QAAjF,gBAAW,GAAX,WAAW,CAAa;QAAU,WAAM,GAAN,MAAM,CAAQ;QAAU,UAAK,GAAL,KAAK,CAAkB;IAAG,CAAC;IAEzG;;;OAGG;IACH,wCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QACnE,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,6CAAgB,GAAhB,UAAiB,KAA6B,EAAE,KAA0B;QACxE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,oCAAO,GAAP,UAAQ,KAAY;QAClB,IAAM,GAAG,GAAG,MAAI,KAAK,CAAC,IAAM,CAAC;QAE7B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAEO,uCAAU,GAAlB,UAAmB,GAAW;QAA9B,iBAgBC;QAfC,iBAAiB;QACjB,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QAE5D,wDAAwD;QACxD,UAAU,CAAC,IAAI;QACb,+GAA+G;QAC/G,IAAI,CAAC,CAAC,CAAC,CAAC;aACP,SAAS,CAAC,UAAC,aAAa;YACvB,IAAI,CAAC,aAAa,EAAE;gBAClB,KAAI,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBACrC,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,0CAA0C,CAAC,gBAAgB,CAAC,CAAC,CAAC;aACvF;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAlDU,kBAAkB;QAD9B,UAAU,EAAE;iDAMsB,WAAW,EAAkB,MAAM,EAAiB,KAAK;OAL/E,kBAAkB,CAmD9B;IAAD,yBAAC;CAAA,AAnDD,IAmDC;SAnDY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/auth/models/auth-error.model.js b/src/app/core/auth/models/auth-error.model.js new file mode 100644 index 0000000000..6eeec0f56c --- /dev/null +++ b/src/app/core/auth/models/auth-error.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=auth-error.model.js.map \ No newline at end of file diff --git a/src/app/core/auth/models/auth-error.model.js.map b/src/app/core/auth/models/auth-error.model.js.map new file mode 100644 index 0000000000..80bc34fbd3 --- /dev/null +++ b/src/app/core/auth/models/auth-error.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-error.model.js","sourceRoot":"","sources":["auth-error.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/auth/models/auth-status.model.js b/src/app/core/auth/models/auth-status.model.js new file mode 100644 index 0000000000..8d8023ec45 --- /dev/null +++ b/src/app/core/auth/models/auth-status.model.js @@ -0,0 +1,7 @@ +var AuthStatus = /** @class */ (function () { + function AuthStatus() { + } + return AuthStatus; +}()); +export { AuthStatus }; +//# sourceMappingURL=auth-status.model.js.map \ No newline at end of file diff --git a/src/app/core/auth/models/auth-status.model.js.map b/src/app/core/auth/models/auth-status.model.js.map new file mode 100644 index 0000000000..a7200d4a02 --- /dev/null +++ b/src/app/core/auth/models/auth-status.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-status.model.js","sourceRoot":"","sources":["auth-status.model.ts"],"names":[],"mappings":"AAOA;IAAA;IAeA,CAAC;IAAD,iBAAC;AAAD,CAAC,AAfD,IAeC"} \ No newline at end of file diff --git a/src/app/core/auth/models/auth-status.model.ts b/src/app/core/auth/models/auth-status.model.ts index e0d568397a..c521ebc800 100644 --- a/src/app/core/auth/models/auth-status.model.ts +++ b/src/app/core/auth/models/auth-status.model.ts @@ -42,6 +42,8 @@ export class AuthStatus implements CacheableObject { */ eperson: Observable>; + ssoLoginUrl?: string; + /** * True if the token is valid, false if there was no token or the token wasn't valid */ diff --git a/src/app/core/auth/models/auth-token-info.model.js b/src/app/core/auth/models/auth-token-info.model.js new file mode 100644 index 0000000000..a3e7afd2ae --- /dev/null +++ b/src/app/core/auth/models/auth-token-info.model.js @@ -0,0 +1,18 @@ +import { default as decode } from 'jwt-decode'; +export var TOKENITEM = 'dsAuthInfo'; +var AuthTokenInfo = /** @class */ (function () { + function AuthTokenInfo(token) { + this.accessToken = token.replace('Bearer ', ''); + try { + var tokenClaims = decode(this.accessToken); + // exp claim is in seconds, convert it se to milliseconds + this.expires = tokenClaims.exp * 1000; + } + catch (err) { + this.expires = 0; + } + } + return AuthTokenInfo; +}()); +export { AuthTokenInfo }; +//# sourceMappingURL=auth-token-info.model.js.map \ No newline at end of file diff --git a/src/app/core/auth/models/auth-token-info.model.js.map b/src/app/core/auth/models/auth-token-info.model.js.map new file mode 100644 index 0000000000..b06a336395 --- /dev/null +++ b/src/app/core/auth/models/auth-token-info.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-token-info.model.js","sourceRoot":"","sources":["auth-token-info.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,CAAC,IAAM,SAAS,GAAG,YAAY,CAAC;AAEtC;IAIE,uBAAY,KAAa;QACvB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAChD,IAAI;YACF,IAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC7C,yDAAyD;YACzD,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,GAAG,IAAI,CAAC;SACvC;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;SAClB;IACH,CAAC;IACH,oBAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/core/auth/models/normalized-auth-status.model.js b/src/app/core/auth/models/normalized-auth-status.model.js new file mode 100644 index 0000000000..7d497a3422 --- /dev/null +++ b/src/app/core/auth/models/normalized-auth-status.model.js @@ -0,0 +1,41 @@ +import * as tslib_1 from "tslib"; +import { AuthStatus } from './auth-status.model'; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { mapsTo, relationship } from '../../cache/builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +import { NormalizedObject } from '../../cache/models/normalized-object.model'; +import { IDToUUIDSerializer } from '../../cache/id-to-uuid-serializer'; +var NormalizedAuthStatus = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedAuthStatus, _super); + function NormalizedAuthStatus() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedAuthStatus.prototype, "id", void 0); + tslib_1.__decorate([ + autoserializeAs(new IDToUUIDSerializer('auth-status'), 'id'), + tslib_1.__metadata("design:type", String) + ], NormalizedAuthStatus.prototype, "uuid", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedAuthStatus.prototype, "okay", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedAuthStatus.prototype, "authenticated", void 0); + tslib_1.__decorate([ + relationship(ResourceType.EPerson, false), + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedAuthStatus.prototype, "eperson", void 0); + NormalizedAuthStatus = tslib_1.__decorate([ + mapsTo(AuthStatus), + inheritSerialization(NormalizedObject) + ], NormalizedAuthStatus); + return NormalizedAuthStatus; +}(NormalizedObject)); +export { NormalizedAuthStatus }; +//# sourceMappingURL=normalized-auth-status.model.js.map \ No newline at end of file diff --git a/src/app/core/auth/models/normalized-auth-status.model.js.map b/src/app/core/auth/models/normalized-auth-status.model.js.map new file mode 100644 index 0000000000..00d99272c4 --- /dev/null +++ b/src/app/core/auth/models/normalized-auth-status.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-auth-status.model.js","sourceRoot":"","sources":["normalized-auth-status.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAIvE;IAA0C,gDAA4B;IAAtE;;IAsBA,CAAC;IApBC;QADC,aAAa;;oDACH;IAGX;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC;;sDAChD;IAMb;QADC,aAAa;;sDACA;IAMd;QADC,aAAa;;+DACS;IAIvB;QAFC,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;QACzC,aAAa;;yDACE;IArBL,oBAAoB;QAFhC,MAAM,CAAC,UAAU,CAAC;QAClB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,oBAAoB,CAsBhC;IAAD,2BAAC;CAAA,AAtBD,CAA0C,gBAAgB,GAsBzD;SAtBY,oBAAoB"} \ No newline at end of file diff --git a/src/app/core/auth/selectors.js b/src/app/core/auth/selectors.js new file mode 100644 index 0000000000..41bdfc0276 --- /dev/null +++ b/src/app/core/auth/selectors.js @@ -0,0 +1,175 @@ +import { createSelector } from '@ngrx/store'; +import { EPerson } from '../eperson/models/eperson.model'; +/** + * Returns the user state. + * @function getUserState + * @param {AppState} state Top level state. + * @return {AuthState} + */ +export var getAuthState = function (state) { return state.core.auth; }; +/** + * Returns true if the user is authenticated. + * @function _isAuthenticated + * @param {State} state + * @returns {boolean} + */ +var _isAuthenticated = function (state) { return state.authenticated; }; +/** + * Returns true if the authenticated has loaded. + * @function _isAuthenticatedLoaded + * @param {State} state + * @returns {boolean} + */ +var _isAuthenticatedLoaded = function (state) { return state.loaded; }; +/** + * Return the users state + * NOTE: when state is REHYDRATED user object lose prototype so return always a new EPerson object + * @function _getAuthenticatedUser + * @param {State} state + * @returns {EPerson} + */ +var _getAuthenticatedUser = function (state) { return Object.assign(new EPerson(), state.user); }; +/** + * Returns the authentication error. + * @function _getAuthenticationError + * @param {State} state + * @returns {string} + */ +var _getAuthenticationError = function (state) { return state.error; }; +/** + * Returns the authentication info message. + * @function _getAuthenticationInfo + * @param {State} state + * @returns {string} + */ +var _getAuthenticationInfo = function (state) { return state.info; }; +/** + * Returns true if request is in progress. + * @function _isLoading + * @param {State} state + * @returns {boolean} + */ +var _isLoading = function (state) { return state.loading; }; +/** + * Returns true if a refresh token request is in progress. + * @function _isRefreshing + * @param {State} state + * @returns {boolean} + */ +var _isRefreshing = function (state) { return state.refreshing; }; +/** + * Returns the authentication token. + * @function _getAuthenticationToken + * @param {State} state + * @returns {AuthToken} + */ +var _getAuthenticationToken = function (state) { return state.authToken; }; +/** + * Returns the sign out error. + * @function _getLogOutError + * @param {State} state + * @returns {string} + */ +var _getLogOutError = function (state) { return state.error; }; +/** + * Returns the sign up error. + * @function _getRegistrationError + * @param {State} state + * @returns {string} + */ +var _getRegistrationError = function (state) { return state.error; }; +/** + * Returns the redirect url. + * @function _getRedirectUrl + * @param {State} state + * @returns {string} + */ +var _getRedirectUrl = function (state) { return state.redirectUrl; }; +/** + * Returns the authenticated user + * @function getAuthenticatedUser + * @param {AuthState} state + * @param {any} props + * @return {User} + */ +export var getAuthenticatedUser = createSelector(getAuthState, _getAuthenticatedUser); +/** + * Returns the authentication error. + * @function getAuthenticationError + * @param {AuthState} state + * @param {any} props + * @return {Error} + */ +export var getAuthenticationError = createSelector(getAuthState, _getAuthenticationError); +/** + * Returns the authentication info message. + * @function getAuthenticationInfo + * @param {AuthState} state + * @param {any} props + * @return {string} + */ +export var getAuthenticationInfo = createSelector(getAuthState, _getAuthenticationInfo); +/** + * Returns true if the user is authenticated + * @function isAuthenticated + * @param {AuthState} state + * @param {any} props + * @return {boolean} + */ +export var isAuthenticated = createSelector(getAuthState, _isAuthenticated); +/** + * Returns true if the user is authenticated + * @function isAuthenticated + * @param {AuthState} state + * @param {any} props + * @return {boolean} + */ +export var isAuthenticatedLoaded = createSelector(getAuthState, _isAuthenticatedLoaded); +/** + * Returns true if the authentication request is loading. + * @function isAuthenticationLoading + * @param {AuthState} state + * @param {any} props + * @return {boolean} + */ +export var isAuthenticationLoading = createSelector(getAuthState, _isLoading); +/** + * Returns true if the refresh token request is loading. + * @function isTokenRefreshing + * @param {AuthState} state + * @param {any} props + * @return {boolean} + */ +export var isTokenRefreshing = createSelector(getAuthState, _isRefreshing); +/** + * Returns the authentication token. + * @function getAuthenticationToken + * @param {State} state + * @returns {AuthToken} + */ +export var getAuthenticationToken = createSelector(getAuthState, _getAuthenticationToken); +/** + * Returns the log out error. + * @function getLogOutError + * @param {AuthState} state + * @param {any} props + * @return {Error} + */ +export var getLogOutError = createSelector(getAuthState, _getLogOutError); +/** + * Returns the registration error. + * @function getRegistrationError + * @param {AuthState} state + * @param {any} props + * @return {Error} + */ +export var getRegistrationError = createSelector(getAuthState, _getRegistrationError); +/** + * Returns the redirect url. + * @function getRedirectUrl + * @param {AuthState} state + * @param {any} props + * @return {string} + */ +export var getRedirectUrl = createSelector(getAuthState, _getRedirectUrl); +//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/core/auth/selectors.js.map b/src/app/core/auth/selectors.js.map new file mode 100644 index 0000000000..7fb484c273 --- /dev/null +++ b/src/app/core/auth/selectors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/server-auth.service.js b/src/app/core/auth/server-auth.service.js new file mode 100644 index 0000000000..f71210ffb0 --- /dev/null +++ b/src/app/core/auth/server-auth.service.js @@ -0,0 +1,73 @@ +import * as tslib_1 from "tslib"; +import { map, switchMap, take } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { HttpHeaders } from '@angular/common/http'; +import { isNotEmpty } from '../../shared/empty.util'; +import { AuthService } from './auth.service'; +import { CheckAuthenticationTokenAction } from './auth.actions'; +/** + * The auth service. + */ +var ServerAuthService = /** @class */ (function (_super) { + tslib_1.__extends(ServerAuthService, _super); + function ServerAuthService() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * Returns the authenticated user + * @returns {User} + */ + ServerAuthService.prototype.authenticatedUser = function (token) { + var _this = this; + // Determine if the user has an existing auth session on the server + var options = Object.create({}); + var headers = new HttpHeaders(); + headers = headers.append('Accept', 'application/json'); + headers = headers.append('Authorization', "Bearer " + token.accessToken); + // NB this is used to pass server client IP check. + var clientIp = this.req.get('x-forwarded-for') || this.req.connection.remoteAddress; + headers = headers.append('X-Forwarded-For', clientIp); + options.headers = headers; + return this.authRequestService.getRequest('status', options).pipe(map(function (status) { return _this.rdbService.build(status); }), switchMap(function (status) { + if (status.authenticated) { + return status.eperson.pipe(map(function (eperson) { return eperson.payload; })); + } + else { + throw (new Error('Not authenticated')); + } + })); + }; + /** + * Checks if token is present into browser storage and is valid. (NB Check is done only on SSR) + */ + ServerAuthService.prototype.checkAuthenticationToken = function () { + this.store.dispatch(new CheckAuthenticationTokenAction()); + }; + /** + * Redirect to the route navigated before the login + */ + ServerAuthService.prototype.redirectToPreviousUrl = function () { + var _this = this; + this.getRedirectUrl().pipe(take(1)) + .subscribe(function (redirectUrl) { + if (isNotEmpty(redirectUrl)) { + // override the route reuse strategy + _this.router.routeReuseStrategy.shouldReuseRoute = function () { + return false; + }; + _this.router.navigated = false; + var url = decodeURIComponent(redirectUrl); + _this.router.navigateByUrl(url); + } + else { + _this.router.navigate(['/']); + } + }); + }; + ServerAuthService = tslib_1.__decorate([ + Injectable() + ], ServerAuthService); + return ServerAuthService; +}(AuthService)); +export { ServerAuthService }; +//# sourceMappingURL=server-auth.service.js.map \ No newline at end of file diff --git a/src/app/core/auth/server-auth.service.js.map b/src/app/core/auth/server-auth.service.js.map new file mode 100644 index 0000000000..37d35931e7 --- /dev/null +++ b/src/app/core/auth/server-auth.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-auth.service.js","sourceRoot":"","sources":["server-auth.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/browse/browse-entry-search-options.model.js b/src/app/core/browse/browse-entry-search-options.model.js new file mode 100644 index 0000000000..28c4f0e4c1 --- /dev/null +++ b/src/app/core/browse/browse-entry-search-options.model.js @@ -0,0 +1,19 @@ +/** + * A class that defines the search options to be used for fetching browse entries or items + * - metadataDefinition: The metadata definition to fetch entries or items for + * - pagination: Optional pagination options to use + * - sort: Optional sorting options to use + * - scope: An optional scope to limit the results within a specific collection or community + */ +var BrowseEntrySearchOptions = /** @class */ (function () { + function BrowseEntrySearchOptions(metadataDefinition, pagination, sort, startsWith, scope) { + this.metadataDefinition = metadataDefinition; + this.pagination = pagination; + this.sort = sort; + this.startsWith = startsWith; + this.scope = scope; + } + return BrowseEntrySearchOptions; +}()); +export { BrowseEntrySearchOptions }; +//# sourceMappingURL=browse-entry-search-options.model.js.map \ No newline at end of file diff --git a/src/app/core/browse/browse-entry-search-options.model.js.map b/src/app/core/browse/browse-entry-search-options.model.js.map new file mode 100644 index 0000000000..c649957c0e --- /dev/null +++ b/src/app/core/browse/browse-entry-search-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-entry-search-options.model.js","sourceRoot":"","sources":["browse-entry-search-options.model.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH;IACE,kCAAmB,kBAA0B,EAC1B,UAAuC,EACvC,IAAkB,EAClB,UAAmB,EACnB,KAAc;QAJd,uBAAkB,GAAlB,kBAAkB,CAAQ;QAC1B,eAAU,GAAV,UAAU,CAA6B;QACvC,SAAI,GAAJ,IAAI,CAAc;QAClB,eAAU,GAAV,UAAU,CAAS;QACnB,UAAK,GAAL,KAAK,CAAS;IACjC,CAAC;IACH,+BAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/core/browse/browse.service.js b/src/app/core/browse/browse.service.js new file mode 100644 index 0000000000..0240811b7d --- /dev/null +++ b/src/app/core/browse/browse.service.js @@ -0,0 +1,240 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { distinctUntilChanged, map, startWith } from 'rxjs/operators'; +import { ensureArrayHasValue, hasValue, hasValueOperator, isEmpty, isNotEmpty, isNotEmptyOperator } from '../../shared/empty.util'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { PaginatedList } from '../data/paginated-list'; +import { BrowseEndpointRequest, BrowseEntriesRequest, BrowseItemsRequest } from '../data/request.models'; +import { RequestService } from '../data/request.service'; +import { BrowseDefinition } from '../shared/browse-definition.model'; +import { BrowseEntry } from '../shared/browse-entry.model'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { configureRequest, filterSuccessfulResponses, getBrowseDefinitionLinks, getFirstOccurrence, getRemoteDataPayload, getRequestFromRequestHref } from '../shared/operators'; +import { URLCombiner } from '../url-combiner/url-combiner'; +import { Item } from '../shared/item.model'; +/** + * The service handling all browse requests + */ +var BrowseService = /** @class */ (function () { + function BrowseService(requestService, halService, rdb) { + this.requestService = requestService; + this.halService = halService; + this.rdb = rdb; + this.linkPath = 'browses'; + } + BrowseService_1 = BrowseService; + BrowseService.toSearchKeyArray = function (metadataKey) { + var keyParts = metadataKey.split('.'); + var searchFor = []; + searchFor.push('*'); + for (var i = 0; i < keyParts.length - 1; i++) { + var prevParts = keyParts.slice(0, i + 1); + var nextPart = prevParts.concat(['*']).join('.'); + searchFor.push(nextPart); + } + searchFor.push(metadataKey); + return searchFor; + }; + /** + * Get all BrowseDefinitions + */ + BrowseService.prototype.getBrowseDefinitions = function () { + var _this = this; + var request$ = this.halService.getEndpoint(this.linkPath).pipe(isNotEmptyOperator(), distinctUntilChanged(), map(function (endpointURL) { return new BrowseEndpointRequest(_this.requestService.generateRequestId(), endpointURL); }), configureRequest(this.requestService)); + var href$ = request$.pipe(map(function (request) { return request.href; })); + var requestEntry$ = href$.pipe(getRequestFromRequestHref(this.requestService)); + var payload$ = requestEntry$.pipe(filterSuccessfulResponses(), map(function (response) { return response.payload; }), ensureArrayHasValue(), map(function (definitions) { return definitions + .map(function (definition) { return Object.assign(new BrowseDefinition(), definition); }); }), distinctUntilChanged()); + return this.rdb.toRemoteDataObservable(requestEntry$, payload$); + }; + /** + * Get all BrowseEntries filtered or modified by BrowseEntrySearchOptions + * @param options + */ + BrowseService.prototype.getBrowseEntriesFor = function (options) { + return this.getBrowseDefinitions().pipe(getBrowseDefinitionLinks(options.metadataDefinition), hasValueOperator(), map(function (_links) { return _links.entries; }), hasValueOperator(), map(function (href) { + // TODO nearly identical to PaginatedSearchOptions => refactor + var args = []; + if (isNotEmpty(options.scope)) { + args.push("scope=" + options.scope); + } + if (isNotEmpty(options.sort)) { + args.push("sort=" + options.sort.field + "," + options.sort.direction); + } + if (isNotEmpty(options.pagination)) { + args.push("page=" + (options.pagination.currentPage - 1)); + args.push("size=" + options.pagination.pageSize); + } + if (isNotEmpty(options.startsWith)) { + args.push("startsWith=" + options.startsWith); + } + if (isNotEmpty(args)) { + href = new URLCombiner(href, "?" + args.join('&')).toString(); + } + return href; + }), getBrowseEntriesFor(this.requestService, this.rdb)); + }; + /** + * Get all items linked to a certain metadata value + * @param {string} filterValue metadata value to filter by (e.g. author's name) + * @param options Options to narrow down your search + * @returns {Observable>>} + */ + BrowseService.prototype.getBrowseItemsFor = function (filterValue, options) { + return this.getBrowseDefinitions().pipe(getBrowseDefinitionLinks(options.metadataDefinition), hasValueOperator(), map(function (_links) { return _links.items; }), hasValueOperator(), map(function (href) { + var args = []; + if (isNotEmpty(options.scope)) { + args.push("scope=" + options.scope); + } + if (isNotEmpty(options.sort)) { + args.push("sort=" + options.sort.field + "," + options.sort.direction); + } + if (isNotEmpty(options.pagination)) { + args.push("page=" + (options.pagination.currentPage - 1)); + args.push("size=" + options.pagination.pageSize); + } + if (isNotEmpty(options.startsWith)) { + args.push("startsWith=" + options.startsWith); + } + if (isNotEmpty(filterValue)) { + args.push("filterValue=" + filterValue); + } + if (isNotEmpty(args)) { + href = new URLCombiner(href, "?" + args.join('&')).toString(); + } + return href; + }), getBrowseItemsFor(this.requestService, this.rdb)); + }; + /** + * Get the first item for a metadata definition in an optional scope + * @param definition + * @param scope + */ + BrowseService.prototype.getFirstItemFor = function (definition, scope) { + return this.getBrowseDefinitions().pipe(getBrowseDefinitionLinks(definition), hasValueOperator(), map(function (_links) { return _links.items; }), hasValueOperator(), map(function (href) { + var args = []; + if (hasValue(scope)) { + args.push("scope=" + scope); + } + args.push('page=0'); + args.push('size=1'); + if (isNotEmpty(args)) { + href = new URLCombiner(href, "?" + args.join('&')).toString(); + } + return href; + }), getBrowseItemsFor(this.requestService, this.rdb), getFirstOccurrence()); + }; + /** + * Get the previous page of items using the paginated list's prev link + * @param items + */ + BrowseService.prototype.getPrevBrowseItems = function (items) { + return observableOf(items.payload.prev).pipe(getBrowseItemsFor(this.requestService, this.rdb)); + }; + /** + * Get the next page of items using the paginated list's next link + * @param items + */ + BrowseService.prototype.getNextBrowseItems = function (items) { + return observableOf(items.payload.next).pipe(getBrowseItemsFor(this.requestService, this.rdb)); + }; + /** + * Get the previous page of browse-entries using the paginated list's prev link + * @param entries + */ + BrowseService.prototype.getPrevBrowseEntries = function (entries) { + return observableOf(entries.payload.prev).pipe(getBrowseEntriesFor(this.requestService, this.rdb)); + }; + /** + * Get the next page of browse-entries using the paginated list's next link + * @param entries + */ + BrowseService.prototype.getNextBrowseEntries = function (entries) { + return observableOf(entries.payload.next).pipe(getBrowseEntriesFor(this.requestService, this.rdb)); + }; + /** + * Get the browse URL by providing a metadatum key and linkPath + * @param metadatumKey + * @param linkPath + */ + BrowseService.prototype.getBrowseURLFor = function (metadataKey, linkPath) { + var searchKeyArray = BrowseService_1.toSearchKeyArray(metadataKey); + return this.getBrowseDefinitions().pipe(getRemoteDataPayload(), map(function (browseDefinitions) { return browseDefinitions + .find(function (def) { + var matchingKeys = def.metadataKeys.find(function (key) { return searchKeyArray.indexOf(key) >= 0; }); + return isNotEmpty(matchingKeys); + }); }), map(function (def) { + if (isEmpty(def) || isEmpty(def._links) || isEmpty(def._links[linkPath])) { + throw new Error("A browse endpoint for " + linkPath + " on " + metadataKey + " isn't configured"); + } + else { + return def._links[linkPath]; + } + }), startWith(undefined), distinctUntilChanged()); + }; + var BrowseService_1; + BrowseService = BrowseService_1 = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + HALEndpointService, + RemoteDataBuildService]) + ], BrowseService); + return BrowseService; +}()); +export { BrowseService }; +/** + * Operator for turning a href into a PaginatedList of BrowseEntries + * @param requestService + * @param responseCache + * @param rdb + */ +export var getBrowseEntriesFor = function (requestService, rdb) { + return function (source) { + return source.pipe(map(function (href) { return new BrowseEntriesRequest(requestService.generateRequestId(), href); }), configureRequest(requestService), toRDPaginatedBrowseEntries(requestService, rdb)); + }; +}; +/** + * Operator for turning a href into a PaginatedList of Items + * @param requestService + * @param responseCache + * @param rdb + */ +export var getBrowseItemsFor = function (requestService, rdb) { + return function (source) { + return source.pipe(map(function (href) { return new BrowseItemsRequest(requestService.generateRequestId(), href); }), configureRequest(requestService), toRDPaginatedBrowseItems(requestService, rdb)); + }; +}; +/** + * Operator for turning a RestRequest into a PaginatedList of Items + * @param requestService + * @param responseCache + * @param rdb + */ +export var toRDPaginatedBrowseItems = function (requestService, rdb) { + return function (source) { + var href$ = source.pipe(map(function (request) { return request.href; })); + var requestEntry$ = href$.pipe(getRequestFromRequestHref(requestService)); + var payload$ = requestEntry$.pipe(filterSuccessfulResponses(), map(function (response) { return new PaginatedList(response.pageInfo, response.payload); }), map(function (list) { return Object.assign(list, { + page: list.page ? list.page.map(function (item) { return Object.assign(new Item(), item); }) : list.page + }); }), distinctUntilChanged()); + return rdb.toRemoteDataObservable(requestEntry$, payload$); + }; +}; +/** + * Operator for turning a RestRequest into a PaginatedList of BrowseEntries + * @param requestService + * @param responseCache + * @param rdb + */ +export var toRDPaginatedBrowseEntries = function (requestService, rdb) { + return function (source) { + var href$ = source.pipe(map(function (request) { return request.href; })); + var requestEntry$ = href$.pipe(getRequestFromRequestHref(requestService)); + var payload$ = requestEntry$.pipe(filterSuccessfulResponses(), map(function (response) { return new PaginatedList(response.pageInfo, response.payload); }), map(function (list) { return Object.assign(list, { + page: list.page ? list.page.map(function (entry) { return Object.assign(new BrowseEntry(), entry); }) : list.page + }); }), distinctUntilChanged()); + return rdb.toRemoteDataObservable(requestEntry$, payload$); + }; +}; +//# sourceMappingURL=browse.service.js.map \ No newline at end of file diff --git a/src/app/core/browse/browse.service.js.map b/src/app/core/browse/browse.service.js.map new file mode 100644 index 0000000000..08d5b0055a --- /dev/null +++ b/src/app/core/browse/browse.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse.service.js","sourceRoot":"","sources":["browse.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/builders/build-decorators.js b/src/app/core/cache/builders/build-decorators.js new file mode 100644 index 0000000000..ecc7a31410 --- /dev/null +++ b/src/app/core/cache/builders/build-decorators.js @@ -0,0 +1,31 @@ +import 'reflect-metadata'; +var mapsToMetadataKey = Symbol('mapsTo'); +var relationshipKey = Symbol('relationship'); +var relationshipMap = new Map(); +export function mapsTo(value) { + return Reflect.metadata(mapsToMetadataKey, value); +} +export function getMapsTo(target) { + return Reflect.getOwnMetadata(mapsToMetadataKey, target); +} +export function relationship(value, isList) { + if (isList === void 0) { isList = false; } + return function r(target, propertyKey, descriptor) { + if (!target || !propertyKey) { + return; + } + var metaDataList = relationshipMap.get(target.constructor) || []; + if (metaDataList.indexOf(propertyKey) === -1) { + metaDataList.push(propertyKey); + } + relationshipMap.set(target.constructor, metaDataList); + return Reflect.metadata(relationshipKey, { resourceType: value, isList: isList }).apply(this, arguments); + }; +} +export function getRelationMetadata(target, propertyKey) { + return Reflect.getMetadata(relationshipKey, target, propertyKey); +} +export function getRelationships(target) { + return relationshipMap.get(target); +} +//# sourceMappingURL=build-decorators.js.map \ No newline at end of file diff --git a/src/app/core/cache/builders/build-decorators.js.map b/src/app/core/cache/builders/build-decorators.js.map new file mode 100644 index 0000000000..ad399fd36d --- /dev/null +++ b/src/app/core/cache/builders/build-decorators.js.map @@ -0,0 +1 @@ +{"version":3,"file":"build-decorators.js","sourceRoot":"","sources":["build-decorators.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAM1B,IAAM,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC3C,IAAM,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAE/C,IAAM,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;AAElC,MAAM,iBAAiB,KAA0C;IAC/D,OAAO,OAAO,CAAC,QAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,oBAAoB,MAAW;IACnC,OAAO,OAAO,CAAC,cAAc,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,uBAAuB,KAAmB,EAAE,MAAuB;IAAvB,uBAAA,EAAA,cAAuB;IACvE,OAAO,WAAW,MAAW,EAAE,WAAmB,EAAE,UAA8B;QAChF,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE;YAC3B,OAAO;SACR;QAED,IAAM,YAAY,GAAa,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC7E,IAAI,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE;YAC5C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAChC;QACD,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAEtD,OAAO,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnG,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,8BAA8B,MAAW,EAAE,WAAmB;IAClE,OAAO,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,2BAA2B,MAAW;IAC1C,OAAO,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC"} \ No newline at end of file diff --git a/src/app/core/cache/builders/normalized-object-build.service.js b/src/app/core/cache/builders/normalized-object-build.service.js new file mode 100644 index 0000000000..07ae9c01b4 --- /dev/null +++ b/src/app/core/cache/builders/normalized-object-build.service.js @@ -0,0 +1,51 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { getRelationships } from './build-decorators'; +import { NormalizedObjectFactory } from '../models/normalized-object-factory'; +import { hasValue, isNotEmpty } from '../../../shared/empty.util'; +/** + * Return true if halObj has a value for `_links.self` + * + * @param {any} halObj The object to test + */ +export function isRestDataObject(halObj) { + return isNotEmpty(halObj._links) && hasValue(halObj._links.self); +} +/** + * Return true if halObj has a value for `page` and `_embedded` + * + * @param {any} halObj The object to test + */ +export function isRestPaginatedList(halObj) { + return hasValue(halObj.page) && hasValue(halObj._embedded); +} +/** + * A service to turn domain models in to their normalized + * counterparts. + */ +var NormalizedObjectBuildService = /** @class */ (function () { + function NormalizedObjectBuildService() { + } + /** + * Returns the normalized model that corresponds to the given domain model + * + * @param {TDomain} domainModel a domain model + */ + NormalizedObjectBuildService.prototype.normalize = function (domainModel) { + var normalizedConstructor = NormalizedObjectFactory.getConstructor(domainModel.type); + var relationships = getRelationships(normalizedConstructor) || []; + var normalizedModel = Object.assign({}, domainModel); + relationships.forEach(function (key) { + if (hasValue(domainModel[key])) { + domainModel[key] = undefined; + } + }); + return normalizedModel; + }; + NormalizedObjectBuildService = tslib_1.__decorate([ + Injectable() + ], NormalizedObjectBuildService); + return NormalizedObjectBuildService; +}()); +export { NormalizedObjectBuildService }; +//# sourceMappingURL=normalized-object-build.service.js.map \ No newline at end of file diff --git a/src/app/core/cache/builders/normalized-object-build.service.js.map b/src/app/core/cache/builders/normalized-object-build.service.js.map new file mode 100644 index 0000000000..ac16e0f015 --- /dev/null +++ b/src/app/core/cache/builders/normalized-object-build.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-object-build.service.js","sourceRoot":"","sources":["normalized-object-build.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAElE;;;;GAIG;AACH,MAAM,2BAA2B,MAAW;IAC1C,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,MAAM,8BAA8B,MAAW;IAC7C,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7D,CAAC;AAED;;;GAGG;AAEH;IAAA;IAmBA,CAAC;IAjBC;;;;OAIG;IACH,gDAAS,GAAT,UAAqC,WAAc;QACjD,IAAM,qBAAqB,GAAG,uBAAuB,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvF,IAAM,aAAa,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;QAEpE,IAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,CAAQ,CAAC;QAC9D,aAAa,CAAC,OAAO,CAAC,UAAC,GAAW;YAChC,IAAI,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC9B,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;IACzB,CAAC;IAlBU,4BAA4B;QADxC,UAAU,EAAE;OACA,4BAA4B,CAmBxC;IAAD,mCAAC;CAAA,AAnBD,IAmBC;SAnBY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/cache/builders/remote-data-build.service.js b/src/app/core/cache/builders/remote-data-build.service.js new file mode 100644 index 0000000000..44a720007d --- /dev/null +++ b/src/app/core/cache/builders/remote-data-build.service.js @@ -0,0 +1,218 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { combineLatest as observableCombineLatest, of as observableOf, race as observableRace } from 'rxjs'; +import { distinctUntilChanged, flatMap, map, startWith, switchMap } from 'rxjs/operators'; +import { hasValue, hasValueOperator, isEmpty, isNotEmpty, isNotUndefined } from '../../../shared/empty.util'; +import { PaginatedList } from '../../data/paginated-list'; +import { RemoteData } from '../../data/remote-data'; +import { RemoteDataError } from '../../data/remote-data-error'; +import { GetRequest } from '../../data/request.models'; +import { RequestService } from '../../data/request.service'; +import { ObjectCacheService } from '../object-cache.service'; +import { getMapsTo, getRelationMetadata, getRelationships } from './build-decorators'; +import { filterSuccessfulResponses, getRequestFromRequestHref, getRequestFromRequestUUID, getResourceLinksFromResponse } from '../../shared/operators'; +var RemoteDataBuildService = /** @class */ (function () { + function RemoteDataBuildService(objectCache, requestService) { + this.objectCache = objectCache; + this.requestService = requestService; + } + RemoteDataBuildService.prototype.buildSingle = function (href$) { + var _this = this; + if (typeof href$ === 'string') { + href$ = observableOf(href$); + } + var requestUUID$ = href$.pipe(switchMap(function (href) { + return _this.objectCache.getRequestUUIDBySelfLink(href); + })); + var requestEntry$ = observableRace(href$.pipe(getRequestFromRequestHref(this.requestService)), requestUUID$.pipe(getRequestFromRequestUUID(this.requestService))); + // always use self link if that is cached, only if it isn't, get it via the response. + var payload$ = observableCombineLatest(href$.pipe(switchMap(function (href) { return _this.objectCache.getObjectBySelfLink(href); }), startWith(undefined)), requestEntry$.pipe(getResourceLinksFromResponse(), switchMap(function (resourceSelfLinks) { + if (isNotEmpty(resourceSelfLinks)) { + return _this.objectCache.getObjectBySelfLink(resourceSelfLinks[0]); + } + else { + return observableOf(undefined); + } + }), distinctUntilChanged(), startWith(undefined))).pipe(map(function (_a) { + var fromSelfLink = _a[0], fromResponse = _a[1]; + if (hasValue(fromSelfLink)) { + return fromSelfLink; + } + else { + return fromResponse; + } + }), hasValueOperator(), map(function (normalized) { + return _this.build(normalized); + }), startWith(undefined), distinctUntilChanged()); + return this.toRemoteDataObservable(requestEntry$, payload$); + }; + RemoteDataBuildService.prototype.toRemoteDataObservable = function (requestEntry$, payload$) { + return observableCombineLatest(requestEntry$, payload$).pipe(map(function (_a) { + var reqEntry = _a[0], payload = _a[1]; + var requestPending = hasValue(reqEntry.requestPending) ? reqEntry.requestPending : true; + var responsePending = hasValue(reqEntry.responsePending) ? reqEntry.responsePending : false; + var isSuccessful; + var error; + if (hasValue(reqEntry) && hasValue(reqEntry.response)) { + isSuccessful = reqEntry.response.isSuccessful; + var errorMessage = isSuccessful === false ? reqEntry.response.errorMessage : undefined; + if (hasValue(errorMessage)) { + error = new RemoteDataError(reqEntry.response.statusCode, reqEntry.response.statusText, errorMessage); + } + } + return new RemoteData(requestPending, responsePending, isSuccessful, error, payload); + })); + }; + RemoteDataBuildService.prototype.buildList = function (href$) { + var _this = this; + if (typeof href$ === 'string') { + href$ = observableOf(href$); + } + var requestEntry$ = href$.pipe(getRequestFromRequestHref(this.requestService)); + var tDomainList$ = requestEntry$.pipe(getResourceLinksFromResponse(), flatMap(function (resourceUUIDs) { + return _this.objectCache.getList(resourceUUIDs).pipe(map(function (normList) { + return normList.map(function (normalized) { + return _this.build(normalized); + }); + })); + }), startWith([]), distinctUntilChanged()); + var pageInfo$ = requestEntry$.pipe(filterSuccessfulResponses(), map(function (response) { + if (hasValue(response.pageInfo)) { + var resPageInfo = response.pageInfo; + if (isNotEmpty(resPageInfo) && resPageInfo.currentPage >= 0) { + return Object.assign({}, resPageInfo, { currentPage: resPageInfo.currentPage + 1 }); + } + else { + return resPageInfo; + } + } + })); + var payload$ = observableCombineLatest(tDomainList$, pageInfo$).pipe(map(function (_a) { + var tDomainList = _a[0], pageInfo = _a[1]; + return new PaginatedList(pageInfo, tDomainList); + })); + return this.toRemoteDataObservable(requestEntry$, payload$); + }; + RemoteDataBuildService.prototype.build = function (normalized) { + var _this = this; + var links = {}; + var relationships = getRelationships(normalized.constructor) || []; + relationships.forEach(function (relationship) { + var result; + if (hasValue(normalized[relationship])) { + var _a = getRelationMetadata(normalized, relationship), resourceType = _a.resourceType, isList = _a.isList; + var objectList = normalized[relationship].page || normalized[relationship]; + if (typeof objectList !== 'string') { + objectList.forEach(function (href) { + _this.requestService.configure(new GetRequest(_this.requestService.generateRequestId(), href)); + }); + var rdArr_1 = []; + objectList.forEach(function (href) { + rdArr_1.push(_this.buildSingle(href)); + }); + if (isList) { + result = _this.aggregate(rdArr_1); + } + else if (rdArr_1.length === 1) { + result = rdArr_1[0]; + } + } + else { + _this.requestService.configure(new GetRequest(_this.requestService.generateRequestId(), objectList)); + // The rest API can return a single URL to represent a list of resources (e.g. /items/:id/bitstreams) + // in that case only 1 href will be stored in the normalized obj (so the isArray above fails), + // but it should still be built as a list + if (isList) { + result = _this.buildList(objectList); + } + else { + result = _this.buildSingle(objectList); + } + } + if (hasValue(normalized[relationship].page)) { + links[relationship] = _this.toPaginatedList(result, normalized[relationship].pageInfo); + } + else { + links[relationship] = result; + } + } + }); + var domainModel = getMapsTo(normalized.constructor); + return Object.assign(new domainModel(), normalized, links); + }; + RemoteDataBuildService.prototype.aggregate = function (input) { + if (isEmpty(input)) { + return observableOf(new RemoteData(false, false, true, null, [])); + } + return observableCombineLatest.apply(void 0, input).pipe(map(function (arr) { + // The request of an aggregate RD should be pending if at least one + // of the RDs it's based on is still in the state RequestPending + var requestPending = arr + .map(function (d) { return d.isRequestPending; }) + .find(function (b) { return b === true; }); + // The response of an aggregate RD should be pending if no requests + // are still pending and at least one of the RDs it's based + // on is still in the state ResponsePending + var responsePending = !requestPending && arr + .map(function (d) { return d.isResponsePending; }) + .find(function (b) { return b === true; }); + var isSuccessful; + // isSuccessful should be undefined until all responses have come in. + // We can't know its state beforehand. We also can't say it's false + // because that would imply a request failed. + if (!(requestPending || responsePending)) { + isSuccessful = arr + .map(function (d) { return d.hasSucceeded; }) + .every(function (b) { return b === true; }); + } + var errorMessage = arr + .map(function (d) { return d.error; }) + .map(function (e, idx) { + if (hasValue(e)) { + return "[" + idx + "]: " + e.message; + } + }).filter(function (e) { return hasValue(e); }) + .join(', '); + var statusText = arr + .map(function (d) { return d.error; }) + .map(function (e, idx) { + if (hasValue(e)) { + return "[" + idx + "]: " + e.statusText; + } + }).filter(function (c) { return hasValue(c); }) + .join(', '); + var statusCode = arr + .map(function (d) { return d.error; }) + .map(function (e, idx) { + if (hasValue(e)) { + return e.statusCode; + } + }).filter(function (c) { return hasValue(c); }) + .reduce(function (acc, status) { return status; }, undefined); + var error = new RemoteDataError(statusCode, statusText, errorMessage); + var payload = arr.map(function (d) { return d.payload; }); + return new RemoteData(requestPending, responsePending, isSuccessful, error, payload); + })); + }; + RemoteDataBuildService.prototype.toPaginatedList = function (input, pageInfo) { + return input.pipe(map(function (rd) { + if (Array.isArray(rd.payload)) { + return Object.assign(rd, { payload: new PaginatedList(pageInfo, rd.payload) }); + } + else if (isNotUndefined(rd.payload)) { + return Object.assign(rd, { payload: new PaginatedList(pageInfo, rd.payload.page) }); + } + else { + return Object.assign(rd, { payload: new PaginatedList(pageInfo, []) }); + } + })); + }; + RemoteDataBuildService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [ObjectCacheService, + RequestService]) + ], RemoteDataBuildService); + return RemoteDataBuildService; +}()); +export { RemoteDataBuildService }; +//# sourceMappingURL=remote-data-build.service.js.map \ No newline at end of file diff --git a/src/app/core/cache/builders/remote-data-build.service.js.map b/src/app/core/cache/builders/remote-data-build.service.js.map new file mode 100644 index 0000000000..0ec9f94144 --- /dev/null +++ b/src/app/core/cache/builders/remote-data-build.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"remote-data-build.service.js","sourceRoot":"","sources":["remote-data-build.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/cache-entry.js b/src/app/core/cache/cache-entry.js new file mode 100644 index 0000000000..a317688951 --- /dev/null +++ b/src/app/core/cache/cache-entry.js @@ -0,0 +1 @@ +//# sourceMappingURL=cache-entry.js.map \ No newline at end of file diff --git a/src/app/core/cache/cache-entry.js.map b/src/app/core/cache/cache-entry.js.map new file mode 100644 index 0000000000..2e5e21fbf3 --- /dev/null +++ b/src/app/core/cache/cache-entry.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cache-entry.js","sourceRoot":"","sources":["cache-entry.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/cache/id-to-uuid-serializer.js b/src/app/core/cache/id-to-uuid-serializer.js new file mode 100644 index 0000000000..71ba487106 --- /dev/null +++ b/src/app/core/cache/id-to-uuid-serializer.js @@ -0,0 +1,36 @@ +import { hasValue } from '../../shared/empty.util'; +/** + * Serializer to create unique fake UUID's from id's that might otherwise be the same across multiple object types + */ +var IDToUUIDSerializer = /** @class */ (function () { + /** + * @param {string} prefix To prepend the original ID with + */ + function IDToUUIDSerializer(prefix) { + this.prefix = prefix; + } + /** + * Method to serialize a UUID + * @param {string} uuid + * @returns {any} undefined Fake UUID's should not be sent back to the server, but only be used in the UI + */ + IDToUUIDSerializer.prototype.Serialize = function (uuid) { + return undefined; + }; + /** + * Method to deserialize a UUID + * @param {string} id Identifier to transform in to a UUID + * @returns {string} UUID based on the prefix and the given id + */ + IDToUUIDSerializer.prototype.Deserialize = function (id) { + if (hasValue(id)) { + return this.prefix + "-" + id; + } + else { + return id; + } + }; + return IDToUUIDSerializer; +}()); +export { IDToUUIDSerializer }; +//# sourceMappingURL=id-to-uuid-serializer.js.map \ No newline at end of file diff --git a/src/app/core/cache/id-to-uuid-serializer.js.map b/src/app/core/cache/id-to-uuid-serializer.js.map new file mode 100644 index 0000000000..967c64d34f --- /dev/null +++ b/src/app/core/cache/id-to-uuid-serializer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"id-to-uuid-serializer.js","sourceRoot":"","sources":["id-to-uuid-serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD;;GAEG;AACH;IACE;;OAEG;IACH,4BAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAClC,CAAC;IAED;;;;OAIG;IACH,sCAAS,GAAT,UAAU,IAAY;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,wCAAW,GAAX,UAAY,EAAU;QACpB,IAAI,QAAQ,CAAC,EAAE,CAAC,EAAE;YAChB,OAAU,IAAI,CAAC,MAAM,SAAI,EAAI,CAAC;SAC/B;aAAM;YACL,OAAO,EAAE,CAAC;SACX;IAEH,CAAC;IACH,yBAAC;AAAD,CAAC,AA7BD,IA6BC"} \ No newline at end of file diff --git a/src/app/core/cache/models/action-type.model.js b/src/app/core/cache/models/action-type.model.js new file mode 100644 index 0000000000..722172f05b --- /dev/null +++ b/src/app/core/cache/models/action-type.model.js @@ -0,0 +1,55 @@ +/** + * Enum representing the Action Type of a Resource Policy + */ +export var ActionType; +(function (ActionType) { + /** + * Action of reading, viewing or downloading something + */ + ActionType[ActionType["READ"] = 0] = "READ"; + /** + * Action of modifying something + */ + ActionType[ActionType["WRITE"] = 1] = "WRITE"; + /** + * Action of deleting something + */ + ActionType[ActionType["DELETE"] = 2] = "DELETE"; + /** + * Action of adding something to a container + */ + ActionType[ActionType["ADD"] = 3] = "ADD"; + /** + * Action of removing something from a container + */ + ActionType[ActionType["REMOVE"] = 4] = "REMOVE"; + /** + * Action of performing workflow step 1 + */ + ActionType[ActionType["WORKFLOW_STEP_1"] = 5] = "WORKFLOW_STEP_1"; + /** + * Action of performing workflow step 2 + */ + ActionType[ActionType["WORKFLOW_STEP_2"] = 6] = "WORKFLOW_STEP_2"; + /** + * Action of performing workflow step 3 + */ + ActionType[ActionType["WORKFLOW_STEP_3"] = 7] = "WORKFLOW_STEP_3"; + /** + * Action of performing a workflow abort + */ + ActionType[ActionType["WORKFLOW_ABORT"] = 8] = "WORKFLOW_ABORT"; + /** + * Default Read policies for Bitstreams submitted to container + */ + ActionType[ActionType["DEFAULT_BITSTREAM_READ"] = 9] = "DEFAULT_BITSTREAM_READ"; + /** + * Default Read policies for Items submitted to container + */ + ActionType[ActionType["DEFAULT_ITEM_READ"] = 10] = "DEFAULT_ITEM_READ"; + /** + * Administrative actions + */ + ActionType[ActionType["ADMIN"] = 11] = "ADMIN"; +})(ActionType || (ActionType = {})); +//# sourceMappingURL=action-type.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/action-type.model.js.map b/src/app/core/cache/models/action-type.model.js.map new file mode 100644 index 0000000000..7d91d1e611 --- /dev/null +++ b/src/app/core/cache/models/action-type.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"action-type.model.js","sourceRoot":"","sources":["action-type.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,UA4DX;AA5DD,WAAY,UAAU;IACpB;;OAEG;IACH,2CAAQ,CAAA;IAER;;OAEG;IACH,6CAAS,CAAA;IAET;;OAEG;IACH,+CAAU,CAAA;IAEV;;OAEG;IACH,yCAAO,CAAA;IAEP;;OAEG;IACH,+CAAU,CAAA;IAEV;;OAEG;IACH,iEAAmB,CAAA;IAEnB;;OAEG;IACH,iEAAmB,CAAA;IAEnB;;OAEG;IACH,iEAAmB,CAAA;IAEnB;;OAEG;IACH,+DAAkB,CAAA;IAElB;;OAEG;IACH,+EAA0B,CAAA;IAE1B;;OAEG;IACH,sEAAsB,CAAA;IAEtB;;OAEG;IACH,8CAAU,CAAA;AACZ,CAAC,EA5DW,UAAU,KAAV,UAAU,QA4DrB"} \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-item-type.model.js b/src/app/core/cache/models/items/normalized-item-type.model.js new file mode 100644 index 0000000000..e0e0ed89f4 --- /dev/null +++ b/src/app/core/cache/models/items/normalized-item-type.model.js @@ -0,0 +1,35 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { ItemType } from '../../../shared/item-relationships/item-type.model'; +import { ResourceType } from '../../../shared/resource-type'; +import { mapsTo } from '../../builders/build-decorators'; +import { NormalizedObject } from '../normalized-object.model'; +import { IDToUUIDSerializer } from '../../id-to-uuid-serializer'; +/** + * Normalized model class for a DSpace ItemType + */ +var NormalizedItemType = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedItemType, _super); + function NormalizedItemType() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedItemType.prototype, "label", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedItemType.prototype, "id", void 0); + tslib_1.__decorate([ + autoserializeAs(new IDToUUIDSerializer(ResourceType.ItemType), 'id'), + tslib_1.__metadata("design:type", String) + ], NormalizedItemType.prototype, "uuid", void 0); + NormalizedItemType = tslib_1.__decorate([ + mapsTo(ItemType), + inheritSerialization(NormalizedObject) + ], NormalizedItemType); + return NormalizedItemType; +}(NormalizedObject)); +export { NormalizedItemType }; +//# sourceMappingURL=normalized-item-type.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-item-type.model.js.map b/src/app/core/cache/models/items/normalized-item-type.model.js.map new file mode 100644 index 0000000000..9210a61d46 --- /dev/null +++ b/src/app/core/cache/models/items/normalized-item-type.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-item-type.model.js","sourceRoot":"","sources":["normalized-item-type.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,oDAAoD,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AAGH;IAAwC,8CAA0B;IAAlE;;IAmBA,CAAC;IAbC;QADC,aAAa;;qDACA;IAMd;QADC,aAAa;;kDACH;IAMX;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;;oDACxD;IAlBF,kBAAkB;QAF9B,MAAM,CAAC,QAAQ,CAAC;QAChB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,kBAAkB,CAmB9B;IAAD,yBAAC;CAAA,AAnBD,CAAwC,gBAAgB,GAmBvD;SAnBY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-relationship-type.model.js b/src/app/core/cache/models/items/normalized-relationship-type.model.js new file mode 100644 index 0000000000..49808cc80a --- /dev/null +++ b/src/app/core/cache/models/items/normalized-relationship-type.model.js @@ -0,0 +1,66 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { RelationshipType } from '../../../shared/item-relationships/relationship-type.model'; +import { ResourceType } from '../../../shared/resource-type'; +import { mapsTo, relationship } from '../../builders/build-decorators'; +import { NormalizedDSpaceObject } from '../normalized-dspace-object.model'; +import { NormalizedObject } from '../normalized-object.model'; +import { IDToUUIDSerializer } from '../../id-to-uuid-serializer'; +/** + * Normalized model class for a DSpace RelationshipType + */ +var NormalizedRelationshipType = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedRelationshipType, _super); + function NormalizedRelationshipType() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedRelationshipType.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedRelationshipType.prototype, "leftLabel", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedRelationshipType.prototype, "leftMaxCardinality", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedRelationshipType.prototype, "leftMinCardinality", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedRelationshipType.prototype, "rightLabel", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedRelationshipType.prototype, "rightMaxCardinality", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedRelationshipType.prototype, "rightMinCardinality", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.ItemType, false), + tslib_1.__metadata("design:type", String) + ], NormalizedRelationshipType.prototype, "leftType", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.ItemType, false), + tslib_1.__metadata("design:type", String) + ], NormalizedRelationshipType.prototype, "rightType", void 0); + tslib_1.__decorate([ + autoserializeAs(new IDToUUIDSerializer(ResourceType.RelationshipType), 'id'), + tslib_1.__metadata("design:type", String) + ], NormalizedRelationshipType.prototype, "uuid", void 0); + NormalizedRelationshipType = tslib_1.__decorate([ + mapsTo(RelationshipType), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedRelationshipType); + return NormalizedRelationshipType; +}(NormalizedObject)); +export { NormalizedRelationshipType }; +//# sourceMappingURL=normalized-relationship-type.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-relationship-type.model.js.map b/src/app/core/cache/models/items/normalized-relationship-type.model.js.map new file mode 100644 index 0000000000..9a0c3b6f24 --- /dev/null +++ b/src/app/core/cache/models/items/normalized-relationship-type.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-relationship-type.model.js","sourceRoot":"","sources":["normalized-relationship-type.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4DAA4D,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AAGH;IAAgD,sDAAkC;IAAlF;;IA+DA,CAAC;IAzDC;QADC,aAAa;;0DACH;IAMX;QADC,aAAa;;iEACI;IAMlB;QADC,aAAa;;0EACa;IAM3B;QADC,aAAa;;0EACa;IAM3B;QADC,aAAa;;kEACK;IAMnB;QADC,aAAa;;2EACc;IAM5B;QADC,aAAa;;2EACc;IAO5B;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC;;gEAC1B;IAOjB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC;;iEACzB;IAMlB;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC;;4DAChE;IA9DF,0BAA0B;QAFtC,MAAM,CAAC,gBAAgB,CAAC;QACxB,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,0BAA0B,CA+DtC;IAAD,iCAAC;CAAA,AA/DD,CAAgD,gBAAgB,GA+D/D;SA/DY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-relationship.model.js b/src/app/core/cache/models/items/normalized-relationship.model.js new file mode 100644 index 0000000000..9463fcd985 --- /dev/null +++ b/src/app/core/cache/models/items/normalized-relationship.model.js @@ -0,0 +1,52 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { Relationship } from '../../../shared/item-relationships/relationship.model'; +import { ResourceType } from '../../../shared/resource-type'; +import { mapsTo, relationship } from '../../builders/build-decorators'; +import { NormalizedObject } from '../normalized-object.model'; +import { IDToUUIDSerializer } from '../../id-to-uuid-serializer'; +/** + * Normalized model class for a DSpace Relationship + */ +var NormalizedRelationship = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedRelationship, _super); + function NormalizedRelationship() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedRelationship.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedRelationship.prototype, "leftId", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedRelationship.prototype, "rightId", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedRelationship.prototype, "leftPlace", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedRelationship.prototype, "rightPlace", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.RelationshipType, false), + tslib_1.__metadata("design:type", String) + ], NormalizedRelationship.prototype, "relationshipType", void 0); + tslib_1.__decorate([ + autoserializeAs(new IDToUUIDSerializer(ResourceType.Relationship), 'id'), + tslib_1.__metadata("design:type", String) + ], NormalizedRelationship.prototype, "uuid", void 0); + NormalizedRelationship = tslib_1.__decorate([ + mapsTo(Relationship), + inheritSerialization(NormalizedObject) + ], NormalizedRelationship); + return NormalizedRelationship; +}(NormalizedObject)); +export { NormalizedRelationship }; +//# sourceMappingURL=normalized-relationship.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-relationship.model.js.map b/src/app/core/cache/models/items/normalized-relationship.model.js.map new file mode 100644 index 0000000000..b671028cf0 --- /dev/null +++ b/src/app/core/cache/models/items/normalized-relationship.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-relationship.model.js","sourceRoot":"","sources":["normalized-relationship.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,uDAAuD,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AAGH;IAA4C,kDAA8B;IAA1E;;IA4CA,CAAC;IAtCC;QADC,aAAa;;sDACH;IAMX;QADC,aAAa;;0DACC;IAMf;QADC,aAAa;;2DACE;IAMhB;QADC,aAAa;;6DACI;IAMlB;QADC,aAAa;;8DACK;IAOnB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,CAAC;;oEAC1B;IAMzB;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC;;wDAC5D;IA3CF,sBAAsB;QAFlC,MAAM,CAAC,YAAY,CAAC;QACpB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,sBAAsB,CA4ClC;IAAD,6BAAC;CAAA,AA5CD,CAA4C,gBAAgB,GA4C3D;SA5CY,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bitstream-format.model.js b/src/app/core/cache/models/normalized-bitstream-format.model.js new file mode 100644 index 0000000000..764c9dba97 --- /dev/null +++ b/src/app/core/cache/models/normalized-bitstream-format.model.js @@ -0,0 +1,55 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { BitstreamFormat } from '../../shared/bitstream-format.model'; +import { mapsTo } from '../builders/build-decorators'; +import { IDToUUIDSerializer } from '../id-to-uuid-serializer'; +import { NormalizedObject } from './normalized-object.model'; +import { SupportLevel } from './support-level.model'; +/** + * Normalized model class for a Bitstream Format + */ +var NormalizedBitstreamFormat = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedBitstreamFormat, _super); + function NormalizedBitstreamFormat() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedBitstreamFormat.prototype, "shortDescription", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedBitstreamFormat.prototype, "description", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedBitstreamFormat.prototype, "mimetype", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedBitstreamFormat.prototype, "supportLevel", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedBitstreamFormat.prototype, "internal", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedBitstreamFormat.prototype, "extensions", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedBitstreamFormat.prototype, "id", void 0); + tslib_1.__decorate([ + autoserializeAs(new IDToUUIDSerializer('bitstream-format'), 'id'), + tslib_1.__metadata("design:type", String) + ], NormalizedBitstreamFormat.prototype, "uuid", void 0); + NormalizedBitstreamFormat = tslib_1.__decorate([ + mapsTo(BitstreamFormat), + inheritSerialization(NormalizedObject) + ], NormalizedBitstreamFormat); + return NormalizedBitstreamFormat; +}(NormalizedObject)); +export { NormalizedBitstreamFormat }; +//# sourceMappingURL=normalized-bitstream-format.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bitstream-format.model.js.map b/src/app/core/cache/models/normalized-bitstream-format.model.js.map new file mode 100644 index 0000000000..e1218d6f50 --- /dev/null +++ b/src/app/core/cache/models/normalized-bitstream-format.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-bitstream-format.model.js","sourceRoot":"","sources":["normalized-bitstream-format.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEtE,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD;;GAEG;AAGH;IAA+C,qDAAiC;IAAhF;;IAoDA,CAAC;IA9CC;QADC,aAAa;;uEACW;IAMzB;QADC,aAAa;;kEACM;IAMpB;QADC,aAAa;;+DACG;IAMjB;QADC,aAAa;;mEACa;IAM3B;QADC,aAAa;;+DACI;IAMlB;QADC,aAAa;;iEACK;IAQnB;QADC,aAAa;;yDACH;IAOX;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC;;2DACrD;IAnDF,yBAAyB;QAFrC,MAAM,CAAC,eAAe,CAAC;QACvB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,yBAAyB,CAoDrC;IAAD,gCAAC;CAAA,AApDD,CAA+C,gBAAgB,GAoD9D;SApDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bitstream.model.js b/src/app/core/cache/models/normalized-bitstream.model.js new file mode 100644 index 0000000000..cb2b1acf36 --- /dev/null +++ b/src/app/core/cache/models/normalized-bitstream.model.js @@ -0,0 +1,53 @@ +import * as tslib_1 from "tslib"; +import { inheritSerialization, autoserialize } from 'cerialize'; +import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; +import { Bitstream } from '../../shared/bitstream.model'; +import { mapsTo, relationship } from '../builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +/** + * Normalized model class for a DSpace Bitstream + */ +var NormalizedBitstream = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedBitstream, _super); + function NormalizedBitstream() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedBitstream.prototype, "sizeBytes", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedBitstream.prototype, "content", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.BitstreamFormat, false), + tslib_1.__metadata("design:type", String) + ], NormalizedBitstream.prototype, "format", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedBitstream.prototype, "description", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Item, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedBitstream.prototype, "parents", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Item, false), + tslib_1.__metadata("design:type", String) + ], NormalizedBitstream.prototype, "owner", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedBitstream.prototype, "bundleName", void 0); + NormalizedBitstream = tslib_1.__decorate([ + mapsTo(Bitstream), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedBitstream); + return NormalizedBitstream; +}(NormalizedDSpaceObject)); +export { NormalizedBitstream }; +//# sourceMappingURL=normalized-bitstream.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bitstream.model.js.map b/src/app/core/cache/models/normalized-bitstream.model.js.map new file mode 100644 index 0000000000..d58c389a44 --- /dev/null +++ b/src/app/core/cache/models/normalized-bitstream.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-bitstream.model.js","sourceRoot":"","sources":["normalized-bitstream.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAyC,+CAAiC;IAA1E;;IA+CA,CAAC;IAzCC;QADC,aAAa;;0DACI;IAMlB;QADC,aAAa;;wDACE;IAOhB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,eAAe,EAAE,KAAK,CAAC;;uDACnC;IAMf;QADC,aAAa;;4DACM;IAOpB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;;wDACpB;IAOlB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;;sDACzB;IAMd;QADC,aAAa;;2DACK;IA7CR,mBAAmB;QAF/B,MAAM,CAAC,SAAS,CAAC;QACjB,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,mBAAmB,CA+C/B;IAAD,0BAAC;CAAA,AA/CD,CAAyC,sBAAsB,GA+C9D;SA/CY,mBAAmB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bundle.model.js b/src/app/core/cache/models/normalized-bundle.model.js new file mode 100644 index 0000000000..dbbb97547c --- /dev/null +++ b/src/app/core/cache/models/normalized-bundle.model.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; +import { Bundle } from '../../shared/bundle.model'; +import { mapsTo, relationship } from '../builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +/** + * Normalized model class for a DSpace Bundle + */ +var NormalizedBundle = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedBundle, _super); + function NormalizedBundle() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Bitstream, false), + tslib_1.__metadata("design:type", String) + ], NormalizedBundle.prototype, "primaryBitstream", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Bitstream, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedBundle.prototype, "bitstreams", void 0); + NormalizedBundle = tslib_1.__decorate([ + mapsTo(Bundle), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedBundle); + return NormalizedBundle; +}(NormalizedDSpaceObject)); +export { NormalizedBundle }; +//# sourceMappingURL=normalized-bundle.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bundle.model.js.map b/src/app/core/cache/models/normalized-bundle.model.js.map new file mode 100644 index 0000000000..0f18c64acc --- /dev/null +++ b/src/app/core/cache/models/normalized-bundle.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-bundle.model.js","sourceRoot":"","sources":["normalized-bundle.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAsC,4CAA8B;IAApE;;IAyBA,CAAC;IAnBC;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;8DACnB;IAiBzB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;wDACtB;IAvBV,gBAAgB;QAF5B,MAAM,CAAC,MAAM,CAAC;QACd,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,gBAAgB,CAyB5B;IAAD,uBAAC;CAAA,AAzBD,CAAsC,sBAAsB,GAyB3D;SAzBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-collection.model.js b/src/app/core/cache/models/normalized-collection.model.js new file mode 100644 index 0000000000..811d6f3b27 --- /dev/null +++ b/src/app/core/cache/models/normalized-collection.model.js @@ -0,0 +1,56 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, deserialize, inheritSerialization } from 'cerialize'; +import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; +import { Collection } from '../../shared/collection.model'; +import { mapsTo, relationship } from '../builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +/** + * Normalized model class for a DSpace Collection + */ +var NormalizedCollection = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedCollection, _super); + function NormalizedCollection() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedCollection.prototype, "handle", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.License, false), + tslib_1.__metadata("design:type", String) + ], NormalizedCollection.prototype, "license", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.ResourcePolicy, false), + tslib_1.__metadata("design:type", String) + ], NormalizedCollection.prototype, "defaultAccessConditions", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Bitstream, false), + tslib_1.__metadata("design:type", String) + ], NormalizedCollection.prototype, "logo", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Community, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedCollection.prototype, "parents", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Community, false), + tslib_1.__metadata("design:type", String) + ], NormalizedCollection.prototype, "owner", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Item, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedCollection.prototype, "items", void 0); + NormalizedCollection = tslib_1.__decorate([ + mapsTo(Collection), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedCollection); + return NormalizedCollection; +}(NormalizedDSpaceObject)); +export { NormalizedCollection }; +//# sourceMappingURL=normalized-collection.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-collection.model.js.map b/src/app/core/cache/models/normalized-collection.model.js.map new file mode 100644 index 0000000000..aa0375ad31 --- /dev/null +++ b/src/app/core/cache/models/normalized-collection.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-collection.model.js","sourceRoot":"","sources":["normalized-collection.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAE7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAA0C,gDAAkC;IAA5E;;IAkDA,CAAC;IA5CC;QADC,aAAa;;wDACC;IAOf;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;;yDAC1B;IAOhB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,CAAC;;yEACjB;IAOhC;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;sDAC/B;IAOb;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;yDACzB;IAOlB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;uDAC9B;IAOd;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;;uDACtB;IAhDL,oBAAoB;QAFhC,MAAM,CAAC,UAAU,CAAC;QAClB,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,oBAAoB,CAkDhC;IAAD,2BAAC;CAAA,AAlDD,CAA0C,sBAAsB,GAkD/D;SAlDY,oBAAoB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-community.model.js b/src/app/core/cache/models/normalized-community.model.js new file mode 100644 index 0000000000..0f15ac3902 --- /dev/null +++ b/src/app/core/cache/models/normalized-community.model.js @@ -0,0 +1,51 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, deserialize, inheritSerialization } from 'cerialize'; +import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; +import { Community } from '../../shared/community.model'; +import { mapsTo, relationship } from '../builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +/** + * Normalized model class for a DSpace Community + */ +var NormalizedCommunity = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedCommunity, _super); + function NormalizedCommunity() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedCommunity.prototype, "handle", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Bitstream, false), + tslib_1.__metadata("design:type", String) + ], NormalizedCommunity.prototype, "logo", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Community, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedCommunity.prototype, "parents", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Community, false), + tslib_1.__metadata("design:type", String) + ], NormalizedCommunity.prototype, "owner", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Collection, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedCommunity.prototype, "collections", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Community, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedCommunity.prototype, "subcommunities", void 0); + NormalizedCommunity = tslib_1.__decorate([ + mapsTo(Community), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedCommunity); + return NormalizedCommunity; +}(NormalizedDSpaceObject)); +export { NormalizedCommunity }; +//# sourceMappingURL=normalized-community.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-community.model.js.map b/src/app/core/cache/models/normalized-community.model.js.map new file mode 100644 index 0000000000..5061c917e3 --- /dev/null +++ b/src/app/core/cache/models/normalized-community.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-community.model.js","sourceRoot":"","sources":["normalized-community.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAa,MAAM,WAAW,CAAC;AAExF,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAyC,+CAAiC;IAA1E;;IAwCA,CAAC;IAlCC;QADC,aAAa;;uDACC;IAOf;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;qDAC/B;IAOb;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;wDACzB;IAOlB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;sDAC9B;IAOd;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;;4DACtB;IAItB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;+DAClB;IAtCd,mBAAmB;QAF/B,MAAM,CAAC,SAAS,CAAC;QACjB,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,mBAAmB,CAwC/B;IAAD,0BAAC;CAAA,AAxCD,CAAyC,sBAAsB,GAwC9D;SAxCY,mBAAmB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-dspace-object.model.js b/src/app/core/cache/models/normalized-dspace-object.model.js new file mode 100644 index 0000000000..c9fc8b07bd --- /dev/null +++ b/src/app/core/cache/models/normalized-dspace-object.model.js @@ -0,0 +1,54 @@ +import * as tslib_1 from "tslib"; +import { autoserializeAs, deserializeAs } from 'cerialize'; +import { DSpaceObject } from '../../shared/dspace-object.model'; +import { MetadataMap, MetadataMapSerializer } from '../../shared/metadata.models'; +import { ResourceType } from '../../shared/resource-type'; +import { mapsTo } from '../builders/build-decorators'; +import { NormalizedObject } from './normalized-object.model'; +/** + * An model class for a DSpaceObject. + */ +var NormalizedDSpaceObject = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedDSpaceObject, _super); + function NormalizedDSpaceObject() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + deserializeAs(String), + tslib_1.__metadata("design:type", String) + ], NormalizedDSpaceObject.prototype, "self", void 0); + tslib_1.__decorate([ + autoserializeAs(String, 'uuid'), + tslib_1.__metadata("design:type", String) + ], NormalizedDSpaceObject.prototype, "id", void 0); + tslib_1.__decorate([ + autoserializeAs(String), + tslib_1.__metadata("design:type", String) + ], NormalizedDSpaceObject.prototype, "uuid", void 0); + tslib_1.__decorate([ + autoserializeAs(String), + tslib_1.__metadata("design:type", String) + ], NormalizedDSpaceObject.prototype, "type", void 0); + tslib_1.__decorate([ + autoserializeAs(MetadataMapSerializer), + tslib_1.__metadata("design:type", MetadataMap) + ], NormalizedDSpaceObject.prototype, "metadata", void 0); + tslib_1.__decorate([ + deserializeAs(String), + tslib_1.__metadata("design:type", Array) + ], NormalizedDSpaceObject.prototype, "parents", void 0); + tslib_1.__decorate([ + deserializeAs(String), + tslib_1.__metadata("design:type", String) + ], NormalizedDSpaceObject.prototype, "owner", void 0); + tslib_1.__decorate([ + deserializeAs(Object), + tslib_1.__metadata("design:type", Object) + ], NormalizedDSpaceObject.prototype, "_links", void 0); + NormalizedDSpaceObject = tslib_1.__decorate([ + mapsTo(DSpaceObject) + ], NormalizedDSpaceObject); + return NormalizedDSpaceObject; +}(NormalizedObject)); +export { NormalizedDSpaceObject }; +//# sourceMappingURL=normalized-dspace-object.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-dspace-object.model.js.map b/src/app/core/cache/models/normalized-dspace-object.model.js.map new file mode 100644 index 0000000000..d842d6f834 --- /dev/null +++ b/src/app/core/cache/models/normalized-dspace-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-dspace-object.model.js","sourceRoot":"","sources":["normalized-dspace-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;GAEG;AAEH;IAAoE,kDAAmB;IAAvF;;IA4DA,CAAC;IAnDC;QADC,aAAa,CAAC,MAAM,CAAC;;wDACT;IASb;QADC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;;sDACrB;IAMX;QADC,eAAe,CAAC,MAAM,CAAC;;wDACX;IAMb;QADC,eAAe,CAAC,MAAM,CAAC;;wDACL;IAMnB;QADC,eAAe,CAAC,qBAAqB,CAAC;0CAC7B,WAAW;4DAAC;IAMtB;QADC,aAAa,CAAC,MAAM,CAAC;;2DACJ;IAMlB;QADC,aAAa,CAAC,MAAM,CAAC;;yDACR;IASd;QADC,aAAa,CAAC,MAAM,CAAC;;0DAGrB;IA3DU,sBAAsB;QADlC,MAAM,CAAC,YAAY,CAAC;OACR,sBAAsB,CA4DlC;IAAD,6BAAC;CAAA,AA5DD,CAAoE,gBAAgB,GA4DnF;SA5DY,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-item.model.js b/src/app/core/cache/models/normalized-item.model.js new file mode 100644 index 0000000000..311a94d75e --- /dev/null +++ b/src/app/core/cache/models/normalized-item.model.js @@ -0,0 +1,62 @@ +import * as tslib_1 from "tslib"; +import { inheritSerialization, deserialize, autoserialize, autoserializeAs } from 'cerialize'; +import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; +import { Item } from '../../shared/item.model'; +import { mapsTo, relationship } from '../builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +/** + * Normalized model class for a DSpace Item + */ +var NormalizedItem = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedItem, _super); + function NormalizedItem() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedItem.prototype, "handle", void 0); + tslib_1.__decorate([ + deserialize, + tslib_1.__metadata("design:type", Date) + ], NormalizedItem.prototype, "lastModified", void 0); + tslib_1.__decorate([ + autoserializeAs(Boolean, 'inArchive'), + tslib_1.__metadata("design:type", Boolean) + ], NormalizedItem.prototype, "isArchived", void 0); + tslib_1.__decorate([ + autoserializeAs(Boolean, 'discoverable'), + tslib_1.__metadata("design:type", Boolean) + ], NormalizedItem.prototype, "isDiscoverable", void 0); + tslib_1.__decorate([ + autoserializeAs(Boolean, 'withdrawn'), + tslib_1.__metadata("design:type", Boolean) + ], NormalizedItem.prototype, "isWithdrawn", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Collection, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedItem.prototype, "parents", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Collection, false), + tslib_1.__metadata("design:type", String) + ], NormalizedItem.prototype, "owningCollection", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Bitstream, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedItem.prototype, "bitstreams", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Relationship, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedItem.prototype, "relationships", void 0); + NormalizedItem = tslib_1.__decorate([ + mapsTo(Item), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedItem); + return NormalizedItem; +}(NormalizedDSpaceObject)); +export { NormalizedItem }; +//# sourceMappingURL=normalized-item.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-item.model.js.map b/src/app/core/cache/models/normalized-item.model.js.map new file mode 100644 index 0000000000..da7ca2c88d --- /dev/null +++ b/src/app/core/cache/models/normalized-item.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-item.model.js","sourceRoot":"","sources":["normalized-item.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAoC,0CAA4B;IAAhE;;IAyDA,CAAC;IAnDC;QADC,aAAa;;kDACC;IAMf;QADC,WAAW;0CACE,IAAI;wDAAC;IAMnB;QADC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC;;sDAClB;IAMpB;QADC,eAAe,CAAC,OAAO,EAAE,cAAc,CAAC;;0DACjB;IAMxB;QADC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC;;uDACjB;IAOrB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;;mDAC1B;IAOlB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC;;4DACpB;IAOzB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;sDACtB;IAIrB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC;;yDACtB;IAvDb,cAAc;QAF1B,MAAM,CAAC,IAAI,CAAC;QACZ,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,cAAc,CAyD1B;IAAD,qBAAC;CAAA,AAzDD,CAAoC,sBAAsB,GAyDzD;SAzDY,cAAc"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-license.model.js b/src/app/core/cache/models/normalized-license.model.js new file mode 100644 index 0000000000..73fed53c8a --- /dev/null +++ b/src/app/core/cache/models/normalized-license.model.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { mapsTo } from '../builders/build-decorators'; +import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; +import { License } from '../../shared/license.model'; +/** + * Normalized model class for a Collection License + */ +var NormalizedLicense = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedLicense, _super); + function NormalizedLicense() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedLicense.prototype, "custom", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedLicense.prototype, "text", void 0); + NormalizedLicense = tslib_1.__decorate([ + mapsTo(License), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedLicense); + return NormalizedLicense; +}(NormalizedDSpaceObject)); +export { NormalizedLicense }; +//# sourceMappingURL=normalized-license.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-license.model.js.map b/src/app/core/cache/models/normalized-license.model.js.map new file mode 100644 index 0000000000..1c10f06d3a --- /dev/null +++ b/src/app/core/cache/models/normalized-license.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-license.model.js","sourceRoot":"","sources":["normalized-license.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAErD;;GAEG;AAGH;IAAuC,6CAA+B;IAAtE;;IAaA,CAAC;IAPC;QADC,aAAa;;qDACE;IAMhB;QADC,aAAa;;mDACD;IAZF,iBAAiB;QAF7B,MAAM,CAAC,OAAO,CAAC;QACf,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,iBAAiB,CAa7B;IAAD,wBAAC;CAAA,AAbD,CAAuC,sBAAsB,GAa5D;SAbY,iBAAiB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-object-factory.js b/src/app/core/cache/models/normalized-object-factory.js new file mode 100644 index 0000000000..3f799d3407 --- /dev/null +++ b/src/app/core/cache/models/normalized-object-factory.js @@ -0,0 +1,105 @@ +import { NormalizedItemType } from './items/normalized-item-type.model'; +import { NormalizedRelationshipType } from './items/normalized-relationship-type.model'; +import { NormalizedRelationship } from './items/normalized-relationship.model'; +import { NormalizedBitstream } from './normalized-bitstream.model'; +import { NormalizedBundle } from './normalized-bundle.model'; +import { NormalizedItem } from './normalized-item.model'; +import { NormalizedCollection } from './normalized-collection.model'; +import { NormalizedCommunity } from './normalized-community.model'; +import { ResourceType } from '../../shared/resource-type'; +import { NormalizedLicense } from './normalized-license.model'; +import { NormalizedResourcePolicy } from './normalized-resource-policy.model'; +import { NormalizedWorkspaceItem } from '../../submission/models/normalized-workspaceitem.model'; +import { NormalizedEPerson } from '../../eperson/models/normalized-eperson.model'; +import { NormalizedGroup } from '../../eperson/models/normalized-group.model'; +import { NormalizedWorkflowItem } from '../../submission/models/normalized-workflowitem.model'; +import { NormalizedClaimedTask } from '../../tasks/models/normalized-claimed-task-object.model'; +import { NormalizedPoolTask } from '../../tasks/models/normalized-pool-task-object.model'; +import { NormalizedBitstreamFormat } from './normalized-bitstream-format.model'; +import { NormalizedMetadataSchema } from '../../metadata/normalized-metadata-schema.model'; +import { NormalizedSubmissionDefinitionsModel } from '../../config/models/normalized-config-submission-definitions.model'; +import { NormalizedSubmissionFormsModel } from '../../config/models/normalized-config-submission-forms.model'; +import { NormalizedSubmissionSectionModel } from '../../config/models/normalized-config-submission-section.model'; +var NormalizedObjectFactory = /** @class */ (function () { + function NormalizedObjectFactory() { + } + NormalizedObjectFactory.getConstructor = function (type) { + switch (type) { + case ResourceType.Bitstream: { + return NormalizedBitstream; + } + case ResourceType.Bundle: { + return NormalizedBundle; + } + case ResourceType.Item: { + return NormalizedItem; + } + case ResourceType.Collection: { + return NormalizedCollection; + } + case ResourceType.Community: { + return NormalizedCommunity; + } + case ResourceType.BitstreamFormat: { + return NormalizedBitstreamFormat; + } + case ResourceType.License: { + return NormalizedLicense; + } + case ResourceType.ResourcePolicy: { + return NormalizedResourcePolicy; + } + case ResourceType.Relationship: { + return NormalizedRelationship; + } + case ResourceType.RelationshipType: { + return NormalizedRelationshipType; + } + case ResourceType.ItemType: { + return NormalizedItemType; + } + case ResourceType.EPerson: { + return NormalizedEPerson; + } + case ResourceType.Group: { + return NormalizedGroup; + } + case ResourceType.MetadataSchema: { + return NormalizedMetadataSchema; + } + case ResourceType.MetadataField: { + return NormalizedGroup; + } + case ResourceType.Workspaceitem: { + return NormalizedWorkspaceItem; + } + case ResourceType.Workflowitem: { + return NormalizedWorkflowItem; + } + case ResourceType.ClaimedTask: { + return NormalizedClaimedTask; + } + case ResourceType.PoolTask: { + return NormalizedPoolTask; + } + case ResourceType.SubmissionDefinition: + case ResourceType.SubmissionDefinitions: { + return NormalizedSubmissionDefinitionsModel; + } + case ResourceType.SubmissionForm: + case ResourceType.SubmissionForms: { + return NormalizedSubmissionFormsModel; + } + case ResourceType.SubmissionSection: + case ResourceType.SubmissionSections: { + return NormalizedSubmissionSectionModel; + } + default: { + return undefined; + } + } + }; + return NormalizedObjectFactory; +}()); +export { NormalizedObjectFactory }; +//# sourceMappingURL=normalized-object-factory.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-object-factory.js.map b/src/app/core/cache/models/normalized-object-factory.js.map new file mode 100644 index 0000000000..d63bdc2c30 --- /dev/null +++ b/src/app/core/cache/models/normalized-object-factory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-object-factory.js","sourceRoot":"","sources":["normalized-object-factory.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-object.model.js b/src/app/core/cache/models/normalized-object.model.js new file mode 100644 index 0000000000..c9a0c33463 --- /dev/null +++ b/src/app/core/cache/models/normalized-object.model.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { autoserialize } from 'cerialize'; +import { ResourceType } from '../../shared/resource-type'; +/** + * An abstract model class for a NormalizedObject. + */ +var NormalizedObject = /** @class */ (function () { + function NormalizedObject() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedObject.prototype, "self", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedObject.prototype, "type", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], NormalizedObject.prototype, "_links", void 0); + return NormalizedObject; +}()); +export { NormalizedObject }; +//# sourceMappingURL=normalized-object.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-object.model.js.map b/src/app/core/cache/models/normalized-object.model.js.map new file mode 100644 index 0000000000..9097dcb960 --- /dev/null +++ b/src/app/core/cache/models/normalized-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-object.model.js","sourceRoot":"","sources":["normalized-object.model.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D;;GAEG;AACH;IAAA;IAkBA,CAAC;IAZC;QADC,aAAa;;kDACD;IAMb;QADC,aAAa;;kDACK;IAGnB;QADC,aAAa;;oDAGb;IACH,uBAAC;CAAA,AAlBD,IAkBC;SAlBqB,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-resource-policy.model.js b/src/app/core/cache/models/normalized-resource-policy.model.js new file mode 100644 index 0000000000..e59a88a471 --- /dev/null +++ b/src/app/core/cache/models/normalized-resource-policy.model.js @@ -0,0 +1,43 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { ResourcePolicy } from '../../shared/resource-policy.model'; +import { mapsTo } from '../builders/build-decorators'; +import { NormalizedObject } from './normalized-object.model'; +import { IDToUUIDSerializer } from '../id-to-uuid-serializer'; +import { ActionType } from './action-type.model'; +/** + * Normalized model class for a Resource Policy + */ +var NormalizedResourcePolicy = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedResourcePolicy, _super); + function NormalizedResourcePolicy() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedResourcePolicy.prototype, "action", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedResourcePolicy.prototype, "name", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedResourcePolicy.prototype, "groupUUID", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedResourcePolicy.prototype, "id", void 0); + tslib_1.__decorate([ + autoserializeAs(new IDToUUIDSerializer('resource-policy'), 'id'), + tslib_1.__metadata("design:type", String) + ], NormalizedResourcePolicy.prototype, "uuid", void 0); + NormalizedResourcePolicy = tslib_1.__decorate([ + mapsTo(ResourcePolicy), + inheritSerialization(NormalizedObject) + ], NormalizedResourcePolicy); + return NormalizedResourcePolicy; +}(NormalizedObject)); +export { NormalizedResourcePolicy }; +//# sourceMappingURL=normalized-resource-policy.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-resource-policy.model.js.map b/src/app/core/cache/models/normalized-resource-policy.model.js.map new file mode 100644 index 0000000000..1080101cde --- /dev/null +++ b/src/app/core/cache/models/normalized-resource-policy.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-resource-policy.model.js","sourceRoot":"","sources":["normalized-resource-policy.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpE,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;GAEG;AAGH;IAA8C,oDAAgC;IAA9E;;IAmCA,CAAC;IA7BC;QADC,aAAa;;4DACK;IAMnB;QADC,aAAa;;0DACD;IAMb;QADC,aAAa;;+DACI;IAQlB;QADC,aAAa;;wDACH;IAOX;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC;;0DACpD;IAjCF,wBAAwB;QAFpC,MAAM,CAAC,cAAc,CAAC;QACtB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,wBAAwB,CAmCpC;IAAD,+BAAC;CAAA,AAnCD,CAA8C,gBAAgB,GAmC7D;SAnCY,wBAAwB"} \ No newline at end of file diff --git a/src/app/core/cache/models/search-param.model.js b/src/app/core/cache/models/search-param.model.js new file mode 100644 index 0000000000..aee0e79853 --- /dev/null +++ b/src/app/core/cache/models/search-param.model.js @@ -0,0 +1,12 @@ +/** + * Class representing a query parameter (query?fieldName=fieldValue) used in FindAllOptions object + */ +var SearchParam = /** @class */ (function () { + function SearchParam(fieldName, fieldValue) { + this.fieldName = fieldName; + this.fieldValue = fieldValue; + } + return SearchParam; +}()); +export { SearchParam }; +//# sourceMappingURL=search-param.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/search-param.model.js.map b/src/app/core/cache/models/search-param.model.js.map new file mode 100644 index 0000000000..0849621347 --- /dev/null +++ b/src/app/core/cache/models/search-param.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-param.model.js","sourceRoot":"","sources":["search-param.model.ts"],"names":[],"mappings":"AACA;;GAEG;AACH;IACE,qBAAmB,SAAiB,EAAS,UAAe;QAAzC,cAAS,GAAT,SAAS,CAAQ;QAAS,eAAU,GAAV,UAAU,CAAK;IAE5D,CAAC;IACH,kBAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/core/cache/models/self-link.model.js b/src/app/core/cache/models/self-link.model.js new file mode 100644 index 0000000000..528f3ddd21 --- /dev/null +++ b/src/app/core/cache/models/self-link.model.js @@ -0,0 +1,17 @@ +import * as tslib_1 from "tslib"; +import { autoserialize } from 'cerialize'; +var SelfLink = /** @class */ (function () { + function SelfLink() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SelfLink.prototype, "self", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SelfLink.prototype, "uuid", void 0); + return SelfLink; +}()); +export { SelfLink }; +//# sourceMappingURL=self-link.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/self-link.model.js.map b/src/app/core/cache/models/self-link.model.js.map new file mode 100644 index 0000000000..e9cab56544 --- /dev/null +++ b/src/app/core/cache/models/self-link.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"self-link.model.js","sourceRoot":"","sources":["self-link.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C;IAAA;IAQA,CAAC;IALC;QADC,aAAa;;0CACD;IAGb;QADC,aAAa;;0CACD;IAEf,eAAC;CAAA,AARD,IAQC;SARY,QAAQ"} \ No newline at end of file diff --git a/src/app/core/cache/models/sort-options.model.js b/src/app/core/cache/models/sort-options.model.js new file mode 100644 index 0000000000..ca079868c1 --- /dev/null +++ b/src/app/core/cache/models/sort-options.model.js @@ -0,0 +1,14 @@ +export var SortDirection; +(function (SortDirection) { + SortDirection["ASC"] = "ASC"; + SortDirection["DESC"] = "DESC"; +})(SortDirection || (SortDirection = {})); +var SortOptions = /** @class */ (function () { + function SortOptions(field, direction) { + this.field = field; + this.direction = direction; + } + return SortOptions; +}()); +export { SortOptions }; +//# sourceMappingURL=sort-options.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/sort-options.model.js.map b/src/app/core/cache/models/sort-options.model.js.map new file mode 100644 index 0000000000..43d014d60d --- /dev/null +++ b/src/app/core/cache/models/sort-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sort-options.model.js","sourceRoot":"","sources":["sort-options.model.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,4BAAW,CAAA;IACX,8BAAa,CAAA;AACf,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED;IACE,qBAAmB,KAAa,EAAS,SAAwB;QAA9C,UAAK,GAAL,KAAK,CAAQ;QAAS,cAAS,GAAT,SAAS,CAAe;IAEjE,CAAC;IACH,kBAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/core/cache/models/support-level.model.js b/src/app/core/cache/models/support-level.model.js new file mode 100644 index 0000000000..6d7445f61d --- /dev/null +++ b/src/app/core/cache/models/support-level.model.js @@ -0,0 +1,19 @@ +/** + * Enum representing the Support Level of a Bitstream Format + */ +export var SupportLevel; +(function (SupportLevel) { + /** + * Unknown for Bitstream Formats that are unknown to the system + */ + SupportLevel[SupportLevel["Unknown"] = 0] = "Unknown"; + /** + * Unknown for Bitstream Formats that are known to the system, but not fully supported + */ + SupportLevel[SupportLevel["Known"] = 1] = "Known"; + /** + * Supported for Bitstream Formats that are known to the system and fully supported + */ + SupportLevel[SupportLevel["Supported"] = 2] = "Supported"; +})(SupportLevel || (SupportLevel = {})); +//# sourceMappingURL=support-level.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/support-level.model.js.map b/src/app/core/cache/models/support-level.model.js.map new file mode 100644 index 0000000000..10426f3efa --- /dev/null +++ b/src/app/core/cache/models/support-level.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"support-level.model.js","sourceRoot":"","sources":["support-level.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,YAeX;AAfD,WAAY,YAAY;IACtB;;OAEG;IACH,qDAAW,CAAA;IAEX;;OAEG;IACH,iDAAS,CAAA;IAET;;OAEG;IACH,yDAAa,CAAA;AACf,CAAC,EAfW,YAAY,KAAZ,YAAY,QAevB"} \ No newline at end of file diff --git a/src/app/core/cache/object-cache.actions.js b/src/app/core/cache/object-cache.actions.js new file mode 100644 index 0000000000..d25668aa06 --- /dev/null +++ b/src/app/core/cache/object-cache.actions.js @@ -0,0 +1,108 @@ +import { type } from '../../shared/ngrx/type'; +/** + * The list of ObjectCacheAction type definitions + */ +export var ObjectCacheActionTypes = { + ADD: type('dspace/core/cache/object/ADD'), + REMOVE: type('dspace/core/cache/object/REMOVE'), + RESET_TIMESTAMPS: type('dspace/core/cache/object/RESET_TIMESTAMPS'), + ADD_PATCH: type('dspace/core/cache/object/ADD_PATCH'), + APPLY_PATCH: type('dspace/core/cache/object/APPLY_PATCH') +}; +/* tslint:disable:max-classes-per-file */ +/** + * An ngrx action to add an object to the cache + */ +var AddToObjectCacheAction = /** @class */ (function () { + /** + * Create a new AddToObjectCacheAction + * + * @param objectToCache + * the object to add + * @param timeAdded + * the time it was added + * @param msToLive + * the amount of milliseconds before it should expire + * @param requestHref + * The href of the request that resulted in this object + * This isn't necessarily the same as the object's self + * link, it could have been part of a list for example + */ + function AddToObjectCacheAction(objectToCache, timeAdded, msToLive, requestUUID) { + this.type = ObjectCacheActionTypes.ADD; + this.payload = { objectToCache: objectToCache, timeAdded: timeAdded, msToLive: msToLive, requestUUID: requestUUID }; + } + return AddToObjectCacheAction; +}()); +export { AddToObjectCacheAction }; +/** + * An ngrx action to remove an object from the cache + */ +var RemoveFromObjectCacheAction = /** @class */ (function () { + /** + * Create a new RemoveFromObjectCacheAction + * + * @param href + * the unique href of the object to remove + */ + function RemoveFromObjectCacheAction(href) { + this.type = ObjectCacheActionTypes.REMOVE; + this.payload = href; + } + return RemoveFromObjectCacheAction; +}()); +export { RemoveFromObjectCacheAction }; +/** + * An ngrx action to reset the timeAdded property of all cached objects + */ +var ResetObjectCacheTimestampsAction = /** @class */ (function () { + /** + * Create a new ResetObjectCacheTimestampsAction + * + * @param newTimestamp + * the new timeAdded all objects should get + */ + function ResetObjectCacheTimestampsAction(newTimestamp) { + this.type = ObjectCacheActionTypes.RESET_TIMESTAMPS; + this.payload = newTimestamp; + } + return ResetObjectCacheTimestampsAction; +}()); +export { ResetObjectCacheTimestampsAction }; +/** + * An ngrx action to add new operations to a specified cached object + */ +var AddPatchObjectCacheAction = /** @class */ (function () { + /** + * Create a new AddPatchObjectCacheAction + * + * @param href + * the unique href of the object that should be updated + * @param operations + * the list of operations to add + */ + function AddPatchObjectCacheAction(href, operations) { + this.type = ObjectCacheActionTypes.ADD_PATCH; + this.payload = { href: href, operations: operations }; + } + return AddPatchObjectCacheAction; +}()); +export { AddPatchObjectCacheAction }; +/** + * An ngrx action to apply all existing operations to a specified cached object + */ +var ApplyPatchObjectCacheAction = /** @class */ (function () { + /** + * Create a new ApplyPatchObjectCacheAction + * + * @param href + * the unique href of the object that should be updated + */ + function ApplyPatchObjectCacheAction(href) { + this.type = ObjectCacheActionTypes.APPLY_PATCH; + this.payload = href; + } + return ApplyPatchObjectCacheAction; +}()); +export { ApplyPatchObjectCacheAction }; +//# sourceMappingURL=object-cache.actions.js.map \ No newline at end of file diff --git a/src/app/core/cache/object-cache.actions.js.map b/src/app/core/cache/object-cache.actions.js.map new file mode 100644 index 0000000000..4f0ed16327 --- /dev/null +++ b/src/app/core/cache/object-cache.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-cache.actions.js","sourceRoot":"","sources":["object-cache.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAI9C;;GAEG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG;IACpC,GAAG,EAAE,IAAI,CAAC,8BAA8B,CAAC;IACzC,MAAM,EAAE,IAAI,CAAC,iCAAiC,CAAC;IAC/C,gBAAgB,EAAE,IAAI,CAAC,2CAA2C,CAAC;IACnE,SAAS,EAAE,IAAI,CAAC,oCAAoC,CAAC;IACrD,WAAW,EAAE,IAAI,CAAC,sCAAsC,CAAC;CAC1D,CAAC;AAEF,yCAAyC;AACzC;;GAEG;AACH;IASE;;;;;;;;;;;;;OAaG;IACH,gCAAY,aAA8B,EAAE,SAAiB,EAAE,QAAgB,EAAE,WAAmB;QAtBpG,SAAI,GAAG,sBAAsB,CAAC,GAAG,CAAC;QAuBhC,IAAI,CAAC,OAAO,GAAG,EAAE,aAAa,eAAA,EAAE,SAAS,WAAA,EAAE,QAAQ,UAAA,EAAE,WAAW,aAAA,EAAE,CAAC;IACrE,CAAC;IACH,6BAAC;AAAD,CAAC,AA1BD,IA0BC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,qCAAY,IAAY;QATxB,SAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC;QAUnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IACH,kCAAC;AAAD,CAAC,AAbD,IAaC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,0CAAY,YAAoB;QAThC,SAAI,GAAG,sBAAsB,CAAC,gBAAgB,CAAC;QAU7C,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;IAC9B,CAAC;IACH,uCAAC;AAAD,CAAC,AAbD,IAaC;;AAED;;GAEG;AACH;IAOE;;;;;;;OAOG;IACH,mCAAY,IAAY,EAAE,UAAuB;QAdjD,SAAI,GAAG,sBAAsB,CAAC,SAAS,CAAC;QAetC,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,UAAU,YAAA,EAAE,CAAC;IACtC,CAAC;IACH,gCAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,qCAAY,IAAY;QATxB,SAAI,GAAG,sBAAsB,CAAC,WAAW,CAAC;QAUxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IACH,kCAAC;AAAD,CAAC,AAbD,IAaC"} \ No newline at end of file diff --git a/src/app/core/cache/object-cache.effects.js b/src/app/core/cache/object-cache.effects.js new file mode 100644 index 0000000000..dcc49e5ecf --- /dev/null +++ b/src/app/core/cache/object-cache.effects.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { map } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { Actions, Effect, ofType } from '@ngrx/effects'; +import { StoreActionTypes } from '../../store.actions'; +import { ResetObjectCacheTimestampsAction } from './object-cache.actions'; +var ObjectCacheEffects = /** @class */ (function () { + function ObjectCacheEffects(actions$) { + this.actions$ = actions$; + /** + * When the store is rehydrated in the browser, set all cache + * timestamps to 'now', because the time zone of the server can + * differ from the client. + * + * This assumes that the server cached everything a negligible + * time ago, and will likely need to be revisited later + */ + this.fixTimestampsOnRehydrate = this.actions$ + .pipe(ofType(StoreActionTypes.REHYDRATE), map(function () { return new ResetObjectCacheTimestampsAction(new Date().getTime()); })); + } + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], ObjectCacheEffects.prototype, "fixTimestampsOnRehydrate", void 0); + ObjectCacheEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions]) + ], ObjectCacheEffects); + return ObjectCacheEffects; +}()); +export { ObjectCacheEffects }; +//# sourceMappingURL=object-cache.effects.js.map \ No newline at end of file diff --git a/src/app/core/cache/object-cache.effects.js.map b/src/app/core/cache/object-cache.effects.js.map new file mode 100644 index 0000000000..edc264dbe8 --- /dev/null +++ b/src/app/core/cache/object-cache.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-cache.effects.js","sourceRoot":"","sources":["object-cache.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAG1E;IAeE,4BAAoB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;QAbrC;;;;;;;WAOG;QACO,6BAAwB,GAAG,IAAI,CAAC,QAAQ;aAC/C,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACtC,GAAG,CAAC,cAAM,OAAA,IAAI,gCAAgC,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAA1D,CAA0D,CAAC,CACtE,CAAC;IAGJ,CAAC;IANS;QAAT,MAAM,EAAE;;wEAGL;IAbO,kBAAkB;QAD9B,UAAU,EAAE;iDAgBmB,OAAO;OAf1B,kBAAkB,CAkB9B;IAAD,yBAAC;CAAA,AAlBD,IAkBC;SAlBY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/cache/object-cache.reducer.js b/src/app/core/cache/object-cache.reducer.js new file mode 100644 index 0000000000..a9788ac620 --- /dev/null +++ b/src/app/core/cache/object-cache.reducer.js @@ -0,0 +1,162 @@ +import { ObjectCacheActionTypes } from './object-cache.actions'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { applyPatch } from 'fast-json-patch'; +export var DirtyType; +(function (DirtyType) { + DirtyType["Created"] = "Created"; + DirtyType["Updated"] = "Updated"; + DirtyType["Deleted"] = "Deleted"; +})(DirtyType || (DirtyType = {})); +/** + * An entry in the ObjectCache + */ +var ObjectCacheEntry = /** @class */ (function () { + function ObjectCacheEntry() { + this.patches = []; + } + return ObjectCacheEntry; +}()); +export { ObjectCacheEntry }; +// Object.create(null) ensures the object has no default js properties (e.g. `__proto__`) +var initialState = Object.create(null); +/** + * The ObjectCache Reducer + * + * @param state + * the current state + * @param action + * the action to perform on the state + * @return ObjectCacheState + * the new state + */ +export function objectCacheReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case ObjectCacheActionTypes.ADD: { + return addToObjectCache(state, action); + } + case ObjectCacheActionTypes.REMOVE: { + return removeFromObjectCache(state, action); + } + case ObjectCacheActionTypes.RESET_TIMESTAMPS: { + return resetObjectCacheTimestamps(state, action); + } + case ObjectCacheActionTypes.ADD_PATCH: { + return addPatchObjectCache(state, action); + } + case ObjectCacheActionTypes.APPLY_PATCH: { + return applyPatchObjectCache(state, action); + } + default: { + return state; + } + } +} +/** + * Add an object to the cache + * + * @param state + * the current state + * @param action + * an AddToObjectCacheAction + * @return ObjectCacheState + * the new state, with the object added, or overwritten. + */ +function addToObjectCache(state, action) { + var _a; + var existing = state[action.payload.objectToCache.self]; + return Object.assign({}, state, (_a = {}, + _a[action.payload.objectToCache.self] = { + data: action.payload.objectToCache, + timeAdded: action.payload.timeAdded, + msToLive: action.payload.msToLive, + requestUUID: action.payload.requestUUID, + isDirty: (hasValue(existing) ? isNotEmpty(existing.patches) : false), + patches: (hasValue(existing) ? existing.patches : []) + }, + _a)); +} +/** + * Remove an object from the cache + * + * @param state + * the current state + * @param action + * an RemoveFromObjectCacheAction + * @return ObjectCacheState + * the new state, with the object removed if it existed. + */ +function removeFromObjectCache(state, action) { + if (hasValue(state[action.payload])) { + var newObjectCache = Object.assign({}, state); + delete newObjectCache[action.payload]; + return newObjectCache; + } + else { + return state; + } +} +/** + * Set the timeAdded timestamp of every cached object to the specified value + * + * @param state + * the current state + * @param action + * a ResetObjectCacheTimestampsAction + * @return ObjectCacheState + * the new state, with all timeAdded timestamps set to the specified value + */ +function resetObjectCacheTimestamps(state, action) { + var newState = Object.create(null); + Object.keys(state).forEach(function (key) { + newState[key] = Object.assign({}, state[key], { + timeAdded: action.payload + }); + }); + return newState; +} +/** + * Add the list of patch operations to a cached object + * + * @param state + * the current state + * @param action + * an AddPatchObjectCacheAction + * @return ObjectCacheState + * the new state, with the new operations added to the state of the specified ObjectCacheEntry + */ +function addPatchObjectCache(state, action) { + var uuid = action.payload.href; + var operations = action.payload.operations; + var newState = Object.assign({}, state); + if (hasValue(newState[uuid])) { + var patches = newState[uuid].patches; + newState[uuid] = Object.assign({}, newState[uuid], { + patches: patches.concat([{ operations: operations }]), + isDirty: true + }); + } + return newState; +} +/** + * Apply the list of patch operations to a cached object + * + * @param state + * the current state + * @param action + * an ApplyPatchObjectCacheAction + * @return ObjectCacheState + * the new state, with the new operations applied to the state of the specified ObjectCacheEntry + */ +function applyPatchObjectCache(state, action) { + var uuid = action.payload; + var newState = Object.assign({}, state); + if (hasValue(newState[uuid])) { + // flatten two dimensional array + var flatPatch = [].concat.apply([], newState[uuid].patches.map(function (patch) { return patch.operations; })); + var newData = applyPatch(newState[uuid].data, flatPatch, undefined, false); + newState[uuid] = Object.assign({}, newState[uuid], { data: newData.newDocument, patches: [] }); + } + return newState; +} +//# sourceMappingURL=object-cache.reducer.js.map \ No newline at end of file diff --git a/src/app/core/cache/object-cache.reducer.js.map b/src/app/core/cache/object-cache.reducer.js.map new file mode 100644 index 0000000000..2ca5662977 --- /dev/null +++ b/src/app/core/cache/object-cache.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-cache.reducer.js","sourceRoot":"","sources":["object-cache.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/object-cache.service.js b/src/app/core/cache/object-cache.service.js new file mode 100644 index 0000000000..9d120daa36 --- /dev/null +++ b/src/app/core/cache/object-cache.service.js @@ -0,0 +1,236 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { createSelector, select, Store } from '@ngrx/store'; +import { applyPatch } from 'fast-json-patch'; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { distinctUntilChanged, filter, map, mergeMap, take, } from 'rxjs/operators'; +import { hasNoValue, isNotEmpty } from '../../shared/empty.util'; +import { coreSelector } from '../core.selectors'; +import { RestRequestMethod } from '../data/rest-request-method'; +import { selfLinkFromUuidSelector } from '../index/index.selectors'; +import { NormalizedObjectFactory } from './models/normalized-object-factory'; +import { AddPatchObjectCacheAction, AddToObjectCacheAction, ApplyPatchObjectCacheAction, RemoveFromObjectCacheAction } from './object-cache.actions'; +import { AddToSSBAction } from './server-sync-buffer.actions'; +/** + * The base selector function to select the object cache in the store + */ +var objectCacheSelector = createSelector(coreSelector, function (state) { return state['cache/object']; }); +/** + * Selector function to select an object entry by self link from the cache + * @param selfLink The self link of the object + */ +var entryFromSelfLinkSelector = function (selfLink) { return createSelector(objectCacheSelector, function (state) { return state[selfLink]; }); }; +/** + * A service to interact with the object cache + */ +var ObjectCacheService = /** @class */ (function () { + function ObjectCacheService(store) { + this.store = store; + } + /** + * Add an object to the cache + * + * @param objectToCache + * The object to add + * @param msToLive + * The number of milliseconds it should be cached for + * @param requestUUID + * The UUID of the request that resulted in this object + */ + ObjectCacheService.prototype.add = function (objectToCache, msToLive, requestUUID) { + this.store.dispatch(new AddToObjectCacheAction(objectToCache, new Date().getTime(), msToLive, requestUUID)); + }; + /** + * Remove the object with the supplied href from the cache + * + * @param href + * The unique href of the object to be removed + */ + ObjectCacheService.prototype.remove = function (uuid) { + this.store.dispatch(new RemoveFromObjectCacheAction(uuid)); + }; + /** + * Get an observable of the object with the specified UUID + * + * @param uuid + * The UUID of the object to get + * @return Observable> + * An observable of the requested object in normalized form + */ + ObjectCacheService.prototype.getObjectByUUID = function (uuid) { + var _this = this; + return this.store.pipe(select(selfLinkFromUuidSelector(uuid)), mergeMap(function (selfLink) { return _this.getObjectBySelfLink(selfLink); })); + }; + /** + * Get an observable of the object with the specified selfLink + * + * @param selfLink + * The selfLink of the object to get + * @return Observable> + * An observable of the requested object in normalized form + */ + ObjectCacheService.prototype.getObjectBySelfLink = function (selfLink) { + return this.getBySelfLink(selfLink).pipe(map(function (entry) { + if (isNotEmpty(entry.patches)) { + var flatPatch = [].concat.apply([], entry.patches.map(function (patch) { return patch.operations; })); + var patchedData = applyPatch(entry.data, flatPatch, undefined, false).newDocument; + return Object.assign({}, entry, { data: patchedData }); + } + else { + return entry; + } + }), map(function (entry) { + var type = NormalizedObjectFactory.getConstructor(entry.data.type); + return Object.assign(new type(), entry.data); + })); + }; + /** + * Get an observable of the object cache entry with the specified selfLink + * + * @param selfLink + * The selfLink of the object to get + * @return Observable + * An observable of the requested object cache entry + */ + ObjectCacheService.prototype.getBySelfLink = function (selfLink) { + var _this = this; + return this.store.pipe(select(entryFromSelfLinkSelector(selfLink)), filter(function (entry) { return _this.isValid(entry); }), distinctUntilChanged()); + }; + /** + * Get an observable of the request's uuid with the specified selfLink + * + * @param selfLink + * The selfLink of the object to get + * @return Observable + * An observable of the request's uuid + */ + ObjectCacheService.prototype.getRequestUUIDBySelfLink = function (selfLink) { + return this.getBySelfLink(selfLink).pipe(map(function (entry) { return entry.requestUUID; }), distinctUntilChanged()); + }; + /** + * Get an observable of the request's uuid with the specified uuid + * + * @param uuid + * The uuid of the object to get + * @return Observable + * An observable of the request's uuid + */ + ObjectCacheService.prototype.getRequestUUIDByObjectUUID = function (uuid) { + var _this = this; + return this.store.pipe(select(selfLinkFromUuidSelector(uuid)), mergeMap(function (selfLink) { return _this.getRequestUUIDBySelfLink(selfLink); })); + }; + /** + * Get an observable for an array of objects of the same type + * with the specified self links + * + * The type needs to be specified as well, in order to turn + * the cached plain javascript object in to an instance of + * a class. + * + * e.g. getList([ + * 'http://localhost:8080/api/core/collections/c96588c6-72d3-425d-9d47-fa896255a695', + * 'http://localhost:8080/api/core/collections/cff860da-cf5f-4fda-b8c9-afb7ec0b2d9e' + * ], Collection) + * + * @param selfLinks + * An array of self links of the objects to get + * @param type + * The type of the objects to get + * @return Observable> + */ + ObjectCacheService.prototype.getList = function (selfLinks) { + var _this = this; + return observableCombineLatest(selfLinks.map(function (selfLink) { return _this.getObjectBySelfLink(selfLink); })); + }; + /** + * Check whether the object with the specified UUID is cached + * + * @param uuid + * The UUID of the object to check + * @return boolean + * true if the object with the specified UUID is cached, + * false otherwise + */ + ObjectCacheService.prototype.hasByUUID = function (uuid) { + var _this = this; + var result; + this.store.pipe(select(selfLinkFromUuidSelector(uuid)), take(1)).subscribe(function (selfLink) { return result = _this.hasBySelfLink(selfLink); }); + return result; + }; + /** + * Check whether the object with the specified self link is cached + * + * @param selfLink + * The self link of the object to check + * @return boolean + * true if the object with the specified self link is cached, + * false otherwise + */ + ObjectCacheService.prototype.hasBySelfLink = function (selfLink) { + var _this = this; + var result = false; + this.store.pipe(select(entryFromSelfLinkSelector(selfLink)), take(1)).subscribe(function (entry) { return result = _this.isValid(entry); }); + return result; + }; + /** + * Check whether an ObjectCacheEntry should still be cached + * + * @param entry + * the entry to check + * @return boolean + * false if the entry is null, undefined, or its time to + * live has been exceeded, true otherwise + */ + ObjectCacheService.prototype.isValid = function (entry) { + if (hasNoValue(entry)) { + return false; + } + else { + var timeOutdated = entry.timeAdded + entry.msToLive; + var isOutDated = new Date().getTime() > timeOutdated; + if (isOutDated) { + this.store.dispatch(new RemoveFromObjectCacheAction(entry.data.self)); + } + return !isOutDated; + } + }; + /** + * Add operations to the existing list of operations for an ObjectCacheEntry + * Makes sure the ServerSyncBuffer for this ObjectCacheEntry is updated + * @param {string} uuid + * the uuid of the ObjectCacheEntry + * @param {Operation[]} patch + * list of operations to perform + */ + ObjectCacheService.prototype.addPatch = function (selfLink, patch) { + this.store.dispatch(new AddPatchObjectCacheAction(selfLink, patch)); + this.store.dispatch(new AddToSSBAction(selfLink, RestRequestMethod.PATCH)); + }; + /** + * Check whether there are any unperformed operations for an ObjectCacheEntry + * + * @param entry + * the entry to check + * @return boolean + * false if the entry is there are no operations left in the ObjectCacheEntry, true otherwise + */ + ObjectCacheService.prototype.isDirty = function (entry) { + return isNotEmpty(entry.patches); + }; + /** + * Apply the existing operations on an ObjectCacheEntry in the store + * NB: this does not make any server side changes + * @param {string} uuid + * the uuid of the ObjectCacheEntry + */ + ObjectCacheService.prototype.applyPatchesToCachedObject = function (selfLink) { + this.store.dispatch(new ApplyPatchObjectCacheAction(selfLink)); + }; + ObjectCacheService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store]) + ], ObjectCacheService); + return ObjectCacheService; +}()); +export { ObjectCacheService }; +//# sourceMappingURL=object-cache.service.js.map \ No newline at end of file diff --git a/src/app/core/cache/object-cache.service.js.map b/src/app/core/cache/object-cache.service.js.map new file mode 100644 index 0000000000..cb7301e35d --- /dev/null +++ b/src/app/core/cache/object-cache.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-cache.service.js","sourceRoot":"","sources":["object-cache.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/response.models.js b/src/app/core/cache/response.models.js new file mode 100644 index 0000000000..6487cfeebe --- /dev/null +++ b/src/app/core/cache/response.models.js @@ -0,0 +1,320 @@ +import * as tslib_1 from "tslib"; +/* tslint:disable:max-classes-per-file */ +var RestResponse = /** @class */ (function () { + function RestResponse(isSuccessful, statusCode, statusText) { + this.isSuccessful = isSuccessful; + this.statusCode = statusCode; + this.statusText = statusText; + this.toCache = true; + } + return RestResponse; +}()); +export { RestResponse }; +var DSOSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(DSOSuccessResponse, _super); + function DSOSuccessResponse(resourceSelfLinks, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.resourceSelfLinks = resourceSelfLinks; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return DSOSuccessResponse; +}(RestResponse)); +export { DSOSuccessResponse }; +/** + * A successful response containing a list of MetadataSchemas wrapped in a RegistryMetadataschemasResponse + */ +var RegistryMetadataschemasSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(RegistryMetadataschemasSuccessResponse, _super); + function RegistryMetadataschemasSuccessResponse(metadataschemasResponse, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.metadataschemasResponse = metadataschemasResponse; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return RegistryMetadataschemasSuccessResponse; +}(RestResponse)); +export { RegistryMetadataschemasSuccessResponse }; +/** + * A successful response containing a list of MetadataFields wrapped in a RegistryMetadatafieldsResponse + */ +var RegistryMetadatafieldsSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(RegistryMetadatafieldsSuccessResponse, _super); + function RegistryMetadatafieldsSuccessResponse(metadatafieldsResponse, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.metadatafieldsResponse = metadatafieldsResponse; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return RegistryMetadatafieldsSuccessResponse; +}(RestResponse)); +export { RegistryMetadatafieldsSuccessResponse }; +/** + * A successful response containing a list of BitstreamFormats wrapped in a RegistryBitstreamformatsResponse + */ +var RegistryBitstreamformatsSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(RegistryBitstreamformatsSuccessResponse, _super); + function RegistryBitstreamformatsSuccessResponse(bitstreamformatsResponse, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.bitstreamformatsResponse = bitstreamformatsResponse; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return RegistryBitstreamformatsSuccessResponse; +}(RestResponse)); +export { RegistryBitstreamformatsSuccessResponse }; +/** + * A successful response containing exactly one MetadataSchema + */ +var MetadataschemaSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(MetadataschemaSuccessResponse, _super); + function MetadataschemaSuccessResponse(metadataschema, statusCode, statusText) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.metadataschema = metadataschema; + _this.statusCode = statusCode; + _this.statusText = statusText; + return _this; + } + return MetadataschemaSuccessResponse; +}(RestResponse)); +export { MetadataschemaSuccessResponse }; +/** + * A successful response containing exactly one MetadataField + */ +var MetadatafieldSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(MetadatafieldSuccessResponse, _super); + function MetadatafieldSuccessResponse(metadatafield, statusCode, statusText) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.metadatafield = metadatafield; + _this.statusCode = statusCode; + _this.statusText = statusText; + return _this; + } + return MetadatafieldSuccessResponse; +}(RestResponse)); +export { MetadatafieldSuccessResponse }; +var SearchSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(SearchSuccessResponse, _super); + function SearchSuccessResponse(results, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.results = results; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return SearchSuccessResponse; +}(RestResponse)); +export { SearchSuccessResponse }; +var FacetConfigSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(FacetConfigSuccessResponse, _super); + function FacetConfigSuccessResponse(results, statusCode, statusText) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.results = results; + _this.statusCode = statusCode; + _this.statusText = statusText; + return _this; + } + return FacetConfigSuccessResponse; +}(RestResponse)); +export { FacetConfigSuccessResponse }; +var FacetValueMap = /** @class */ (function () { + function FacetValueMap() { + } + return FacetValueMap; +}()); +export { FacetValueMap }; +var FacetValueSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(FacetValueSuccessResponse, _super); + function FacetValueSuccessResponse(results, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.results = results; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return FacetValueSuccessResponse; +}(RestResponse)); +export { FacetValueSuccessResponse }; +var FacetValueMapSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(FacetValueMapSuccessResponse, _super); + function FacetValueMapSuccessResponse(results, statusCode, statusText) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.results = results; + _this.statusCode = statusCode; + _this.statusText = statusText; + return _this; + } + return FacetValueMapSuccessResponse; +}(RestResponse)); +export { FacetValueMapSuccessResponse }; +var EndpointMap = /** @class */ (function () { + function EndpointMap() { + } + return EndpointMap; +}()); +export { EndpointMap }; +var EndpointMapSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(EndpointMapSuccessResponse, _super); + function EndpointMapSuccessResponse(endpointMap, statusCode, statusText) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.endpointMap = endpointMap; + _this.statusCode = statusCode; + _this.statusText = statusText; + return _this; + } + return EndpointMapSuccessResponse; +}(RestResponse)); +export { EndpointMapSuccessResponse }; +var GenericSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(GenericSuccessResponse, _super); + function GenericSuccessResponse(payload, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.payload = payload; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return GenericSuccessResponse; +}(RestResponse)); +export { GenericSuccessResponse }; +var ErrorResponse = /** @class */ (function (_super) { + tslib_1.__extends(ErrorResponse, _super); + function ErrorResponse(error) { + var _this = _super.call(this, false, error.statusCode, error.statusText) || this; + console.error(error); + _this.errorMessage = error.message; + return _this; + } + return ErrorResponse; +}(RestResponse)); +export { ErrorResponse }; +var ConfigSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(ConfigSuccessResponse, _super); + function ConfigSuccessResponse(configDefinition, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.configDefinition = configDefinition; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return ConfigSuccessResponse; +}(RestResponse)); +export { ConfigSuccessResponse }; +var AuthStatusResponse = /** @class */ (function (_super) { + tslib_1.__extends(AuthStatusResponse, _super); + function AuthStatusResponse(response, statusCode, statusText) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.response = response; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.toCache = false; + return _this; + } + return AuthStatusResponse; +}(RestResponse)); +export { AuthStatusResponse }; +var IntegrationSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(IntegrationSuccessResponse, _super); + function IntegrationSuccessResponse(dataDefinition, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.dataDefinition = dataDefinition; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return IntegrationSuccessResponse; +}(RestResponse)); +export { IntegrationSuccessResponse }; +var PostPatchSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(PostPatchSuccessResponse, _super); + function PostPatchSuccessResponse(dataDefinition, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.dataDefinition = dataDefinition; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return PostPatchSuccessResponse; +}(RestResponse)); +export { PostPatchSuccessResponse }; +var SubmissionSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionSuccessResponse, _super); + function SubmissionSuccessResponse(dataDefinition, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.dataDefinition = dataDefinition; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return SubmissionSuccessResponse; +}(RestResponse)); +export { SubmissionSuccessResponse }; +var EpersonSuccessResponse = /** @class */ (function (_super) { + tslib_1.__extends(EpersonSuccessResponse, _super); + function EpersonSuccessResponse(epersonDefinition, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.epersonDefinition = epersonDefinition; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return EpersonSuccessResponse; +}(RestResponse)); +export { EpersonSuccessResponse }; +var MessageResponse = /** @class */ (function (_super) { + tslib_1.__extends(MessageResponse, _super); + function MessageResponse(statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + _this.toCache = false; + return _this; + } + return MessageResponse; +}(RestResponse)); +export { MessageResponse }; +var TaskResponse = /** @class */ (function (_super) { + tslib_1.__extends(TaskResponse, _super); + function TaskResponse(statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + _this.toCache = false; + return _this; + } + return TaskResponse; +}(RestResponse)); +export { TaskResponse }; +var FilteredDiscoveryQueryResponse = /** @class */ (function (_super) { + tslib_1.__extends(FilteredDiscoveryQueryResponse, _super); + function FilteredDiscoveryQueryResponse(filterQuery, statusCode, statusText, pageInfo) { + var _this = _super.call(this, true, statusCode, statusText) || this; + _this.filterQuery = filterQuery; + _this.statusCode = statusCode; + _this.statusText = statusText; + _this.pageInfo = pageInfo; + return _this; + } + return FilteredDiscoveryQueryResponse; +}(RestResponse)); +export { FilteredDiscoveryQueryResponse }; +/* tslint:enable:max-classes-per-file */ +//# sourceMappingURL=response.models.js.map \ No newline at end of file diff --git a/src/app/core/cache/response.models.js.map b/src/app/core/cache/response.models.js.map new file mode 100644 index 0000000000..b79da5d2c5 --- /dev/null +++ b/src/app/core/cache/response.models.js.map @@ -0,0 +1 @@ +{"version":3,"file":"response.models.js","sourceRoot":"","sources":["response.models.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.actions.js b/src/app/core/cache/server-sync-buffer.actions.js new file mode 100644 index 0000000000..f5e3f7b60d --- /dev/null +++ b/src/app/core/cache/server-sync-buffer.actions.js @@ -0,0 +1,63 @@ +import { type } from '../../shared/ngrx/type'; +/** + * The list of ServerSyncBufferAction type definitions + */ +export var ServerSyncBufferActionTypes = { + ADD: type('dspace/core/cache/syncbuffer/ADD'), + COMMIT: type('dspace/core/cache/syncbuffer/COMMIT'), + EMPTY: type('dspace/core/cache/syncbuffer/EMPTY'), +}; +/* tslint:disable:max-classes-per-file */ +/** + * An ngrx action to add a new cached object to the server sync buffer + */ +var AddToSSBAction = /** @class */ (function () { + /** + * Create a new AddToSSBAction + * + * @param href + * the unique href of the cached object entry that should be updated + */ + function AddToSSBAction(href, method) { + this.type = ServerSyncBufferActionTypes.ADD; + this.payload = { href: href, method: method }; + } + return AddToSSBAction; +}()); +export { AddToSSBAction }; +/** + * An ngrx action to commit everything (for a certain method, when specified) in the ServerSyncBuffer to the server + */ +var CommitSSBAction = /** @class */ (function () { + /** + * Create a new CommitSSBAction + * + * @param method + * an optional method for which the ServerSyncBuffer should send its entries to the server + */ + function CommitSSBAction(method) { + this.type = ServerSyncBufferActionTypes.COMMIT; + this.payload = method; + } + return CommitSSBAction; +}()); +export { CommitSSBAction }; +/** + * An ngrx action to remove everything (for a certain method, when specified) from the ServerSyncBuffer to the server + */ +var EmptySSBAction = /** @class */ (function () { + /** + * Create a new EmptySSBAction + * + * @param method + * an optional method for which the ServerSyncBuffer should remove its entries + * if this parameter is omitted, the buffer will be emptied as a whole + */ + function EmptySSBAction(method) { + this.type = ServerSyncBufferActionTypes.EMPTY; + this.payload = method; + } + return EmptySSBAction; +}()); +export { EmptySSBAction }; +//# sourceMappingURL=server-sync-buffer.actions.js.map \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.actions.js.map b/src/app/core/cache/server-sync-buffer.actions.js.map new file mode 100644 index 0000000000..8521aeb241 --- /dev/null +++ b/src/app/core/cache/server-sync-buffer.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-sync-buffer.actions.js","sourceRoot":"","sources":["server-sync-buffer.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C;;GAEG;AACH,MAAM,CAAC,IAAM,2BAA2B,GAAG;IACzC,GAAG,EAAE,IAAI,CAAC,kCAAkC,CAAC;IAC7C,MAAM,EAAE,IAAI,CAAC,qCAAqC,CAAC;IACnD,KAAK,EAAE,IAAI,CAAC,oCAAoC,CAAC;CAClD,CAAC;AAEF,yCAAyC;AAEzC;;GAEG;AACH;IAOE;;;;;OAKG;IACH,wBAAY,IAAY,EAAE,MAAyB;QAZnD,SAAI,GAAG,2BAA2B,CAAC,GAAG,CAAC;QAarC,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1C,CAAC;IACH,qBAAC;AAAD,CAAC,AAhBD,IAgBC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,yBAAY,MAA0B;QATtC,SAAI,GAAG,2BAA2B,CAAC,MAAM,CAAC;QAUxC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IACH,sBAAC;AAAD,CAAC,AAbD,IAaC;;AACD;;GAEG;AACH;IAIE;;;;;;OAMG;IACH,wBAAY,MAA0B;QAVtC,SAAI,GAAG,2BAA2B,CAAC,KAAK,CAAC;QAWvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IACH,qBAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.effects.js b/src/app/core/cache/server-sync-buffer.effects.js new file mode 100644 index 0000000000..3e066e2c53 --- /dev/null +++ b/src/app/core/cache/server-sync-buffer.effects.js @@ -0,0 +1,110 @@ +import * as tslib_1 from "tslib"; +import { delay, exhaustMap, map, switchMap, take } from 'rxjs/operators'; +import { Inject, Injectable } from '@angular/core'; +import { Actions, Effect, ofType } from '@ngrx/effects'; +import { coreSelector } from '../core.selectors'; +import { CommitSSBAction, EmptySSBAction, ServerSyncBufferActionTypes } from './server-sync-buffer.actions'; +import { GLOBAL_CONFIG } from '../../../config'; +import { createSelector, select, Store } from '@ngrx/store'; +import { combineLatest as observableCombineLatest, of as observableOf } from 'rxjs'; +import { RequestService } from '../data/request.service'; +import { PutRequest } from '../data/request.models'; +import { ObjectCacheService } from './object-cache.service'; +import { ApplyPatchObjectCacheAction } from './object-cache.actions'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { hasValue, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; +import { RestRequestMethod } from '../data/rest-request-method'; +var ServerSyncBufferEffects = /** @class */ (function () { + function ServerSyncBufferEffects(actions$, store, requestService, objectCache, EnvConfig) { + var _this = this; + this.actions$ = actions$; + this.store = store; + this.requestService = requestService; + this.objectCache = objectCache; + this.EnvConfig = EnvConfig; + /** + * When an ADDToSSBAction is dispatched + * Set a time out (configurable per method type) + * Then dispatch a CommitSSBAction + * When the delay is running, no new AddToSSBActions are processed in this effect + */ + this.setTimeoutForServerSync = this.actions$ + .pipe(ofType(ServerSyncBufferActionTypes.ADD), exhaustMap(function (action) { + var autoSyncConfig = _this.EnvConfig.cache.autoSync; + var timeoutInSeconds = autoSyncConfig.timePerMethod[action.payload.method] || autoSyncConfig.defaultTime; + return observableOf(new CommitSSBAction(action.payload.method)).pipe(delay(timeoutInSeconds * 1000)); + })); + /** + * When a CommitSSBAction is dispatched + * Create a list of actions for each entry in the current buffer state to be dispatched + * When the list of actions is not empty, also dispatch an EmptySSBAction + * When the list is empty dispatch a NO_ACTION placeholder action + */ + this.commitServerSyncBuffer = this.actions$ + .pipe(ofType(ServerSyncBufferActionTypes.COMMIT), switchMap(function (action) { + return _this.store.pipe(select(serverSyncBufferSelector()), take(1), /* necessary, otherwise delay will not have any effect after the first run */ switchMap(function (bufferState) { + var actions = bufferState.buffer + .filter(function (entry) { + /* If there's a request method, filter + If there's no filter, commit everything */ + if (hasValue(action.payload)) { + return entry.method === action.payload; + } + return true; + }) + .map(function (entry) { + if (entry.method === RestRequestMethod.PATCH) { + return _this.applyPatch(entry.href); + } + else { + /* TODO implement for other request method types */ + } + }); + /* Add extra action to array, to make sure the ServerSyncBuffer is emptied afterwards */ + if (isNotEmpty(actions) && isNotUndefined(actions[0])) { + return observableCombineLatest.apply(void 0, actions).pipe(switchMap(function (array) { return array.concat([new EmptySSBAction(action.payload)]); })); + } + else { + return observableOf({ type: 'NO_ACTION' }); + } + })); + })); + } + /** + * private method to create an ApplyPatchObjectCacheAction based on a cache entry + * and to do the actual patch request to the server + * @param {string} href The self link of the cache entry + * @returns {Observable} ApplyPatchObjectCacheAction to be dispatched + */ + ServerSyncBufferEffects.prototype.applyPatch = function (href) { + var _this = this; + var patchObject = this.objectCache.getObjectBySelfLink(href).pipe(take(1)); + return patchObject.pipe(map(function (object) { + var serializedObject = new DSpaceRESTv2Serializer(object.constructor).serialize(object); + _this.requestService.configure(new PutRequest(_this.requestService.generateRequestId(), href, serializedObject)); + return new ApplyPatchObjectCacheAction(href); + })); + }; + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], ServerSyncBufferEffects.prototype, "setTimeoutForServerSync", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], ServerSyncBufferEffects.prototype, "commitServerSyncBuffer", void 0); + ServerSyncBufferEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(4, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Actions, + Store, + RequestService, + ObjectCacheService, Object]) + ], ServerSyncBufferEffects); + return ServerSyncBufferEffects; +}()); +export { ServerSyncBufferEffects }; +export function serverSyncBufferSelector() { + return createSelector(coreSelector, function (state) { return state['cache/syncbuffer']; }); +} +//# sourceMappingURL=server-sync-buffer.effects.js.map \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.effects.js.map b/src/app/core/cache/server-sync-buffer.effects.js.map new file mode 100644 index 0000000000..81a77980da --- /dev/null +++ b/src/app/core/cache/server-sync-buffer.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-sync-buffer.effects.js","sourceRoot":"","sources":["server-sync-buffer.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.reducer.js b/src/app/core/cache/server-sync-buffer.reducer.js new file mode 100644 index 0000000000..c91f37fdcc --- /dev/null +++ b/src/app/core/cache/server-sync-buffer.reducer.js @@ -0,0 +1,73 @@ +import { hasNoValue, hasValue } from '../../shared/empty.util'; +import { ServerSyncBufferActionTypes } from './server-sync-buffer.actions'; +/** + * An entry in the ServerSyncBufferState + * href: unique href of an ObjectCacheEntry + * method: RestRequestMethod type + */ +var ServerSyncBufferEntry = /** @class */ (function () { + function ServerSyncBufferEntry() { + } + return ServerSyncBufferEntry; +}()); +export { ServerSyncBufferEntry }; +var initialState = { buffer: [] }; +/** + * The ServerSyncBuffer Reducer + * + * @param state + * the current state + * @param action + * the action to perform on the state + * @return ServerSyncBufferState + * the new state + */ +export function serverSyncBufferReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case ServerSyncBufferActionTypes.ADD: { + return addToServerSyncQueue(state, action); + } + case ServerSyncBufferActionTypes.EMPTY: { + return emptyServerSyncQueue(state, action); + } + default: { + return state; + } + } +} +/** + * Add a new entry to the buffer with a specified method + * + * @param state + * the current state + * @param action + * an AddToSSBAction + * @return ServerSyncBufferState + * the new state, with a new entry added to the buffer + */ +function addToServerSyncQueue(state, action) { + var actionEntry = action.payload; + if (hasNoValue(state.buffer.find(function (entry) { return entry.href === actionEntry.href && entry.method === actionEntry.method; }))) { + return Object.assign({}, state, { buffer: state.buffer.concat(actionEntry) }); + } +} +/** + * Remove all ServerSyncBuffers entry from the buffer with a specified method + * If no method is specified, empty the whole buffer + * + * @param state + * the current state + * @param action + * an AddToSSBAction + * @return ServerSyncBufferState + * the new state, with a new entry added to the buffer + */ +function emptyServerSyncQueue(state, action) { + var newBuffer = []; + if (hasValue(action.payload)) { + newBuffer = state.buffer.filter(function (entry) { return entry.method !== action.payload; }); + } + return Object.assign({}, state, { buffer: newBuffer }); +} +//# sourceMappingURL=server-sync-buffer.reducer.js.map \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.reducer.js.map b/src/app/core/cache/server-sync-buffer.reducer.js.map new file mode 100644 index 0000000000..5774c1fdef --- /dev/null +++ b/src/app/core/cache/server-sync-buffer.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-sync-buffer.reducer.js","sourceRoot":"","sources":["server-sync-buffer.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAIL,2BAA2B,EAC5B,MAAM,8BAA8B,CAAC;AAGtC;;;;GAIG;AACH;IAAA;IAGA,CAAC;IAAD,4BAAC;AAAD,CAAC,AAHD,IAGC;;AAWD,IAAM,YAAY,GAA0B,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AAE3D;;;;;;;;;GASG;AACH,MAAM,kCAAkC,KAAoB,EAAE,MAA8B;IAApD,sBAAA,EAAA,oBAAoB;IAC1D,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,2BAA2B,CAAC,GAAG,CAAC,CAAC;YACpC,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAwB,CAAC,CAAA;SAC7D;QAED,KAAK,2BAA2B,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAwB,CAAC,CAAC;SAC9D;QACD,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,8BAA8B,KAA4B,EAAE,MAAsB;IAChF,IAAM,WAAW,GAAG,MAAM,CAAC,OAAgC,CAAC;IAC5D,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAtE,CAAsE,CAAC,CAAC,EAAE;QACpH,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KAC/E;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,8BAA8B,KAA4B,EAAE,MAAsB;IAC9E,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QAC5B,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,OAAO,EAA/B,CAA+B,CAAC,CAAC;KAC7E;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;AAC3D,CAAC"} \ No newline at end of file diff --git a/src/app/core/config/config-data.js b/src/app/core/config/config-data.js new file mode 100644 index 0000000000..09829cd567 --- /dev/null +++ b/src/app/core/config/config-data.js @@ -0,0 +1,12 @@ +/** + * A class to represent the data retrieved by a configuration service + */ +var ConfigData = /** @class */ (function () { + function ConfigData(pageInfo, payload) { + this.pageInfo = pageInfo; + this.payload = payload; + } + return ConfigData; +}()); +export { ConfigData }; +//# sourceMappingURL=config-data.js.map \ No newline at end of file diff --git a/src/app/core/config/config-data.js.map b/src/app/core/config/config-data.js.map new file mode 100644 index 0000000000..1c8337a04e --- /dev/null +++ b/src/app/core/config/config-data.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-data.js","sourceRoot":"","sources":["config-data.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH;IACE,oBACS,QAAkB,EAClB,OAAqB;QADrB,aAAQ,GAAR,QAAQ,CAAU;QAClB,YAAO,GAAP,OAAO,CAAc;IAE9B,CAAC;IACH,iBAAC;AAAD,CAAC,AAND,IAMC"} \ No newline at end of file diff --git a/src/app/core/config/config-response-parsing.service.js b/src/app/core/config/config-response-parsing.service.js new file mode 100644 index 0000000000..d904a740e7 --- /dev/null +++ b/src/app/core/config/config-response-parsing.service.js @@ -0,0 +1,36 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { ConfigSuccessResponse, ErrorResponse } from '../cache/response.models'; +import { isNotEmpty } from '../../shared/empty.util'; +import { ConfigObjectFactory } from './models/config-object-factory'; +import { BaseResponseParsingService } from '../data/base-response-parsing.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { ObjectCacheService } from '../cache/object-cache.service'; +var ConfigResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(ConfigResponseParsingService, _super); + function ConfigResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = ConfigObjectFactory; + _this.toCache = false; + return _this; + } + ConfigResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links) && (data.statusCode === 201 || data.statusCode === 200)) { + var configDefinition = this.process(data.payload, request.uuid); + return new ConfigSuccessResponse(configDefinition, data.statusCode, data.statusText, this.processPageInfo(data.payload)); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from config endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + ConfigResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], ConfigResponseParsingService); + return ConfigResponseParsingService; +}(BaseResponseParsingService)); +export { ConfigResponseParsingService }; +//# sourceMappingURL=config-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/config/config-response-parsing.service.js.map b/src/app/core/config/config-response-parsing.service.js.map new file mode 100644 index 0000000000..a82659f2aa --- /dev/null +++ b/src/app/core/config/config-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-response-parsing.service.js","sourceRoot":"","sources":["config-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKnD,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AAC9F,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE;IAAkD,wDAA0B;IAK1E,sCACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QALjC,mBAAa,GAAG,mBAAmB,CAAC;QACpC,aAAO,GAAG,KAAK,CAAC;;IAM1B,CAAC;IAED,4CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,KAAK,GAAG,CAAC,EAAE;YACvH,IAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAA0B,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3F,OAAO,IAAI,qBAAqB,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAC1H;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,0CAA0C,CAAC,EACrD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IAvBU,4BAA4B;QADxC,UAAU,EAAE;QAOR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAPhC,4BAA4B,CAyBxC;IAAD,mCAAC;CAAA,AAzBD,CAAkD,0BAA0B,GAyB3E;SAzBY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/config/config.service.js b/src/app/core/config/config.service.js new file mode 100644 index 0000000000..02ffddc808 --- /dev/null +++ b/src/app/core/config/config.service.js @@ -0,0 +1,66 @@ +import { merge as observableMerge, throwError as observableThrowError } from 'rxjs'; +import { distinctUntilChanged, filter, map, mergeMap, tap } from 'rxjs/operators'; +import { ConfigRequest } from '../data/request.models'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { ConfigData } from './config-data'; +import { getResponseFromEntry } from '../shared/operators'; +var ConfigService = /** @class */ (function () { + function ConfigService() { + } + ConfigService.prototype.getConfig = function (request) { + var responses = this.requestService.getByHref(request.href).pipe(getResponseFromEntry()); + var errorResponses = responses.pipe(filter(function (response) { return !response.isSuccessful; }), mergeMap(function () { return observableThrowError(new Error("Couldn't retrieve the config")); })); + var successResponses = responses.pipe(filter(function (response) { return response.isSuccessful && isNotEmpty(response) && isNotEmpty(response.configDefinition); }), map(function (response) { return new ConfigData(response.pageInfo, response.configDefinition); })); + return observableMerge(errorResponses, successResponses); + }; + ConfigService.prototype.getConfigByNameHref = function (endpoint, resourceName) { + return endpoint + "/" + resourceName; + }; + ConfigService.prototype.getConfigSearchHref = function (endpoint, options) { + if (options === void 0) { options = {}; } + var result; + var args = []; + if (hasValue(options.scopeID)) { + result = endpoint + "/" + this.browseEndpoint; + args.push("uuid=" + options.scopeID); + } + else { + result = endpoint; + } + if (hasValue(options.currentPage) && typeof options.currentPage === 'number') { + /* TODO: this is a temporary fix for the pagination start index (0 or 1) discrepancy between the rest and the frontend respectively */ + args.push("page=" + (options.currentPage - 1)); + } + if (hasValue(options.elementsPerPage)) { + args.push("size=" + options.elementsPerPage); + } + if (hasValue(options.sort)) { + args.push("sort=" + options.sort.field + "," + options.sort.direction); + } + if (isNotEmpty(args)) { + result = result + "?" + args.join('&'); + } + return result; + }; + ConfigService.prototype.getConfigAll = function () { + var _this = this; + return this.halService.getEndpoint(this.linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new ConfigRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getConfig(request); }), distinctUntilChanged()); + }; + ConfigService.prototype.getConfigByHref = function (href) { + var request = new ConfigRequest(this.requestService.generateRequestId(), href); + this.requestService.configure(request); + return this.getConfig(request); + }; + ConfigService.prototype.getConfigByName = function (name) { + var _this = this; + return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getConfigByNameHref(endpoint, name); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new ConfigRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getConfig(request); }), distinctUntilChanged()); + }; + ConfigService.prototype.getConfigBySearch = function (options) { + var _this = this; + if (options === void 0) { options = {}; } + return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getConfigSearchHref(endpoint, options); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new ConfigRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getConfig(request); }), distinctUntilChanged()); + }; + return ConfigService; +}()); +export { ConfigService }; +//# sourceMappingURL=config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/config.service.js.map b/src/app/core/config/config.service.js.map new file mode 100644 index 0000000000..128a4a06ee --- /dev/null +++ b/src/app/core/config/config.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config.service.js","sourceRoot":"","sources":["config.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/config/models/config-access-condition-option.model.js b/src/app/core/config/models/config-access-condition-option.model.js new file mode 100644 index 0000000000..4a6fe1756c --- /dev/null +++ b/src/app/core/config/models/config-access-condition-option.model.js @@ -0,0 +1,10 @@ +/** + * Model class for an Access Condition + */ +var AccessConditionOption = /** @class */ (function () { + function AccessConditionOption() { + } + return AccessConditionOption; +}()); +export { AccessConditionOption }; +//# sourceMappingURL=config-access-condition-option.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-access-condition-option.model.js.map b/src/app/core/config/models/config-access-condition-option.model.js.map new file mode 100644 index 0000000000..b5c3787330 --- /dev/null +++ b/src/app/core/config/models/config-access-condition-option.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-access-condition-option.model.js","sourceRoot":"","sources":["config-access-condition-option.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;IAAA;IAoCA,CAAC;IAAD,4BAAC;AAAD,CAAC,AApCD,IAoCC"} \ No newline at end of file diff --git a/src/app/core/config/models/config-object-factory.js b/src/app/core/config/models/config-object-factory.js new file mode 100644 index 0000000000..fad43f2e4a --- /dev/null +++ b/src/app/core/config/models/config-object-factory.js @@ -0,0 +1,38 @@ +import { ConfigType } from './config-type'; +import { NormalizedSubmissionDefinitionsModel } from './normalized-config-submission-definitions.model'; +import { NormalizedSubmissionFormsModel } from './normalized-config-submission-forms.model'; +import { NormalizedSubmissionSectionModel } from './normalized-config-submission-section.model'; +import { NormalizedSubmissionUploadsModel } from './normalized-config-submission-uploads.model'; +/** + * Class to return normalized models for config objects + */ +var ConfigObjectFactory = /** @class */ (function () { + function ConfigObjectFactory() { + } + ConfigObjectFactory.getConstructor = function (type) { + switch (type) { + case ConfigType.SubmissionDefinition: + case ConfigType.SubmissionDefinitions: { + return NormalizedSubmissionDefinitionsModel; + } + case ConfigType.SubmissionForm: + case ConfigType.SubmissionForms: { + return NormalizedSubmissionFormsModel; + } + case ConfigType.SubmissionSection: + case ConfigType.SubmissionSections: { + return NormalizedSubmissionSectionModel; + } + case ConfigType.SubmissionUpload: + case ConfigType.SubmissionUploads: { + return NormalizedSubmissionUploadsModel; + } + default: { + return undefined; + } + } + }; + return ConfigObjectFactory; +}()); +export { ConfigObjectFactory }; +//# sourceMappingURL=config-object-factory.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-object-factory.js.map b/src/app/core/config/models/config-object-factory.js.map new file mode 100644 index 0000000000..70cde0842e --- /dev/null +++ b/src/app/core/config/models/config-object-factory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-object-factory.js","sourceRoot":"","sources":["config-object-factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,oCAAoC,EAAE,MAAM,kDAAkD,CAAC;AACxG,OAAO,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAC5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAEhG;;GAEG;AACH;IAAA;IAwBA,CAAC;IAvBe,kCAAc,GAA5B,UAA6B,IAAI;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,UAAU,CAAC,oBAAoB,CAAC;YACrC,KAAK,UAAU,CAAC,qBAAqB,CAAC,CAAC;gBACrC,OAAO,oCAAoC,CAAA;aAC5C;YACD,KAAK,UAAU,CAAC,cAAc,CAAC;YAC/B,KAAK,UAAU,CAAC,eAAe,CAAC,CAAC;gBAC/B,OAAO,8BAA8B,CAAA;aACtC;YACD,KAAK,UAAU,CAAC,iBAAiB,CAAC;YAClC,KAAK,UAAU,CAAC,kBAAkB,CAAC,CAAC;gBAClC,OAAO,gCAAgC,CAAA;aACxC;YACD,KAAK,UAAU,CAAC,gBAAgB,CAAC;YACjC,KAAK,UAAU,CAAC,iBAAiB,CAAC,CAAC;gBACjC,OAAO,gCAAgC,CAAA;aACxC;YACD,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,0BAAC;AAAD,CAAC,AAxBD,IAwBC"} \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-definitions.model.js b/src/app/core/config/models/config-submission-definitions.model.js new file mode 100644 index 0000000000..dc1311acd1 --- /dev/null +++ b/src/app/core/config/models/config-submission-definitions.model.js @@ -0,0 +1,11 @@ +import * as tslib_1 from "tslib"; +import { ConfigObject } from './config.model'; +var SubmissionDefinitionsModel = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionDefinitionsModel, _super); + function SubmissionDefinitionsModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + return SubmissionDefinitionsModel; +}(ConfigObject)); +export { SubmissionDefinitionsModel }; +//# sourceMappingURL=config-submission-definitions.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-definitions.model.js.map b/src/app/core/config/models/config-submission-definitions.model.js.map new file mode 100644 index 0000000000..671602cf36 --- /dev/null +++ b/src/app/core/config/models/config-submission-definitions.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-submission-definitions.model.js","sourceRoot":"","sources":["config-submission-definitions.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C;IAAgD,sDAAY;IAA5D;;IAYA,CAAC;IAAD,iCAAC;AAAD,CAAC,AAZD,CAAgD,YAAY,GAY3D"} \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-forms.model.js b/src/app/core/config/models/config-submission-forms.model.js new file mode 100644 index 0000000000..3d84c5da0d --- /dev/null +++ b/src/app/core/config/models/config-submission-forms.model.js @@ -0,0 +1,14 @@ +import * as tslib_1 from "tslib"; +import { ConfigObject } from './config.model'; +/** + * A model class for a NormalizedObject. + */ +var SubmissionFormsModel = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionFormsModel, _super); + function SubmissionFormsModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + return SubmissionFormsModel; +}(ConfigObject)); +export { SubmissionFormsModel }; +//# sourceMappingURL=config-submission-forms.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-forms.model.js.map b/src/app/core/config/models/config-submission-forms.model.js.map new file mode 100644 index 0000000000..79f834f2a2 --- /dev/null +++ b/src/app/core/config/models/config-submission-forms.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-submission-forms.model.js","sourceRoot":"","sources":["config-submission-forms.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAU9C;;GAEG;AACH;IAA0C,gDAAY;IAAtD;;IAMA,CAAC;IAAD,2BAAC;AAAD,CAAC,AAND,CAA0C,YAAY,GAMrD"} \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-section.model.js b/src/app/core/config/models/config-submission-section.model.js new file mode 100644 index 0000000000..530070ec4b --- /dev/null +++ b/src/app/core/config/models/config-submission-section.model.js @@ -0,0 +1,11 @@ +import * as tslib_1 from "tslib"; +import { ConfigObject } from './config.model'; +var SubmissionSectionModel = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionSectionModel, _super); + function SubmissionSectionModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + return SubmissionSectionModel; +}(ConfigObject)); +export { SubmissionSectionModel }; +//# sourceMappingURL=config-submission-section.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-section.model.js.map b/src/app/core/config/models/config-submission-section.model.js.map new file mode 100644 index 0000000000..c59af71743 --- /dev/null +++ b/src/app/core/config/models/config-submission-section.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-submission-section.model.js","sourceRoot":"","sources":["config-submission-section.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAW9C;IAA4C,kDAAY;IAAxD;;IAsBA,CAAC;IAAD,6BAAC;AAAD,CAAC,AAtBD,CAA4C,YAAY,GAsBvD"} \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-uploads.model.js b/src/app/core/config/models/config-submission-uploads.model.js new file mode 100644 index 0000000000..e8374e7a7b --- /dev/null +++ b/src/app/core/config/models/config-submission-uploads.model.js @@ -0,0 +1,11 @@ +import * as tslib_1 from "tslib"; +import { ConfigObject } from './config.model'; +var SubmissionUploadsModel = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionUploadsModel, _super); + function SubmissionUploadsModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + return SubmissionUploadsModel; +}(ConfigObject)); +export { SubmissionUploadsModel }; +//# sourceMappingURL=config-submission-uploads.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-uploads.model.js.map b/src/app/core/config/models/config-submission-uploads.model.js.map new file mode 100644 index 0000000000..e5891438cf --- /dev/null +++ b/src/app/core/config/models/config-submission-uploads.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-submission-uploads.model.js","sourceRoot":"","sources":["config-submission-uploads.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C;IAA4C,kDAAY;IAAxD;;IAgBA,CAAC;IAAD,6BAAC;AAAD,CAAC,AAhBD,CAA4C,YAAY,GAgBvD"} \ No newline at end of file diff --git a/src/app/core/config/models/config-type.js b/src/app/core/config/models/config-type.js new file mode 100644 index 0000000000..ccf732c0b6 --- /dev/null +++ b/src/app/core/config/models/config-type.js @@ -0,0 +1,12 @@ +export var ConfigType; +(function (ConfigType) { + ConfigType["SubmissionDefinitions"] = "submissiondefinitions"; + ConfigType["SubmissionDefinition"] = "submissiondefinition"; + ConfigType["SubmissionForm"] = "submissionform"; + ConfigType["SubmissionForms"] = "submissionforms"; + ConfigType["SubmissionSections"] = "submissionsections"; + ConfigType["SubmissionSection"] = "submissionsection"; + ConfigType["SubmissionUploads"] = "submissionuploads"; + ConfigType["SubmissionUpload"] = "submissionupload"; +})(ConfigType || (ConfigType = {})); +//# sourceMappingURL=config-type.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-type.js.map b/src/app/core/config/models/config-type.js.map new file mode 100644 index 0000000000..9241094c45 --- /dev/null +++ b/src/app/core/config/models/config-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config-type.js","sourceRoot":"","sources":["config-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,UASX;AATD,WAAY,UAAU;IACpB,6DAA+C,CAAA;IAC/C,2DAA6C,CAAA;IAC7C,+CAAiC,CAAA;IACjC,iDAAmC,CAAA;IACnC,uDAAyC,CAAA;IACzC,qDAAuC,CAAA;IACvC,qDAAuC,CAAA;IACvC,mDAAqC,CAAA;AACvC,CAAC,EATW,UAAU,KAAV,UAAU,QASrB"} \ No newline at end of file diff --git a/src/app/core/config/models/config.model.js b/src/app/core/config/models/config.model.js new file mode 100644 index 0000000000..12270d31ae --- /dev/null +++ b/src/app/core/config/models/config.model.js @@ -0,0 +1,7 @@ +var ConfigObject = /** @class */ (function () { + function ConfigObject() { + } + return ConfigObject; +}()); +export { ConfigObject }; +//# sourceMappingURL=config.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config.model.js.map b/src/app/core/config/models/config.model.js.map new file mode 100644 index 0000000000..5a85c3fa49 --- /dev/null +++ b/src/app/core/config/models/config.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config.model.js","sourceRoot":"","sources":["config.model.ts"],"names":[],"mappings":"AAGA;IAAA;IAuBA,CAAC;IAAD,mBAAC;AAAD,CAAC,AAvBD,IAuBC"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-definitions.model.js b/src/app/core/config/models/normalized-config-submission-definitions.model.js new file mode 100644 index 0000000000..7a22f458bb --- /dev/null +++ b/src/app/core/config/models/normalized-config-submission-definitions.model.js @@ -0,0 +1,28 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { SubmissionSectionModel } from './config-submission-section.model'; +import { PaginatedList } from '../../data/paginated-list'; +import { NormalizedConfigObject } from './normalized-config.model'; +/** + * Normalized class for the configuration describing the submission + */ +var NormalizedSubmissionDefinitionsModel = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedSubmissionDefinitionsModel, _super); + function NormalizedSubmissionDefinitionsModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedSubmissionDefinitionsModel.prototype, "isDefault", void 0); + tslib_1.__decorate([ + autoserializeAs(SubmissionSectionModel), + tslib_1.__metadata("design:type", PaginatedList) + ], NormalizedSubmissionDefinitionsModel.prototype, "sections", void 0); + NormalizedSubmissionDefinitionsModel = tslib_1.__decorate([ + inheritSerialization(NormalizedConfigObject) + ], NormalizedSubmissionDefinitionsModel); + return NormalizedSubmissionDefinitionsModel; +}(NormalizedConfigObject)); +export { NormalizedSubmissionDefinitionsModel }; +//# sourceMappingURL=normalized-config-submission-definitions.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-definitions.model.js.map b/src/app/core/config/models/normalized-config-submission-definitions.model.js.map new file mode 100644 index 0000000000..ec6b90b07a --- /dev/null +++ b/src/app/core/config/models/normalized-config-submission-definitions.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-config-submission-definitions.model.js","sourceRoot":"","sources":["normalized-config-submission-definitions.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE;;GAEG;AAEH;IAA0D,gEAAkD;IAA5G;;IAcA,CAAC;IARC;QADC,aAAa;;2EACK;IAMnB;QADC,eAAe,CAAC,sBAAsB,CAAC;0CAC9B,aAAa;0EAAyB;IAZrC,oCAAoC;QADhD,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,oCAAoC,CAchD;IAAD,2CAAC;CAAA,AAdD,CAA0D,sBAAsB,GAc/E;SAdY,oCAAoC"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-forms.model.js b/src/app/core/config/models/normalized-config-submission-forms.model.js new file mode 100644 index 0000000000..3a0aa826f9 --- /dev/null +++ b/src/app/core/config/models/normalized-config-submission-forms.model.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { NormalizedConfigObject } from './normalized-config.model'; +/** + * Normalized class for the configuration describing the submission form + */ +var NormalizedSubmissionFormsModel = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedSubmissionFormsModel, _super); + function NormalizedSubmissionFormsModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Array) + ], NormalizedSubmissionFormsModel.prototype, "rows", void 0); + NormalizedSubmissionFormsModel = tslib_1.__decorate([ + inheritSerialization(NormalizedConfigObject) + ], NormalizedSubmissionFormsModel); + return NormalizedSubmissionFormsModel; +}(NormalizedConfigObject)); +export { NormalizedSubmissionFormsModel }; +//# sourceMappingURL=normalized-config-submission-forms.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-forms.model.js.map b/src/app/core/config/models/normalized-config-submission-forms.model.js.map new file mode 100644 index 0000000000..c62b1e504f --- /dev/null +++ b/src/app/core/config/models/normalized-config-submission-forms.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-config-submission-forms.model.js","sourceRoot":"","sources":["normalized-config-submission-forms.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE;;GAEG;AAEH;IAAoD,0DAA4C;IAAhG;;IAOA,CAAC;IADC;QADC,aAAa;;gEACO;IANV,8BAA8B;QAD1C,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,8BAA8B,CAO1C;IAAD,qCAAC;CAAA,AAPD,CAAoD,sBAAsB,GAOzE;SAPY,8BAA8B"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-section.model.js b/src/app/core/config/models/normalized-config-submission-section.model.js new file mode 100644 index 0000000000..99943022ea --- /dev/null +++ b/src/app/core/config/models/normalized-config-submission-section.model.js @@ -0,0 +1,35 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { SectionsType } from '../../../submission/sections/sections-type'; +import { NormalizedConfigObject } from './normalized-config.model'; +/** + * Normalized class for the configuration describing the submission section + */ +var NormalizedSubmissionSectionModel = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedSubmissionSectionModel, _super); + function NormalizedSubmissionSectionModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedSubmissionSectionModel.prototype, "header", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedSubmissionSectionModel.prototype, "mandatory", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedSubmissionSectionModel.prototype, "sectionType", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], NormalizedSubmissionSectionModel.prototype, "visibility", void 0); + NormalizedSubmissionSectionModel = tslib_1.__decorate([ + inheritSerialization(NormalizedConfigObject) + ], NormalizedSubmissionSectionModel); + return NormalizedSubmissionSectionModel; +}(NormalizedConfigObject)); +export { NormalizedSubmissionSectionModel }; +//# sourceMappingURL=normalized-config-submission-section.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-section.model.js.map b/src/app/core/config/models/normalized-config-submission-section.model.js.map new file mode 100644 index 0000000000..d9a83b70c9 --- /dev/null +++ b/src/app/core/config/models/normalized-config-submission-section.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-config-submission-section.model.js","sourceRoot":"","sources":["normalized-config-submission-section.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAInE;;GAEG;AAEH;IAAsD,4DAA4C;IAAlG;;IA0BA,CAAC;IApBC;QADC,aAAa;;oEACC;IAMf;QADC,aAAa;;uEACK;IAMnB;QADC,aAAa;;yEACY;IAM1B;QADC,aAAa;;wEACyB;IAxB5B,gCAAgC;QAD5C,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,gCAAgC,CA0B5C;IAAD,uCAAC;CAAA,AA1BD,CAAsD,sBAAsB,GA0B3E;SA1BY,gCAAgC"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-uploads.model.js b/src/app/core/config/models/normalized-config-submission-uploads.model.js new file mode 100644 index 0000000000..a2e0038032 --- /dev/null +++ b/src/app/core/config/models/normalized-config-submission-uploads.model.js @@ -0,0 +1,35 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { SubmissionFormsModel } from './config-submission-forms.model'; +import { NormalizedConfigObject } from './normalized-config.model'; +/** + * Normalized class for the configuration describing the submission upload section + */ +var NormalizedSubmissionUploadsModel = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedSubmissionUploadsModel, _super); + function NormalizedSubmissionUploadsModel() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Array) + ], NormalizedSubmissionUploadsModel.prototype, "accessConditionOptions", void 0); + tslib_1.__decorate([ + autoserializeAs(SubmissionFormsModel), + tslib_1.__metadata("design:type", SubmissionFormsModel) + ], NormalizedSubmissionUploadsModel.prototype, "metadata", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedSubmissionUploadsModel.prototype, "required", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedSubmissionUploadsModel.prototype, "maxSize", void 0); + NormalizedSubmissionUploadsModel = tslib_1.__decorate([ + inheritSerialization(NormalizedConfigObject) + ], NormalizedSubmissionUploadsModel); + return NormalizedSubmissionUploadsModel; +}(NormalizedConfigObject)); +export { NormalizedSubmissionUploadsModel }; +//# sourceMappingURL=normalized-config-submission-uploads.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-uploads.model.js.map b/src/app/core/config/models/normalized-config-submission-uploads.model.js.map new file mode 100644 index 0000000000..1c4e983b2e --- /dev/null +++ b/src/app/core/config/models/normalized-config-submission-uploads.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-config-submission-uploads.model.js","sourceRoot":"","sources":["normalized-config-submission-uploads.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE;;GAEG;AAEH;IAAsD,4DAA8C;IAApG;;IAoBA,CAAC;IAdC;QADC,aAAa;;oFACkC;IAMhD;QADC,eAAe,CAAC,oBAAoB,CAAC;0CAC5B,oBAAoB;sEAAC;IAG/B;QADC,aAAa;;sEACI;IAGlB;QADC,aAAa;;qEACE;IAlBL,gCAAgC;QAD5C,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,gCAAgC,CAoB5C;IAAD,uCAAC;CAAA,AApBD,CAAsD,sBAAsB,GAoB3E;SApBY,gCAAgC"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config.model.js b/src/app/core/config/models/normalized-config.model.js new file mode 100644 index 0000000000..5408166cee --- /dev/null +++ b/src/app/core/config/models/normalized-config.model.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { NormalizedObject } from '../../cache/models/normalized-object.model'; +import { ResourceType } from '../../shared/resource-type'; +/** + * Normalized abstract class for a configuration object + */ +var NormalizedConfigObject = /** @class */ (function () { + function NormalizedConfigObject() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedConfigObject.prototype, "name", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedConfigObject.prototype, "type", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], NormalizedConfigObject.prototype, "_links", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedConfigObject.prototype, "self", void 0); + NormalizedConfigObject = tslib_1.__decorate([ + inheritSerialization(NormalizedObject) + ], NormalizedConfigObject); + return NormalizedConfigObject; +}()); +export { NormalizedConfigObject }; +//# sourceMappingURL=normalized-config.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config.model.js.map b/src/app/core/config/models/normalized-config.model.js.map new file mode 100644 index 0000000000..6f9c56f42d --- /dev/null +++ b/src/app/core/config/models/normalized-config.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-config.model.js","sourceRoot":"","sources":["normalized-config.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAEH;IAAA;IA4BA,CAAC;IAtBC;QADC,aAAa;;wDACM;IAMpB;QADC,aAAa;;wDACY;IAM1B;QADC,aAAa;;0DAGZ;IAMF;QADC,aAAa;;wDACD;IA1BO,sBAAsB;QAD3C,oBAAoB,CAAC,gBAAgB,CAAC;OACjB,sBAAsB,CA4B3C;IAAD,6BAAC;CAAA,AA5BD,IA4BC;SA5BqB,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/config/submission-definitions-config.service.js b/src/app/core/config/submission-definitions-config.service.js new file mode 100644 index 0000000000..6d0bfe9ad4 --- /dev/null +++ b/src/app/core/config/submission-definitions-config.service.js @@ -0,0 +1,24 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { ConfigService } from './config.service'; +import { RequestService } from '../data/request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +var SubmissionDefinitionsConfigService = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionDefinitionsConfigService, _super); + function SubmissionDefinitionsConfigService(requestService, halService) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.halService = halService; + _this.linkPath = 'submissiondefinitions'; + _this.browseEndpoint = 'search/findByCollection'; + return _this; + } + SubmissionDefinitionsConfigService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + HALEndpointService]) + ], SubmissionDefinitionsConfigService); + return SubmissionDefinitionsConfigService; +}(ConfigService)); +export { SubmissionDefinitionsConfigService }; +//# sourceMappingURL=submission-definitions-config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/submission-definitions-config.service.js.map b/src/app/core/config/submission-definitions-config.service.js.map new file mode 100644 index 0000000000..d347e993a6 --- /dev/null +++ b/src/app/core/config/submission-definitions-config.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-definitions-config.service.js","sourceRoot":"","sources":["submission-definitions-config.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE;IAAwD,8DAAa;IAInE,4CACY,cAA8B,EAC9B,UAA8B;QAF1C,YAGE,iBAAO,SACR;QAHW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAoB;QALhC,cAAQ,GAAG,uBAAuB,CAAC;QACnC,oBAAc,GAAG,yBAAyB,CAAC;;IAMrD,CAAC;IARU,kCAAkC;QAD9C,UAAU,EAAE;iDAMiB,cAAc;YAClB,kBAAkB;OAN/B,kCAAkC,CAU9C;IAAD,yCAAC;CAAA,AAVD,CAAwD,aAAa,GAUpE;SAVY,kCAAkC"} \ No newline at end of file diff --git a/src/app/core/config/submission-forms-config.service.js b/src/app/core/config/submission-forms-config.service.js new file mode 100644 index 0000000000..135b81bbaf --- /dev/null +++ b/src/app/core/config/submission-forms-config.service.js @@ -0,0 +1,24 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { ConfigService } from './config.service'; +import { RequestService } from '../data/request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +var SubmissionFormsConfigService = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionFormsConfigService, _super); + function SubmissionFormsConfigService(requestService, halService) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.halService = halService; + _this.linkPath = 'submissionforms'; + _this.browseEndpoint = ''; + return _this; + } + SubmissionFormsConfigService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + HALEndpointService]) + ], SubmissionFormsConfigService); + return SubmissionFormsConfigService; +}(ConfigService)); +export { SubmissionFormsConfigService }; +//# sourceMappingURL=submission-forms-config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/submission-forms-config.service.js.map b/src/app/core/config/submission-forms-config.service.js.map new file mode 100644 index 0000000000..bbb5e90514 --- /dev/null +++ b/src/app/core/config/submission-forms-config.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-forms-config.service.js","sourceRoot":"","sources":["submission-forms-config.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE;IAAkD,wDAAa;IAI7D,sCACY,cAA8B,EAC9B,UAA8B;QAF1C,YAGE,iBAAO,SACR;QAHW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAoB;QALhC,cAAQ,GAAG,iBAAiB,CAAC;QAC7B,oBAAc,GAAG,EAAE,CAAC;;IAM9B,CAAC;IARU,4BAA4B;QADxC,UAAU,EAAE;iDAMiB,cAAc;YAClB,kBAAkB;OAN/B,4BAA4B,CAUxC;IAAD,mCAAC;CAAA,AAVD,CAAkD,aAAa,GAU9D;SAVY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/config/submission-sections-config.service.js b/src/app/core/config/submission-sections-config.service.js new file mode 100644 index 0000000000..d9bee464bd --- /dev/null +++ b/src/app/core/config/submission-sections-config.service.js @@ -0,0 +1,24 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { ConfigService } from './config.service'; +import { RequestService } from '../data/request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +var SubmissionSectionsConfigService = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionSectionsConfigService, _super); + function SubmissionSectionsConfigService(requestService, halService) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.halService = halService; + _this.linkPath = 'submissionsections'; + _this.browseEndpoint = ''; + return _this; + } + SubmissionSectionsConfigService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + HALEndpointService]) + ], SubmissionSectionsConfigService); + return SubmissionSectionsConfigService; +}(ConfigService)); +export { SubmissionSectionsConfigService }; +//# sourceMappingURL=submission-sections-config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/submission-sections-config.service.js.map b/src/app/core/config/submission-sections-config.service.js.map new file mode 100644 index 0000000000..866ffe207d --- /dev/null +++ b/src/app/core/config/submission-sections-config.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-sections-config.service.js","sourceRoot":"","sources":["submission-sections-config.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE;IAAqD,2DAAa;IAIhE,yCACY,cAA8B,EAC9B,UAA8B;QAF1C,YAGE,iBAAO,SACR;QAHW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAoB;QALhC,cAAQ,GAAG,oBAAoB,CAAC;QAChC,oBAAc,GAAG,EAAE,CAAC;;IAM9B,CAAC;IARU,+BAA+B;QAD3C,UAAU,EAAE;iDAMiB,cAAc;YAClB,kBAAkB;OAN/B,+BAA+B,CAU3C;IAAD,sCAAC;CAAA,AAVD,CAAqD,aAAa,GAUjE;SAVY,+BAA+B"} \ No newline at end of file diff --git a/src/app/core/config/submission-uploads-config.service.js b/src/app/core/config/submission-uploads-config.service.js new file mode 100644 index 0000000000..a49ec3b0b1 --- /dev/null +++ b/src/app/core/config/submission-uploads-config.service.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { ConfigService } from './config.service'; +import { RequestService } from '../data/request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +/** + * Provides methods to retrieve, from REST server, bitstream access conditions configurations applicable during the submission process. + */ +var SubmissionUploadsConfigService = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionUploadsConfigService, _super); + function SubmissionUploadsConfigService(objectCache, requestService, halService) { + var _this = _super.call(this) || this; + _this.objectCache = objectCache; + _this.requestService = requestService; + _this.halService = halService; + _this.linkPath = 'submissionuploads'; + _this.browseEndpoint = ''; + return _this; + } + SubmissionUploadsConfigService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [ObjectCacheService, + RequestService, + HALEndpointService]) + ], SubmissionUploadsConfigService); + return SubmissionUploadsConfigService; +}(ConfigService)); +export { SubmissionUploadsConfigService }; +//# sourceMappingURL=submission-uploads-config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/submission-uploads-config.service.js.map b/src/app/core/config/submission-uploads-config.service.js.map new file mode 100644 index 0000000000..3941f0f0a6 --- /dev/null +++ b/src/app/core/config/submission-uploads-config.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-uploads-config.service.js","sourceRoot":"","sources":["submission-uploads-config.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE;;GAEG;AAEH;IAAoD,0DAAa;IAI/D,wCACY,WAA+B,EAC/B,cAA8B,EAC9B,UAA8B;QAH1C,YAIE,iBAAO,SACR;QAJW,iBAAW,GAAX,WAAW,CAAoB;QAC/B,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAoB;QANhC,cAAQ,GAAG,mBAAmB,CAAC;QAC/B,oBAAc,GAAG,EAAE,CAAC;;IAO9B,CAAC;IATU,8BAA8B;QAD1C,UAAU,EAAE;iDAMc,kBAAkB;YACf,cAAc;YAClB,kBAAkB;OAP/B,8BAA8B,CAU1C;IAAD,qCAAC;CAAA,AAVD,CAAoD,aAAa,GAUhE;SAVY,8BAA8B"} \ No newline at end of file diff --git a/src/app/core/core.effects.js b/src/app/core/core.effects.js new file mode 100644 index 0000000000..81dbd0ccf7 --- /dev/null +++ b/src/app/core/core.effects.js @@ -0,0 +1,17 @@ +import { ObjectCacheEffects } from './cache/object-cache.effects'; +import { UUIDIndexEffects } from './index/index.effects'; +import { RequestEffects } from './data/request.effects'; +import { AuthEffects } from './auth/auth.effects'; +import { JsonPatchOperationsEffects } from './json-patch/json-patch-operations.effects'; +import { ServerSyncBufferEffects } from './cache/server-sync-buffer.effects'; +import { ObjectUpdatesEffects } from './data/object-updates/object-updates.effects'; +export var coreEffects = [ + RequestEffects, + ObjectCacheEffects, + UUIDIndexEffects, + AuthEffects, + JsonPatchOperationsEffects, + ServerSyncBufferEffects, + ObjectUpdatesEffects +]; +//# sourceMappingURL=core.effects.js.map \ No newline at end of file diff --git a/src/app/core/core.effects.js.map b/src/app/core/core.effects.js.map new file mode 100644 index 0000000000..6ebe90be2d --- /dev/null +++ b/src/app/core/core.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"core.effects.js","sourceRoot":"","sources":["core.effects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAEpF,MAAM,CAAC,IAAM,WAAW,GAAG;IACzB,cAAc;IACd,kBAAkB;IAClB,gBAAgB;IAChB,WAAW;IACX,0BAA0B;IAC1B,uBAAuB;IACvB,oBAAoB;CACrB,CAAC"} \ No newline at end of file diff --git a/src/app/core/core.module.js b/src/app/core/core.module.js new file mode 100644 index 0000000000..d3195f2227 --- /dev/null +++ b/src/app/core/core.module.js @@ -0,0 +1,199 @@ +import * as tslib_1 from "tslib"; +import { NgModule, Optional, SkipSelf } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { StoreModule } from '@ngrx/store'; +import { EffectsModule } from '@ngrx/effects'; +import { DynamicFormLayoutService, DynamicFormService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +import { coreEffects } from './core.effects'; +import { coreReducers } from './core.reducers'; +import { isNotEmpty } from '../shared/empty.util'; +import { ApiService } from '../shared/services/api.service'; +import { BrowseEntriesResponseParsingService } from './data/browse-entries-response-parsing.service'; +import { CollectionDataService } from './data/collection-data.service'; +import { CommunityDataService } from './data/community-data.service'; +import { DebugResponseParsingService } from './data/debug-response-parsing.service'; +import { DSOResponseParsingService } from './data/dso-response-parsing.service'; +import { SearchResponseParsingService } from './data/search-response-parsing.service'; +import { DSpaceRESTv2Service } from './dspace-rest-v2/dspace-rest-v2.service'; +import { FormBuilderService } from '../shared/form/builder/form-builder.service'; +import { SectionFormOperationsService } from '../submission/sections/form/section-form-operations.service'; +import { FormService } from '../shared/form/form.service'; +import { GroupEpersonService } from './eperson/group-eperson.service'; +import { HostWindowService } from '../shared/host-window.service'; +import { ItemDataService } from './data/item-data.service'; +import { MetadataService } from './metadata/metadata.service'; +import { ObjectCacheService } from './cache/object-cache.service'; +import { PaginationComponentOptions } from '../shared/pagination/pagination-component-options.model'; +import { RemoteDataBuildService } from './cache/builders/remote-data-build.service'; +import { RequestService } from './data/request.service'; +import { EndpointMapResponseParsingService } from './data/endpoint-map-response-parsing.service'; +import { ServerResponseService } from '../shared/services/server-response.service'; +import { NativeWindowFactory, NativeWindowService } from '../shared/services/window.service'; +import { BrowseService } from './browse/browse.service'; +import { BrowseResponseParsingService } from './data/browse-response-parsing.service'; +import { ConfigResponseParsingService } from './config/config-response-parsing.service'; +import { RouteService } from '../shared/services/route.service'; +import { SubmissionDefinitionsConfigService } from './config/submission-definitions-config.service'; +import { SubmissionFormsConfigService } from './config/submission-forms-config.service'; +import { SubmissionSectionsConfigService } from './config/submission-sections-config.service'; +import { SubmissionResponseParsingService } from './submission/submission-response-parsing.service'; +import { EpersonResponseParsingService } from './eperson/eperson-response-parsing.service'; +import { JsonPatchOperationsBuilder } from './json-patch/builder/json-patch-operations-builder'; +import { AuthorityService } from './integration/authority.service'; +import { IntegrationResponseParsingService } from './integration/integration-response-parsing.service'; +import { WorkspaceitemDataService } from './submission/workspaceitem-data.service'; +import { UUIDService } from './shared/uuid.service'; +import { AuthenticatedGuard } from './auth/authenticated.guard'; +import { AuthRequestService } from './auth/auth-request.service'; +import { AuthResponseParsingService } from './auth/auth-response-parsing.service'; +import { HTTP_INTERCEPTORS } from '@angular/common/http'; +import { AuthInterceptor } from './auth/auth.interceptor'; +import { HALEndpointService } from './shared/hal-endpoint.service'; +import { FacetValueResponseParsingService } from './data/facet-value-response-parsing.service'; +import { FacetValueMapResponseParsingService } from './data/facet-value-map-response-parsing.service'; +import { FacetConfigResponseParsingService } from './data/facet-config-response-parsing.service'; +import { RegistryService } from './registry/registry.service'; +import { RegistryMetadataschemasResponseParsingService } from './data/registry-metadataschemas-response-parsing.service'; +import { RegistryMetadatafieldsResponseParsingService } from './data/registry-metadatafields-response-parsing.service'; +import { RegistryBitstreamformatsResponseParsingService } from './data/registry-bitstreamformats-response-parsing.service'; +import { WorkflowitemDataService } from './submission/workflowitem-data.service'; +import { NotificationsService } from '../shared/notifications/notifications.service'; +import { UploaderService } from '../shared/uploader/uploader.service'; +import { FileService } from './shared/file.service'; +import { SubmissionRestService } from './submission/submission-rest.service'; +import { BrowseItemsResponseParsingService } from './data/browse-items-response-parsing-service'; +import { DSpaceObjectDataService } from './data/dspace-object-data.service'; +import { MetadataschemaParsingService } from './data/metadataschema-parsing.service'; +import { FilteredDiscoveryPageResponseParsingService } from './data/filtered-discovery-page-response-parsing.service'; +import { CSSVariableService } from '../shared/sass-helper/sass-helper.service'; +import { MenuService } from '../shared/menu/menu.service'; +import { SubmissionJsonPatchOperationsService } from './submission/submission-json-patch-operations.service'; +import { NormalizedObjectBuildService } from './cache/builders/normalized-object-build.service'; +import { DSOChangeAnalyzer } from './data/dso-change-analyzer.service'; +import { ObjectUpdatesService } from './data/object-updates/object-updates.service'; +import { DefaultChangeAnalyzer } from './data/default-change-analyzer.service'; +import { SearchService } from '../+search-page/search-service/search.service'; +import { RoleService } from './roles/role.service'; +import { MyDSpaceGuard } from '../+my-dspace-page/my-dspace.guard'; +import { MyDSpaceResponseParsingService } from './data/mydspace-response-parsing.service'; +import { ClaimedTaskDataService } from './tasks/claimed-task-data.service'; +import { PoolTaskDataService } from './tasks/pool-task-data.service'; +import { TaskResponseParsingService } from './tasks/task-response-parsing.service'; +var IMPORTS = [ + CommonModule, + StoreModule.forFeature('core', coreReducers, {}), + EffectsModule.forFeature(coreEffects) +]; +var DECLARATIONS = []; +var EXPORTS = []; +var PROVIDERS = [ + ApiService, + AuthenticatedGuard, + AuthRequestService, + AuthResponseParsingService, + CommunityDataService, + CollectionDataService, + DSOResponseParsingService, + DSpaceRESTv2Service, + DynamicFormLayoutService, + DynamicFormService, + DynamicFormValidationService, + FormBuilderService, + SectionFormOperationsService, + FormService, + EpersonResponseParsingService, + GroupEpersonService, + HALEndpointService, + HostWindowService, + ItemDataService, + MetadataService, + ObjectCacheService, + PaginationComponentOptions, + RegistryService, + NormalizedObjectBuildService, + RemoteDataBuildService, + RequestService, + EndpointMapResponseParsingService, + FacetValueResponseParsingService, + FacetValueMapResponseParsingService, + FacetConfigResponseParsingService, + RegistryMetadataschemasResponseParsingService, + RegistryMetadatafieldsResponseParsingService, + RegistryBitstreamformatsResponseParsingService, + DebugResponseParsingService, + SearchResponseParsingService, + MyDSpaceResponseParsingService, + ServerResponseService, + BrowseResponseParsingService, + BrowseEntriesResponseParsingService, + BrowseItemsResponseParsingService, + BrowseService, + ConfigResponseParsingService, + RouteService, + SubmissionDefinitionsConfigService, + SubmissionFormsConfigService, + SubmissionRestService, + SubmissionSectionsConfigService, + SubmissionResponseParsingService, + SubmissionJsonPatchOperationsService, + JsonPatchOperationsBuilder, + AuthorityService, + IntegrationResponseParsingService, + MetadataschemaParsingService, + UploaderService, + UUIDService, + NotificationsService, + WorkspaceitemDataService, + WorkflowitemDataService, + UploaderService, + FileService, + DSpaceObjectDataService, + DSOChangeAnalyzer, + DefaultChangeAnalyzer, + CSSVariableService, + MenuService, + ObjectUpdatesService, + SearchService, + MyDSpaceGuard, + RoleService, + TaskResponseParsingService, + ClaimedTaskDataService, + PoolTaskDataService, + // register AuthInterceptor as HttpInterceptor + { + provide: HTTP_INTERCEPTORS, + useClass: AuthInterceptor, + multi: true + }, + NotificationsService, + FilteredDiscoveryPageResponseParsingService, + { provide: NativeWindowService, useFactory: NativeWindowFactory } +]; +var CoreModule = /** @class */ (function () { + function CoreModule(parentModule) { + if (isNotEmpty(parentModule)) { + throw new Error('CoreModule is already loaded. Import it in the AppModule only'); + } + } + CoreModule_1 = CoreModule; + CoreModule.forRoot = function () { + return { + ngModule: CoreModule_1, + providers: PROVIDERS.slice() + }; + }; + var CoreModule_1; + CoreModule = CoreModule_1 = tslib_1.__decorate([ + NgModule({ + imports: IMPORTS.slice(), + declarations: DECLARATIONS.slice(), + exports: EXPORTS.slice(), + providers: PROVIDERS.slice() + }), + tslib_1.__param(0, Optional()), tslib_1.__param(0, SkipSelf()), + tslib_1.__metadata("design:paramtypes", [CoreModule]) + ], CoreModule); + return CoreModule; +}()); +export { CoreModule }; +//# sourceMappingURL=core.module.js.map \ No newline at end of file diff --git a/src/app/core/core.module.js.map b/src/app/core/core.module.js.map new file mode 100644 index 0000000000..59ed28e593 --- /dev/null +++ b/src/app/core/core.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"core.module.js","sourceRoot":"","sources":["core.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/core.reducers.js b/src/app/core/core.reducers.js new file mode 100644 index 0000000000..24e519d187 --- /dev/null +++ b/src/app/core/core.reducers.js @@ -0,0 +1,17 @@ +import { objectCacheReducer } from './cache/object-cache.reducer'; +import { indexReducer } from './index/index.reducer'; +import { requestReducer } from './data/request.reducer'; +import { authReducer } from './auth/auth.reducer'; +import { jsonPatchOperationsReducer } from './json-patch/json-patch-operations.reducer'; +import { serverSyncBufferReducer } from './cache/server-sync-buffer.reducer'; +import { objectUpdatesReducer } from './data/object-updates/object-updates.reducer'; +export var coreReducers = { + 'cache/object': objectCacheReducer, + 'cache/syncbuffer': serverSyncBufferReducer, + 'cache/object-updates': objectUpdatesReducer, + 'data/request': requestReducer, + 'index': indexReducer, + 'auth': authReducer, + 'json/patch': jsonPatchOperationsReducer +}; +//# sourceMappingURL=core.reducers.js.map \ No newline at end of file diff --git a/src/app/core/core.reducers.js.map b/src/app/core/core.reducers.js.map new file mode 100644 index 0000000000..6273ef10cf --- /dev/null +++ b/src/app/core/core.reducers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"core.reducers.js","sourceRoot":"","sources":["core.reducers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAoB,MAAM,8BAA8B,CAAC;AACpF,OAAO,EAAE,YAAY,EAAkB,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAgB,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAa,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAA4B,MAAM,4CAA4C,CAAC;AAClH,OAAO,EAAE,uBAAuB,EAAyB,MAAM,oCAAoC,CAAC;AACpG,OAAO,EACL,oBAAoB,EAErB,MAAM,8CAA8C,CAAC;AAYtD,MAAM,CAAC,IAAM,YAAY,GAAgC;IACvD,cAAc,EAAE,kBAAkB;IAClC,kBAAkB,EAAE,uBAAuB;IAC3C,sBAAsB,EAAE,oBAAoB;IAC5C,cAAc,EAAE,cAAc;IAC9B,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,WAAW;IACnB,YAAY,EAAE,0BAA0B;CACzC,CAAC"} \ No newline at end of file diff --git a/src/app/core/core.selectors.js b/src/app/core/core.selectors.js new file mode 100644 index 0000000000..0b353809f1 --- /dev/null +++ b/src/app/core/core.selectors.js @@ -0,0 +1,6 @@ +import { createFeatureSelector } from '@ngrx/store'; +/** + * Base selector to select the core state from the store + */ +export var coreSelector = createFeatureSelector('core'); +//# sourceMappingURL=core.selectors.js.map \ No newline at end of file diff --git a/src/app/core/core.selectors.js.map b/src/app/core/core.selectors.js.map new file mode 100644 index 0000000000..02219596b2 --- /dev/null +++ b/src/app/core/core.selectors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"core.selectors.js","sourceRoot":"","sources":["core.selectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGpD;;GAEG;AACH,MAAM,CAAC,IAAM,YAAY,GAAG,qBAAqB,CAAY,MAAM,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/core/data/base-response-parsing.service.js b/src/app/core/data/base-response-parsing.service.js new file mode 100644 index 0000000000..891c23b418 --- /dev/null +++ b/src/app/core/data/base-response-parsing.service.js @@ -0,0 +1,138 @@ +import { hasNoValue, hasValue, isNotEmpty } from '../../shared/empty.util'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { PageInfo } from '../shared/page-info.model'; +import { PaginatedList } from './paginated-list'; +import { isRestDataObject, isRestPaginatedList } from '../cache/builders/normalized-object-build.service'; +/* tslint:disable:max-classes-per-file */ +var BaseResponseParsingService = /** @class */ (function () { + function BaseResponseParsingService() { + } + BaseResponseParsingService.prototype.process = function (data, requestUUID) { + var _this = this; + if (isNotEmpty(data)) { + if (hasNoValue(data) || (typeof data !== 'object')) { + return data; + } + else if (isRestPaginatedList(data)) { + return this.processPaginatedList(data, requestUUID); + } + else if (Array.isArray(data)) { + return this.processArray(data, requestUUID); + } + else if (isRestDataObject(data)) { + var object_1 = this.deserialize(data); + if (isNotEmpty(data._embedded)) { + Object + .keys(data._embedded) + .filter(function (property) { return data._embedded.hasOwnProperty(property); }) + .forEach(function (property) { + var parsedObj = _this.process(data._embedded[property], requestUUID); + if (isNotEmpty(parsedObj)) { + if (isRestPaginatedList(data._embedded[property])) { + object_1[property] = parsedObj; + object_1[property].page = parsedObj.page.map(function (obj) { return _this.retrieveObjectOrUrl(obj); }); + } + else if (isRestDataObject(data._embedded[property])) { + object_1[property] = _this.retrieveObjectOrUrl(parsedObj); + } + else if (Array.isArray(parsedObj)) { + object_1[property] = parsedObj.map(function (obj) { return _this.retrieveObjectOrUrl(obj); }); + } + } + }); + } + this.cache(object_1, requestUUID); + return object_1; + } + var result_1 = {}; + Object.keys(data) + .filter(function (property) { return data.hasOwnProperty(property); }) + .filter(function (property) { return hasValue(data[property]); }) + .forEach(function (property) { + result_1[property] = _this.process(data[property], requestUUID); + }); + return result_1; + } + }; + BaseResponseParsingService.prototype.processPaginatedList = function (data, requestUUID) { + var pageInfo = this.processPageInfo(data); + var list = data._embedded; + // Workaround for inconsistency in rest response. Issue: https://github.com/DSpace/dspace-angular/issues/238 + if (hasNoValue(list)) { + list = []; + } + else if (!Array.isArray(list)) { + list = this.flattenSingleKeyObject(list); + } + var page = this.processArray(list, requestUUID); + return new PaginatedList(pageInfo, page); + }; + BaseResponseParsingService.prototype.processArray = function (data, requestUUID) { + var _this = this; + var array = []; + data.forEach(function (datum) { + array = array.concat([_this.process(datum, requestUUID)]); + }); + return array; + }; + BaseResponseParsingService.prototype.deserialize = function (obj) { + var type = obj.type; + if (hasValue(type)) { + var normObjConstructor = this.objectFactory.getConstructor(type); + if (hasValue(normObjConstructor)) { + var serializer = new DSpaceRESTv2Serializer(normObjConstructor); + return serializer.deserialize(obj); + } + else { + // TODO: move check to Validator? + // throw new Error(`The server returned an object with an unknown a known type: ${type}`); + return null; + } + } + else { + // TODO: move check to Validator + // throw new Error(`The server returned an object without a type: ${JSON.stringify(obj)}`); + return null; + } + }; + BaseResponseParsingService.prototype.cache = function (obj, requestUUID) { + if (this.toCache) { + this.addToObjectCache(obj, requestUUID); + } + }; + BaseResponseParsingService.prototype.addToObjectCache = function (co, requestUUID) { + if (hasNoValue(co) || hasNoValue(co.self)) { + throw new Error('The server returned an invalid object'); + } + this.objectCache.add(co, this.EnvConfig.cache.msToLive.default, requestUUID); + }; + BaseResponseParsingService.prototype.processPageInfo = function (payload) { + if (hasValue(payload.page)) { + var pageObj = Object.assign({}, payload.page, { _links: payload._links }); + var pageInfoObject = new DSpaceRESTv2Serializer(PageInfo).deserialize(pageObj); + if (pageInfoObject.currentPage >= 0) { + Object.assign(pageInfoObject, { currentPage: pageInfoObject.currentPage + 1 }); + } + return pageInfoObject; + } + else { + return undefined; + } + }; + BaseResponseParsingService.prototype.flattenSingleKeyObject = function (obj) { + var keys = Object.keys(obj); + if (keys.length !== 1) { + throw new Error("Expected an object with a single key, got: " + JSON.stringify(obj)); + } + return obj[keys[0]]; + }; + BaseResponseParsingService.prototype.retrieveObjectOrUrl = function (obj) { + return this.toCache ? obj.self : obj; + }; + BaseResponseParsingService.prototype.isSuccessStatus = function (statusCode) { + return statusCode >= 200 && statusCode < 300; + }; + return BaseResponseParsingService; +}()); +export { BaseResponseParsingService }; +//# sourceMappingURL=base-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/base-response-parsing.service.js.map b/src/app/core/data/base-response-parsing.service.js.map new file mode 100644 index 0000000000..8b32098cda --- /dev/null +++ b/src/app/core/data/base-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"base-response-parsing.service.js","sourceRoot":"","sources":["base-response-parsing.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/browse-entries-response-parsing.service.js b/src/app/core/data/browse-entries-response-parsing.service.js new file mode 100644 index 0000000000..a0cf76d431 --- /dev/null +++ b/src/app/core/data/browse-entries-response-parsing.service.js @@ -0,0 +1,43 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { GLOBAL_CONFIG } from '../../../config'; +import { isNotEmpty } from '../../shared/empty.util'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { ErrorResponse, GenericSuccessResponse } from '../cache/response.models'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { BrowseEntry } from '../shared/browse-entry.model'; +import { BaseResponseParsingService } from './base-response-parsing.service'; +var BrowseEntriesResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(BrowseEntriesResponseParsingService, _super); + function BrowseEntriesResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = { + getConstructor: function () { return BrowseEntry; } + }; + _this.toCache = false; + return _this; + } + BrowseEntriesResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload)) { + var browseEntries = []; + if (isNotEmpty(data.payload._embedded) && Array.isArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]])) { + var serializer = new DSpaceRESTv2Serializer(BrowseEntry); + browseEntries = serializer.deserializeArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]]); + } + return new GenericSuccessResponse(browseEntries, data.statusCode, data.statusText, this.processPageInfo(data.payload)); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from browse endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + BrowseEntriesResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], BrowseEntriesResponseParsingService); + return BrowseEntriesResponseParsingService; +}(BaseResponseParsingService)); +export { BrowseEntriesResponseParsingService }; +//# sourceMappingURL=browse-entries-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/browse-entries-response-parsing.service.js.map b/src/app/core/data/browse-entries-response-parsing.service.js.map new file mode 100644 index 0000000000..6a984518d3 --- /dev/null +++ b/src/app/core/data/browse-entries-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-entries-response-parsing.service.js","sourceRoot":"","sources":["browse-entries-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,aAAa,EACb,sBAAsB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAK7E;IAAyD,+DAA0B;IAOjF,6CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAPjC,mBAAa,GAAG;YACxB,cAAc,EAAE,cAAM,OAAA,WAAW,EAAX,CAAW;SAClC,CAAC;QACQ,aAAO,GAAG,KAAK,CAAC;;IAM1B,CAAC;IAED,mDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC5B,IAAI,aAAa,GAAG,EAAE,CAAC;YACvB,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gBACvH,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,WAAW,CAAC,CAAC;gBAC3D,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC7G;YACD,OAAO,IAAI,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SACxH;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,0CAA0C,CAAC,EACrD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IA7BU,mCAAmC;QAD/C,UAAU,EAAE;QASR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAThC,mCAAmC,CA+B/C;IAAD,0CAAC;CAAA,AA/BD,CAAyD,0BAA0B,GA+BlF;SA/BY,mCAAmC"} \ No newline at end of file diff --git a/src/app/core/data/browse-items-response-parsing-service.js b/src/app/core/data/browse-items-response-parsing-service.js new file mode 100644 index 0000000000..ead835755a --- /dev/null +++ b/src/app/core/data/browse-items-response-parsing-service.js @@ -0,0 +1,54 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { GLOBAL_CONFIG } from '../../../config'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { ErrorResponse, GenericSuccessResponse } from '../cache/response.models'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { BaseResponseParsingService } from './base-response-parsing.service'; +import { DSpaceObject } from '../shared/dspace-object.model'; +import { NormalizedDSpaceObject } from '../cache/models/normalized-dspace-object.model'; +/** + * A ResponseParsingService used to parse DSpaceRESTV2Response coming from the REST API to Browse Items (DSpaceObject[]) + */ +var BrowseItemsResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(BrowseItemsResponseParsingService, _super); + function BrowseItemsResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = { + getConstructor: function () { return DSpaceObject; } + }; + _this.toCache = false; + return _this; + } + /** + * Parses data from the browse endpoint to a list of DSpaceObjects + * @param {RestRequest} request + * @param {DSpaceRESTV2Response} data + * @returns {RestResponse} + */ + BrowseItemsResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload) && isNotEmpty(data.payload._embedded) + && Array.isArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]])) { + var serializer = new DSpaceRESTv2Serializer(NormalizedDSpaceObject); + var items = serializer.deserializeArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]]); + return new GenericSuccessResponse(items, data.statusCode, data.statusText, this.processPageInfo(data.payload)); + } + else if (hasValue(data.payload) && hasValue(data.payload.page)) { + return new GenericSuccessResponse([], data.statusCode, data.statusText, this.processPageInfo(data.payload)); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from browse endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + BrowseItemsResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], BrowseItemsResponseParsingService); + return BrowseItemsResponseParsingService; +}(BaseResponseParsingService)); +export { BrowseItemsResponseParsingService }; +//# sourceMappingURL=browse-items-response-parsing-service.js.map \ No newline at end of file diff --git a/src/app/core/data/browse-items-response-parsing-service.js.map b/src/app/core/data/browse-items-response-parsing-service.js.map new file mode 100644 index 0000000000..0f086d27b0 --- /dev/null +++ b/src/app/core/data/browse-items-response-parsing-service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-items-response-parsing-service.js","sourceRoot":"","sources":["browse-items-response-parsing-service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAgB,MAAM,0BAA0B,CAAC;AAE/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAG7E,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AAExF;;GAEG;AAEH;IAAuD,6DAA0B;IAO/E,2CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAPjC,mBAAa,GAAG;YACxB,cAAc,EAAE,cAAM,OAAA,YAAY,EAAZ,CAAY;SACnC,CAAC;QACQ,aAAO,GAAG,KAAK,CAAC;;IAM1B,CAAC;IAED;;;;;OAKG;IACH,iDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;eAC7D,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YAClF,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,sBAAsB,CAAC,CAAC;YACtE,IAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1G,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAChH;aAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAChE,OAAO,IAAI,sBAAsB,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAC7G;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,0CAA0C,CAAC,EACrD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IAnCU,iCAAiC;QAD7C,UAAU,EAAE;QASR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAThC,iCAAiC,CAqC7C;IAAD,wCAAC;CAAA,AArCD,CAAuD,0BAA0B,GAqChF;SArCY,iCAAiC"} \ No newline at end of file diff --git a/src/app/core/data/browse-response-parsing.service.js b/src/app/core/data/browse-response-parsing.service.js new file mode 100644 index 0000000000..10bcef3610 --- /dev/null +++ b/src/app/core/data/browse-response-parsing.service.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { GenericSuccessResponse, ErrorResponse } from '../cache/response.models'; +import { isNotEmpty } from '../../shared/empty.util'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { BrowseDefinition } from '../shared/browse-definition.model'; +var BrowseResponseParsingService = /** @class */ (function () { + function BrowseResponseParsingService() { + } + BrowseResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload) && isNotEmpty(data.payload._embedded) + && Array.isArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]])) { + var serializer = new DSpaceRESTv2Serializer(BrowseDefinition); + var browseDefinitions = serializer.deserializeArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]]); + return new GenericSuccessResponse(browseDefinitions, data.statusCode, data.statusText); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from browse endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + BrowseResponseParsingService = tslib_1.__decorate([ + Injectable() + ], BrowseResponseParsingService); + return BrowseResponseParsingService; +}()); +export { BrowseResponseParsingService }; +//# sourceMappingURL=browse-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/browse-response-parsing.service.js.map b/src/app/core/data/browse-response-parsing.service.js.map new file mode 100644 index 0000000000..273beabdb8 --- /dev/null +++ b/src/app/core/data/browse-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-response-parsing.service.js","sourceRoot":"","sources":["browse-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAGrE;IAAA;IAiBA,CAAC;IAfC,4CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;eAC7D,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YAClF,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YAChE,IAAM,iBAAiB,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtH,OAAO,IAAI,sBAAsB,CAAC,iBAAiB,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACxF;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,0CAA0C,CAAC,EACrD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IAhBU,4BAA4B;QADxC,UAAU,EAAE;OACA,4BAA4B,CAiBxC;IAAD,mCAAC;CAAA,AAjBD,IAiBC;SAjBY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/data/change-analyzer.js b/src/app/core/data/change-analyzer.js new file mode 100644 index 0000000000..46a4daf164 --- /dev/null +++ b/src/app/core/data/change-analyzer.js @@ -0,0 +1 @@ +//# sourceMappingURL=change-analyzer.js.map \ No newline at end of file diff --git a/src/app/core/data/change-analyzer.js.map b/src/app/core/data/change-analyzer.js.map new file mode 100644 index 0000000000..5dfb5480f0 --- /dev/null +++ b/src/app/core/data/change-analyzer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"change-analyzer.js","sourceRoot":"","sources":["change-analyzer.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/data/collection-data.service.js b/src/app/core/data/collection-data.service.js new file mode 100644 index 0000000000..713332047d --- /dev/null +++ b/src/app/core/data/collection-data.service.js @@ -0,0 +1,62 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { filter, map, take } from 'rxjs/operators'; +import { Store } from '@ngrx/store'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { ComColDataService } from './comcol-data.service'; +import { CommunityDataService } from './community-data.service'; +import { RequestService } from './request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { HttpClient } from '@angular/common/http'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { DSOChangeAnalyzer } from './dso-change-analyzer.service'; +import { FindAllOptions } from './request.models'; +var CollectionDataService = /** @class */ (function (_super) { + tslib_1.__extends(CollectionDataService, _super); + function CollectionDataService(requestService, rdbService, dataBuildService, store, cds, objectCache, halService, notificationsService, http, comparator) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.dataBuildService = dataBuildService; + _this.store = store; + _this.cds = cds; + _this.objectCache = objectCache; + _this.halService = halService; + _this.notificationsService = notificationsService; + _this.http = http; + _this.comparator = comparator; + _this.linkPath = 'collections'; + _this.forceBypassCache = false; + return _this; + } + /** + * Find whether there is a collection whom user has authorization to submit to + * + * @return boolean + * true if the user has at least one collection to submit to + */ + CollectionDataService.prototype.hasAuthorizedCollection = function () { + var searchHref = 'findAuthorized'; + var options = new FindAllOptions(); + options.elementsPerPage = 1; + return this.searchBy(searchHref, options).pipe(filter(function (collections) { return !collections.isResponsePending; }), take(1), map(function (collections) { return collections.payload.totalElements > 0; })); + }; + CollectionDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + NormalizedObjectBuildService, + Store, + CommunityDataService, + ObjectCacheService, + HALEndpointService, + NotificationsService, + HttpClient, + DSOChangeAnalyzer]) + ], CollectionDataService); + return CollectionDataService; +}(ComColDataService)); +export { CollectionDataService }; +//# sourceMappingURL=collection-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/collection-data.service.js.map b/src/app/core/data/collection-data.service.js.map new file mode 100644 index 0000000000..8d2f81e33b --- /dev/null +++ b/src/app/core/data/collection-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-data.service.js","sourceRoot":"","sources":["collection-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAKlD;IAA2C,iDAA6B;IAItE,+BACY,cAA8B,EAC9B,UAAkC,EAClC,gBAA8C,EAC9C,KAAuB,EACvB,GAAyB,EACzB,WAA+B,EAC/B,UAA8B,EAC9B,oBAA0C,EAC1C,IAAgB,EAChB,UAAyC;QAVrD,YAYE,iBAAO,SACR;QAZW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,WAAK,GAAL,KAAK,CAAkB;QACvB,SAAG,GAAH,GAAG,CAAsB;QACzB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAC9B,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAI,GAAJ,IAAI,CAAY;QAChB,gBAAU,GAAV,UAAU,CAA+B;QAb3C,cAAQ,GAAG,aAAa,CAAC;QACzB,sBAAgB,GAAG,KAAK,CAAC;;IAenC,CAAC;IAED;;;;;OAKG;IACH,uDAAuB,GAAvB;QACE,IAAM,UAAU,GAAG,gBAAgB,CAAC;QACpC,IAAM,OAAO,GAAG,IAAI,cAAc,EAAE,CAAC;QACrC,OAAO,CAAC,eAAe,GAAG,CAAC,CAAC;QAE5B,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAC5C,MAAM,CAAC,UAAC,WAAkD,IAAK,OAAA,CAAC,WAAW,CAAC,iBAAiB,EAA9B,CAA8B,CAAC,EAC9F,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,WAAkD,IAAK,OAAA,WAAW,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,EAArC,CAAqC,CAAC,CACnG,CAAC;IACJ,CAAC;IAnCU,qBAAqB;QADjC,UAAU,EAAE;iDAMiB,cAAc;YAClB,sBAAsB;YAChB,4BAA4B;YACvC,KAAK;YACP,oBAAoB;YACZ,kBAAkB;YACnB,kBAAkB;YACR,oBAAoB;YACpC,UAAU;YACJ,iBAAiB;OAd9B,qBAAqB,CAoCjC;IAAD,4BAAC;CAAA,AApCD,CAA2C,iBAAiB,GAoC3D;SApCY,qBAAqB"} \ No newline at end of file diff --git a/src/app/core/data/comcol-data.service.js b/src/app/core/data/comcol-data.service.js new file mode 100644 index 0000000000..9e1f7efb18 --- /dev/null +++ b/src/app/core/data/comcol-data.service.js @@ -0,0 +1,44 @@ +import * as tslib_1 from "tslib"; +import { distinctUntilChanged, filter, map, mergeMap, share, take, tap } from 'rxjs/operators'; +import { merge as observableMerge, throwError as observableThrowError } from 'rxjs'; +import { isEmpty, isNotEmpty } from '../../shared/empty.util'; +import { DataService } from './data.service'; +import { FindByIDRequest } from './request.models'; +import { getResponseFromEntry } from '../shared/operators'; +var ComColDataService = /** @class */ (function (_super) { + tslib_1.__extends(ComColDataService, _super); + function ComColDataService() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * Get the scoped endpoint URL by fetching the object with + * the given scopeID and returning its HAL link with this + * data-service's linkPath + * + * @param {string} scopeID + * the id of the scope object + * @return { Observable } + * an Observable containing the scoped URL + */ + ComColDataService.prototype.getBrowseEndpoint = function (options, linkPath) { + var _this = this; + if (options === void 0) { options = {}; } + if (linkPath === void 0) { linkPath = this.linkPath; } + if (isEmpty(options.scopeID)) { + return this.halService.getEndpoint(linkPath); + } + else { + var scopeCommunityHrefObs = this.cds.getEndpoint().pipe(mergeMap(function (endpoint) { return _this.cds.getIDHref(endpoint, options.scopeID); }), filter(function (href) { return isNotEmpty(href); }), take(1), tap(function (href) { + var request = new FindByIDRequest(_this.requestService.generateRequestId(), href, options.scopeID); + _this.requestService.configure(request); + })); + var responses = scopeCommunityHrefObs.pipe(mergeMap(function (href) { return _this.requestService.getByHref(href); }), getResponseFromEntry()); + var errorResponses = responses.pipe(filter(function (response) { return !response.isSuccessful; }), mergeMap(function () { return observableThrowError(new Error("The Community with scope " + options.scopeID + " couldn't be retrieved")); })); + var successResponses = responses.pipe(filter(function (response) { return response.isSuccessful; }), mergeMap(function () { return _this.objectCache.getObjectByUUID(options.scopeID); }), map(function (nc) { return nc._links[linkPath]; }), filter(function (href) { return isNotEmpty(href); })); + return observableMerge(errorResponses, successResponses).pipe(distinctUntilChanged(), share()); + } + }; + return ComColDataService; +}(DataService)); +export { ComColDataService }; +//# sourceMappingURL=comcol-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/comcol-data.service.js.map b/src/app/core/data/comcol-data.service.js.map new file mode 100644 index 0000000000..494b361279 --- /dev/null +++ b/src/app/core/data/comcol-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"comcol-data.service.js","sourceRoot":"","sources":["comcol-data.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/community-data.service.js b/src/app/core/data/community-data.service.js new file mode 100644 index 0000000000..2e1b17155f --- /dev/null +++ b/src/app/core/data/community-data.service.js @@ -0,0 +1,64 @@ +import * as tslib_1 from "tslib"; +import { filter, take } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { Store } from '@ngrx/store'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { ComColDataService } from './comcol-data.service'; +import { RequestService } from './request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { FindAllRequest } from './request.models'; +import { hasValue } from '../../shared/empty.util'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { HttpClient } from '@angular/common/http'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { DSOChangeAnalyzer } from './dso-change-analyzer.service'; +var CommunityDataService = /** @class */ (function (_super) { + tslib_1.__extends(CommunityDataService, _super); + function CommunityDataService(requestService, rdbService, dataBuildService, store, objectCache, halService, notificationsService, http, comparator) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.dataBuildService = dataBuildService; + _this.store = store; + _this.objectCache = objectCache; + _this.halService = halService; + _this.notificationsService = notificationsService; + _this.http = http; + _this.comparator = comparator; + _this.linkPath = 'communities'; + _this.topLinkPath = 'communities/search/top'; + _this.cds = _this; + _this.forceBypassCache = false; + return _this; + } + CommunityDataService.prototype.getEndpoint = function () { + return this.halService.getEndpoint(this.linkPath); + }; + CommunityDataService.prototype.findTop = function (options) { + var _this = this; + if (options === void 0) { options = {}; } + var hrefObs = this.getFindAllHref(options, this.topLinkPath); + hrefObs.pipe(filter(function (href) { return hasValue(href); }), take(1)) + .subscribe(function (href) { + var request = new FindAllRequest(_this.requestService.generateRequestId(), href, options); + _this.requestService.configure(request); + }); + return this.rdbService.buildList(hrefObs); + }; + CommunityDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + NormalizedObjectBuildService, + Store, + ObjectCacheService, + HALEndpointService, + NotificationsService, + HttpClient, + DSOChangeAnalyzer]) + ], CommunityDataService); + return CommunityDataService; +}(ComColDataService)); +export { CommunityDataService }; +//# sourceMappingURL=community-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/community-data.service.js.map b/src/app/core/data/community-data.service.js.map new file mode 100644 index 0000000000..3a640174b8 --- /dev/null +++ b/src/app/core/data/community-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-data.service.js","sourceRoot":"","sources":["community-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAkB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE;IAA0C,gDAA4B;IAMpE,8BACY,cAA8B,EAC9B,UAAkC,EAClC,gBAA8C,EAC9C,KAAuB,EACvB,WAA+B,EAC/B,UAA8B,EAC9B,oBAA0C,EAC1C,IAAgB,EAChB,UAAwC;QATpD,YAWE,iBAAO,SACR;QAXW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,WAAK,GAAL,KAAK,CAAkB;QACvB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAC9B,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAI,GAAJ,IAAI,CAAY;QAChB,gBAAU,GAAV,UAAU,CAA8B;QAd1C,cAAQ,GAAG,aAAa,CAAC;QACzB,iBAAW,GAAG,wBAAwB,CAAC;QACvC,SAAG,GAAG,KAAI,CAAC;QACX,sBAAgB,GAAG,KAAK,CAAC;;IAcnC,CAAC;IAED,0CAAW,GAAX;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,sCAAO,GAAP,UAAQ,OAA4B;QAApC,iBAWC;QAXO,wBAAA,EAAA,YAA4B;QAClC,IAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CACV,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,QAAQ,CAAC,IAAI,CAAC,EAAd,CAAc,CAAC,EACxC,IAAI,CAAC,CAAC,CAAC,CAAC;aACP,SAAS,CAAC,UAAC,IAAY;YACtB,IAAM,OAAO,GAAG,IAAI,cAAc,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAC3F,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAY,OAAO,CAAqD,CAAC;IAC3G,CAAC;IAnCU,oBAAoB;QADhC,UAAU,EAAE;iDAQiB,cAAc;YAClB,sBAAsB;YAChB,4BAA4B;YACvC,KAAK;YACC,kBAAkB;YACnB,kBAAkB;YACR,oBAAoB;YACpC,UAAU;YACJ,iBAAiB;OAf9B,oBAAoB,CAoChC;IAAD,2BAAC;CAAA,AApCD,CAA0C,iBAAiB,GAoC1D;SApCY,oBAAoB"} \ No newline at end of file diff --git a/src/app/core/data/data.service.js b/src/app/core/data/data.service.js new file mode 100644 index 0000000000..1bd816228a --- /dev/null +++ b/src/app/core/data/data.service.js @@ -0,0 +1,221 @@ +import { distinctUntilChanged, filter, find, first, map, mergeMap, switchMap, take } from 'rxjs/operators'; +import { hasValue, isNotEmpty, isNotEmptyOperator } from '../../shared/empty.util'; +import { URLCombiner } from '../url-combiner/url-combiner'; +import { CreateRequest, DeleteByIDRequest, FindAllRequest, FindByIDRequest, GetRequest } from './request.models'; +import { configureRequest, getResponseFromEntry } from '../shared/operators'; +import { ErrorResponse } from '../cache/response.models'; +import { NotificationOptions } from '../../shared/notifications/models/notification-options.model'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; +var DataService = /** @class */ (function () { + function DataService() { + this.forceBypassCache = false; + } + /** + * Create the HREF with given options object + * + * @param options The [[FindAllOptions]] object + * @param linkPath The link path for the object + * @return {Observable} + * Return an observable that emits created HREF + */ + DataService.prototype.getFindAllHref = function (options, linkPath) { + if (options === void 0) { options = {}; } + var result; + var args = []; + result = this.getBrowseEndpoint(options, linkPath).pipe(distinctUntilChanged()); + return this.buildHrefFromFindOptions(result, args, options); + }; + /** + * Create the HREF for a specific object's search method with given options object + * + * @param searchMethod The search method for the object + * @param options The [[FindAllOptions]] object + * @return {Observable} + * Return an observable that emits created HREF + */ + DataService.prototype.getSearchByHref = function (searchMethod, options) { + if (options === void 0) { options = {}; } + var result; + var args = []; + result = this.getSearchEndpoint(searchMethod); + if (hasValue(options.searchParams)) { + options.searchParams.forEach(function (param) { + args.push(param.fieldName + "=" + param.fieldValue); + }); + } + return this.buildHrefFromFindOptions(result, args, options); + }; + /** + * Turn an options object into a query string and combine it with the given HREF + * + * @param href$ The HREF to which the query string should be appended + * @param args Array with additional params to combine with query string + * @param options The [[FindAllOptions]] object + * @return {Observable} + * Return an observable that emits created HREF + */ + DataService.prototype.buildHrefFromFindOptions = function (href$, args, options) { + if (hasValue(options.currentPage) && typeof options.currentPage === 'number') { + /* TODO: this is a temporary fix for the pagination start index (0 or 1) discrepancy between the rest and the frontend respectively */ + args.push("page=" + (options.currentPage - 1)); + } + if (hasValue(options.elementsPerPage)) { + args.push("size=" + options.elementsPerPage); + } + if (hasValue(options.sort)) { + args.push("sort=" + options.sort.field + "," + options.sort.direction); + } + if (hasValue(options.startsWith)) { + args.push("startsWith=" + options.startsWith); + } + if (isNotEmpty(args)) { + return href$.pipe(map(function (href) { return new URLCombiner(href, "?" + args.join('&')).toString(); })); + } + else { + return href$; + } + }; + DataService.prototype.findAll = function (options) { + var _this = this; + if (options === void 0) { options = {}; } + var hrefObs = this.getFindAllHref(options); + hrefObs.pipe(first(function (href) { return hasValue(href); })) + .subscribe(function (href) { + var request = new FindAllRequest(_this.requestService.generateRequestId(), href, options); + _this.requestService.configure(request, _this.forceBypassCache); + }); + return this.rdbService.buildList(hrefObs); + }; + /** + * Create the HREF for a specific object based on its identifier + * @param endpoint The base endpoint for the type of object + * @param resourceID The identifier for the object + */ + DataService.prototype.getIDHref = function (endpoint, resourceID) { + return endpoint + "/" + resourceID; + }; + DataService.prototype.findById = function (id) { + var _this = this; + var hrefObs = this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getIDHref(endpoint, id); })); + hrefObs.pipe(find(function (href) { return hasValue(href); })) + .subscribe(function (href) { + var request = new FindByIDRequest(_this.requestService.generateRequestId(), href, id); + _this.requestService.configure(request, _this.forceBypassCache); + }); + return this.rdbService.buildSingle(hrefObs); + }; + DataService.prototype.findByHref = function (href, options) { + this.requestService.configure(new GetRequest(this.requestService.generateRequestId(), href, null, options), this.forceBypassCache); + return this.rdbService.buildSingle(href); + }; + /** + * Return object search endpoint by given search method + * + * @param searchMethod The search method for the object + */ + DataService.prototype.getSearchEndpoint = function (searchMethod) { + return this.halService.getEndpoint(this.linkPath + "/search").pipe(filter(function (href) { return isNotEmpty(href); }), map(function (href) { return href + "/" + searchMethod; })); + }; + /** + * Make a new FindAllRequest with given search method + * + * @param searchMethod The search method for the object + * @param options The [[FindAllOptions]] object + * @return {Observable>} + * Return an observable that emits response from the server + */ + DataService.prototype.searchBy = function (searchMethod, options) { + var _this = this; + if (options === void 0) { options = {}; } + var hrefObs = this.getSearchByHref(searchMethod, options); + hrefObs.pipe(first(function (href) { return hasValue(href); })) + .subscribe(function (href) { + var request = new FindAllRequest(_this.requestService.generateRequestId(), href, options); + _this.requestService.configure(request, true); + }); + return this.rdbService.buildList(hrefObs); + }; + /** + * Add a new patch to the object cache to a specified object + * @param {string} href The selflink of the object that will be patched + * @param {Operation[]} operations The patch operations to be performed + */ + DataService.prototype.patch = function (href, operations) { + this.objectCache.addPatch(href, operations); + }; + /** + * Add a new patch to the object cache + * The patch is derived from the differences between the given object and its version in the object cache + * @param {DSpaceObject} object The given object + */ + DataService.prototype.update = function (object) { + var _this = this; + var oldVersion$ = this.objectCache.getObjectBySelfLink(object.self); + return oldVersion$.pipe(take(1), mergeMap(function (oldVersion) { + var operations = _this.comparator.diff(oldVersion, object); + if (isNotEmpty(operations)) { + _this.objectCache.addPatch(object.self, operations); + } + return _this.findById(object.uuid); + })); + }; + /** + * Create a new DSpaceObject on the server, and store the response + * in the object cache + * + * @param {DSpaceObject} dso + * The object to create + * @param {string} parentUUID + * The UUID of the parent to create the new object under + */ + DataService.prototype.create = function (dso, parentUUID) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + var endpoint$ = this.halService.getEndpoint(this.linkPath).pipe(isNotEmptyOperator(), distinctUntilChanged(), map(function (endpoint) { return parentUUID ? endpoint + "?parent=" + parentUUID : endpoint; })); + var normalizedObject = this.dataBuildService.normalize(dso); + var serializedDso = new DSpaceRESTv2Serializer(NormalizedObjectFactory.getConstructor(dso.type)).serialize(normalizedObject); + var request$ = endpoint$.pipe(take(1), map(function (endpoint) { return new CreateRequest(requestId, endpoint, JSON.stringify(serializedDso)); })); + // Execute the post request + request$.pipe(configureRequest(this.requestService)).subscribe(); + // Resolve self link for new object + var selfLink$ = this.requestService.getByUUID(requestId).pipe(getResponseFromEntry(), map(function (response) { + if (!response.isSuccessful && response instanceof ErrorResponse) { + _this.notificationsService.error('Server Error:', response.errorMessage, new NotificationOptions(-1)); + } + else { + return response; + } + }), map(function (response) { + if (isNotEmpty(response.resourceSelfLinks)) { + return response.resourceSelfLinks[0]; + } + }), distinctUntilChanged()); + return selfLink$.pipe(switchMap(function (selfLink) { return _this.findByHref(selfLink); })); + }; + /** + * Delete an existing DSpace Object on the server + * @param dso The DSpace Object to be removed + * Return an observable that emits true when the deletion was successful, false when it failed + */ + DataService.prototype.delete = function (dso) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + var hrefObs = this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getIDHref(endpoint, dso.uuid); })); + hrefObs.pipe(find(function (href) { return hasValue(href); }), map(function (href) { + var request = new DeleteByIDRequest(requestId, href, dso.uuid); + _this.requestService.configure(request); + })).subscribe(); + return this.requestService.getByUUID(requestId).pipe(find(function (request) { return request.completed; }), map(function (request) { return request.response.isSuccessful; })); + }; + /** + * Commit current object changes to the server + * @param method The RestRequestMethod for which de server sync buffer should be committed + */ + DataService.prototype.commitUpdates = function (method) { + this.requestService.commit(method); + }; + return DataService; +}()); +export { DataService }; +//# sourceMappingURL=data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/data.service.js.map b/src/app/core/data/data.service.js.map new file mode 100644 index 0000000000..bd70be8d5f --- /dev/null +++ b/src/app/core/data/data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"data.service.js","sourceRoot":"","sources":["data.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/debug-response-parsing.service.js b/src/app/core/data/debug-response-parsing.service.js new file mode 100644 index 0000000000..e5838266fa --- /dev/null +++ b/src/app/core/data/debug-response-parsing.service.js @@ -0,0 +1,16 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +var DebugResponseParsingService = /** @class */ (function () { + function DebugResponseParsingService() { + } + DebugResponseParsingService.prototype.parse = function (request, data) { + console.log('request', request, 'data', data); + return undefined; + }; + DebugResponseParsingService = tslib_1.__decorate([ + Injectable() + ], DebugResponseParsingService); + return DebugResponseParsingService; +}()); +export { DebugResponseParsingService }; +//# sourceMappingURL=debug-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/debug-response-parsing.service.js.map b/src/app/core/data/debug-response-parsing.service.js.map new file mode 100644 index 0000000000..72de0f7b0d --- /dev/null +++ b/src/app/core/data/debug-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"debug-response-parsing.service.js","sourceRoot":"","sources":["debug-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAO3C;IAAA;IAKA,CAAC;IAJC,2CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC9C,OAAO,SAAS,CAAC;IACnB,CAAC;IAJU,2BAA2B;QADvC,UAAU,EAAE;OACA,2BAA2B,CAKvC;IAAD,kCAAC;CAAA,AALD,IAKC;SALY,2BAA2B"} \ No newline at end of file diff --git a/src/app/core/data/default-change-analyzer.service.js b/src/app/core/data/default-change-analyzer.service.js new file mode 100644 index 0000000000..1a4564ccef --- /dev/null +++ b/src/app/core/data/default-change-analyzer.service.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { compare } from 'fast-json-patch'; +import { Injectable } from '@angular/core'; +/** + * A class to determine what differs between two + * CacheableObjects + */ +var DefaultChangeAnalyzer = /** @class */ (function () { + function DefaultChangeAnalyzer() { + } + /** + * Compare the metadata of two CacheableObject and return the differences as + * a JsonPatch Operation Array + * + * @param {NormalizedObject} object1 + * The first object to compare + * @param {NormalizedObject} object2 + * The second object to compare + */ + DefaultChangeAnalyzer.prototype.diff = function (object1, object2) { + return compare(object1, object2); + }; + DefaultChangeAnalyzer = tslib_1.__decorate([ + Injectable() + ], DefaultChangeAnalyzer); + return DefaultChangeAnalyzer; +}()); +export { DefaultChangeAnalyzer }; +//# sourceMappingURL=default-change-analyzer.service.js.map \ No newline at end of file diff --git a/src/app/core/data/default-change-analyzer.service.js.map b/src/app/core/data/default-change-analyzer.service.js.map new file mode 100644 index 0000000000..06d638c399 --- /dev/null +++ b/src/app/core/data/default-change-analyzer.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"default-change-analyzer.service.js","sourceRoot":"","sources":["default-change-analyzer.service.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C;;;GAGG;AAEH;IAAA;IAcA,CAAC;IAZC;;;;;;;;OAQG;IACH,oCAAI,GAAJ,UAAK,OAAgC,EAAE,OAAgC;QACrE,OAAO,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAbU,qBAAqB;QADjC,UAAU,EAAE;OACA,qBAAqB,CAcjC;IAAD,4BAAC;CAAA,AAdD,IAcC;SAdY,qBAAqB"} \ No newline at end of file diff --git a/src/app/core/data/dso-change-analyzer.service.js b/src/app/core/data/dso-change-analyzer.service.js new file mode 100644 index 0000000000..d4d1d4d201 --- /dev/null +++ b/src/app/core/data/dso-change-analyzer.service.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { compare } from 'fast-json-patch'; +import { Injectable } from '@angular/core'; +/** + * A class to determine what differs between two + * DSpaceObjects + */ +var DSOChangeAnalyzer = /** @class */ (function () { + function DSOChangeAnalyzer() { + } + /** + * Compare the metadata of two DSpaceObjects and return the differences as + * a JsonPatch Operation Array + * + * @param {NormalizedDSpaceObject} object1 + * The first object to compare + * @param {NormalizedDSpaceObject} object2 + * The second object to compare + */ + DSOChangeAnalyzer.prototype.diff = function (object1, object2) { + return compare(object1.metadata, object2.metadata).map(function (operation) { return Object.assign({}, operation, { path: '/metadata' + operation.path }); }); + }; + DSOChangeAnalyzer = tslib_1.__decorate([ + Injectable() + ], DSOChangeAnalyzer); + return DSOChangeAnalyzer; +}()); +export { DSOChangeAnalyzer }; +//# sourceMappingURL=dso-change-analyzer.service.js.map \ No newline at end of file diff --git a/src/app/core/data/dso-change-analyzer.service.js.map b/src/app/core/data/dso-change-analyzer.service.js.map new file mode 100644 index 0000000000..8be027805d --- /dev/null +++ b/src/app/core/data/dso-change-analyzer.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dso-change-analyzer.service.js","sourceRoot":"","sources":["dso-change-analyzer.service.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;GAGG;AAEH;IAAA;IAcA,CAAC;IAZC;;;;;;;;OAQG;IACH,gCAAI,GAAJ,UAAK,OAAsC,EAAE,OAAsC;QACjF,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAC,SAAoB,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,EAApE,CAAoE,CAAC,CAAC;IACzJ,CAAC;IAbU,iBAAiB;QAD7B,UAAU,EAAE;OACA,iBAAiB,CAc7B;IAAD,wBAAC;CAAA,AAdD,IAcC;SAdY,iBAAiB"} \ No newline at end of file diff --git a/src/app/core/data/dso-response-parsing.service.js b/src/app/core/data/dso-response-parsing.service.js new file mode 100644 index 0000000000..976b371254 --- /dev/null +++ b/src/app/core/data/dso-response-parsing.service.js @@ -0,0 +1,49 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; +import { DSOSuccessResponse } from '../cache/response.models'; +import { BaseResponseParsingService } from './base-response-parsing.service'; +import { hasNoValue, hasValue } from '../../shared/empty.util'; +var DSOResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(DSOResponseParsingService, _super); + function DSOResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = NormalizedObjectFactory; + _this.toCache = true; + return _this; + } + DSOResponseParsingService.prototype.parse = function (request, data) { + var processRequestDTO; + // Prevent empty pages returning an error, initialize empty array instead. + if (hasValue(data.payload) && hasValue(data.payload.page) && data.payload.page.totalElements === 0) { + processRequestDTO = { page: [] }; + } + else { + processRequestDTO = this.process(data.payload, request.uuid); + } + var objectList = processRequestDTO; + if (hasNoValue(processRequestDTO)) { + return new DSOSuccessResponse([], data.statusCode, data.statusText, undefined); + } + if (hasValue(processRequestDTO.page)) { + objectList = processRequestDTO.page; + } + else if (!Array.isArray(processRequestDTO)) { + objectList = [processRequestDTO]; + } + var selfLinks = objectList.map(function (no) { return no.self; }); + return new DSOSuccessResponse(selfLinks, data.statusCode, data.statusText, this.processPageInfo(data.payload)); + }; + DSOResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], DSOResponseParsingService); + return DSOResponseParsingService; +}(BaseResponseParsingService)); +export { DSOResponseParsingService }; +//# sourceMappingURL=dso-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/dso-response-parsing.service.js.map b/src/app/core/data/dso-response-parsing.service.js.map new file mode 100644 index 0000000000..7e7e49d697 --- /dev/null +++ b/src/app/core/data/dso-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dso-response-parsing.service.js","sourceRoot":"","sources":["dso-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAEpF,OAAO,EAAgB,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAI5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAI/D;IAA+C,qDAA0B;IAKvE,mCACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAIE,iBAAO,SACR;QAJkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QALjC,mBAAa,GAAG,uBAAuB,CAAC;QACxC,aAAO,GAAG,IAAI,CAAC;;IAOzB,CAAC;IAED,yCAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,iBAAiB,CAAC;QACtB,0EAA0E;QAC1E,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,EAAE;YAClG,iBAAiB,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;SAClC;aAAM;YACL,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAA+C,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;SAC5G;QACD,IAAI,UAAU,GAAG,iBAAiB,CAAC;QAEnC,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE;YACjC,OAAO,IAAI,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;SAC/E;QACD,IAAI,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE;YACpC,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC;SACrC;aAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;YAC5C,UAAU,GAAG,CAAC,iBAAiB,CAAC,CAAC;SAClC;QACD,IAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,IAAI,EAAP,CAAO,CAAC,CAAC;QAClD,OAAO,IAAI,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;IAChH,CAAC;IAhCU,yBAAyB;QADrC,UAAU,EAAE;QAOR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAPhC,yBAAyB,CAkCrC;IAAD,gCAAC;CAAA,AAlCD,CAA+C,0BAA0B,GAkCxE;SAlCY,yBAAyB"} \ No newline at end of file diff --git a/src/app/core/data/dspace-object-data.service.js b/src/app/core/data/dspace-object-data.service.js new file mode 100644 index 0000000000..a1ed019fa9 --- /dev/null +++ b/src/app/core/data/dspace-object-data.service.js @@ -0,0 +1,70 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { DataService } from './data.service'; +import { RequestService } from './request.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { HttpClient } from '@angular/common/http'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { DSOChangeAnalyzer } from './dso-change-analyzer.service'; +/* tslint:disable:max-classes-per-file */ +var DataServiceImpl = /** @class */ (function (_super) { + tslib_1.__extends(DataServiceImpl, _super); + function DataServiceImpl(requestService, rdbService, dataBuildService, store, objectCache, halService, notificationsService, http, comparator) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.dataBuildService = dataBuildService; + _this.store = store; + _this.objectCache = objectCache; + _this.halService = halService; + _this.notificationsService = notificationsService; + _this.http = http; + _this.comparator = comparator; + _this.linkPath = 'dso'; + _this.forceBypassCache = false; + return _this; + } + DataServiceImpl.prototype.getBrowseEndpoint = function (options, linkPath) { + if (options === void 0) { options = {}; } + if (linkPath === void 0) { linkPath = this.linkPath; } + return this.halService.getEndpoint(linkPath); + }; + DataServiceImpl.prototype.getIDHref = function (endpoint, resourceID) { + return endpoint.replace(/\{\?uuid\}/, "?uuid=" + resourceID); + }; + return DataServiceImpl; +}(DataService)); +var DSpaceObjectDataService = /** @class */ (function () { + function DSpaceObjectDataService(requestService, rdbService, dataBuildService, objectCache, halService, notificationsService, http, comparator) { + this.requestService = requestService; + this.rdbService = rdbService; + this.dataBuildService = dataBuildService; + this.objectCache = objectCache; + this.halService = halService; + this.notificationsService = notificationsService; + this.http = http; + this.comparator = comparator; + this.linkPath = 'dso'; + this.dataService = new DataServiceImpl(requestService, rdbService, dataBuildService, null, objectCache, halService, notificationsService, http, comparator); + } + DSpaceObjectDataService.prototype.findById = function (uuid) { + return this.dataService.findById(uuid); + }; + DSpaceObjectDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + NormalizedObjectBuildService, + ObjectCacheService, + HALEndpointService, + NotificationsService, + HttpClient, + DSOChangeAnalyzer]) + ], DSpaceObjectDataService); + return DSpaceObjectDataService; +}()); +export { DSpaceObjectDataService }; +//# sourceMappingURL=dspace-object-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/dspace-object-data.service.js.map b/src/app/core/data/dspace-object-data.service.js.map new file mode 100644 index 0000000000..e9176db2de --- /dev/null +++ b/src/app/core/data/dspace-object-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-object-data.service.js","sourceRoot":"","sources":["dspace-object-data.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/endpoint-map-response-parsing.service.js b/src/app/core/data/endpoint-map-response-parsing.service.js new file mode 100644 index 0000000000..9e8121b626 --- /dev/null +++ b/src/app/core/data/endpoint-map-response-parsing.service.js @@ -0,0 +1,31 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { GLOBAL_CONFIG } from '../../../config'; +import { ErrorResponse, EndpointMapSuccessResponse } from '../cache/response.models'; +import { isNotEmpty } from '../../shared/empty.util'; +var EndpointMapResponseParsingService = /** @class */ (function () { + function EndpointMapResponseParsingService(EnvConfig) { + this.EnvConfig = EnvConfig; + } + EndpointMapResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links)) { + var links = data.payload._links; + for (var _i = 0, _a = Object.keys(links); _i < _a.length; _i++) { + var link = _a[_i]; + links[link] = links[link].href; + } + return new EndpointMapSuccessResponse(links, data.statusCode, data.statusText); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from root endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + EndpointMapResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object]) + ], EndpointMapResponseParsingService); + return EndpointMapResponseParsingService; +}()); +export { EndpointMapResponseParsingService }; +//# sourceMappingURL=endpoint-map-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/endpoint-map-response-parsing.service.js.map b/src/app/core/data/endpoint-map-response-parsing.service.js.map new file mode 100644 index 0000000000..5474242083 --- /dev/null +++ b/src/app/core/data/endpoint-map-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"endpoint-map-response-parsing.service.js","sourceRoot":"","sources":["endpoint-map-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAgB,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAInG,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD;IACE,2CACiC,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;IAExD,CAAC;IAED,iDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC/D,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAClC,KAAmB,UAAkB,EAAlB,KAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAlB,cAAkB,EAAlB,IAAkB,EAAE;gBAAlC,IAAM,IAAI,SAAA;gBACb,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;aAChC;YACD,OAAO,IAAI,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAChF;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,wCAAwC,CAAC,EACnD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IArBU,iCAAiC;QAD7C,UAAU,EAAE;QAGR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;;OAFb,iCAAiC,CAsB7C;IAAD,wCAAC;CAAA,AAtBD,IAsBC;SAtBY,iCAAiC"} \ No newline at end of file diff --git a/src/app/core/data/facet-config-response-parsing.service.js b/src/app/core/data/facet-config-response-parsing.service.js new file mode 100644 index 0000000000..902f6ea459 --- /dev/null +++ b/src/app/core/data/facet-config-response-parsing.service.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { FacetConfigSuccessResponse } from '../cache/response.models'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { SearchFilterConfig } from '../../+search-page/search-service/search-filter-config.model'; +import { BaseResponseParsingService } from './base-response-parsing.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { GLOBAL_CONFIG } from '../../../config'; +var FacetConfigResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(FacetConfigResponseParsingService, _super); + function FacetConfigResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = {}; + _this.toCache = false; + return _this; + } + FacetConfigResponseParsingService.prototype.parse = function (request, data) { + var config = data.payload._embedded.facets; + var serializer = new DSpaceRESTv2Serializer(SearchFilterConfig); + var facetConfig = serializer.deserializeArray(config); + return new FacetConfigSuccessResponse(facetConfig, data.statusCode, data.statusText); + }; + FacetConfigResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], FacetConfigResponseParsingService); + return FacetConfigResponseParsingService; +}(BaseResponseParsingService)); +export { FacetConfigResponseParsingService }; +//# sourceMappingURL=facet-config-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/facet-config-response-parsing.service.js.map b/src/app/core/data/facet-config-response-parsing.service.js.map new file mode 100644 index 0000000000..1f444f1663 --- /dev/null +++ b/src/app/core/data/facet-config-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"facet-config-response-parsing.service.js","sourceRoot":"","sources":["facet-config-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,0BAA0B,EAE3B,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8DAA8D,CAAC;AAClG,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD;IAAuD,6DAA0B;IAG/E,2CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAJ3C,mBAAa,GAAG,EAAE,CAAC;QACnB,aAAO,GAAG,KAAK,CAAC;;IAKhB,CAAC;IACD,iDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QAEpD,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;QAC7C,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;QAClE,IAAM,WAAW,GAAG,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACxD,OAAO,IAAI,0BAA0B,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACvF,CAAC;IAdU,iCAAiC;QAD7C,UAAU,EAAE;QAKR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OALhC,iCAAiC,CAe7C;IAAD,wCAAC;CAAA,AAfD,CAAuD,0BAA0B,GAehF;SAfY,iCAAiC"} \ No newline at end of file diff --git a/src/app/core/data/facet-value-map-response-parsing.service.js b/src/app/core/data/facet-value-map-response-parsing.service.js new file mode 100644 index 0000000000..314b103ede --- /dev/null +++ b/src/app/core/data/facet-value-map-response-parsing.service.js @@ -0,0 +1,40 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { FacetValueMap, FacetValueMapSuccessResponse, FacetValueSuccessResponse } from '../cache/response.models'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { FacetValue } from '../../+search-page/search-service/facet-value.model'; +import { BaseResponseParsingService } from './base-response-parsing.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { GLOBAL_CONFIG } from '../../../config'; +var FacetValueMapResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(FacetValueMapResponseParsingService, _super); + function FacetValueMapResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = {}; + _this.toCache = false; + return _this; + } + FacetValueMapResponseParsingService.prototype.parse = function (request, data) { + var _this = this; + var payload = data.payload; + var facetMap = new FacetValueMap(); + var serializer = new DSpaceRESTv2Serializer(FacetValue); + payload._embedded.facets.map(function (facet) { + var values = facet._embedded.values.map(function (value) { value.search = value._links.search.href; return value; }); + var facetValues = serializer.deserializeArray(values); + var valuesResponse = new FacetValueSuccessResponse(facetValues, data.statusCode, data.statusText, _this.processPageInfo(data.payload)); + facetMap[facet.name] = valuesResponse; + }); + return new FacetValueMapSuccessResponse(facetMap, data.statusCode, data.statusText); + }; + FacetValueMapResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], FacetValueMapResponseParsingService); + return FacetValueMapResponseParsingService; +}(BaseResponseParsingService)); +export { FacetValueMapResponseParsingService }; +//# sourceMappingURL=facet-value-map-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/facet-value-map-response-parsing.service.js.map b/src/app/core/data/facet-value-map-response-parsing.service.js.map new file mode 100644 index 0000000000..3c2f84a662 --- /dev/null +++ b/src/app/core/data/facet-value-map-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"facet-value-map-response-parsing.service.js","sourceRoot":"","sources":["facet-value-map-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,aAAa,EACb,4BAA4B,EAC5B,yBAAyB,EAE1B,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,qDAAqD,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD;IAAyD,+DAA0B;IAIjF,6CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAL3C,mBAAa,GAAG,EAAE,CAAC;QACnB,aAAO,GAAG,KAAK,CAAC;;IAMhB,CAAC;IAED,mDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QAAtD,iBAcC;QAZC,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAM,QAAQ,GAAkB,IAAI,aAAa,EAAE,CAAC;QAEpD,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC1D,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK;YACjC,IAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK,IAAM,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAA,CAAC,CAAC,CAAC;YAC/G,IAAM,WAAW,GAAG,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACxD,IAAM,cAAc,GAAG,IAAI,yBAAyB,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACxI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,4BAA4B,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtF,CAAC;IAxBU,mCAAmC;QAD/C,UAAU,EAAE;QAMR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OANhC,mCAAmC,CAyB/C;IAAD,0CAAC;CAAA,AAzBD,CAAyD,0BAA0B,GAyBlF;SAzBY,mCAAmC"} \ No newline at end of file diff --git a/src/app/core/data/facet-value-response-parsing.service.js b/src/app/core/data/facet-value-response-parsing.service.js new file mode 100644 index 0000000000..4ded3f9a7c --- /dev/null +++ b/src/app/core/data/facet-value-response-parsing.service.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { FacetValueSuccessResponse } from '../cache/response.models'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { FacetValue } from '../../+search-page/search-service/facet-value.model'; +import { BaseResponseParsingService } from './base-response-parsing.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { GLOBAL_CONFIG } from '../../../config'; +var FacetValueResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(FacetValueResponseParsingService, _super); + function FacetValueResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = {}; + _this.toCache = false; + return _this; + } + FacetValueResponseParsingService.prototype.parse = function (request, data) { + var payload = data.payload; + var serializer = new DSpaceRESTv2Serializer(FacetValue); + // const values = payload._embedded.values.map((value) => {value.search = value._links.search.href; return value;}); + var facetValues = serializer.deserializeArray(payload._embedded.values); + return new FacetValueSuccessResponse(facetValues, data.statusCode, data.statusText, this.processPageInfo(data.payload)); + }; + FacetValueResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], FacetValueResponseParsingService); + return FacetValueResponseParsingService; +}(BaseResponseParsingService)); +export { FacetValueResponseParsingService }; +//# sourceMappingURL=facet-value-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/facet-value-response-parsing.service.js.map b/src/app/core/data/facet-value-response-parsing.service.js.map new file mode 100644 index 0000000000..58da222e17 --- /dev/null +++ b/src/app/core/data/facet-value-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"facet-value-response-parsing.service.js","sourceRoot":"","sources":["facet-value-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAgB,MAAM,0BAA0B,CAAC;AAInF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,qDAAqD,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD;IAAsD,4DAA0B;IAG9E,0CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAJ3C,mBAAa,GAAG,EAAE,CAAC;QACnB,aAAO,GAAG,KAAK,CAAC;;IAKhB,CAAC;IACD,gDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC1D,oHAAoH;QAEpH,IAAM,WAAW,GAAG,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1E,OAAO,IAAI,yBAAyB,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1H,CAAC;IAhBU,gCAAgC;QAD5C,UAAU,EAAE;QAKR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OALhC,gCAAgC,CAiB5C;IAAD,uCAAC;CAAA,AAjBD,CAAsD,0BAA0B,GAiB/E;SAjBY,gCAAgC"} \ No newline at end of file diff --git a/src/app/core/data/filtered-discovery-page-response-parsing.service.js b/src/app/core/data/filtered-discovery-page-response-parsing.service.js new file mode 100644 index 0000000000..f38ee1bb11 --- /dev/null +++ b/src/app/core/data/filtered-discovery-page-response-parsing.service.js @@ -0,0 +1,39 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { BaseResponseParsingService } from './base-response-parsing.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { FilteredDiscoveryQueryResponse } from '../cache/response.models'; +/** + * A ResponseParsingService used to parse DSpaceRESTV2Response coming from the REST API to a discovery query (string) + * wrapped in a FilteredDiscoveryQueryResponse + */ +var FilteredDiscoveryPageResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(FilteredDiscoveryPageResponseParsingService, _super); + function FilteredDiscoveryPageResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = {}; + _this.toCache = false; + return _this; + } + /** + * Parses data from the REST API to a discovery query wrapped in a FilteredDiscoveryQueryResponse + * @param {RestRequest} request + * @param {DSpaceRESTV2Response} data + * @returns {RestResponse} + */ + FilteredDiscoveryPageResponseParsingService.prototype.parse = function (request, data) { + var query = data.payload['discovery-query']; + return new FilteredDiscoveryQueryResponse(query, data.statusCode, data.statusText); + }; + FilteredDiscoveryPageResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], FilteredDiscoveryPageResponseParsingService); + return FilteredDiscoveryPageResponseParsingService; +}(BaseResponseParsingService)); +export { FilteredDiscoveryPageResponseParsingService }; +//# sourceMappingURL=filtered-discovery-page-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/filtered-discovery-page-response-parsing.service.js.map b/src/app/core/data/filtered-discovery-page-response-parsing.service.js.map new file mode 100644 index 0000000000..39df81ab99 --- /dev/null +++ b/src/app/core/data/filtered-discovery-page-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"filtered-discovery-page-response-parsing.service.js","sourceRoot":"","sources":["filtered-discovery-page-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAInD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,8BAA8B,EAAgB,MAAM,0BAA0B,CAAC;AAExF;;;GAGG;AAEH;IAAiE,uEAA0B;IAGzF,qDACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAJ3C,mBAAa,GAAG,EAAE,CAAC;QACnB,aAAO,GAAG,KAAK,CAAC;;IAKhB,CAAC;IAED;;;;;OAKG;IACH,2DAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC9C,OAAO,IAAI,8BAA8B,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACrF,CAAC;IAlBU,2CAA2C;QADvD,UAAU,EAAE;QAKR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OALhC,2CAA2C,CAmBvD;IAAD,kDAAC;CAAA,AAnBD,CAAiE,0BAA0B,GAmB1F;SAnBY,2CAA2C"} \ No newline at end of file diff --git a/src/app/core/data/item-data.service.js b/src/app/core/data/item-data.service.js new file mode 100644 index 0000000000..ce09b98047 --- /dev/null +++ b/src/app/core/data/item-data.service.js @@ -0,0 +1,112 @@ +import * as tslib_1 from "tslib"; +import { distinctUntilChanged, filter, map } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { Store } from '@ngrx/store'; +import { isNotEmpty } from '../../shared/empty.util'; +import { BrowseService } from '../browse/browse.service'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { URLCombiner } from '../url-combiner/url-combiner'; +import { DataService } from './data.service'; +import { RequestService } from './request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { PatchRequest } from './request.models'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { DSOChangeAnalyzer } from './dso-change-analyzer.service'; +import { HttpClient } from '@angular/common/http'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { configureRequest, getRequestFromRequestHref } from '../shared/operators'; +var ItemDataService = /** @class */ (function (_super) { + tslib_1.__extends(ItemDataService, _super); + function ItemDataService(requestService, rdbService, dataBuildService, store, bs, objectCache, halService, notificationsService, http, comparator) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.dataBuildService = dataBuildService; + _this.store = store; + _this.bs = bs; + _this.objectCache = objectCache; + _this.halService = halService; + _this.notificationsService = notificationsService; + _this.http = http; + _this.comparator = comparator; + _this.linkPath = 'items'; + _this.forceBypassCache = false; + return _this; + } + /** + * Get the endpoint for browsing items + * (When options.sort.field is empty, the default field to browse by will be 'dc.date.issued') + * @param {FindAllOptions} options + * @returns {Observable} + */ + ItemDataService.prototype.getBrowseEndpoint = function (options, linkPath) { + if (options === void 0) { options = {}; } + if (linkPath === void 0) { linkPath = this.linkPath; } + var field = 'dc.date.issued'; + if (options.sort && options.sort.field) { + field = options.sort.field; + } + return this.bs.getBrowseURLFor(field, linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (href) { return new URLCombiner(href, "?scope=" + options.scopeID).toString(); }), distinctUntilChanged()); + }; + /** + * Get the endpoint for item withdrawal and reinstatement + * @param itemId + */ + ItemDataService.prototype.getItemWithdrawEndpoint = function (itemId) { + var _this = this; + return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getIDHref(endpoint, itemId); })); + }; + /** + * Get the endpoint to make item private and public + * @param itemId + */ + ItemDataService.prototype.getItemDiscoverableEndpoint = function (itemId) { + var _this = this; + return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getIDHref(endpoint, itemId); })); + }; + /** + * Set the isWithdrawn state of an item to a specified state + * @param itemId + * @param withdrawn + */ + ItemDataService.prototype.setWithDrawn = function (itemId, withdrawn) { + var _this = this; + var patchOperation = [{ + op: 'replace', path: '/withdrawn', value: withdrawn + }]; + return this.getItemWithdrawEndpoint(itemId).pipe(distinctUntilChanged(), map(function (endpointURL) { + return new PatchRequest(_this.requestService.generateRequestId(), endpointURL, patchOperation); + }), configureRequest(this.requestService), map(function (request) { return request.href; }), getRequestFromRequestHref(this.requestService), map(function (requestEntry) { return requestEntry.response; })); + }; + /** + * Set the isDiscoverable state of an item to a specified state + * @param itemId + * @param discoverable + */ + ItemDataService.prototype.setDiscoverable = function (itemId, discoverable) { + var _this = this; + var patchOperation = [{ + op: 'replace', path: '/discoverable', value: discoverable + }]; + return this.getItemDiscoverableEndpoint(itemId).pipe(distinctUntilChanged(), map(function (endpointURL) { + return new PatchRequest(_this.requestService.generateRequestId(), endpointURL, patchOperation); + }), configureRequest(this.requestService), map(function (request) { return request.href; }), getRequestFromRequestHref(this.requestService), map(function (requestEntry) { return requestEntry.response; })); + }; + ItemDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + NormalizedObjectBuildService, + Store, + BrowseService, + ObjectCacheService, + HALEndpointService, + NotificationsService, + HttpClient, + DSOChangeAnalyzer]) + ], ItemDataService); + return ItemDataService; +}(DataService)); +export { ItemDataService }; +//# sourceMappingURL=item-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/item-data.service.js.map b/src/app/core/data/item-data.service.js.map new file mode 100644 index 0000000000..ed6f4047ed --- /dev/null +++ b/src/app/core/data/item-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-data.service.js","sourceRoot":"","sources":["item-data.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/metadata-schema-data.service.js b/src/app/core/data/metadata-schema-data.service.js new file mode 100644 index 0000000000..aa72714bba --- /dev/null +++ b/src/app/core/data/metadata-schema-data.service.js @@ -0,0 +1,58 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Store } from '@ngrx/store'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { DataService } from './data.service'; +import { RequestService } from './request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { HttpClient } from '@angular/common/http'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { DefaultChangeAnalyzer } from './default-change-analyzer.service'; +/** + * A service responsible for fetching/sending data from/to the REST API on the metadataschemas endpoint + */ +var MetadataSchemaDataService = /** @class */ (function (_super) { + tslib_1.__extends(MetadataSchemaDataService, _super); + function MetadataSchemaDataService(requestService, rdbService, store, halService, objectCache, comparator, dataBuildService, http, notificationsService) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.store = store; + _this.halService = halService; + _this.objectCache = objectCache; + _this.comparator = comparator; + _this.dataBuildService = dataBuildService; + _this.http = http; + _this.notificationsService = notificationsService; + _this.linkPath = 'metadataschemas'; + _this.forceBypassCache = false; + return _this; + } + /** + * Get the endpoint for browsing metadataschemas + * @param {FindAllOptions} options + * @returns {Observable} + */ + MetadataSchemaDataService.prototype.getBrowseEndpoint = function (options, linkPath) { + if (options === void 0) { options = {}; } + if (linkPath === void 0) { linkPath = this.linkPath; } + return null; + }; + MetadataSchemaDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + Store, + HALEndpointService, + ObjectCacheService, + DefaultChangeAnalyzer, + NormalizedObjectBuildService, + HttpClient, + NotificationsService]) + ], MetadataSchemaDataService); + return MetadataSchemaDataService; +}(DataService)); +export { MetadataSchemaDataService }; +//# sourceMappingURL=metadata-schema-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/metadata-schema-data.service.js.map b/src/app/core/data/metadata-schema-data.service.js.map new file mode 100644 index 0000000000..1ce12f4ac5 --- /dev/null +++ b/src/app/core/data/metadata-schema-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-schema-data.service.js","sourceRoot":"","sources":["metadata-schema-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAGrF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E;;GAEG;AAEH;IAA+C,qDAA2B;IAIxE,mCACY,cAA8B,EAC9B,UAAkC,EAClC,KAAuB,EACvB,UAA8B,EAC9B,WAA+B,EAC/B,UAAiD,EACjD,gBAA8C,EAC9C,IAAgB,EAChB,oBAA0C;QATtD,YAUE,iBAAO,SACR;QAVW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,WAAK,GAAL,KAAK,CAAkB;QACvB,gBAAU,GAAV,UAAU,CAAoB;QAC9B,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAuC;QACjD,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,UAAI,GAAJ,IAAI,CAAY;QAChB,0BAAoB,GAApB,oBAAoB,CAAsB;QAZ5C,cAAQ,GAAG,iBAAiB,CAAC;QAC7B,sBAAgB,GAAG,KAAK,CAAC;;IAanC,CAAC;IAED;;;;OAIG;IACI,qDAAiB,GAAxB,UAAyB,OAA4B,EAAE,QAAgC;QAA9D,wBAAA,EAAA,YAA4B;QAAE,yBAAA,EAAA,WAAmB,IAAI,CAAC,QAAQ;QAErF,OAAO,IAAI,CAAC;IACd,CAAC;IAzBU,yBAAyB;QADrC,UAAU,EAAE;iDAMiB,cAAc;YAClB,sBAAsB;YAC3B,KAAK;YACA,kBAAkB;YACjB,kBAAkB;YACnB,qBAAqB;YACf,4BAA4B;YACxC,UAAU;YACM,oBAAoB;OAb3C,yBAAyB,CA2BrC;IAAD,gCAAC;CAAA,AA3BD,CAA+C,WAAW,GA2BzD;SA3BY,yBAAyB"} \ No newline at end of file diff --git a/src/app/core/data/metadatafield-parsing.service.js b/src/app/core/data/metadatafield-parsing.service.js new file mode 100644 index 0000000000..845135ef5d --- /dev/null +++ b/src/app/core/data/metadatafield-parsing.service.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { Injectable } from '@angular/core'; +import { MetadatafieldSuccessResponse } from '../cache/response.models'; +import { MetadataField } from '../metadata/metadatafield.model'; +/** + * A service responsible for parsing DSpaceRESTV2Response data related to a single MetadataField to a valid RestResponse + */ +var MetadatafieldParsingService = /** @class */ (function () { + function MetadatafieldParsingService() { + } + MetadatafieldParsingService.prototype.parse = function (request, data) { + var payload = data.payload; + var deserialized = new DSpaceRESTv2Serializer(MetadataField).deserialize(payload); + return new MetadatafieldSuccessResponse(deserialized, data.statusCode, data.statusText); + }; + MetadatafieldParsingService = tslib_1.__decorate([ + Injectable() + ], MetadatafieldParsingService); + return MetadatafieldParsingService; +}()); +export { MetadatafieldParsingService }; +//# sourceMappingURL=metadatafield-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/metadatafield-parsing.service.js.map b/src/app/core/data/metadatafield-parsing.service.js.map new file mode 100644 index 0000000000..d72940dafe --- /dev/null +++ b/src/app/core/data/metadatafield-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadatafield-parsing.service.js","sourceRoot":"","sources":["metadatafield-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAIrF,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,4BAA4B,EAA+C,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE;;GAEG;AAEH;IAAA;IASA,CAAC;IAPC,2CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACpF,OAAO,IAAI,4BAA4B,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1F,CAAC;IAPU,2BAA2B;QADvC,UAAU,EAAE;OACA,2BAA2B,CASvC;IAAD,kCAAC;CAAA,AATD,IASC;SATY,2BAA2B"} \ No newline at end of file diff --git a/src/app/core/data/metadataschema-parsing.service.js b/src/app/core/data/metadataschema-parsing.service.js new file mode 100644 index 0000000000..728e696c58 --- /dev/null +++ b/src/app/core/data/metadataschema-parsing.service.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { MetadataSchema } from '../metadata/metadataschema.model'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { Injectable } from '@angular/core'; +import { MetadataschemaSuccessResponse } from '../cache/response.models'; +var MetadataschemaParsingService = /** @class */ (function () { + function MetadataschemaParsingService() { + } + MetadataschemaParsingService.prototype.parse = function (request, data) { + var payload = data.payload; + var deserialized = new DSpaceRESTv2Serializer(MetadataSchema).deserialize(payload); + return new MetadataschemaSuccessResponse(deserialized, data.statusCode, data.statusText); + }; + MetadataschemaParsingService = tslib_1.__decorate([ + Injectable() + ], MetadataschemaParsingService); + return MetadataschemaParsingService; +}()); +export { MetadataschemaParsingService }; +//# sourceMappingURL=metadataschema-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/metadataschema-parsing.service.js.map b/src/app/core/data/metadataschema-parsing.service.js.map new file mode 100644 index 0000000000..fc9f79fca2 --- /dev/null +++ b/src/app/core/data/metadataschema-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadataschema-parsing.service.js","sourceRoot":"","sources":["metadataschema-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAIrF,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,6BAA6B,EAAgB,MAAM,0BAA0B,CAAC;AAGvF;IAAA;IASA,CAAC;IAPC,4CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACrF,OAAO,IAAI,6BAA6B,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3F,CAAC;IAPU,4BAA4B;QADxC,UAAU,EAAE;OACA,4BAA4B,CASxC;IAAD,mCAAC;CAAA,AATD,IASC;SATY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/data/mydspace-response-parsing.service.js b/src/app/core/data/mydspace-response-parsing.service.js new file mode 100644 index 0000000000..64dba1ea6e --- /dev/null +++ b/src/app/core/data/mydspace-response-parsing.service.js @@ -0,0 +1,84 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { SearchSuccessResponse } from '../cache/response.models'; +import { DSOResponseParsingService } from './dso-response-parsing.service'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { hasValue } from '../../shared/empty.util'; +import { SearchQueryResponse } from '../../+search-page/search-service/search-query-response.model'; +import { MetadataValue } from '../shared/metadata.models'; +var MyDSpaceResponseParsingService = /** @class */ (function () { + function MyDSpaceResponseParsingService(dsoParser) { + this.dsoParser = dsoParser; + } + MyDSpaceResponseParsingService.prototype.parse = function (request, data) { + var _this = this; + // fallback for unexpected empty response + var emptyPayload = { + _embedded: { + objects: [] + } + }; + var payload = data.payload._embedded.searchResult || emptyPayload; + var hitHighlights = payload._embedded.objects + .map(function (object) { return object.hitHighlights; }) + .map(function (hhObject) { + var mdMap = {}; + if (hhObject) { + for (var _i = 0, _a = Object.keys(hhObject); _i < _a.length; _i++) { + var key = _a[_i]; + var value = Object.assign(new MetadataValue(), { + value: hhObject[key].join('...'), + language: null + }); + mdMap[key] = [value]; + } + } + return mdMap; + }); + var dsoSelfLinks = payload._embedded.objects + .filter(function (object) { return hasValue(object._embedded); }) + .map(function (object) { return object._embedded.indexableObject; }) + .map(function (dso) { return _this.dsoParser.parse(request, { + payload: dso, + statusCode: data.statusCode, + statusText: data.statusText + }); }) + .map(function (obj) { return obj.resourceSelfLinks; }) + .reduce(function (combined, thisElement) { return combined.concat(thisElement); }, []); + var objects = payload._embedded.objects + .filter(function (object) { return hasValue(object._embedded); }) + .map(function (object, index) { return Object.assign({}, object, { + indexableObject: dsoSelfLinks[index], + hitHighlights: hitHighlights[index], + _embedded: _this.filterEmbeddedObjects(object) + }); }); + payload.objects = objects; + var deserialized = new DSpaceRESTv2Serializer(SearchQueryResponse).deserialize(payload); + return new SearchSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(payload)); + }; + MyDSpaceResponseParsingService.prototype.filterEmbeddedObjects = function (object) { + var allowedEmbeddedKeys = ['submitter', 'item', 'workspaceitem', 'workflowitem']; + if (object._embedded.indexableObject && object._embedded.indexableObject._embedded) { + return Object.assign({}, object._embedded, { + indexableObject: Object.assign({}, object._embedded.indexableObject, { + _embedded: Object.keys(object._embedded.indexableObject._embedded) + .filter(function (key) { return allowedEmbeddedKeys.includes(key); }) + .reduce(function (obj, key) { + obj[key] = object._embedded.indexableObject._embedded[key]; + return obj; + }, {}) + }) + }); + } + else { + return object; + } + }; + MyDSpaceResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) + ], MyDSpaceResponseParsingService); + return MyDSpaceResponseParsingService; +}()); +export { MyDSpaceResponseParsingService }; +//# sourceMappingURL=mydspace-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/mydspace-response-parsing.service.js.map b/src/app/core/data/mydspace-response-parsing.service.js.map new file mode 100644 index 0000000000..29d79c7317 --- /dev/null +++ b/src/app/core/data/mydspace-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mydspace-response-parsing.service.js","sourceRoot":"","sources":["mydspace-response-parsing.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.actions.js b/src/app/core/data/object-updates/object-updates.actions.js new file mode 100644 index 0000000000..38a2fa2e9d --- /dev/null +++ b/src/app/core/data/object-updates/object-updates.actions.js @@ -0,0 +1,171 @@ +import { type } from '../../../shared/ngrx/type'; +/** + * The list of ObjectUpdatesAction type definitions + */ +export var ObjectUpdatesActionTypes = { + INITIALIZE_FIELDS: type('dspace/core/cache/object-updates/INITIALIZE_FIELDS'), + SET_EDITABLE_FIELD: type('dspace/core/cache/object-updates/SET_EDITABLE_FIELD'), + SET_VALID_FIELD: type('dspace/core/cache/object-updates/SET_VALID_FIELD'), + ADD_FIELD: type('dspace/core/cache/object-updates/ADD_FIELD'), + DISCARD: type('dspace/core/cache/object-updates/DISCARD'), + REINSTATE: type('dspace/core/cache/object-updates/REINSTATE'), + REMOVE: type('dspace/core/cache/object-updates/REMOVE'), + REMOVE_FIELD: type('dspace/core/cache/object-updates/REMOVE_FIELD'), +}; +/* tslint:disable:max-classes-per-file */ +/** + * Enum that represents the different types of updates that can be performed on a field in the ObjectUpdates store + */ +export var FieldChangeType; +(function (FieldChangeType) { + FieldChangeType[FieldChangeType["UPDATE"] = 0] = "UPDATE"; + FieldChangeType[FieldChangeType["ADD"] = 1] = "ADD"; + FieldChangeType[FieldChangeType["REMOVE"] = 2] = "REMOVE"; +})(FieldChangeType || (FieldChangeType = {})); +/** + * An ngrx action to initialize a new page's fields in the ObjectUpdates state + */ +var InitializeFieldsAction = /** @class */ (function () { + /** + * Create a new InitializeFieldsAction + * + * @param url + * the unique url of the page for which the fields are being initialized + * @param fields The identifiable fields of which the updates are kept track of + * @param lastModified The last modified date of the object that belongs to the page + */ + function InitializeFieldsAction(url, fields, lastModified) { + this.type = ObjectUpdatesActionTypes.INITIALIZE_FIELDS; + this.payload = { url: url, fields: fields, lastModified: lastModified }; + } + return InitializeFieldsAction; +}()); +export { InitializeFieldsAction }; +/** + * An ngrx action to add a new field update in the ObjectUpdates state for a certain page url + */ +var AddFieldUpdateAction = /** @class */ (function () { + /** + * Create a new AddFieldUpdateAction + * + * @param url + * the unique url of the page for which a field update is added + * @param field The identifiable field of which a new update is added + * @param changeType The update's change type + */ + function AddFieldUpdateAction(url, field, changeType) { + this.type = ObjectUpdatesActionTypes.ADD_FIELD; + this.payload = { url: url, field: field, changeType: changeType }; + } + return AddFieldUpdateAction; +}()); +export { AddFieldUpdateAction }; +/** + * An ngrx action to set the editable state of an existing field in the ObjectUpdates state for a certain page url + */ +var SetEditableFieldUpdateAction = /** @class */ (function () { + /** + * Create a new SetEditableFieldUpdateAction + * + * @param url + * the unique url of the page + * @param fieldUUID The UUID of the field of which + * @param editable The new editable value for the field + */ + function SetEditableFieldUpdateAction(url, fieldUUID, editable) { + this.type = ObjectUpdatesActionTypes.SET_EDITABLE_FIELD; + this.payload = { url: url, uuid: fieldUUID, editable: editable }; + } + return SetEditableFieldUpdateAction; +}()); +export { SetEditableFieldUpdateAction }; +/** + * An ngrx action to set the isValid state of an existing field in the ObjectUpdates state for a certain page url + */ +var SetValidFieldUpdateAction = /** @class */ (function () { + /** + * Create a new SetValidFieldUpdateAction + * + * @param url + * the unique url of the page + * @param fieldUUID The UUID of the field of which + * @param isValid The new isValid value for the field + */ + function SetValidFieldUpdateAction(url, fieldUUID, isValid) { + this.type = ObjectUpdatesActionTypes.SET_VALID_FIELD; + this.payload = { url: url, uuid: fieldUUID, isValid: isValid }; + } + return SetValidFieldUpdateAction; +}()); +export { SetValidFieldUpdateAction }; +/** + * An ngrx action to discard all existing updates in the ObjectUpdates state for a certain page url + */ +var DiscardObjectUpdatesAction = /** @class */ (function () { + /** + * Create a new DiscardObjectUpdatesAction + * + * @param url + * the unique url of the page for which the changes should be discarded + * @param notification The notification that is raised when changes are discarded + */ + function DiscardObjectUpdatesAction(url, notification) { + this.type = ObjectUpdatesActionTypes.DISCARD; + this.payload = { url: url, notification: notification }; + } + return DiscardObjectUpdatesAction; +}()); +export { DiscardObjectUpdatesAction }; +/** + * An ngrx action to reinstate all previously discarded updates in the ObjectUpdates state for a certain page url + */ +var ReinstateObjectUpdatesAction = /** @class */ (function () { + /** + * Create a new ReinstateObjectUpdatesAction + * + * @param url + * the unique url of the page for which the changes should be reinstated + */ + function ReinstateObjectUpdatesAction(url) { + this.type = ObjectUpdatesActionTypes.REINSTATE; + this.payload = { url: url }; + } + return ReinstateObjectUpdatesAction; +}()); +export { ReinstateObjectUpdatesAction }; +/** + * An ngrx action to remove all previously discarded updates in the ObjectUpdates state for a certain page url + */ +var RemoveObjectUpdatesAction = /** @class */ (function () { + /** + * Create a new RemoveObjectUpdatesAction + * + * @param url + * the unique url of the page for which the changes should be removed + */ + function RemoveObjectUpdatesAction(url) { + this.type = ObjectUpdatesActionTypes.REMOVE; + this.payload = { url: url }; + } + return RemoveObjectUpdatesAction; +}()); +export { RemoveObjectUpdatesAction }; +/** + * An ngrx action to remove a single field update in the ObjectUpdates state for a certain page url and field uuid + */ +var RemoveFieldUpdateAction = /** @class */ (function () { + /** + * Create a new RemoveObjectUpdatesAction + * + * @param url + * the unique url of the page for which a field's change should be removed + * @param uuid The UUID of the field for which the change should be removed + */ + function RemoveFieldUpdateAction(url, uuid) { + this.type = ObjectUpdatesActionTypes.REMOVE_FIELD; + this.payload = { url: url, uuid: uuid }; + } + return RemoveFieldUpdateAction; +}()); +export { RemoveFieldUpdateAction }; +//# sourceMappingURL=object-updates.actions.js.map \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.actions.js.map b/src/app/core/data/object-updates/object-updates.actions.js.map new file mode 100644 index 0000000000..736ab3e88d --- /dev/null +++ b/src/app/core/data/object-updates/object-updates.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-updates.actions.js","sourceRoot":"","sources":["object-updates.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.effects.js b/src/app/core/data/object-updates/object-updates.effects.js new file mode 100644 index 0000000000..de7554ed33 --- /dev/null +++ b/src/app/core/data/object-updates/object-updates.effects.js @@ -0,0 +1,100 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Actions, Effect, ofType } from '@ngrx/effects'; +import { ObjectUpdatesActionTypes, RemoveObjectUpdatesAction } from './object-updates.actions'; +import { delay, filter, map, switchMap, take, tap } from 'rxjs/operators'; +import { of as observableOf, race as observableRace, Subject } from 'rxjs'; +import { hasNoValue } from '../../../shared/empty.util'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { NotificationsActionTypes } from '../../../shared/notifications/notifications.actions'; +/** + * NGRX effects for ObjectUpdatesActions + */ +var ObjectUpdatesEffects = /** @class */ (function () { + function ObjectUpdatesEffects(actions$, notificationsService) { + var _this = this; + this.actions$ = actions$; + this.notificationsService = notificationsService; + /** + * Identifier for when an action on all notifications is performed + */ + this.allIdentifier = 'all'; + /** + * Map that keeps track of the latest ObjectUpdatesAction for each page's url + */ + this.actionMap$ = {}; + this.notificationActionMap$ = { all: new Subject() }; + /** + * Effect that makes sure all last fired ObjectUpdatesActions are stored in the map of this service, with the url as their key + */ + this.mapLastActions$ = this.actions$ + .pipe(ofType.apply(void 0, Object.values(ObjectUpdatesActionTypes)), map(function (action) { + var url = action.payload.url; + if (hasNoValue(_this.actionMap$[url])) { + _this.actionMap$[url] = new Subject(); + } + _this.actionMap$[url].next(action); + })); + /** + * Effect that makes sure all last fired NotificationActions are stored in the notification map of this service, with the id as their key + */ + this.mapLastNotificationActions$ = this.actions$ + .pipe(ofType.apply(void 0, Object.values(NotificationsActionTypes)), map(function (action) { + var id = action.payload.id || action.payload || _this.allIdentifier; + if (hasNoValue(_this.notificationActionMap$[id])) { + _this.notificationActionMap$[id] = new Subject(); + } + _this.notificationActionMap$[id].next(action); + })); + /** + * Effect that checks whether the removeAction's notification timeout ends before a user triggers another ObjectUpdatesAction + * When no ObjectUpdatesAction is fired during the timeout, a RemoteObjectUpdatesAction will be returned + * When a REINSTATE action is fired during the timeout, a NO_ACTION action will be returned + * When any other ObjectUpdatesAction is fired during the timeout, a RemoteObjectUpdatesAction will be returned + */ + this.removeAfterDiscardOrReinstateOnUndo$ = this.actions$ + .pipe(ofType(ObjectUpdatesActionTypes.DISCARD), switchMap(function (action) { + var url = action.payload.url; + var notification = action.payload.notification; + var timeOut = notification.options.timeOut; + return observableRace( + // Either wait for the delay and perform a remove action + observableOf(new RemoveObjectUpdatesAction(action.payload.url)).pipe(delay(timeOut)), + // Or wait for a a user action + _this.actionMap$[url].pipe(take(1), tap(function () { + _this.notificationsService.remove(notification); + }), map(function (updateAction) { + if (updateAction.type === ObjectUpdatesActionTypes.REINSTATE) { + // If someone reinstated, do nothing, just let the reinstating happen + return { type: 'NO_ACTION' }; + } + // If someone performed another action, assume the user does not want to reinstate and remove all changes + return new RemoveObjectUpdatesAction(action.payload.url); + })), _this.notificationActionMap$[notification.id].pipe(filter(function (notificationsAction) { return notificationsAction.type === NotificationsActionTypes.REMOVE_NOTIFICATION; }), map(function () { + return new RemoveObjectUpdatesAction(action.payload.url); + })), _this.notificationActionMap$[_this.allIdentifier].pipe(filter(function (notificationsAction) { return notificationsAction.type === NotificationsActionTypes.REMOVE_ALL_NOTIFICATIONS; }), map(function () { + return new RemoveObjectUpdatesAction(action.payload.url); + }))); + })); + } + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], ObjectUpdatesEffects.prototype, "mapLastActions$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], ObjectUpdatesEffects.prototype, "mapLastNotificationActions$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], ObjectUpdatesEffects.prototype, "removeAfterDiscardOrReinstateOnUndo$", void 0); + ObjectUpdatesEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions, + NotificationsService]) + ], ObjectUpdatesEffects); + return ObjectUpdatesEffects; +}()); +export { ObjectUpdatesEffects }; +//# sourceMappingURL=object-updates.effects.js.map \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.effects.js.map b/src/app/core/data/object-updates/object-updates.effects.js.map new file mode 100644 index 0000000000..e93476cc21 --- /dev/null +++ b/src/app/core/data/object-updates/object-updates.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-updates.effects.js","sourceRoot":"","sources":["object-updates.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.reducer.js b/src/app/core/data/object-updates/object-updates.reducer.js new file mode 100644 index 0000000000..c0913a6033 --- /dev/null +++ b/src/app/core/data/object-updates/object-updates.reducer.js @@ -0,0 +1,237 @@ +import { FieldChangeType, ObjectUpdatesActionTypes } from './object-updates.actions'; +import { hasNoValue, hasValue } from '../../../shared/empty.util'; +/** + * Path where discarded objects are saved + */ +export var OBJECT_UPDATES_TRASH_PATH = '/trash'; +/** + * Initial state for an existing initialized field + */ +var initialFieldState = { editable: false, isNew: false, isValid: true }; +/** + * Initial state for a newly added field + */ +var initialNewFieldState = { editable: true, isNew: true, isValid: undefined }; +// Object.create(null) ensures the object has no default js properties (e.g. `__proto__`) +var initialState = Object.create(null); +/** + * Reducer method to calculate the next ObjectUpdates state, based on the current state and the ObjectUpdatesAction + * @param state The current state + * @param action The action to perform on the current state + */ +export function objectUpdatesReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case ObjectUpdatesActionTypes.INITIALIZE_FIELDS: { + return initializeFieldsUpdate(state, action); + } + case ObjectUpdatesActionTypes.ADD_FIELD: { + return addFieldUpdate(state, action); + } + case ObjectUpdatesActionTypes.DISCARD: { + return discardObjectUpdates(state, action); + } + case ObjectUpdatesActionTypes.REINSTATE: { + return reinstateObjectUpdates(state, action); + } + case ObjectUpdatesActionTypes.REMOVE: { + return removeObjectUpdates(state, action); + } + case ObjectUpdatesActionTypes.REMOVE_FIELD: { + return removeFieldUpdate(state, action); + } + case ObjectUpdatesActionTypes.SET_EDITABLE_FIELD: { + return setEditableFieldUpdate(state, action); + } + case ObjectUpdatesActionTypes.SET_VALID_FIELD: { + return setValidFieldUpdate(state, action); + } + default: { + return state; + } + } +} +/** + * Initialize the state for a specific url and store all its fields in the store + * @param state The current state + * @param action The action to perform on the current state + */ +function initializeFieldsUpdate(state, action) { + var _a; + var url = action.payload.url; + var fields = action.payload.fields; + var lastModifiedServer = action.payload.lastModified; + var fieldStates = createInitialFieldStates(fields); + var newPageState = Object.assign({}, state[url], { fieldStates: fieldStates }, { fieldUpdates: {} }, { lastModified: lastModifiedServer }); + return Object.assign({}, state, (_a = {}, _a[url] = newPageState, _a)); +} +/** + * Add a new update for a specific field to the store + * @param state The current state + * @param action The action to perform on the current state + */ +function addFieldUpdate(state, action) { + var _a, _b, _c; + var url = action.payload.url; + var field = action.payload.field; + var changeType = action.payload.changeType; + var pageState = state[url] || {}; + var states = pageState.fieldStates; + if (changeType === FieldChangeType.ADD) { + states = Object.assign({}, (_a = {}, _a[field.uuid] = initialNewFieldState, _a), pageState.fieldStates); + } + var fieldUpdate = pageState.fieldUpdates[field.uuid] || {}; + var newChangeType = determineChangeType(fieldUpdate.changeType, changeType); + fieldUpdate = Object.assign({}, { field: field, changeType: newChangeType }); + var fieldUpdates = Object.assign({}, pageState.fieldUpdates, (_b = {}, _b[field.uuid] = fieldUpdate, _b)); + var newPageState = Object.assign({}, pageState, { fieldStates: states }, { fieldUpdates: fieldUpdates }); + return Object.assign({}, state, (_c = {}, _c[url] = newPageState, _c)); +} +/** + * Discard all updates for a specific action's url in the store + * @param state The current state + * @param action The action to perform on the current state + */ +function discardObjectUpdates(state, action) { + var _a, _b; + var url = action.payload.url; + var pageState = state[url]; + var newFieldStates = {}; + Object.keys(pageState.fieldStates).forEach(function (uuid) { + var fieldState = pageState.fieldStates[uuid]; + if (!fieldState.isNew) { + /* After discarding we don't want the reset fields to stay editable or invalid */ + newFieldStates[uuid] = Object.assign({}, fieldState, { editable: false, isValid: true }); + } + }); + var discardedPageState = Object.assign({}, pageState, { + fieldUpdates: {}, + fieldStates: newFieldStates + }); + return Object.assign({}, state, (_a = {}, _a[url] = discardedPageState, _a), (_b = {}, _b[url + OBJECT_UPDATES_TRASH_PATH] = pageState, _b)); +} +/** + * Reinstate all updates for a specific action's url in the store + * @param state The current state + * @param action The action to perform on the current state + */ +function reinstateObjectUpdates(state, action) { + var _a; + var url = action.payload.url; + var trashState = state[url + OBJECT_UPDATES_TRASH_PATH]; + var newState = Object.assign({}, state, (_a = {}, _a[url] = trashState, _a)); + delete newState[url + OBJECT_UPDATES_TRASH_PATH]; + return newState; +} +/** + * Remove all updates for a specific action's url in the store + * @param state The current state + * @param action The action to perform on the current state + */ +function removeObjectUpdates(state, action) { + var url = action.payload.url; + return removeObjectUpdatesByURL(state, url); +} +/** + * Remove all updates for a specific url in the store + * @param state The current state + * @param action The action to perform on the current state + */ +function removeObjectUpdatesByURL(state, url) { + var newState = Object.assign({}, state); + delete newState[url + OBJECT_UPDATES_TRASH_PATH]; + return newState; +} +/** + * Discard the update for a specific action's url and field UUID in the store + * @param state The current state + * @param action The action to perform on the current state + */ +function removeFieldUpdate(state, action) { + var _a; + var url = action.payload.url; + var uuid = action.payload.uuid; + var newPageState = state[url]; + if (hasValue(newPageState)) { + var newUpdates = Object.assign({}, newPageState.fieldUpdates); + if (hasValue(newUpdates[uuid])) { + delete newUpdates[uuid]; + } + var newFieldStates = Object.assign({}, newPageState.fieldStates); + if (hasValue(newFieldStates[uuid])) { + /* When resetting, make field not editable */ + if (newFieldStates[uuid].isNew) { + /* If this field was added, just throw it away */ + delete newFieldStates[uuid]; + } + else { + newFieldStates[uuid] = Object.assign({}, newFieldStates[uuid], { editable: false, isValid: true }); + } + } + newPageState = Object.assign({}, state[url], { + fieldUpdates: newUpdates, + fieldStates: newFieldStates + }); + } + return Object.assign({}, state, (_a = {}, _a[url] = newPageState, _a)); +} +/** + * Determine the most prominent FieldChangeType, ordered as follows: + * undefined < UPDATE < ADD < REMOVE + * @param oldType The current type + * @param newType The new type that should possibly override the new type + */ +function determineChangeType(oldType, newType) { + if (hasNoValue(newType)) { + return oldType; + } + if (hasNoValue(oldType)) { + return newType; + } + return oldType.valueOf() > newType.valueOf() ? oldType : newType; +} +/** + * Set the editable state of a specific action's url and uuid to false or true + * @param state The current state + * @param action The action to perform on the current state + */ +function setEditableFieldUpdate(state, action) { + var _a, _b; + var url = action.payload.url; + var uuid = action.payload.uuid; + var editable = action.payload.editable; + var pageState = state[url]; + var fieldState = pageState.fieldStates[uuid]; + var newFieldState = Object.assign({}, fieldState, { editable: editable }); + var newFieldStates = Object.assign({}, pageState.fieldStates, (_a = {}, _a[uuid] = newFieldState, _a)); + var newPageState = Object.assign({}, pageState, { fieldStates: newFieldStates }); + return Object.assign({}, state, (_b = {}, _b[url] = newPageState, _b)); +} +/** + * Set the isValid state of a specific action's url and uuid to false or true + * @param state The current state + * @param action The action to perform on the current state + */ +function setValidFieldUpdate(state, action) { + var _a, _b; + var url = action.payload.url; + var uuid = action.payload.uuid; + var isValid = action.payload.isValid; + var pageState = state[url]; + var fieldState = pageState.fieldStates[uuid]; + var newFieldState = Object.assign({}, fieldState, { isValid: isValid }); + var newFieldStates = Object.assign({}, pageState.fieldStates, (_a = {}, _a[uuid] = newFieldState, _a)); + var newPageState = Object.assign({}, pageState, { fieldStates: newFieldStates }); + return Object.assign({}, state, (_b = {}, _b[url] = newPageState, _b)); +} +/** + * Method to create an initial FieldStates object based on a list of Identifiable objects + * @param fields Identifiable objects + */ +function createInitialFieldStates(fields) { + var uuids = fields.map(function (field) { return field.uuid; }); + var fieldStates = {}; + uuids.forEach(function (uuid) { return fieldStates[uuid] = initialFieldState; }); + return fieldStates; +} +//# sourceMappingURL=object-updates.reducer.js.map \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.reducer.js.map b/src/app/core/data/object-updates/object-updates.reducer.js.map new file mode 100644 index 0000000000..b39ce3c775 --- /dev/null +++ b/src/app/core/data/object-updates/object-updates.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-updates.reducer.js","sourceRoot":"","sources":["object-updates.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.service.js b/src/app/core/data/object-updates/object-updates.service.js new file mode 100644 index 0000000000..e7174b49c3 --- /dev/null +++ b/src/app/core/data/object-updates/object-updates.service.js @@ -0,0 +1,226 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { createSelector, select, Store } from '@ngrx/store'; +import { coreSelector } from '../../core.selectors'; +import { OBJECT_UPDATES_TRASH_PATH } from './object-updates.reducer'; +import { AddFieldUpdateAction, DiscardObjectUpdatesAction, FieldChangeType, InitializeFieldsAction, ReinstateObjectUpdatesAction, RemoveFieldUpdateAction, SetEditableFieldUpdateAction, SetValidFieldUpdateAction } from './object-updates.actions'; +import { distinctUntilChanged, filter, map } from 'rxjs/operators'; +import { hasNoValue, hasValue, isEmpty, isNotEmpty } from '../../../shared/empty.util'; +function objectUpdatesStateSelector() { + return createSelector(coreSelector, function (state) { return state['cache/object-updates']; }); +} +function filterByUrlObjectUpdatesStateSelector(url) { + return createSelector(objectUpdatesStateSelector(), function (state) { return state[url]; }); +} +function filterByUrlAndUUIDFieldStateSelector(url, uuid) { + return createSelector(filterByUrlObjectUpdatesStateSelector(url), function (state) { return state.fieldStates[uuid]; }); +} +/** + * Service that dispatches and reads from the ObjectUpdates' state in the store + */ +var ObjectUpdatesService = /** @class */ (function () { + function ObjectUpdatesService(store) { + this.store = store; + } + /** + * Method to dispatch an InitializeFieldsAction to the store + * @param url The page's URL for which the changes are being mapped + * @param fields The initial fields for the page's object + * @param lastModified The date the object was last modified + */ + ObjectUpdatesService.prototype.initialize = function (url, fields, lastModified) { + this.store.dispatch(new InitializeFieldsAction(url, fields, lastModified)); + }; + /** + * Method to dispatch an AddFieldUpdateAction to the store + * @param url The page's URL for which the changes are saved + * @param field An updated field for the page's object + * @param changeType The last type of change applied to this field + */ + ObjectUpdatesService.prototype.saveFieldUpdate = function (url, field, changeType) { + this.store.dispatch(new AddFieldUpdateAction(url, field, changeType)); + }; + /** + * Request the ObjectUpdatesEntry state for a specific URL + * @param url The URL to filter by + */ + ObjectUpdatesService.prototype.getObjectEntry = function (url) { + return this.store.pipe(select(filterByUrlObjectUpdatesStateSelector(url))); + }; + /** + * Request the getFieldState state for a specific URL and UUID + * @param url The URL to filter by + * @param uuid The field's UUID to filter by + */ + ObjectUpdatesService.prototype.getFieldState = function (url, uuid) { + return this.store.pipe(select(filterByUrlAndUUIDFieldStateSelector(url, uuid))); + }; + /** + * Method that combines the state's updates with the initial values (when there's no update) to create + * a FieldUpdates object + * @param url The URL of the page for which the FieldUpdates should be requested + * @param initialFields The initial values of the fields + */ + ObjectUpdatesService.prototype.getFieldUpdates = function (url, initialFields) { + var objectUpdates = this.getObjectEntry(url); + return objectUpdates.pipe(map(function (objectEntry) { + var fieldUpdates = {}; + Object.keys(objectEntry.fieldStates).forEach(function (uuid) { + var fieldUpdate = objectEntry.fieldUpdates[uuid]; + if (isEmpty(fieldUpdate)) { + var identifiable = initialFields.find(function (object) { return object.uuid === uuid; }); + fieldUpdate = { field: identifiable, changeType: undefined }; + } + fieldUpdates[uuid] = fieldUpdate; + }); + return fieldUpdates; + })); + }; + /** + * Method to check if a specific field is currently editable in the store + * @param url The URL of the page on which the field resides + * @param uuid The UUID of the field + */ + ObjectUpdatesService.prototype.isEditable = function (url, uuid) { + var fieldState$ = this.getFieldState(url, uuid); + return fieldState$.pipe(filter(function (fieldState) { return hasValue(fieldState); }), map(function (fieldState) { return fieldState.editable; }), distinctUntilChanged()); + }; + /** + * Method to check if a specific field is currently valid in the store + * @param url The URL of the page on which the field resides + * @param uuid The UUID of the field + */ + ObjectUpdatesService.prototype.isValid = function (url, uuid) { + var fieldState$ = this.getFieldState(url, uuid); + return fieldState$.pipe(filter(function (fieldState) { return hasValue(fieldState); }), map(function (fieldState) { return fieldState.isValid; }), distinctUntilChanged()); + }; + /** + * Method to check if a specific page is currently valid in the store + * @param url The URL of the page + */ + ObjectUpdatesService.prototype.isValidPage = function (url) { + var objectUpdates = this.getObjectEntry(url); + return objectUpdates.pipe(map(function (entry) { + return Object.values(entry.fieldStates).findIndex(function (state) { return !state.isValid; }) < 0; + }), distinctUntilChanged()); + }; + /** + * Calls the saveFieldUpdate method with FieldChangeType.ADD + * @param url The page's URL for which the changes are saved + * @param field An updated field for the page's object + */ + ObjectUpdatesService.prototype.saveAddFieldUpdate = function (url, field) { + this.saveFieldUpdate(url, field, FieldChangeType.ADD); + }; + /** + * Calls the saveFieldUpdate method with FieldChangeType.REMOVE + * @param url The page's URL for which the changes are saved + * @param field An updated field for the page's object + */ + ObjectUpdatesService.prototype.saveRemoveFieldUpdate = function (url, field) { + this.saveFieldUpdate(url, field, FieldChangeType.REMOVE); + }; + /** + * Calls the saveFieldUpdate method with FieldChangeType.UPDATE + * @param url The page's URL for which the changes are saved + * @param field An updated field for the page's object + */ + ObjectUpdatesService.prototype.saveChangeFieldUpdate = function (url, field) { + this.saveFieldUpdate(url, field, FieldChangeType.UPDATE); + }; + /** + * Dispatches a SetEditableFieldUpdateAction to the store to set a field's editable state + * @param url The URL of the page on which the field resides + * @param uuid The UUID of the field that should be set + * @param editable The new value of editable in the store for this field + */ + ObjectUpdatesService.prototype.setEditableFieldUpdate = function (url, uuid, editable) { + this.store.dispatch(new SetEditableFieldUpdateAction(url, uuid, editable)); + }; + /** + * Dispatches a SetValidFieldUpdateAction to the store to set a field's isValid state + * @param url The URL of the page on which the field resides + * @param uuid The UUID of the field that should be set + * @param valid The new value of isValid in the store for this field + */ + ObjectUpdatesService.prototype.setValidFieldUpdate = function (url, uuid, valid) { + this.store.dispatch(new SetValidFieldUpdateAction(url, uuid, valid)); + }; + /** + * Method to dispatch an DiscardObjectUpdatesAction to the store + * @param url The page's URL for which the changes should be discarded + * @param undoNotification The notification which is should possibly be canceled + */ + ObjectUpdatesService.prototype.discardFieldUpdates = function (url, undoNotification) { + this.store.dispatch(new DiscardObjectUpdatesAction(url, undoNotification)); + }; + /** + * Method to dispatch an ReinstateObjectUpdatesAction to the store + * @param url The page's URL for which the changes should be reinstated + */ + ObjectUpdatesService.prototype.reinstateFieldUpdates = function (url) { + this.store.dispatch(new ReinstateObjectUpdatesAction(url)); + }; + /** + * Method to dispatch an RemoveFieldUpdateAction to the store + * @param url The page's URL for which the changes should be removed + * @param uuid The UUID of the field that should be set + */ + ObjectUpdatesService.prototype.removeSingleFieldUpdate = function (url, uuid) { + this.store.dispatch(new RemoveFieldUpdateAction(url, uuid)); + }; + /** + * Method that combines the state's updates with the initial values (when there's no update) to create + * a list of updates fields + * @param url The URL of the page for which the updated fields should be requested + * @param initialFields The initial values of the fields + */ + ObjectUpdatesService.prototype.getUpdatedFields = function (url, initialFields) { + var objectUpdates = this.getObjectEntry(url); + return objectUpdates.pipe(map(function (objectEntry) { + var fields = []; + Object.keys(objectEntry.fieldStates).forEach(function (uuid) { + var fieldUpdate = objectEntry.fieldUpdates[uuid]; + if (hasNoValue(fieldUpdate) || fieldUpdate.changeType !== FieldChangeType.REMOVE) { + var field = void 0; + if (isNotEmpty(fieldUpdate)) { + field = fieldUpdate.field; + } + else { + field = initialFields.find(function (object) { return object.uuid === uuid; }); + } + fields.push(field); + } + }); + return fields; + })); + }; + /** + * Checks if the page currently has updates in the store or not + * @param url The page's url to check for in the store + */ + ObjectUpdatesService.prototype.hasUpdates = function (url) { + return this.getObjectEntry(url).pipe(map(function (objectEntry) { return hasValue(objectEntry) && isNotEmpty(objectEntry.fieldUpdates); })); + }; + /** + * Checks if the page currently is reinstatable in the store or not + * @param url The page's url to check for in the store + */ + ObjectUpdatesService.prototype.isReinstatable = function (url) { + return this.hasUpdates(url + OBJECT_UPDATES_TRASH_PATH); + }; + /** + * Request the current lastModified date stored for the updates in the store + * @param url The page's url to check for in the store + */ + ObjectUpdatesService.prototype.getLastModified = function (url) { + return this.getObjectEntry(url).pipe(map(function (entry) { return entry.lastModified; })); + }; + ObjectUpdatesService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store]) + ], ObjectUpdatesService); + return ObjectUpdatesService; +}()); +export { ObjectUpdatesService }; +//# sourceMappingURL=object-updates.service.js.map \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.service.js.map b/src/app/core/data/object-updates/object-updates.service.js.map new file mode 100644 index 0000000000..6e02bb3133 --- /dev/null +++ b/src/app/core/data/object-updates/object-updates.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-updates.service.js","sourceRoot":"","sources":["object-updates.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/paginated-list.js b/src/app/core/data/paginated-list.js new file mode 100644 index 0000000000..04b1f13785 --- /dev/null +++ b/src/app/core/data/paginated-list.js @@ -0,0 +1,115 @@ +import { hasValue } from '../../shared/empty.util'; +var PaginatedList = /** @class */ (function () { + function PaginatedList(pageInfo, page) { + this.pageInfo = pageInfo; + this.page = page; + } + Object.defineProperty(PaginatedList.prototype, "elementsPerPage", { + get: function () { + if (hasValue(this.pageInfo) && hasValue(this.pageInfo.elementsPerPage)) { + return this.pageInfo.elementsPerPage; + } + return this.getPageLength(); + }, + set: function (value) { + this.pageInfo.elementsPerPage = value; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginatedList.prototype, "totalElements", { + get: function () { + if (hasValue(this.pageInfo) && hasValue(this.pageInfo.totalElements)) { + return this.pageInfo.totalElements; + } + return this.getPageLength(); + }, + set: function (value) { + this.pageInfo.totalElements = value; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginatedList.prototype, "totalPages", { + get: function () { + if (hasValue(this.pageInfo) && hasValue(this.pageInfo.totalPages)) { + return this.pageInfo.totalPages; + } + return 1; + }, + set: function (value) { + this.pageInfo.totalPages = value; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginatedList.prototype, "currentPage", { + get: function () { + if (hasValue(this.pageInfo) && hasValue(this.pageInfo.currentPage)) { + return this.pageInfo.currentPage; + } + return 1; + }, + set: function (value) { + this.pageInfo.currentPage = value; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginatedList.prototype, "first", { + get: function () { + return this.pageInfo.first; + }, + set: function (first) { + this.pageInfo.first = first; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginatedList.prototype, "prev", { + get: function () { + return this.pageInfo.prev; + }, + set: function (prev) { + this.pageInfo.prev = prev; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginatedList.prototype, "next", { + get: function () { + return this.pageInfo.next; + }, + set: function (next) { + this.pageInfo.next = next; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginatedList.prototype, "last", { + get: function () { + return this.pageInfo.last; + }, + set: function (last) { + this.pageInfo.last = last; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginatedList.prototype, "self", { + get: function () { + return this.pageInfo.self; + }, + set: function (self) { + this.pageInfo.self = self; + }, + enumerable: true, + configurable: true + }); + PaginatedList.prototype.getPageLength = function () { + return (Array.isArray(this.page)) ? this.page.length : 0; + }; + return PaginatedList; +}()); +export { PaginatedList }; +//# sourceMappingURL=paginated-list.js.map \ No newline at end of file diff --git a/src/app/core/data/paginated-list.js.map b/src/app/core/data/paginated-list.js.map new file mode 100644 index 0000000000..785782e72a --- /dev/null +++ b/src/app/core/data/paginated-list.js.map @@ -0,0 +1 @@ +{"version":3,"file":"paginated-list.js","sourceRoot":"","sources":["paginated-list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD;IAEE,uBAAoB,QAAkB,EACnB,IAAS;QADR,aAAQ,GAAR,QAAQ,CAAU;QACnB,SAAI,GAAJ,IAAI,CAAK;IAC5B,CAAC;IAED,sBAAI,0CAAe;aAAnB;YACE,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE;gBACtE,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;aACtC;YACD,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9B,CAAC;aAED,UAAoB,KAAa;YAC/B,IAAI,CAAC,QAAQ,CAAC,eAAe,GAAG,KAAK,CAAC;QACxC,CAAC;;;OAJA;IAMD,sBAAI,wCAAa;aAAjB;YACE,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;gBACpE,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;aACpC;YACD,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9B,CAAC;aAED,UAAkB,KAAa;YAC7B,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,KAAK,CAAC;QACtC,CAAC;;;OAJA;IAMD,sBAAI,qCAAU;aAAd;YACE,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;gBACjE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;aACjC;YACD,OAAO,CAAC,CAAC;QACX,CAAC;aAED,UAAe,KAAa;YAC1B,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC;QACnC,CAAC;;;OAJA;IAMD,sBAAI,sCAAW;aAAf;YACE,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;gBAClE,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;aAClC;YACD,OAAO,CAAC,CAAC;QACX,CAAC;aAED,UAAgB,KAAa;YAC3B,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,KAAK,CAAC;QACpC,CAAC;;;OAJA;IAMD,sBAAI,gCAAK;aAAT;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC7B,CAAC;aAED,UAAU,KAAa;YACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QAC9B,CAAC;;;OAJA;IAMD,sBAAI,+BAAI;aAAR;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5B,CAAC;aACD,UAAS,IAAY;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QAC5B,CAAC;;;OAHA;IAKD,sBAAI,+BAAI;aAAR;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5B,CAAC;aAED,UAAS,IAAY;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QAC5B,CAAC;;;OAJA;IAMD,sBAAI,+BAAI;aAAR;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5B,CAAC;aAED,UAAS,IAAY;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QAC5B,CAAC;;;OAJA;IAMD,sBAAI,+BAAI;aAAR;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5B,CAAC;aAED,UAAS,IAAY;YACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QAC5B,CAAC;;;OAJA;IAMS,qCAAa,GAAvB;QACE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;IACH,oBAAC;AAAD,CAAC,AA5FD,IA4FC"} \ No newline at end of file diff --git a/src/app/core/data/parsing.service.js b/src/app/core/data/parsing.service.js new file mode 100644 index 0000000000..31f910aaf5 --- /dev/null +++ b/src/app/core/data/parsing.service.js @@ -0,0 +1 @@ +//# sourceMappingURL=parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/parsing.service.js.map b/src/app/core/data/parsing.service.js.map new file mode 100644 index 0000000000..51f1b25d03 --- /dev/null +++ b/src/app/core/data/parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"parsing.service.js","sourceRoot":"","sources":["parsing.service.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/data/registry-bitstreamformats-response-parsing.service.js b/src/app/core/data/registry-bitstreamformats-response-parsing.service.js new file mode 100644 index 0000000000..a9eb44b069 --- /dev/null +++ b/src/app/core/data/registry-bitstreamformats-response-parsing.service.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { RegistryBitstreamformatsSuccessResponse } from '../cache/response.models'; +import { RegistryBitstreamformatsResponse } from '../registry/registry-bitstreamformats-response.model'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { DSOResponseParsingService } from './dso-response-parsing.service'; +import { Injectable } from '@angular/core'; +var RegistryBitstreamformatsResponseParsingService = /** @class */ (function () { + function RegistryBitstreamformatsResponseParsingService(dsoParser) { + this.dsoParser = dsoParser; + } + RegistryBitstreamformatsResponseParsingService.prototype.parse = function (request, data) { + var payload = data.payload; + var bitstreamformats = payload._embedded.bitstreamformats; + payload.bitstreamformats = bitstreamformats; + var deserialized = new DSpaceRESTv2Serializer(RegistryBitstreamformatsResponse).deserialize(payload); + return new RegistryBitstreamformatsSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(data.payload.page)); + }; + RegistryBitstreamformatsResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) + ], RegistryBitstreamformatsResponseParsingService); + return RegistryBitstreamformatsResponseParsingService; +}()); +export { RegistryBitstreamformatsResponseParsingService }; +//# sourceMappingURL=registry-bitstreamformats-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/registry-bitstreamformats-response-parsing.service.js.map b/src/app/core/data/registry-bitstreamformats-response-parsing.service.js.map new file mode 100644 index 0000000000..949f80e28a --- /dev/null +++ b/src/app/core/data/registry-bitstreamformats-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry-bitstreamformats-response-parsing.service.js","sourceRoot":"","sources":["registry-bitstreamformats-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uCAAuC,EAAgB,MAAM,0BAA0B,CAAC;AACjG,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AACxG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAGrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;IACE,wDAAoB,SAAoC;QAApC,cAAS,GAAT,SAAS,CAA2B;IACxD,CAAC;IAED,8DAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;QAC5D,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAE5C,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,gCAAgC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACvG,OAAO,IAAI,uCAAuC,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACxJ,CAAC;IAZU,8CAA8C;QAD1D,UAAU,EAAE;iDAEoB,yBAAyB;OAD7C,8CAA8C,CAc1D;IAAD,qDAAC;CAAA,AAdD,IAcC;SAdY,8CAA8C"} \ No newline at end of file diff --git a/src/app/core/data/registry-metadatafields-response-parsing.service.js b/src/app/core/data/registry-metadatafields-response-parsing.service.js new file mode 100644 index 0000000000..e18cc90082 --- /dev/null +++ b/src/app/core/data/registry-metadatafields-response-parsing.service.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { RegistryMetadatafieldsSuccessResponse } from '../cache/response.models'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { DSOResponseParsingService } from './dso-response-parsing.service'; +import { Injectable } from '@angular/core'; +import { RegistryMetadatafieldsResponse } from '../registry/registry-metadatafields-response.model'; +import { hasValue } from '../../shared/empty.util'; +var RegistryMetadatafieldsResponseParsingService = /** @class */ (function () { + function RegistryMetadatafieldsResponseParsingService(dsoParser) { + this.dsoParser = dsoParser; + } + RegistryMetadatafieldsResponseParsingService.prototype.parse = function (request, data) { + var payload = data.payload; + var metadatafields = []; + if (hasValue(payload._embedded)) { + metadatafields = payload._embedded.metadatafields; + metadatafields.forEach(function (field) { + field.schema = field._embedded.schema; + }); + } + payload.metadatafields = metadatafields; + var deserialized = new DSpaceRESTv2Serializer(RegistryMetadatafieldsResponse).deserialize(payload); + return new RegistryMetadatafieldsSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(data.payload)); + }; + RegistryMetadatafieldsResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) + ], RegistryMetadatafieldsResponseParsingService); + return RegistryMetadatafieldsResponseParsingService; +}()); +export { RegistryMetadatafieldsResponseParsingService }; +//# sourceMappingURL=registry-metadatafields-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/registry-metadatafields-response-parsing.service.js.map b/src/app/core/data/registry-metadatafields-response-parsing.service.js.map new file mode 100644 index 0000000000..fb37789d6e --- /dev/null +++ b/src/app/core/data/registry-metadatafields-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry-metadatafields-response-parsing.service.js","sourceRoot":"","sources":["registry-metadatafields-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,qCAAqC,EAEtC,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,8BAA8B,EAAE,MAAM,oDAAoD,CAAC;AACpG,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD;IACE,sDAAoB,SAAoC;QAApC,cAAS,GAAT,SAAS,CAA2B;IACxD,CAAC;IAED,4DAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,cAAc,GAAG,EAAE,CAAC;QAExB,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC/B,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC;YAClD,cAAc,CAAC,OAAO,CAAC,UAAC,KAAK;gBAC3B,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;YACxC,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;QAExC,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,8BAA8B,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACrG,OAAO,IAAI,qCAAqC,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACjJ,CAAC;IApBU,4CAA4C;QADxD,UAAU,EAAE;iDAEoB,yBAAyB;OAD7C,4CAA4C,CAsBxD;IAAD,mDAAC;CAAA,AAtBD,IAsBC;SAtBY,4CAA4C"} \ No newline at end of file diff --git a/src/app/core/data/registry-metadataschemas-response-parsing.service.js b/src/app/core/data/registry-metadataschemas-response-parsing.service.js new file mode 100644 index 0000000000..ed18663914 --- /dev/null +++ b/src/app/core/data/registry-metadataschemas-response-parsing.service.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { RegistryMetadataschemasSuccessResponse } from '../cache/response.models'; +import { RegistryMetadataschemasResponse } from '../registry/registry-metadataschemas-response.model'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { DSOResponseParsingService } from './dso-response-parsing.service'; +import { Injectable } from '@angular/core'; +import { hasValue } from '../../shared/empty.util'; +var RegistryMetadataschemasResponseParsingService = /** @class */ (function () { + function RegistryMetadataschemasResponseParsingService(dsoParser) { + this.dsoParser = dsoParser; + } + RegistryMetadataschemasResponseParsingService.prototype.parse = function (request, data) { + var payload = data.payload; + var metadataschemas = []; + if (hasValue(payload._embedded)) { + metadataschemas = payload._embedded.metadataschemas; + } + payload.metadataschemas = metadataschemas; + var deserialized = new DSpaceRESTv2Serializer(RegistryMetadataschemasResponse).deserialize(payload); + return new RegistryMetadataschemasSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(data.payload)); + }; + RegistryMetadataschemasResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) + ], RegistryMetadataschemasResponseParsingService); + return RegistryMetadataschemasResponseParsingService; +}()); +export { RegistryMetadataschemasResponseParsingService }; +//# sourceMappingURL=registry-metadataschemas-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/registry-metadataschemas-response-parsing.service.js.map b/src/app/core/data/registry-metadataschemas-response-parsing.service.js.map new file mode 100644 index 0000000000..a2e5eb29e1 --- /dev/null +++ b/src/app/core/data/registry-metadataschemas-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry-metadataschemas-response-parsing.service.js","sourceRoot":"","sources":["registry-metadataschemas-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,sCAAsC,EAAgB,MAAM,0BAA0B,CAAC;AAIhG,OAAO,EAAE,+BAA+B,EAAE,MAAM,qDAAqD,CAAC;AACtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD;IACE,uDAAoB,SAAoC;QAApC,cAAS,GAAT,SAAS,CAA2B;IACxD,CAAC;IAED,6DAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC/B,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;SACrD;QACD,OAAO,CAAC,eAAe,GAAG,eAAe,CAAC;QAE1C,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,+BAA+B,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACtG,OAAO,IAAI,sCAAsC,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAClJ,CAAC;IAfU,6CAA6C;QADzD,UAAU,EAAE;iDAEoB,yBAAyB;OAD7C,6CAA6C,CAiBzD;IAAD,oDAAC;CAAA,AAjBD,IAiBC;SAjBY,6CAA6C"} \ No newline at end of file diff --git a/src/app/core/data/remote-data-error.js b/src/app/core/data/remote-data-error.js new file mode 100644 index 0000000000..7c20bd85c3 --- /dev/null +++ b/src/app/core/data/remote-data-error.js @@ -0,0 +1,10 @@ +var RemoteDataError = /** @class */ (function () { + function RemoteDataError(statusCode, statusText, message) { + this.statusCode = statusCode; + this.statusText = statusText; + this.message = message; + } + return RemoteDataError; +}()); +export { RemoteDataError }; +//# sourceMappingURL=remote-data-error.js.map \ No newline at end of file diff --git a/src/app/core/data/remote-data-error.js.map b/src/app/core/data/remote-data-error.js.map new file mode 100644 index 0000000000..cd2f0c1e5e --- /dev/null +++ b/src/app/core/data/remote-data-error.js.map @@ -0,0 +1 @@ +{"version":3,"file":"remote-data-error.js","sourceRoot":"","sources":["remote-data-error.ts"],"names":[],"mappings":"AAAA;IACE,yBACS,UAAkB,EAClB,UAAkB,EAClB,OAAe;QAFf,eAAU,GAAV,UAAU,CAAQ;QAClB,eAAU,GAAV,UAAU,CAAQ;QAClB,YAAO,GAAP,OAAO,CAAQ;IAExB,CAAC;IACH,sBAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/core/data/remote-data.js b/src/app/core/data/remote-data.js new file mode 100644 index 0000000000..bdb18de353 --- /dev/null +++ b/src/app/core/data/remote-data.js @@ -0,0 +1,77 @@ +import { hasValue } from '../../shared/empty.util'; +export var RemoteDataState; +(function (RemoteDataState) { + RemoteDataState["RequestPending"] = "RequestPending"; + RemoteDataState["ResponsePending"] = "ResponsePending"; + RemoteDataState["Failed"] = "Failed"; + RemoteDataState["Success"] = "Success"; +})(RemoteDataState || (RemoteDataState = {})); +/** + * A class to represent the state of a remote resource + */ +var RemoteData = /** @class */ (function () { + function RemoteData(requestPending, responsePending, isSuccessful, error, payload) { + this.requestPending = requestPending; + this.responsePending = responsePending; + this.isSuccessful = isSuccessful; + this.error = error; + this.payload = payload; + } + Object.defineProperty(RemoteData.prototype, "state", { + get: function () { + if (this.isSuccessful === true && hasValue(this.payload)) { + return RemoteDataState.Success; + } + else if (this.isSuccessful === false) { + return RemoteDataState.Failed; + } + else if (this.requestPending === true) { + return RemoteDataState.RequestPending; + } + else { + return RemoteDataState.ResponsePending; + } + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(RemoteData.prototype, "isRequestPending", { + get: function () { + return this.state === RemoteDataState.RequestPending; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(RemoteData.prototype, "isResponsePending", { + get: function () { + return this.state === RemoteDataState.ResponsePending; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(RemoteData.prototype, "isLoading", { + get: function () { + return this.state === RemoteDataState.RequestPending + || this.state === RemoteDataState.ResponsePending; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(RemoteData.prototype, "hasFailed", { + get: function () { + return this.state === RemoteDataState.Failed; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(RemoteData.prototype, "hasSucceeded", { + get: function () { + return this.state === RemoteDataState.Success; + }, + enumerable: true, + configurable: true + }); + return RemoteData; +}()); +export { RemoteData }; +//# sourceMappingURL=remote-data.js.map \ No newline at end of file diff --git a/src/app/core/data/remote-data.js.map b/src/app/core/data/remote-data.js.map new file mode 100644 index 0000000000..9b0161dd69 --- /dev/null +++ b/src/app/core/data/remote-data.js.map @@ -0,0 +1 @@ +{"version":3,"file":"remote-data.js","sourceRoot":"","sources":["remote-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,oDAAiC,CAAA;IACjC,sDAAmC,CAAA;IACnC,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;AACrB,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED;;GAEG;AACH;IACE,oBACU,cAAuB,EACvB,eAAwB,EACxB,YAAqB,EACtB,KAAsB,EACtB,OAAU;QAJT,mBAAc,GAAd,cAAc,CAAS;QACvB,oBAAe,GAAf,eAAe,CAAS;QACxB,iBAAY,GAAZ,YAAY,CAAS;QACtB,UAAK,GAAL,KAAK,CAAiB;QACtB,YAAO,GAAP,OAAO,CAAG;IAEnB,CAAC;IAED,sBAAI,6BAAK;aAAT;YACE,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBACxD,OAAO,eAAe,CAAC,OAAO,CAAA;aAC/B;iBAAM,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;gBACtC,OAAO,eAAe,CAAC,MAAM,CAAA;aAC9B;iBAAM,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE;gBACvC,OAAO,eAAe,CAAC,cAAc,CAAA;aACtC;iBAAM;gBACL,OAAO,eAAe,CAAC,eAAe,CAAA;aACvC;QACH,CAAC;;;OAAA;IAED,sBAAI,wCAAgB;aAApB;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,cAAc,CAAC;QACvD,CAAC;;;OAAA;IAED,sBAAI,yCAAiB;aAArB;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,eAAe,CAAC;QACxD,CAAC;;;OAAA;IAED,sBAAI,iCAAS;aAAb;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,cAAc;mBAC/C,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,eAAe,CAAC;QACtD,CAAC;;;OAAA;IAED,sBAAI,iCAAS;aAAb;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,MAAM,CAAC;QAC/C,CAAC;;;OAAA;IAED,sBAAI,oCAAY;aAAhB;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,OAAO,CAAC;QAChD,CAAC;;;OAAA;IAEH,iBAAC;AAAD,CAAC,AA3CD,IA2CC"} \ No newline at end of file diff --git a/src/app/core/data/request.actions.js b/src/app/core/data/request.actions.js new file mode 100644 index 0000000000..3f49f58b47 --- /dev/null +++ b/src/app/core/data/request.actions.js @@ -0,0 +1,89 @@ +import { type } from '../../shared/ngrx/type'; +/** + * The list of RequestAction type definitions + */ +export var RequestActionTypes = { + CONFIGURE: type('dspace/core/data/request/CONFIGURE'), + EXECUTE: type('dspace/core/data/request/EXECUTE'), + COMPLETE: type('dspace/core/data/request/COMPLETE'), + RESET_TIMESTAMPS: type('dspace/core/data/request/RESET_TIMESTAMPS'), + REMOVE: type('dspace/core/data/request/REMOVE') +}; +/* tslint:disable:max-classes-per-file */ +var RequestConfigureAction = /** @class */ (function () { + function RequestConfigureAction(request) { + this.type = RequestActionTypes.CONFIGURE; + this.payload = request; + } + return RequestConfigureAction; +}()); +export { RequestConfigureAction }; +var RequestExecuteAction = /** @class */ (function () { + /** + * Create a new RequestExecuteAction + * + * @param uuid + * the request's uuid + */ + function RequestExecuteAction(uuid) { + this.type = RequestActionTypes.EXECUTE; + this.payload = uuid; + } + return RequestExecuteAction; +}()); +export { RequestExecuteAction }; +/** + * An ngrx action to indicate a response was returned + */ +var RequestCompleteAction = /** @class */ (function () { + /** + * Create a new RequestCompleteAction + * + * @param uuid + * the request's uuid + */ + function RequestCompleteAction(uuid, response) { + this.type = RequestActionTypes.COMPLETE; + this.payload = { + uuid: uuid, + response: response + }; + } + return RequestCompleteAction; +}()); +export { RequestCompleteAction }; +/** + * An ngrx action to reset the timeAdded property of all responses in the cached objects + */ +var ResetResponseTimestampsAction = /** @class */ (function () { + /** + * Create a new ResetResponseTimestampsAction + * + * @param newTimestamp + * the new timeAdded all objects should get + */ + function ResetResponseTimestampsAction(newTimestamp) { + this.type = RequestActionTypes.RESET_TIMESTAMPS; + this.payload = newTimestamp; + } + return ResetResponseTimestampsAction; +}()); +export { ResetResponseTimestampsAction }; +/** + * An ngrx action to remove a cached request + */ +var RequestRemoveAction = /** @class */ (function () { + /** + * Create a new RequestRemoveAction + * + * @param uuid + * the request's uuid + */ + function RequestRemoveAction(uuid) { + this.type = RequestActionTypes.REMOVE; + this.uuid = uuid; + } + return RequestRemoveAction; +}()); +export { RequestRemoveAction }; +//# sourceMappingURL=request.actions.js.map \ No newline at end of file diff --git a/src/app/core/data/request.actions.js.map b/src/app/core/data/request.actions.js.map new file mode 100644 index 0000000000..19efc211e6 --- /dev/null +++ b/src/app/core/data/request.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"request.actions.js","sourceRoot":"","sources":["request.actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAI9C;;GAEG;AACH,MAAM,CAAC,IAAM,kBAAkB,GAAG;IAChC,SAAS,EAAE,IAAI,CAAC,oCAAoC,CAAC;IACrD,OAAO,EAAE,IAAI,CAAC,kCAAkC,CAAC;IACjD,QAAQ,EAAE,IAAI,CAAC,mCAAmC,CAAC;IACnD,gBAAgB,EAAE,IAAI,CAAC,2CAA2C,CAAC;IACnE,MAAM,EAAE,IAAI,CAAC,iCAAiC,CAAC;CAChD,CAAC;AAEF,yCAAyC;AACzC;IAIE,gCACE,OAAoB;QAJtB,SAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC;QAMlC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IACH,6BAAC;AAAD,CAAC,AATD,IASC;;AAED;IAIE;;;;;OAKG;IACH,8BAAY,IAAY;QATxB,SAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC;QAUhC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACrB,CAAC;IACH,2BAAC;AAAD,CAAC,AAbD,IAaC;;AAED;;GAEG;AACH;IAOE;;;;;OAKG;IACH,+BAAY,IAAY,EAAE,QAAsB;QAZhD,SAAI,GAAG,kBAAkB,CAAC,QAAQ,CAAC;QAajC,IAAI,CAAC,OAAO,GAAG;YACb,IAAI,MAAA;YACJ,QAAQ,UAAA;SACT,CAAC;IACJ,CAAC;IACH,4BAAC;AAAD,CAAC,AAnBD,IAmBC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,uCAAY,YAAoB;QAThC,SAAI,GAAG,kBAAkB,CAAC,gBAAgB,CAAC;QAUzC,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;IAC9B,CAAC;IACH,oCAAC;AAAD,CAAC,AAbD,IAaC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,6BAAY,IAAY;QATxB,SAAI,GAAG,kBAAkB,CAAC,MAAM,CAAC;QAU/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IACH,0BAAC;AAAD,CAAC,AAbD,IAaC"} \ No newline at end of file diff --git a/src/app/core/data/request.effects.js b/src/app/core/data/request.effects.js new file mode 100644 index 0000000000..931aab0a54 --- /dev/null +++ b/src/app/core/data/request.effects.js @@ -0,0 +1,71 @@ +import * as tslib_1 from "tslib"; +import { of as observableOf } from 'rxjs'; +import { Inject, Injectable, Injector } from '@angular/core'; +import { Actions, Effect, ofType } from '@ngrx/effects'; +import { GLOBAL_CONFIG } from '../../../config'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { DSpaceRESTv2Service } from '../dspace-rest-v2/dspace-rest-v2.service'; +import { RequestActionTypes, RequestCompleteAction, ResetResponseTimestampsAction } from './request.actions'; +import { RequestService } from './request.service'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; +import { catchError, filter, flatMap, map, take } from 'rxjs/operators'; +import { ErrorResponse } from '../cache/response.models'; +import { StoreActionTypes } from '../../store.actions'; +export var addToResponseCacheAndCompleteAction = function (request, envConfig) { + return function (source) { + return source.pipe(map(function (response) { + return new RequestCompleteAction(request.uuid, response); + })); + }; +}; +var RequestEffects = /** @class */ (function () { + function RequestEffects(EnvConfig, actions$, restApi, injector, requestService) { + var _this = this; + this.EnvConfig = EnvConfig; + this.actions$ = actions$; + this.restApi = restApi; + this.injector = injector; + this.requestService = requestService; + this.execute = this.actions$.pipe(ofType(RequestActionTypes.EXECUTE), flatMap(function (action) { + return _this.requestService.getByUUID(action.payload).pipe(take(1)); + }), filter(function (entry) { return hasValue(entry); }), map(function (entry) { return entry.request; }), flatMap(function (request) { + var body; + if (isNotEmpty(request.body)) { + var serializer = new DSpaceRESTv2Serializer(NormalizedObjectFactory.getConstructor(request.body.type)); + body = serializer.serialize(request.body); + } + return _this.restApi.request(request.method, request.href, body, request.options).pipe(map(function (data) { return _this.injector.get(request.getResponseParser()).parse(request, data); }), addToResponseCacheAndCompleteAction(request, _this.EnvConfig), catchError(function (error) { return observableOf(new ErrorResponse(error)).pipe(addToResponseCacheAndCompleteAction(request, _this.EnvConfig)); })); + })); + /** + * When the store is rehydrated in the browser, set all cache + * timestamps to 'now', because the time zone of the server can + * differ from the client. + * + * This assumes that the server cached everything a negligible + * time ago, and will likely need to be revisited later + */ + this.fixTimestampsOnRehydrate = this.actions$ + .pipe(ofType(StoreActionTypes.REHYDRATE), map(function () { return new ResetResponseTimestampsAction(new Date().getTime()); })); + } + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], RequestEffects.prototype, "execute", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], RequestEffects.prototype, "fixTimestampsOnRehydrate", void 0); + RequestEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, Actions, + DSpaceRESTv2Service, + Injector, + RequestService]) + ], RequestEffects); + return RequestEffects; +}()); +export { RequestEffects }; +/* tslint:enable:max-classes-per-file */ +//# sourceMappingURL=request.effects.js.map \ No newline at end of file diff --git a/src/app/core/data/request.effects.js.map b/src/app/core/data/request.effects.js.map new file mode 100644 index 0000000000..519047c10e --- /dev/null +++ b/src/app/core/data/request.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"request.effects.js","sourceRoot":"","sources":["request.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/request.models.js b/src/app/core/data/request.models.js new file mode 100644 index 0000000000..017116975d --- /dev/null +++ b/src/app/core/data/request.models.js @@ -0,0 +1,478 @@ +import * as tslib_1 from "tslib"; +import { BrowseEntriesResponseParsingService } from './browse-entries-response-parsing.service'; +import { DSOResponseParsingService } from './dso-response-parsing.service'; +import { EndpointMapResponseParsingService } from './endpoint-map-response-parsing.service'; +import { BrowseResponseParsingService } from './browse-response-parsing.service'; +import { ConfigResponseParsingService } from '../config/config-response-parsing.service'; +import { AuthResponseParsingService } from '../auth/auth-response-parsing.service'; +import { SubmissionResponseParsingService } from '../submission/submission-response-parsing.service'; +import { IntegrationResponseParsingService } from '../integration/integration-response-parsing.service'; +import { RestRequestMethod } from './rest-request-method'; +import { EpersonResponseParsingService } from '../eperson/eperson-response-parsing.service'; +import { BrowseItemsResponseParsingService } from './browse-items-response-parsing-service'; +import { MetadataschemaParsingService } from './metadataschema-parsing.service'; +import { MetadatafieldParsingService } from './metadatafield-parsing.service'; +import { URLCombiner } from '../url-combiner/url-combiner'; +import { TaskResponseParsingService } from '../tasks/task-response-parsing.service'; +/* tslint:disable:max-classes-per-file */ +var RestRequest = /** @class */ (function () { + function RestRequest(uuid, href, method, body, options) { + if (method === void 0) { method = RestRequestMethod.GET; } + this.uuid = uuid; + this.href = href; + this.method = method; + this.body = body; + this.options = options; + this.responseMsToLive = 0; + } + RestRequest.prototype.getResponseParser = function () { + return DSOResponseParsingService; + }; + Object.defineProperty(RestRequest.prototype, "toCache", { + get: function () { + return this.responseMsToLive > 0; + }, + enumerable: true, + configurable: true + }); + return RestRequest; +}()); +export { RestRequest }; +var GetRequest = /** @class */ (function (_super) { + tslib_1.__extends(GetRequest, _super); + function GetRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, RestRequestMethod.GET, body, options) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + _this.options = options; + _this.responseMsToLive = 60 * 15 * 1000; + return _this; + } + return GetRequest; +}(RestRequest)); +export { GetRequest }; +var PostRequest = /** @class */ (function (_super) { + tslib_1.__extends(PostRequest, _super); + function PostRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, RestRequestMethod.POST, body) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + _this.options = options; + return _this; + } + return PostRequest; +}(RestRequest)); +export { PostRequest }; +var PutRequest = /** @class */ (function (_super) { + tslib_1.__extends(PutRequest, _super); + function PutRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, RestRequestMethod.PUT, body) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + _this.options = options; + return _this; + } + return PutRequest; +}(RestRequest)); +export { PutRequest }; +var DeleteRequest = /** @class */ (function (_super) { + tslib_1.__extends(DeleteRequest, _super); + function DeleteRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, RestRequestMethod.DELETE, body) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + _this.options = options; + return _this; + } + return DeleteRequest; +}(RestRequest)); +export { DeleteRequest }; +var OptionsRequest = /** @class */ (function (_super) { + tslib_1.__extends(OptionsRequest, _super); + function OptionsRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, RestRequestMethod.OPTIONS, body) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + _this.options = options; + return _this; + } + return OptionsRequest; +}(RestRequest)); +export { OptionsRequest }; +var HeadRequest = /** @class */ (function (_super) { + tslib_1.__extends(HeadRequest, _super); + function HeadRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, RestRequestMethod.HEAD, body) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + _this.options = options; + return _this; + } + return HeadRequest; +}(RestRequest)); +export { HeadRequest }; +var PatchRequest = /** @class */ (function (_super) { + tslib_1.__extends(PatchRequest, _super); + function PatchRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, RestRequestMethod.PATCH, body) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + _this.options = options; + return _this; + } + return PatchRequest; +}(RestRequest)); +export { PatchRequest }; +var FindByIDRequest = /** @class */ (function (_super) { + tslib_1.__extends(FindByIDRequest, _super); + function FindByIDRequest(uuid, href, resourceID) { + var _this = _super.call(this, uuid, href) || this; + _this.resourceID = resourceID; + return _this; + } + return FindByIDRequest; +}(GetRequest)); +export { FindByIDRequest }; +var FindAllOptions = /** @class */ (function () { + function FindAllOptions() { + } + return FindAllOptions; +}()); +export { FindAllOptions }; +var FindAllRequest = /** @class */ (function (_super) { + tslib_1.__extends(FindAllRequest, _super); + function FindAllRequest(uuid, href, body) { + var _this = _super.call(this, uuid, href) || this; + _this.body = body; + return _this; + } + return FindAllRequest; +}(GetRequest)); +export { FindAllRequest }; +var EndpointMapRequest = /** @class */ (function (_super) { + tslib_1.__extends(EndpointMapRequest, _super); + function EndpointMapRequest(uuid, href, body) { + return _super.call(this, uuid, new URLCombiner(href, '?endpointMap').toString(), body) || this; + } + EndpointMapRequest.prototype.getResponseParser = function () { + return EndpointMapResponseParsingService; + }; + return EndpointMapRequest; +}(GetRequest)); +export { EndpointMapRequest }; +var BrowseEndpointRequest = /** @class */ (function (_super) { + tslib_1.__extends(BrowseEndpointRequest, _super); + function BrowseEndpointRequest(uuid, href) { + return _super.call(this, uuid, href) || this; + } + BrowseEndpointRequest.prototype.getResponseParser = function () { + return BrowseResponseParsingService; + }; + return BrowseEndpointRequest; +}(GetRequest)); +export { BrowseEndpointRequest }; +var BrowseEntriesRequest = /** @class */ (function (_super) { + tslib_1.__extends(BrowseEntriesRequest, _super); + function BrowseEntriesRequest() { + return _super !== null && _super.apply(this, arguments) || this; + } + BrowseEntriesRequest.prototype.getResponseParser = function () { + return BrowseEntriesResponseParsingService; + }; + return BrowseEntriesRequest; +}(GetRequest)); +export { BrowseEntriesRequest }; +var BrowseItemsRequest = /** @class */ (function (_super) { + tslib_1.__extends(BrowseItemsRequest, _super); + function BrowseItemsRequest() { + return _super !== null && _super.apply(this, arguments) || this; + } + BrowseItemsRequest.prototype.getResponseParser = function () { + return BrowseItemsResponseParsingService; + }; + return BrowseItemsRequest; +}(GetRequest)); +export { BrowseItemsRequest }; +var ConfigRequest = /** @class */ (function (_super) { + tslib_1.__extends(ConfigRequest, _super); + function ConfigRequest(uuid, href, options) { + var _this = _super.call(this, uuid, href, null, options) || this; + _this.options = options; + return _this; + } + ConfigRequest.prototype.getResponseParser = function () { + return ConfigResponseParsingService; + }; + return ConfigRequest; +}(GetRequest)); +export { ConfigRequest }; +var AuthPostRequest = /** @class */ (function (_super) { + tslib_1.__extends(AuthPostRequest, _super); + function AuthPostRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.body = body; + _this.options = options; + return _this; + } + AuthPostRequest.prototype.getResponseParser = function () { + return AuthResponseParsingService; + }; + return AuthPostRequest; +}(PostRequest)); +export { AuthPostRequest }; +var AuthGetRequest = /** @class */ (function (_super) { + tslib_1.__extends(AuthGetRequest, _super); + function AuthGetRequest(uuid, href, options) { + var _this = _super.call(this, uuid, href, null, options) || this; + _this.options = options; + return _this; + } + AuthGetRequest.prototype.getResponseParser = function () { + return AuthResponseParsingService; + }; + return AuthGetRequest; +}(GetRequest)); +export { AuthGetRequest }; +var IntegrationRequest = /** @class */ (function (_super) { + tslib_1.__extends(IntegrationRequest, _super); + function IntegrationRequest(uuid, href) { + return _super.call(this, uuid, href) || this; + } + IntegrationRequest.prototype.getResponseParser = function () { + return IntegrationResponseParsingService; + }; + return IntegrationRequest; +}(GetRequest)); +export { IntegrationRequest }; +/** + * Request to create a MetadataSchema + */ +var CreateMetadataSchemaRequest = /** @class */ (function (_super) { + tslib_1.__extends(CreateMetadataSchemaRequest, _super); + function CreateMetadataSchemaRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.body = body; + _this.options = options; + return _this; + } + CreateMetadataSchemaRequest.prototype.getResponseParser = function () { + return MetadataschemaParsingService; + }; + return CreateMetadataSchemaRequest; +}(PostRequest)); +export { CreateMetadataSchemaRequest }; +/** + * Request to update a MetadataSchema + */ +var UpdateMetadataSchemaRequest = /** @class */ (function (_super) { + tslib_1.__extends(UpdateMetadataSchemaRequest, _super); + function UpdateMetadataSchemaRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.body = body; + _this.options = options; + return _this; + } + UpdateMetadataSchemaRequest.prototype.getResponseParser = function () { + return MetadataschemaParsingService; + }; + return UpdateMetadataSchemaRequest; +}(PutRequest)); +export { UpdateMetadataSchemaRequest }; +/** + * Request to create a MetadataField + */ +var CreateMetadataFieldRequest = /** @class */ (function (_super) { + tslib_1.__extends(CreateMetadataFieldRequest, _super); + function CreateMetadataFieldRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.body = body; + _this.options = options; + return _this; + } + CreateMetadataFieldRequest.prototype.getResponseParser = function () { + return MetadatafieldParsingService; + }; + return CreateMetadataFieldRequest; +}(PostRequest)); +export { CreateMetadataFieldRequest }; +/** + * Request to update a MetadataField + */ +var UpdateMetadataFieldRequest = /** @class */ (function (_super) { + tslib_1.__extends(UpdateMetadataFieldRequest, _super); + function UpdateMetadataFieldRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.body = body; + _this.options = options; + return _this; + } + UpdateMetadataFieldRequest.prototype.getResponseParser = function () { + return MetadatafieldParsingService; + }; + return UpdateMetadataFieldRequest; +}(PutRequest)); +export { UpdateMetadataFieldRequest }; +/** + * Class representing a submission HTTP GET request object + */ +var SubmissionRequest = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionRequest, _super); + function SubmissionRequest(uuid, href) { + return _super.call(this, uuid, href) || this; + } + SubmissionRequest.prototype.getResponseParser = function () { + return SubmissionResponseParsingService; + }; + return SubmissionRequest; +}(GetRequest)); +export { SubmissionRequest }; +/** + * Class representing a submission HTTP DELETE request object + */ +var SubmissionDeleteRequest = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionDeleteRequest, _super); + function SubmissionDeleteRequest(uuid, href) { + var _this = _super.call(this, uuid, href) || this; + _this.uuid = uuid; + _this.href = href; + return _this; + } + SubmissionDeleteRequest.prototype.getResponseParser = function () { + return SubmissionResponseParsingService; + }; + return SubmissionDeleteRequest; +}(DeleteRequest)); +export { SubmissionDeleteRequest }; +/** + * Class representing a submission HTTP PATCH request object + */ +var SubmissionPatchRequest = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionPatchRequest, _super); + function SubmissionPatchRequest(uuid, href, body) { + var _this = _super.call(this, uuid, href, body) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + return _this; + } + SubmissionPatchRequest.prototype.getResponseParser = function () { + return SubmissionResponseParsingService; + }; + return SubmissionPatchRequest; +}(PatchRequest)); +export { SubmissionPatchRequest }; +/** + * Class representing a submission HTTP POST request object + */ +var SubmissionPostRequest = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionPostRequest, _super); + function SubmissionPostRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.uuid = uuid; + _this.href = href; + _this.body = body; + _this.options = options; + return _this; + } + SubmissionPostRequest.prototype.getResponseParser = function () { + return SubmissionResponseParsingService; + }; + return SubmissionPostRequest; +}(PostRequest)); +export { SubmissionPostRequest }; +/** + * Class representing an eperson HTTP GET request object + */ +var EpersonRequest = /** @class */ (function (_super) { + tslib_1.__extends(EpersonRequest, _super); + function EpersonRequest(uuid, href) { + return _super.call(this, uuid, href) || this; + } + EpersonRequest.prototype.getResponseParser = function () { + return EpersonResponseParsingService; + }; + return EpersonRequest; +}(GetRequest)); +export { EpersonRequest }; +var CreateRequest = /** @class */ (function (_super) { + tslib_1.__extends(CreateRequest, _super); + function CreateRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.body = body; + _this.options = options; + return _this; + } + CreateRequest.prototype.getResponseParser = function () { + return DSOResponseParsingService; + }; + return CreateRequest; +}(PostRequest)); +export { CreateRequest }; +/** + * Request to delete an object based on its identifier + */ +var DeleteByIDRequest = /** @class */ (function (_super) { + tslib_1.__extends(DeleteByIDRequest, _super); + function DeleteByIDRequest(uuid, href, resourceID) { + var _this = _super.call(this, uuid, href) || this; + _this.resourceID = resourceID; + return _this; + } + return DeleteByIDRequest; +}(DeleteRequest)); +export { DeleteByIDRequest }; +var TaskPostRequest = /** @class */ (function (_super) { + tslib_1.__extends(TaskPostRequest, _super); + function TaskPostRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.body = body; + _this.options = options; + return _this; + } + TaskPostRequest.prototype.getResponseParser = function () { + return TaskResponseParsingService; + }; + return TaskPostRequest; +}(PostRequest)); +export { TaskPostRequest }; +var TaskDeleteRequest = /** @class */ (function (_super) { + tslib_1.__extends(TaskDeleteRequest, _super); + function TaskDeleteRequest(uuid, href, body, options) { + var _this = _super.call(this, uuid, href, body, options) || this; + _this.body = body; + _this.options = options; + return _this; + } + TaskDeleteRequest.prototype.getResponseParser = function () { + return TaskResponseParsingService; + }; + return TaskDeleteRequest; +}(DeleteRequest)); +export { TaskDeleteRequest }; +var MyDSpaceRequest = /** @class */ (function (_super) { + tslib_1.__extends(MyDSpaceRequest, _super); + function MyDSpaceRequest() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.responseMsToLive = 0; + return _this; + } + return MyDSpaceRequest; +}(GetRequest)); +export { MyDSpaceRequest }; +var RequestError = /** @class */ (function (_super) { + tslib_1.__extends(RequestError, _super); + function RequestError() { + return _super !== null && _super.apply(this, arguments) || this; + } + return RequestError; +}(Error)); +export { RequestError }; +/* tslint:enable:max-classes-per-file */ +//# sourceMappingURL=request.models.js.map \ No newline at end of file diff --git a/src/app/core/data/request.models.js.map b/src/app/core/data/request.models.js.map new file mode 100644 index 0000000000..3c530d90c8 --- /dev/null +++ b/src/app/core/data/request.models.js.map @@ -0,0 +1 @@ +{"version":3,"file":"request.models.js","sourceRoot":"","sources":["request.models.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/request.reducer.js b/src/app/core/data/request.reducer.js new file mode 100644 index 0000000000..4b8e22dcbb --- /dev/null +++ b/src/app/core/data/request.reducer.js @@ -0,0 +1,106 @@ +import { RequestActionTypes } from './request.actions'; +var RequestEntry = /** @class */ (function () { + function RequestEntry() { + } + return RequestEntry; +}()); +export { RequestEntry }; +// Object.create(null) ensures the object has no default js properties (e.g. `__proto__`) +var initialState = Object.create(null); +export function requestReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case RequestActionTypes.CONFIGURE: { + return configureRequest(state, action); + } + case RequestActionTypes.EXECUTE: { + return executeRequest(state, action); + } + case RequestActionTypes.COMPLETE: { + return completeRequest(state, action); + } + case RequestActionTypes.RESET_TIMESTAMPS: { + return resetResponseTimestamps(state, action); + } + case RequestActionTypes.REMOVE: { + return removeRequest(state, action); + } + default: { + return state; + } + } +} +function configureRequest(state, action) { + var _a; + return Object.assign({}, state, (_a = {}, + _a[action.payload.uuid] = { + request: action.payload, + requestPending: true, + responsePending: false, + completed: false, + }, + _a)); +} +function executeRequest(state, action) { + var _a; + var obs = Object.assign({}, state, (_a = {}, + _a[action.payload] = Object.assign({}, state[action.payload], { + requestPending: false, + responsePending: true + }), + _a)); + return obs; +} +/** + * Update a request with the response + * + * @param state + * the current state + * @param action + * a RequestCompleteAction + * @return RequestState + * the new state, with the response added to the request + */ +function completeRequest(state, action) { + var _a; + var time = new Date().getTime(); + return Object.assign({}, state, (_a = {}, + _a[action.payload.uuid] = Object.assign({}, state[action.payload.uuid], { + responsePending: false, + completed: true, + response: Object.assign({}, action.payload.response, { timeAdded: time }) + }), + _a)); +} +/** + * Reset the timeAdded property of all responses + * + * @param state + * the current state + * @param action + * a RequestCompleteAction + * @return RequestState + * the new state, with the timeAdded property reset + */ +function resetResponseTimestamps(state, action) { + var newState = Object.create(null); + Object.keys(state).forEach(function (key) { + newState[key] = Object.assign({}, state[key], { response: Object.assign({}, state[key].response, { timeAdded: action.payload }) }); + }); + return newState; +} +/** + * Remove a request from the RequestState + * @param state The current RequestState + * @param action The RequestRemoveAction to perform + */ +function removeRequest(state, action) { + var newState = Object.create(null); + for (var value in state) { + if (value !== action.uuid) { + newState[value] = state[value]; + } + } + return newState; +} +//# sourceMappingURL=request.reducer.js.map \ No newline at end of file diff --git a/src/app/core/data/request.reducer.js.map b/src/app/core/data/request.reducer.js.map new file mode 100644 index 0000000000..8529b254f0 --- /dev/null +++ b/src/app/core/data/request.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"request.reducer.js","sourceRoot":"","sources":["request.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/request.service.js b/src/app/core/data/request.service.js new file mode 100644 index 0000000000..98987e367b --- /dev/null +++ b/src/app/core/data/request.service.js @@ -0,0 +1,270 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { HttpHeaders } from '@angular/common/http'; +import { createSelector, select, Store } from '@ngrx/store'; +import { race as observableRace } from 'rxjs'; +import { filter, find, map, mergeMap, take } from 'rxjs/operators'; +import { cloneDeep, remove } from 'lodash'; +import { hasValue, isEmpty, isNotEmpty } from '../../shared/empty.util'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { IndexName } from '../index/index.reducer'; +import { originalRequestUUIDFromRequestUUIDSelector, requestIndexSelector, uuidFromHrefSelector } from '../index/index.selectors'; +import { UUIDService } from '../shared/uuid.service'; +import { RequestConfigureAction, RequestExecuteAction, RequestRemoveAction } from './request.actions'; +import { CommitSSBAction } from '../cache/server-sync-buffer.actions'; +import { RestRequestMethod } from './rest-request-method'; +import { AddToIndexAction, RemoveFromIndexBySubstringAction } from '../index/index.actions'; +import { coreSelector } from '../core.selectors'; +/** + * The base selector function to select the request state in the store + */ +var requestCacheSelector = createSelector(coreSelector, function (state) { return state['data/request']; }); +/** + * Selector function to select a request entry by uuid from the cache + * @param uuid The uuid of the request + */ +var entryFromUUIDSelector = function (uuid) { return createSelector(requestCacheSelector, function (state) { + return hasValue(state) ? state[uuid] : undefined; +}); }; +/** + * Create a selector that fetches a list of request UUIDs from a given index substate of which the request href + * contains a given substring + * @param selector MemoizedSelector to start from + * @param href Substring that the request's href should contain + */ +var uuidsFromHrefSubstringSelector = function (selector, href) { return createSelector(selector, function (state) { return getUuidsFromHrefSubstring(state, href); }); }; +/** + * Fetch a list of request UUIDs from a given index substate of which the request href contains a given substring + * @param state The IndexState + * @param href Substring that the request's href should contain + */ +var getUuidsFromHrefSubstring = function (state, href) { + var result = []; + if (isNotEmpty(state)) { + result = Object.values(state) + .filter(function (value) { return value.startsWith(href); }); + } + return result; +}; +/** + * A service to interact with the request state in the store + */ +var RequestService = /** @class */ (function () { + function RequestService(objectCache, uuidService, store, indexStore) { + this.objectCache = objectCache; + this.uuidService = uuidService; + this.store = store; + this.indexStore = indexStore; + this.requestsOnTheirWayToTheStore = []; + } + RequestService.prototype.generateRequestId = function () { + return "client/" + this.uuidService.generate(); + }; + /** + * Check if a request is currently pending + */ + RequestService.prototype.isPending = function (request) { + // first check requests that haven't made it to the store yet + if (this.requestsOnTheirWayToTheStore.includes(request.href)) { + return true; + } + // then check the store + var isPending = false; + this.getByHref(request.href).pipe(take(1)) + .subscribe(function (re) { + isPending = (hasValue(re) && !re.completed); + }); + return isPending; + }; + /** + * Retrieve a RequestEntry based on their uuid + */ + RequestService.prototype.getByUUID = function (uuid) { + var _this = this; + return observableRace(this.store.pipe(select(entryFromUUIDSelector(uuid))), this.store.pipe(select(originalRequestUUIDFromRequestUUIDSelector(uuid)), mergeMap(function (originalUUID) { + return _this.store.pipe(select(entryFromUUIDSelector(originalUUID))); + }))).pipe(map(function (entry) { + // Headers break after being retrieved from the store (because of lazy initialization) + // Combining them with a new object fixes this issue + if (hasValue(entry) && hasValue(entry.request) && hasValue(entry.request.options) && hasValue(entry.request.options.headers)) { + entry = cloneDeep(entry); + entry.request.options.headers = Object.assign(new HttpHeaders(), entry.request.options.headers); + } + return entry; + })); + }; + /** + * Retrieve a RequestEntry based on their href + */ + RequestService.prototype.getByHref = function (href) { + var _this = this; + return this.store.pipe(select(uuidFromHrefSelector(href)), mergeMap(function (uuid) { return _this.getByUUID(uuid); })); + }; + /** + * Configure a certain request + * Used to make sure a request is in the cache + * @param {RestRequest} request The request to send out + * @param {boolean} forceBypassCache When true, a new request is always dispatched + */ + RequestService.prototype.configure = function (request, forceBypassCache) { + var _this = this; + if (forceBypassCache === void 0) { forceBypassCache = false; } + var isGetRequest = request.method === RestRequestMethod.GET; + if (forceBypassCache) { + this.clearRequestsOnTheirWayToTheStore(request); + } + if (!isGetRequest || (forceBypassCache && !this.isPending(request)) || !this.isCachedOrPending(request)) { + this.dispatchRequest(request); + if (isGetRequest) { + this.trackRequestsOnTheirWayToTheStore(request); + } + } + else { + this.getByHref(request.href).pipe(filter(function (entry) { return hasValue(entry); }), take(1)).subscribe(function (entry) { + return _this.store.dispatch(new AddToIndexAction(IndexName.UUID_MAPPING, request.uuid, entry.request.uuid)); + }); + } + }; + /** + * Convert request Payload to a URL-encoded string + * + * e.g. uriEncodeBody({param: value, param1: value1}) + * returns: param=value¶m1=value1 + * + * @param body + * The request Payload to convert + * @return string + * URL-encoded string + */ + RequestService.prototype.uriEncodeBody = function (body) { + var queryParams = ''; + if (isNotEmpty(body) && typeof body === 'object') { + Object.keys(body) + .forEach(function (param) { + var paramValue = param + "=" + body[param]; + queryParams = isEmpty(queryParams) ? queryParams.concat(paramValue) : queryParams.concat('&', paramValue); + }); + } + return encodeURI(queryParams); + }; + /** + * Remove all request cache providing (part of) the href + * This also includes href-to-uuid index cache + * @param href A substring of the request(s) href + */ + RequestService.prototype.removeByHrefSubstring = function (href) { + var _this = this; + this.store.pipe(select(uuidsFromHrefSubstringSelector(requestIndexSelector, href)), take(1)).subscribe(function (uuids) { + for (var _i = 0, uuids_1 = uuids; _i < uuids_1.length; _i++) { + var uuid = uuids_1[_i]; + _this.removeByUuid(uuid); + } + }); + this.requestsOnTheirWayToTheStore = this.requestsOnTheirWayToTheStore.filter(function (reqHref) { return reqHref.indexOf(href) < 0; }); + this.indexStore.dispatch(new RemoveFromIndexBySubstringAction(IndexName.REQUEST, href)); + }; + /** + * Remove request cache using the request's UUID + * @param uuid + */ + RequestService.prototype.removeByUuid = function (uuid) { + this.store.dispatch(new RequestRemoveAction(uuid)); + }; + /** + * Check if a request is in the cache or if it's still pending + * @param {GetRequest} request The request to check + * @returns {boolean} True if the request is cached or still pending + */ + RequestService.prototype.isCachedOrPending = function (request) { + var inReqCache = this.hasByHref(request.href); + var inObjCache = this.objectCache.hasBySelfLink(request.href); + var isCached = inReqCache || inObjCache; + var isPending = this.isPending(request); + return isCached || isPending; + }; + /** + * Configure and execute the request + * @param {RestRequest} request to dispatch + */ + RequestService.prototype.dispatchRequest = function (request) { + this.store.dispatch(new RequestConfigureAction(request)); + this.store.dispatch(new RequestExecuteAction(request.uuid)); + }; + /** + * ngrx action dispatches are asynchronous. But this.isPending needs to return true as soon as the + * configure method for a GET request has been executed, otherwise certain requests will happen multiple times. + * + * This method will store the href of every GET request that gets configured in a local variable, and + * remove it as soon as it can be found in the store. + */ + RequestService.prototype.trackRequestsOnTheirWayToTheStore = function (request) { + var _this = this; + this.requestsOnTheirWayToTheStore = this.requestsOnTheirWayToTheStore.concat([request.href]); + this.getByHref(request.href).pipe(filter(function (re) { return hasValue(re); }), take(1)).subscribe(function (re) { + _this.requestsOnTheirWayToTheStore = _this.requestsOnTheirWayToTheStore.filter(function (pendingHref) { return pendingHref !== request.href; }); + }); + }; + /** + * This method remove requests that are on their way to the store. + */ + RequestService.prototype.clearRequestsOnTheirWayToTheStore = function (request) { + var _this = this; + this.getByHref(request.href).pipe(find(function (re) { return hasValue(re); })) + .subscribe(function (re) { + if (!re.responsePending) { + remove(_this.requestsOnTheirWayToTheStore, function (item) { return item === request.href; }); + } + }); + }; + /** + * Dispatch commit action to send all changes (for a certain method) to the server (buffer) + * @param {RestRequestMethod} method RestRequestMethod for which the changes should be committed + */ + RequestService.prototype.commit = function (method) { + this.store.dispatch(new CommitSSBAction(method)); + }; + /** + * Check whether a cached response should still be valid + * + * @param entry + * the entry to check + * @return boolean + * false if the uuid has no value, the response was not successful or its time to + * live was exceeded, true otherwise + */ + RequestService.prototype.isValid = function (entry) { + if (hasValue(entry) && entry.completed && entry.response.isSuccessful) { + var timeOutdated = entry.response.timeAdded + entry.request.responseMsToLive; + var isOutDated = new Date().getTime() > timeOutdated; + return !isOutDated; + } + else { + return false; + } + }; + /** + * Check whether the request with the specified href is cached + * + * @param href + * The link of the request to check + * @return boolean + * true if the request with the specified href is cached, + * false otherwise + */ + RequestService.prototype.hasByHref = function (href) { + var _this = this; + var result = false; + this.getByHref(href).pipe(take(1)).subscribe(function (requestEntry) { return result = _this.isValid(requestEntry); }); + return result; + }; + RequestService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [ObjectCacheService, + UUIDService, + Store, + Store]) + ], RequestService); + return RequestService; +}()); +export { RequestService }; +//# sourceMappingURL=request.service.js.map \ No newline at end of file diff --git a/src/app/core/data/request.service.js.map b/src/app/core/data/request.service.js.map new file mode 100644 index 0000000000..0fdec0c417 --- /dev/null +++ b/src/app/core/data/request.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"request.service.js","sourceRoot":"","sources":["request.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/rest-request-method.js b/src/app/core/data/rest-request-method.js new file mode 100644 index 0000000000..17fa3d2f91 --- /dev/null +++ b/src/app/core/data/rest-request-method.js @@ -0,0 +1,20 @@ +/** + * Represents a Request Method. + * + * I didn't reuse the RequestMethod enum in @angular/http because + * it uses numbers. The string values here are more clear when + * debugging. + * + * The ones commented out are still unsupported in the rest of the codebase + */ +export var RestRequestMethod; +(function (RestRequestMethod) { + RestRequestMethod["GET"] = "GET"; + RestRequestMethod["POST"] = "POST"; + RestRequestMethod["PUT"] = "PUT"; + RestRequestMethod["DELETE"] = "DELETE"; + RestRequestMethod["OPTIONS"] = "OPTIONS"; + RestRequestMethod["HEAD"] = "HEAD"; + RestRequestMethod["PATCH"] = "PATCH"; +})(RestRequestMethod || (RestRequestMethod = {})); +//# sourceMappingURL=rest-request-method.js.map \ No newline at end of file diff --git a/src/app/core/data/rest-request-method.js.map b/src/app/core/data/rest-request-method.js.map new file mode 100644 index 0000000000..585c948f29 --- /dev/null +++ b/src/app/core/data/rest-request-method.js.map @@ -0,0 +1 @@ +{"version":3,"file":"rest-request-method.js","sourceRoot":"","sources":["rest-request-method.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAN,IAAY,iBAQX;AARD,WAAY,iBAAiB;IAC3B,gCAAW,CAAA;IACX,kCAAa,CAAA;IACb,gCAAW,CAAA;IACX,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,kCAAa,CAAA;IACb,oCAAe,CAAA;AACjB,CAAC,EARW,iBAAiB,KAAjB,iBAAiB,QAQ5B"} \ No newline at end of file diff --git a/src/app/core/data/search-response-parsing.service.js b/src/app/core/data/search-response-parsing.service.js new file mode 100644 index 0000000000..b91b7f6622 --- /dev/null +++ b/src/app/core/data/search-response-parsing.service.js @@ -0,0 +1,70 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { SearchSuccessResponse } from '../cache/response.models'; +import { DSOResponseParsingService } from './dso-response-parsing.service'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { hasValue } from '../../shared/empty.util'; +import { SearchQueryResponse } from '../../+search-page/search-service/search-query-response.model'; +import { MetadataValue } from '../shared/metadata.models'; +var SearchResponseParsingService = /** @class */ (function () { + function SearchResponseParsingService(dsoParser) { + this.dsoParser = dsoParser; + } + SearchResponseParsingService.prototype.parse = function (request, data) { + var _this = this; + // fallback for unexpected empty response + var emptyPayload = { + _embedded: { + objects: [] + } + }; + var payload = data.payload._embedded.searchResult || emptyPayload; + var hitHighlights = payload._embedded.objects + .map(function (object) { return object.hitHighlights; }) + .map(function (hhObject) { + var mdMap = {}; + if (hhObject) { + for (var _i = 0, _a = Object.keys(hhObject); _i < _a.length; _i++) { + var key = _a[_i]; + var value = Object.assign(new MetadataValue(), { value: hhObject[key].join('...'), language: null }); + mdMap[key] = [value]; + } + } + return mdMap; + }); + var dsoSelfLinks = payload._embedded.objects + .filter(function (object) { return hasValue(object._embedded); }) + .map(function (object) { return object._embedded.indexableObject; }) + // we don't need embedded collections, bitstreamformats, etc for search results. + // And parsing them all takes up a lot of time. Throw them away to improve performance + // until objs until partial results are supported by the rest api + .map(function (dso) { return Object.assign({}, dso, { _embedded: undefined }); }) + .map(function (dso) { return _this.dsoParser.parse(request, { + payload: dso, + statusCode: data.statusCode, + statusText: data.statusText + }); }) + .map(function (obj) { return obj.resourceSelfLinks; }) + .reduce(function (combined, thisElement) { return combined.concat(thisElement); }, []); + var objects = payload._embedded.objects + .filter(function (object) { return hasValue(object._embedded); }) + .map(function (object, index) { return Object.assign({}, object, { + indexableObject: dsoSelfLinks[index], + hitHighlights: hitHighlights[index], + // we don't need embedded collections, bitstreamformats, etc for search results. + // And parsing them all takes up a lot of time. Throw them away to improve performance + // until objs until partial results are supported by the rest api + _embedded: undefined + }); }); + payload.objects = objects; + var deserialized = new DSpaceRESTv2Serializer(SearchQueryResponse).deserialize(payload); + return new SearchSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(payload)); + }; + SearchResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) + ], SearchResponseParsingService); + return SearchResponseParsingService; +}()); +export { SearchResponseParsingService }; +//# sourceMappingURL=search-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/search-response-parsing.service.js.map b/src/app/core/data/search-response-parsing.service.js.map new file mode 100644 index 0000000000..f05aef1d02 --- /dev/null +++ b/src/app/core/data/search-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-response-parsing.service.js","sourceRoot":"","sources":["search-response-parsing.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js b/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js new file mode 100644 index 0000000000..786c3274d2 --- /dev/null +++ b/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=dspace-rest-v2-response.model.js.map \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js.map b/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js.map new file mode 100644 index 0000000000..e47b689cae --- /dev/null +++ b/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-rest-v2-response.model.js","sourceRoot":"","sources":["dspace-rest-v2-response.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js b/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js new file mode 100644 index 0000000000..a812a4d193 --- /dev/null +++ b/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js @@ -0,0 +1,84 @@ +import { Serialize, Deserialize } from 'cerialize'; +/** + * This Serializer turns responses from v2 of DSpace's REST API + * to models and vice versa + */ +var DSpaceRESTv2Serializer = /** @class */ (function () { + /** + * Create a new DSpaceRESTv2Serializer instance + * + * @param modelType a class or interface to indicate + * the kind of model this serializer should work with + */ + function DSpaceRESTv2Serializer(modelType) { + this.modelType = modelType; + } + /** + * Convert a model in to the format expected by the backend + * + * @param model The model to serialize + * @returns An object to send to the backend + */ + DSpaceRESTv2Serializer.prototype.serialize = function (model) { + return Serialize(model, this.modelType); + }; + /** + * Convert an array of models in to the format expected by the backend + * + * @param models The array of models to serialize + * @returns An object to send to the backend + */ + DSpaceRESTv2Serializer.prototype.serializeArray = function (models) { + return Serialize(models, this.modelType); + }; + /** + * Convert a response from the backend in to a model. + * + * @param response An object returned by the backend + * @returns a model of type T + */ + DSpaceRESTv2Serializer.prototype.deserialize = function (response) { + // TODO enable validation, once rest data stabilizes + // new DSpaceRESTv2Validator(response).validate(); + if (Array.isArray(response)) { + throw new Error('Expected a single model, use deserializeArray() instead'); + } + var normalized = Object.assign({}, response, this.normalizeLinks(response._links)); + return Deserialize(normalized, this.modelType); + }; + /** + * Convert a response from the backend in to an array of models + * + * @param response An object returned by the backend + * @returns an array of models of type T + */ + DSpaceRESTv2Serializer.prototype.deserializeArray = function (response) { + var _this = this; + // TODO: enable validation, once rest data stabilizes + // new DSpaceRESTv2Validator(response).validate(); + if (!Array.isArray(response)) { + throw new Error('Expected an Array, use deserialize() instead'); + } + var normalized = response.map(function (resource) { + return Object.assign({}, resource, _this.normalizeLinks(resource._links)); + }); + return Deserialize(normalized, this.modelType); + }; + DSpaceRESTv2Serializer.prototype.normalizeLinks = function (links) { + var normalizedLinks = links; + for (var link in normalizedLinks) { + if (Array.isArray(normalizedLinks[link])) { + normalizedLinks[link] = normalizedLinks[link].map(function (linkedResource) { + return linkedResource.href; + }); + } + else { + normalizedLinks[link] = normalizedLinks[link].href; + } + } + return normalizedLinks; + }; + return DSpaceRESTv2Serializer; +}()); +export { DSpaceRESTv2Serializer }; +//# sourceMappingURL=dspace-rest-v2.serializer.js.map \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js.map b/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js.map new file mode 100644 index 0000000000..5ac8f69a76 --- /dev/null +++ b/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-rest-v2.serializer.js","sourceRoot":"","sources":["dspace-rest-v2.serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAQnD;;;GAGG;AACH;IAEE;;;;;OAKG;IACH,gCAAoB,SAAgC;QAAhC,cAAS,GAAT,SAAS,CAAuB;IACpD,CAAC;IAED;;;;;OAKG;IACH,0CAAS,GAAT,UAAU,KAAQ;QAChB,OAAO,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACH,+CAAc,GAAd,UAAe,MAAW;QACxB,OAAO,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACH,4CAAW,GAAX,UAAY,QAAa;QACvB,oDAAoD;QACpD,kDAAkD;QAClD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;SAC5E;QACD,IAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACrF,OAAO,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAM,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACH,iDAAgB,GAAhB,UAAiB,QAAa;QAA9B,iBAWC;QAVC,qDAAqD;QACrD,kDAAkD;QAClD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;SACjE;QACD,IAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAC,QAAQ;YACvC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAQ,CAAC;IACxD,CAAC;IAEO,+CAAc,GAAtB,UAAuB,KAAU;QAC/B,IAAM,eAAe,GAAG,KAAK,CAAC;QAC9B,KAAK,IAAM,IAAI,IAAI,eAAe,EAAE;YAClC,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE;gBACxC,eAAe,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAC,cAAc;oBAC/D,OAAO,cAAc,CAAC,IAAI,CAAC;gBAC7B,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,eAAe,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;aACpD;SACF;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAEH,6BAAC;AAAD,CAAC,AAhFD,IAgFC"} \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js b/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js new file mode 100644 index 0000000000..25bf233668 --- /dev/null +++ b/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js @@ -0,0 +1,119 @@ +import * as tslib_1 from "tslib"; +import { throwError as observableThrowError } from 'rxjs'; +import { catchError, map } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { HttpClient, HttpHeaders } from '@angular/common/http'; +import { RestRequestMethod } from '../data/rest-request-method'; +import { hasNoValue, isNotEmpty } from '../../shared/empty.util'; +export var DEFAULT_CONTENT_TYPE = 'application/json; charset=utf-8'; +/** + * Service to access DSpace's REST API + */ +var DSpaceRESTv2Service = /** @class */ (function () { + function DSpaceRESTv2Service(http) { + this.http = http; + } + /** + * Performs a request to the REST API with the `get` http method. + * + * @param absoluteURL + * A URL + * @return {Observable} + * An Observable containing the response from the server + */ + DSpaceRESTv2Service.prototype.get = function (absoluteURL) { + var requestOptions = { + observe: 'response', + headers: new HttpHeaders({ 'Content-Type': DEFAULT_CONTENT_TYPE }) + }; + return this.http.get(absoluteURL, requestOptions).pipe(map(function (res) { return ({ + payload: res.body, + statusCode: res.status, + statusText: res.statusText + }); }), catchError(function (err) { + console.log('Error: ', err); + return observableThrowError({ + statusCode: err.status, + statusText: err.statusText, + message: err.message + }); + })); + }; + /** + * Performs a request to the REST API. + * + * @param method + * the HTTP method for the request + * @param url + * the URL for the request + * @param body + * an optional body for the request + * @param options + * the HttpOptions object + * @return {Observable} + * An Observable containing the response from the server + */ + DSpaceRESTv2Service.prototype.request = function (method, url, body, options) { + var requestOptions = {}; + requestOptions.body = body; + if (method === RestRequestMethod.POST && isNotEmpty(body) && isNotEmpty(body.name)) { + requestOptions.body = this.buildFormData(body); + } + requestOptions.observe = 'response'; + if (options && options.responseType) { + requestOptions.responseType = options.responseType; + } + if (hasNoValue(options) || hasNoValue(options.headers)) { + requestOptions.headers = new HttpHeaders(); + } + else { + requestOptions.headers = options.headers; + } + if (!requestOptions.headers.has('Content-Type')) { + // Because HttpHeaders is immutable, the set method returns a new object instead of updating the existing headers + requestOptions.headers = requestOptions.headers.set('Content-Type', DEFAULT_CONTENT_TYPE); + } + return this.http.request(method, url, requestOptions).pipe(map(function (res) { return ({ + payload: res.body, + headers: res.headers, + statusCode: res.status, + statusText: res.statusText + }); }), catchError(function (err) { + console.log('Error: ', err); + return observableThrowError({ + statusCode: err.status, + statusText: err.statusText, + message: err.message + }); + })); + }; + /** + * Create a FormData object from a DSpaceObject + * + * @param {DSpaceObject} dso + * the DSpaceObject + * @return {FormData} + * the result + */ + DSpaceRESTv2Service.prototype.buildFormData = function (dso) { + var form = new FormData(); + form.append('name', dso.name); + if (dso.metadata) { + for (var _i = 0, _a = Object.keys(dso.metadata); _i < _a.length; _i++) { + var key = _a[_i]; + for (var _b = 0, _c = dso.allMetadataValues(key); _b < _c.length; _b++) { + var value = _c[_b]; + form.append(key, value); + } + } + } + return form; + }; + DSpaceRESTv2Service = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [HttpClient]) + ], DSpaceRESTv2Service); + return DSpaceRESTv2Service; +}()); +export { DSpaceRESTv2Service }; +//# sourceMappingURL=dspace-rest-v2.service.js.map \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js.map b/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js.map new file mode 100644 index 0000000000..1fde65d783 --- /dev/null +++ b/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-rest-v2.service.js","sourceRoot":"","sources":["dspace-rest-v2.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js b/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js new file mode 100644 index 0000000000..eb65106443 --- /dev/null +++ b/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js @@ -0,0 +1,33 @@ +import { Validator } from 'jsonschema'; +import schema from './dspace-rest-v2.schema.json'; +/** + * Verifies a document is a valid response from + * a DSpace REST API v2 + */ +var DSpaceRESTv2Validator = /** @class */ (function () { + function DSpaceRESTv2Validator(document) { + this.document = document; + } + /** + * Throws an exception if this.document isn't a valid response from + * a DSpace REST API v2. Succeeds otherwise. + */ + DSpaceRESTv2Validator.prototype.validate = function () { + var validator = new Validator(); + var result = validator.validate(this.document, schema); + if (!result.valid) { + if (result.errors && result.errors.length > 0) { + var message = result.errors + .map(function (error) { return error.message; }) + .join('\n'); + throw new Error(message); + } + else { + throw new Error('JSON API validation failed for an unknown reason'); + } + } + }; + return DSpaceRESTv2Validator; +}()); +export { DSpaceRESTv2Validator }; +//# sourceMappingURL=dspace-rest-v2.validator.js.map \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js.map b/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js.map new file mode 100644 index 0000000000..166016e840 --- /dev/null +++ b/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-rest-v2.validator.js","sourceRoot":"","sources":["dspace-rest-v2.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,MAAM,MAAM,8BAA8B,CAAA;AAEjD;;;GAGG;AACH;IAEE,+BAAoB,QAAa;QAAb,aAAQ,GAAR,QAAQ,CAAK;IAEjC,CAAC;IAED;;;OAGG;IACH,wCAAQ,GAAR;QACE,IAAM,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;QAClC,IAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACjB,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7C,IAAM,OAAO,GAAG,MAAM,CAAC,MAAM;qBAC1B,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,OAAO,EAAb,CAAa,CAAC;qBAC7B,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;aAC1B;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACrE;SACF;IACH,CAAC;IAEH,4BAAC;AAAD,CAAC,AAzBD,IAyBC"} \ No newline at end of file diff --git a/src/app/core/eperson/eperson-response-parsing.service.js b/src/app/core/eperson/eperson-response-parsing.service.js new file mode 100644 index 0000000000..4faf3a3653 --- /dev/null +++ b/src/app/core/eperson/eperson-response-parsing.service.js @@ -0,0 +1,39 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { EpersonSuccessResponse, ErrorResponse } from '../cache/response.models'; +import { isNotEmpty } from '../../shared/empty.util'; +import { BaseResponseParsingService } from '../data/base-response-parsing.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; +/** + * Provides method to parse response from eperson endpoint. + */ +var EpersonResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(EpersonResponseParsingService, _super); + function EpersonResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = NormalizedObjectFactory; + _this.toCache = false; + return _this; + } + EpersonResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links)) { + var epersonDefinition = this.process(data.payload, request.href); + return new EpersonSuccessResponse(epersonDefinition[Object.keys(epersonDefinition)[0]], data.statusCode, data.statusText, this.processPageInfo(data.payload)); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from EPerson endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + EpersonResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], EpersonResponseParsingService); + return EpersonResponseParsingService; +}(BaseResponseParsingService)); +export { EpersonResponseParsingService }; +//# sourceMappingURL=eperson-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/eperson/eperson-response-parsing.service.js.map b/src/app/core/eperson/eperson-response-parsing.service.js.map new file mode 100644 index 0000000000..6d94558fdd --- /dev/null +++ b/src/app/core/eperson/eperson-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"eperson-response-parsing.service.js","sourceRoot":"","sources":["eperson-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKnD,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAIpF;;GAEG;AAEH;IAAmD,yDAA0B;IAK3E,uCACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAIE,iBAAO,SACR;QAJkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QALjC,mBAAa,GAAG,uBAAuB,CAAC;QACxC,aAAO,GAAG,KAAK,CAAC;;IAO1B,CAAC;IAED,6CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC/D,IAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAA4B,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9F,OAAO,IAAI,sBAAsB,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAC/J;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,2CAA2C,CAAC,EACtD,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAC,CAC3D,CACF,CAAC;SACH;IACH,CAAC;IAxBU,6BAA6B;QADzC,UAAU,EAAE;QAOR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAPhC,6BAA6B,CA0BzC;IAAD,oCAAC;CAAA,AA1BD,CAAmD,0BAA0B,GA0B5E;SA1BY,6BAA6B"} \ No newline at end of file diff --git a/src/app/core/eperson/eperson.service.js b/src/app/core/eperson/eperson.service.js new file mode 100644 index 0000000000..f86942dca1 --- /dev/null +++ b/src/app/core/eperson/eperson.service.js @@ -0,0 +1,17 @@ +import * as tslib_1 from "tslib"; +import { DataService } from '../data/data.service'; +/** + * An abstract class that provides methods to make HTTP request to eperson endpoint. + */ +var EpersonService = /** @class */ (function (_super) { + tslib_1.__extends(EpersonService, _super); + function EpersonService() { + return _super !== null && _super.apply(this, arguments) || this; + } + EpersonService.prototype.getBrowseEndpoint = function (options) { + return this.halService.getEndpoint(this.linkPath); + }; + return EpersonService; +}(DataService)); +export { EpersonService }; +//# sourceMappingURL=eperson.service.js.map \ No newline at end of file diff --git a/src/app/core/eperson/eperson.service.js.map b/src/app/core/eperson/eperson.service.js.map new file mode 100644 index 0000000000..b75835c759 --- /dev/null +++ b/src/app/core/eperson/eperson.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"eperson.service.js","sourceRoot":"","sources":["eperson.service.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD;;GAEG;AACH;IAA8E,0CAAoB;IAAlG;;IAKA,CAAC;IAHQ,0CAAiB,GAAxB,UAAyB,OAAuB;QAC9C,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IACH,qBAAC;AAAD,CAAC,AALD,CAA8E,WAAW,GAKxF"} \ No newline at end of file diff --git a/src/app/core/eperson/group-eperson.service.js b/src/app/core/eperson/group-eperson.service.js new file mode 100644 index 0000000000..91c385c3c7 --- /dev/null +++ b/src/app/core/eperson/group-eperson.service.js @@ -0,0 +1,66 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { Store } from '@ngrx/store'; +import { filter, map, take } from 'rxjs/operators'; +import { EpersonService } from './eperson.service'; +import { RequestService } from '../data/request.service'; +import { FindAllOptions } from '../data/request.models'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { SearchParam } from '../cache/models/search-param.model'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; +/** + * Provides methods to retrieve eperson group resources. + */ +var GroupEpersonService = /** @class */ (function (_super) { + tslib_1.__extends(GroupEpersonService, _super); + function GroupEpersonService(comparator, dataBuildService, http, notificationsService, requestService, rdbService, store, objectCache, halService) { + var _this = _super.call(this) || this; + _this.comparator = comparator; + _this.dataBuildService = dataBuildService; + _this.http = http; + _this.notificationsService = notificationsService; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.store = store; + _this.objectCache = objectCache; + _this.halService = halService; + _this.linkPath = 'groups'; + _this.browseEndpoint = ''; + _this.forceBypassCache = false; + return _this; + } + /** + * Check if the current user is member of to the indicated group + * + * @param groupName + * the group name + * @return boolean + * true if user is member of the indicated group, false otherwise + */ + GroupEpersonService.prototype.isMemberOf = function (groupName) { + var searchHref = 'isMemberOf'; + var options = new FindAllOptions(); + options.searchParams = [new SearchParam('groupName', groupName)]; + return this.searchBy(searchHref, options).pipe(filter(function (groups) { return !groups.isResponsePending; }), take(1), map(function (groups) { return groups.payload.totalElements > 0; })); + }; + GroupEpersonService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSOChangeAnalyzer, + NormalizedObjectBuildService, + HttpClient, + NotificationsService, + RequestService, + RemoteDataBuildService, + Store, + ObjectCacheService, + HALEndpointService]) + ], GroupEpersonService); + return GroupEpersonService; +}(EpersonService)); +export { GroupEpersonService }; +//# sourceMappingURL=group-eperson.service.js.map \ No newline at end of file diff --git a/src/app/core/eperson/group-eperson.service.js.map b/src/app/core/eperson/group-eperson.service.js.map new file mode 100644 index 0000000000..d2562e0c9b --- /dev/null +++ b/src/app/core/eperson/group-eperson.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"group-eperson.service.js","sourceRoot":"","sources":["group-eperson.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAGjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE;;GAEG;AAEH;IAAyC,+CAAqB;IAK5D,6BACY,UAAoC,EACpC,gBAA8C,EAC9C,IAAgB,EAChB,oBAA0C,EAC1C,cAA8B,EAC9B,UAAkC,EAClC,KAAuB,EACvB,WAA+B,EAC/B,UAA8B;QAT1C,YAWE,iBAAO,SACR;QAXW,gBAAU,GAAV,UAAU,CAA0B;QACpC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,UAAI,GAAJ,IAAI,CAAY;QAChB,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,WAAK,GAAL,KAAK,CAAkB;QACvB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAbhC,cAAQ,GAAG,QAAQ,CAAC;QACpB,oBAAc,GAAG,EAAE,CAAC;QACpB,sBAAgB,GAAG,KAAK,CAAC;;IAcnC,CAAC;IAED;;;;;;;OAOG;IACH,wCAAU,GAAV,UAAW,SAAiB;QAC1B,IAAM,UAAU,GAAG,YAAY,CAAC;QAChC,IAAM,OAAO,GAAG,IAAI,cAAc,EAAE,CAAC;QACrC,OAAO,CAAC,YAAY,GAAG,CAAC,IAAI,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAC1C,MAAM,CAAC,UAAC,MAAwC,IAAK,OAAA,CAAC,MAAM,CAAC,iBAAiB,EAAzB,CAAyB,CAAC,EAC/E,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,MAAwC,IAAK,OAAA,MAAM,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,EAAhC,CAAgC,CAAC,CACpF,CAAC;IACN,CAAC;IArCU,mBAAmB;QAD/B,UAAU,EAAE;iDAOa,iBAAiB;YACX,4BAA4B;YACxC,UAAU;YACM,oBAAoB;YAC1B,cAAc;YAClB,sBAAsB;YAC3B,KAAK;YACC,kBAAkB;YACnB,kBAAkB;OAd/B,mBAAmB,CAuC/B;IAAD,0BAAC;CAAA,AAvCD,CAAyC,cAAc,GAuCtD;SAvCY,mBAAmB"} \ No newline at end of file diff --git a/src/app/core/eperson/models/eperson.model.js b/src/app/core/eperson/models/eperson.model.js new file mode 100644 index 0000000000..c56b5b2a59 --- /dev/null +++ b/src/app/core/eperson/models/eperson.model.js @@ -0,0 +1,21 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from '../../shared/dspace-object.model'; +var EPerson = /** @class */ (function (_super) { + tslib_1.__extends(EPerson, _super); + function EPerson() { + return _super !== null && _super.apply(this, arguments) || this; + } + Object.defineProperty(EPerson.prototype, "name", { + /** + * Getter to retrieve the EPerson's full name as a string + */ + get: function () { + return this.firstMetadataValue('eperson.firstname') + ' ' + this.firstMetadataValue('eperson.lastname'); + }, + enumerable: true, + configurable: true + }); + return EPerson; +}(DSpaceObject)); +export { EPerson }; +//# sourceMappingURL=eperson.model.js.map \ No newline at end of file diff --git a/src/app/core/eperson/models/eperson.model.js.map b/src/app/core/eperson/models/eperson.model.js.map new file mode 100644 index 0000000000..8dce2e3826 --- /dev/null +++ b/src/app/core/eperson/models/eperson.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"eperson.model.js","sourceRoot":"","sources":["eperson.model.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKhE;IAA6B,mCAAY;IAAzC;;IAgDA,CAAC;IAHC,sBAAI,yBAAI;QAHR;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;QAC1G,CAAC;;;OAAA;IACH,cAAC;AAAD,CAAC,AAhDD,CAA6B,YAAY,GAgDxC"} \ No newline at end of file diff --git a/src/app/core/eperson/models/group.model.js b/src/app/core/eperson/models/group.model.js new file mode 100644 index 0000000000..7dd837c499 --- /dev/null +++ b/src/app/core/eperson/models/group.model.js @@ -0,0 +1,11 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from '../../shared/dspace-object.model'; +var Group = /** @class */ (function (_super) { + tslib_1.__extends(Group, _super); + function Group() { + return _super !== null && _super.apply(this, arguments) || this; + } + return Group; +}(DSpaceObject)); +export { Group }; +//# sourceMappingURL=group.model.js.map \ No newline at end of file diff --git a/src/app/core/eperson/models/group.model.js.map b/src/app/core/eperson/models/group.model.js.map new file mode 100644 index 0000000000..e071c78c31 --- /dev/null +++ b/src/app/core/eperson/models/group.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"group.model.js","sourceRoot":"","sources":["group.model.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAIhE;IAA2B,iCAAY;IAAvC;;IAqBA,CAAC;IAAD,YAAC;AAAD,CAAC,AArBD,CAA2B,YAAY,GAqBtC"} \ No newline at end of file diff --git a/src/app/core/eperson/models/normalized-eperson.model.js b/src/app/core/eperson/models/normalized-eperson.model.js new file mode 100644 index 0000000000..c724f1799b --- /dev/null +++ b/src/app/core/eperson/models/normalized-eperson.model.js @@ -0,0 +1,52 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, deserialize, inheritSerialization } from 'cerialize'; +import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; +import { EPerson } from './eperson.model'; +import { mapsTo, relationship } from '../../cache/builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +var NormalizedEPerson = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedEPerson, _super); + function NormalizedEPerson() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedEPerson.prototype, "handle", void 0); + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Group, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedEPerson.prototype, "groups", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedEPerson.prototype, "netid", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedEPerson.prototype, "lastActive", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedEPerson.prototype, "canLogIn", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedEPerson.prototype, "email", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedEPerson.prototype, "requireCertificate", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedEPerson.prototype, "selfRegistered", void 0); + NormalizedEPerson = tslib_1.__decorate([ + mapsTo(EPerson), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedEPerson); + return NormalizedEPerson; +}(NormalizedDSpaceObject)); +export { NormalizedEPerson }; +//# sourceMappingURL=normalized-eperson.model.js.map \ No newline at end of file diff --git a/src/app/core/eperson/models/normalized-eperson.model.js.map b/src/app/core/eperson/models/normalized-eperson.model.js.map new file mode 100644 index 0000000000..31dec3fe76 --- /dev/null +++ b/src/app/core/eperson/models/normalized-eperson.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-eperson.model.js","sourceRoot":"","sources":["normalized-eperson.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAI7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI1D;IAAuC,6CAA+B;IAAtE;;IAkDA,CAAC;IA5CC;QADC,aAAa;;qDACQ;IAOtB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC;;qDACtB;IAMjB;QADC,aAAa;;oDACO;IAMrB;QADC,aAAa;;yDACY;IAM1B;QADC,aAAa;;uDACW;IAMzB;QADC,aAAa;;oDACO;IAMrB;QADC,aAAa;;iEACqB;IAMnC;QADC,aAAa;;6DACiB;IAjDpB,iBAAiB;QAF7B,MAAM,CAAC,OAAO,CAAC;QACf,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,iBAAiB,CAkD7B;IAAD,wBAAC;CAAA,AAlDD,CAAuC,sBAAsB,GAkD5D;SAlDY,iBAAiB"} \ No newline at end of file diff --git a/src/app/core/eperson/models/normalized-group.model.js b/src/app/core/eperson/models/normalized-group.model.js new file mode 100644 index 0000000000..ea036db7d6 --- /dev/null +++ b/src/app/core/eperson/models/normalized-group.model.js @@ -0,0 +1,36 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, deserialize, inheritSerialization } from 'cerialize'; +import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; +import { mapsTo, relationship } from '../../cache/builders/build-decorators'; +import { Group } from './group.model'; +import { ResourceType } from '../../shared/resource-type'; +var NormalizedGroup = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedGroup, _super); + function NormalizedGroup() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + deserialize, + relationship(ResourceType.Group, true), + tslib_1.__metadata("design:type", Array) + ], NormalizedGroup.prototype, "groups", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedGroup.prototype, "handle", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedGroup.prototype, "name", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], NormalizedGroup.prototype, "permanent", void 0); + NormalizedGroup = tslib_1.__decorate([ + mapsTo(Group), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedGroup); + return NormalizedGroup; +}(NormalizedDSpaceObject)); +export { NormalizedGroup }; +//# sourceMappingURL=normalized-group.model.js.map \ No newline at end of file diff --git a/src/app/core/eperson/models/normalized-group.model.js.map b/src/app/core/eperson/models/normalized-group.model.js.map new file mode 100644 index 0000000000..24d8f02f8b --- /dev/null +++ b/src/app/core/eperson/models/normalized-group.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-group.model.js","sourceRoot":"","sources":["normalized-group.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAI7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI1D;IAAqC,2CAA6B;IAAlE;;IA0BA,CAAC;IAnBC;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC;;mDACtB;IAMjB;QADC,aAAa;;mDACQ;IAMtB;QADC,aAAa;;iDACM;IAMpB;QADC,aAAa;;sDACY;IAzBf,eAAe;QAF3B,MAAM,CAAC,KAAK,CAAC;QACb,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,eAAe,CA0B3B;IAAD,sBAAC;CAAA,AA1BD,CAAqC,sBAAsB,GA0B1D;SA1BY,eAAe"} \ No newline at end of file diff --git a/src/app/core/index/index.actions.js b/src/app/core/index/index.actions.js new file mode 100644 index 0000000000..0b7703e1aa --- /dev/null +++ b/src/app/core/index/index.actions.js @@ -0,0 +1,70 @@ +import { type } from '../../shared/ngrx/type'; +/** + * The list of HrefIndexAction type definitions + */ +export var IndexActionTypes = { + ADD: type('dspace/core/index/ADD'), + REMOVE_BY_VALUE: type('dspace/core/index/REMOVE_BY_VALUE'), + REMOVE_BY_SUBSTRING: type('dspace/core/index/REMOVE_BY_SUBSTRING') +}; +/* tslint:disable:max-classes-per-file */ +/** + * An ngrx action to add an value to the index + */ +var AddToIndexAction = /** @class */ (function () { + /** + * Create a new AddToIndexAction + * + * @param name + * the name of the index to add to + * @param key + * the key to add + * @param value + * the self link of the resource the key belongs to + */ + function AddToIndexAction(name, key, value) { + this.type = IndexActionTypes.ADD; + this.payload = { name: name, key: key, value: value }; + } + return AddToIndexAction; +}()); +export { AddToIndexAction }; +/** + * An ngrx action to remove an value from the index + */ +var RemoveFromIndexByValueAction = /** @class */ (function () { + /** + * Create a new RemoveFromIndexByValueAction + * + * @param name + * the name of the index to remove from + * @param value + * the value to remove the UUID for + */ + function RemoveFromIndexByValueAction(name, value) { + this.type = IndexActionTypes.REMOVE_BY_VALUE; + this.payload = { name: name, value: value }; + } + return RemoveFromIndexByValueAction; +}()); +export { RemoveFromIndexByValueAction }; +/** + * An ngrx action to remove multiple values from the index by substring + */ +var RemoveFromIndexBySubstringAction = /** @class */ (function () { + /** + * Create a new RemoveFromIndexByValueAction + * + * @param name + * the name of the index to remove from + * @param value + * the value to remove the UUID for + */ + function RemoveFromIndexBySubstringAction(name, value) { + this.type = IndexActionTypes.REMOVE_BY_SUBSTRING; + this.payload = { name: name, value: value }; + } + return RemoveFromIndexBySubstringAction; +}()); +export { RemoveFromIndexBySubstringAction }; +//# sourceMappingURL=index.actions.js.map \ No newline at end of file diff --git a/src/app/core/index/index.actions.js.map b/src/app/core/index/index.actions.js.map new file mode 100644 index 0000000000..4070744397 --- /dev/null +++ b/src/app/core/index/index.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.actions.js","sourceRoot":"","sources":["index.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C;;GAEG;AACH,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC9B,GAAG,EAAE,IAAI,CAAC,uBAAuB,CAAC;IAClC,eAAe,EAAE,IAAI,CAAC,mCAAmC,CAAC;IAC1D,mBAAmB,EAAE,IAAI,CAAC,uCAAuC,CAAC;CACnE,CAAC;AAEF,yCAAyC;AACzC;;GAEG;AACH;IAQE;;;;;;;;;OASG;IACH,0BAAY,IAAe,EAAE,GAAW,EAAE,KAAa;QAjBvD,SAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC;QAkB1B,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,GAAG,KAAA,EAAE,KAAK,OAAA,EAAE,CAAC;IACtC,CAAC;IACH,uBAAC;AAAD,CAAC,AArBD,IAqBC;;AAED;;GAEG;AACH;IAOE;;;;;;;OAOG;IACH,sCAAY,IAAe,EAAE,KAAa;QAd1C,SAAI,GAAG,gBAAgB,CAAC,eAAe,CAAC;QAetC,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,KAAK,OAAA,EAAE,CAAC;IACjC,CAAC;IAEH,mCAAC;AAAD,CAAC,AAnBD,IAmBC;;AAED;;GAEG;AACH;IAOE;;;;;;;OAOG;IACH,0CAAY,IAAe,EAAE,KAAa;QAd1C,SAAI,GAAG,gBAAgB,CAAC,mBAAmB,CAAC;QAe1C,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,KAAK,OAAA,EAAE,CAAC;IACjC,CAAC;IAEH,uCAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file diff --git a/src/app/core/index/index.effects.js b/src/app/core/index/index.effects.js new file mode 100644 index 0000000000..173ac8b894 --- /dev/null +++ b/src/app/core/index/index.effects.js @@ -0,0 +1,46 @@ +import * as tslib_1 from "tslib"; +import { filter, map } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { Actions, Effect, ofType } from '@ngrx/effects'; +import { ObjectCacheActionTypes } from '../cache/object-cache.actions'; +import { RequestActionTypes } from '../data/request.actions'; +import { AddToIndexAction, RemoveFromIndexByValueAction } from './index.actions'; +import { hasValue } from '../../shared/empty.util'; +import { IndexName } from './index.reducer'; +import { RestRequestMethod } from '../data/rest-request-method'; +var UUIDIndexEffects = /** @class */ (function () { + function UUIDIndexEffects(actions$) { + this.actions$ = actions$; + this.addObject$ = this.actions$ + .pipe(ofType(ObjectCacheActionTypes.ADD), filter(function (action) { return hasValue(action.payload.objectToCache.uuid); }), map(function (action) { + return new AddToIndexAction(IndexName.OBJECT, action.payload.objectToCache.uuid, action.payload.objectToCache.self); + })); + this.removeObject$ = this.actions$ + .pipe(ofType(ObjectCacheActionTypes.REMOVE), map(function (action) { + return new RemoveFromIndexByValueAction(IndexName.OBJECT, action.payload); + })); + this.addRequest$ = this.actions$ + .pipe(ofType(RequestActionTypes.CONFIGURE), filter(function (action) { return action.payload.method === RestRequestMethod.GET; }), map(function (action) { + return new AddToIndexAction(IndexName.REQUEST, action.payload.href, action.payload.uuid); + })); + } + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], UUIDIndexEffects.prototype, "addObject$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], UUIDIndexEffects.prototype, "removeObject$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], UUIDIndexEffects.prototype, "addRequest$", void 0); + UUIDIndexEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions]) + ], UUIDIndexEffects); + return UUIDIndexEffects; +}()); +export { UUIDIndexEffects }; +//# sourceMappingURL=index.effects.js.map \ No newline at end of file diff --git a/src/app/core/index/index.effects.js.map b/src/app/core/index/index.effects.js.map new file mode 100644 index 0000000000..70f86b7e51 --- /dev/null +++ b/src/app/core/index/index.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.effects.js","sourceRoot":"","sources":["index.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,EAEL,sBAAsB,EAEvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAA0B,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE;IAuCE,0BAAoB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;QArC3B,eAAU,GAAG,IAAI,CAAC,QAAQ;aACjC,IAAI,CACH,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAClC,MAAM,CAAC,UAAC,MAA8B,IAAK,OAAA,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,EACvF,GAAG,CAAC,UAAC,MAA8B;YACjC,OAAO,IAAI,gBAAgB,CACzB,SAAS,CAAC,MAAM,EAChB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EACjC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAClC,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAEM,kBAAa,GAAG,IAAI,CAAC,QAAQ;aACpC,IAAI,CACH,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,EACrC,GAAG,CAAC,UAAC,MAAmC;YACtC,OAAO,IAAI,4BAA4B,CACrC,SAAS,CAAC,MAAM,EAChB,MAAM,CAAC,OAAO,CACf,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAEM,gBAAW,GAAG,IAAI,CAAC,QAAQ;aAClC,IAAI,CACH,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,EACpC,MAAM,CAAC,UAAC,MAA8B,IAAK,OAAA,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,iBAAiB,CAAC,GAAG,EAA/C,CAA+C,CAAC,EAC3F,GAAG,CAAC,UAAC,MAA8B;YACjC,OAAO,IAAI,gBAAgB,CACzB,SAAS,CAAC,OAAO,EACjB,MAAM,CAAC,OAAO,CAAC,IAAI,EACnB,MAAM,CAAC,OAAO,CAAC,IAAI,CACpB,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IAIJ,CAAC;IAvCS;QAAT,MAAM,EAAE;;wDAWL;IAEM;QAAT,MAAM,EAAE;;2DASL;IAEM;QAAT,MAAM,EAAE;;yDAWL;IArCO,gBAAgB;QAD5B,UAAU,EAAE;iDAwCmB,OAAO;OAvC1B,gBAAgB,CA2C5B;IAAD,uBAAC;CAAA,AA3CD,IA2CC;SA3CY,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/index/index.reducer.js b/src/app/core/index/index.reducer.js new file mode 100644 index 0000000000..aea43da7ad --- /dev/null +++ b/src/app/core/index/index.reducer.js @@ -0,0 +1,114 @@ +import { IndexActionTypes } from './index.actions'; +/** + * An enum containing all index names + */ +export var IndexName; +(function (IndexName) { + // Contains all objects in the object cache indexed by UUID + IndexName["OBJECT"] = "object/uuid-to-self-link"; + // contains all requests in the request cache indexed by UUID + IndexName["REQUEST"] = "get-request/href-to-uuid"; + /** + * Contains the UUIDs of requests that were sent to the server and + * have their responses cached, indexed by the UUIDs of requests that + * weren't sent because the response they requested was already cached + */ + IndexName["UUID_MAPPING"] = "get-request/configured-to-cache-uuid"; +})(IndexName || (IndexName = {})); +// Object.create(null) ensures the object has no default js properties (e.g. `__proto__`) +var initialState = Object.create(null); +/** + * The Index Reducer + * + * @param state + * the current state + * @param action + * the action to perform on the state + * @return MetaIndexState + * the new state + */ +export function indexReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case IndexActionTypes.ADD: { + return addToIndex(state, action); + } + case IndexActionTypes.REMOVE_BY_VALUE: { + return removeFromIndexByValue(state, action); + } + case IndexActionTypes.REMOVE_BY_SUBSTRING: { + return removeFromIndexBySubstring(state, action); + } + default: { + return state; + } + } +} +/** + * Add an entry to a given index + * + * @param state + * The MetaIndexState that contains all indices + * @param action + * The AddToIndexAction containing the value to add, and the index to add it to + * @return MetaIndexState + * the new state + */ +function addToIndex(state, action) { + var _a, _b; + var subState = state[action.payload.name]; + var newSubState = Object.assign({}, subState, (_a = {}, + _a[action.payload.key] = action.payload.value, + _a)); + var obs = Object.assign({}, state, (_b = {}, + _b[action.payload.name] = newSubState, + _b)); + return obs; +} +/** + * Remove a entries that contain a given value from a given index + * + * @param state + * The MetaIndexState that contains all indices + * @param action + * The RemoveFromIndexByValueAction containing the value to remove, and the index to remove it from + * @return MetaIndexState + * the new state + */ +function removeFromIndexByValue(state, action) { + var _a; + var subState = state[action.payload.name]; + var newSubState = Object.create(null); + for (var value in subState) { + if (subState[value] !== action.payload.value) { + newSubState[value] = subState[value]; + } + } + return Object.assign({}, state, (_a = {}, + _a[action.payload.name] = newSubState, + _a)); +} +/** + * Remove entries that contain a given substring from a given index + * + * @param state + * The MetaIndexState that contains all indices + * @param action + * The RemoveFromIndexByValueAction the substring to remove, and the index to remove it from + * @return MetaIndexState + * the new state + */ +function removeFromIndexBySubstring(state, action) { + var _a; + var subState = state[action.payload.name]; + var newSubState = Object.create(null); + for (var value in subState) { + if (value.indexOf(action.payload.value) < 0) { + newSubState[value] = subState[value]; + } + } + return Object.assign({}, state, (_a = {}, + _a[action.payload.name] = newSubState, + _a)); +} +//# sourceMappingURL=index.reducer.js.map \ No newline at end of file diff --git a/src/app/core/index/index.reducer.js.map b/src/app/core/index/index.reducer.js.map new file mode 100644 index 0000000000..b50fd34806 --- /dev/null +++ b/src/app/core/index/index.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.reducer.js","sourceRoot":"","sources":["index.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,gBAAgB,EAGjB,MAAM,iBAAiB,CAAC;AAEzB;;GAEG;AACH,MAAM,CAAN,IAAY,SAaX;AAbD,WAAY,SAAS;IACnB,2DAA2D;IAC3D,gDAAmC,CAAA;IAEnC,6DAA6D;IAC7D,iDAAoC,CAAA;IAEpC;;;;OAIG;IACH,kEAAqD,CAAA;AACvD,CAAC,EAbW,SAAS,KAAT,SAAS,QAapB;AAgBD,yFAAyF;AACzF,IAAM,YAAY,GAAmB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAEzD;;;;;;;;;GASG;AACH,MAAM,uBAAuB,KAAoB,EAAE,MAAmB;IAAzC,sBAAA,EAAA,oBAAoB;IAC/C,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACzB,OAAO,UAAU,CAAC,KAAK,EAAE,MAA0B,CAAC,CAAC;SACtD;QAED,KAAK,gBAAgB,CAAC,eAAe,CAAC,CAAC;YACrC,OAAO,sBAAsB,CAAC,KAAK,EAAE,MAAsC,CAAC,CAAA;SAC7E;QAED,KAAK,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;YACzC,OAAO,0BAA0B,CAAC,KAAK,EAAE,MAA0C,CAAC,CAAA;SACrF;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,oBAAoB,KAAqB,EAAE,MAAwB;;IACjE,IAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ;QAC5C,GAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAG,MAAM,CAAC,OAAO,CAAC,KAAK;YAC1C,CAAC;IACH,IAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;QACjC,GAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAG,WAAW;YAClC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;GASG;AACH,gCAAgC,KAAqB,EAAE,MAAoC;;IACzF,IAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,IAAM,KAAK,IAAI,QAAQ,EAAE;QAC5B,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;YAC5C,WAAW,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;SACtC;KACF;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;QAC5B,GAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAG,WAAW;YAClC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,oCAAoC,KAAqB,EAAE,MAAoC;;IAC7F,IAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,IAAM,KAAK,IAAI,QAAQ,EAAE;QAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YAC3C,WAAW,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;SACtC;KACF;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;QAC5B,GAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAG,WAAW;YAClC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/core/index/index.selectors.js b/src/app/core/index/index.selectors.js new file mode 100644 index 0000000000..d06a8983ba --- /dev/null +++ b/src/app/core/index/index.selectors.js @@ -0,0 +1,62 @@ +import { createSelector } from '@ngrx/store'; +import { hasValue } from '../../shared/empty.util'; +import { coreSelector } from '../core.selectors'; +import { IndexName } from './index.reducer'; +/** + * Return the MetaIndexState based on the CoreSate + * + * @returns + * a MemoizedSelector to select the MetaIndexState + */ +export var metaIndexSelector = createSelector(coreSelector, function (state) { return state.index; }); +/** + * Return the object index based on the MetaIndexState + * It contains all objects in the object cache indexed by UUID + * + * @returns + * a MemoizedSelector to select the object index + */ +export var objectIndexSelector = createSelector(metaIndexSelector, function (state) { return state[IndexName.OBJECT]; }); +/** + * Return the request index based on the MetaIndexState + * + * @returns + * a MemoizedSelector to select the request index + */ +export var requestIndexSelector = createSelector(metaIndexSelector, function (state) { return state[IndexName.REQUEST]; }); +/** + * Return the request UUID mapping index based on the MetaIndexState + * + * @returns + * a MemoizedSelector to select the request UUID mapping + */ +export var requestUUIDIndexSelector = createSelector(metaIndexSelector, function (state) { return state[IndexName.UUID_MAPPING]; }); +/** + * Return the self link of an object in the object-cache based on its UUID + * + * @param uuid + * the UUID for which you want to find the matching self link + * @returns + * a MemoizedSelector to select the self link + */ +export var selfLinkFromUuidSelector = function (uuid) { return createSelector(objectIndexSelector, function (state) { return hasValue(state) ? state[uuid] : undefined; }); }; +/** + * Return the UUID of a GET request based on its href + * + * @param href + * the href of the GET request + * @returns + * a MemoizedSelector to select the UUID + */ +export var uuidFromHrefSelector = function (href) { return createSelector(requestIndexSelector, function (state) { return hasValue(state) ? state[href] : undefined; }); }; +/** + * Return the UUID of a cached request based on the UUID of a request + * that wasn't sent because the response was already cached + * + * @param uuid + * The UUID of the new request + * @returns + * a MemoizedSelector to select the UUID of the cached request + */ +export var originalRequestUUIDFromRequestUUIDSelector = function (uuid) { return createSelector(requestUUIDIndexSelector, function (state) { return hasValue(state) ? state[uuid] : undefined; }); }; +//# sourceMappingURL=index.selectors.js.map \ No newline at end of file diff --git a/src/app/core/index/index.selectors.js.map b/src/app/core/index/index.selectors.js.map new file mode 100644 index 0000000000..0807f45f9a --- /dev/null +++ b/src/app/core/index/index.selectors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.selectors.js","sourceRoot":"","sources":["index.selectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAoB,MAAM,aAAa,CAAC;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAA8B,MAAM,iBAAiB,CAAC;AAExE;;;;;GAKG;AACH,MAAM,CAAC,IAAM,iBAAiB,GAA+C,cAAc,CACzF,YAAY,EACZ,UAAC,KAAgB,IAAK,OAAA,KAAK,CAAC,KAAK,EAAX,CAAW,CAClC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,mBAAmB,GAA2C,cAAc,CACvF,iBAAiB,EACjB,UAAC,KAAqB,IAAK,OAAA,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAvB,CAAuB,CACnD,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,IAAM,oBAAoB,GAA2C,cAAc,CACxF,iBAAiB,EACjB,UAAC,KAAqB,IAAK,OAAA,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,EAAxB,CAAwB,CACpD,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,IAAM,wBAAwB,GAA2C,cAAc,CAC5F,iBAAiB,EACjB,UAAC,KAAqB,IAAK,OAAA,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,EAA7B,CAA6B,CACzD,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,wBAAwB,GACnC,UAAC,IAAY,IAAyC,OAAA,cAAc,CAClE,mBAAmB,EACnB,UAAC,KAAiB,IAAK,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAzC,CAAyC,CACjE,EAHqD,CAGrD,CAAC;AAEJ;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,oBAAoB,GAC/B,UAAC,IAAY,IAAyC,OAAA,cAAc,CAClE,oBAAoB,EACpB,UAAC,KAAiB,IAAK,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAzC,CAAyC,CACjE,EAHqD,CAGrD,CAAC;AAEJ;;;;;;;;GAQG;AACH,MAAM,CAAC,IAAM,0CAA0C,GACrD,UAAC,IAAY,IAAyC,OAAA,cAAc,CAClE,wBAAwB,EACxB,UAAC,KAAiB,IAAK,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAzC,CAAyC,CACjE,EAHqD,CAGrD,CAAC"} \ No newline at end of file diff --git a/src/app/core/integration/authority.service.js b/src/app/core/integration/authority.service.js new file mode 100644 index 0000000000..86b2860f0b --- /dev/null +++ b/src/app/core/integration/authority.service.js @@ -0,0 +1,28 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { RequestService } from '../data/request.service'; +import { IntegrationService } from './integration.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +var AuthorityService = /** @class */ (function (_super) { + tslib_1.__extends(AuthorityService, _super); + function AuthorityService(requestService, rdbService, halService) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.halService = halService; + _this.linkPath = 'authorities'; + _this.entriesEndpoint = 'entries'; + _this.entryValueEndpoint = 'entryValues'; + return _this; + } + AuthorityService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + HALEndpointService]) + ], AuthorityService); + return AuthorityService; +}(IntegrationService)); +export { AuthorityService }; +//# sourceMappingURL=authority.service.js.map \ No newline at end of file diff --git a/src/app/core/integration/authority.service.js.map b/src/app/core/integration/authority.service.js.map new file mode 100644 index 0000000000..c959e97d98 --- /dev/null +++ b/src/app/core/integration/authority.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"authority.service.js","sourceRoot":"","sources":["authority.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAGrF;IAAsC,4CAAkB;IAKtD,0BACY,cAA8B,EAC9B,UAAkC,EAClC,UAA8B;QAH1C,YAIE,iBAAO,SACR;QAJW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,gBAAU,GAAV,UAAU,CAAoB;QAPhC,cAAQ,GAAG,aAAa,CAAC;QACzB,qBAAe,GAAG,SAAS,CAAC;QAC5B,wBAAkB,GAAG,aAAa,CAAC;;IAO7C,CAAC;IAVU,gBAAgB;QAD5B,UAAU,EAAE;iDAOiB,cAAc;YAClB,sBAAsB;YACtB,kBAAkB;OAR/B,gBAAgB,CAY5B;IAAD,uBAAC;CAAA,AAZD,CAAsC,kBAAkB,GAYvD;SAZY,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/integration/integration-data.js b/src/app/core/integration/integration-data.js new file mode 100644 index 0000000000..a7fdf46cc1 --- /dev/null +++ b/src/app/core/integration/integration-data.js @@ -0,0 +1,12 @@ +/** + * A class to represent the data retrieved by an Integration service + */ +var IntegrationData = /** @class */ (function () { + function IntegrationData(pageInfo, payload) { + this.pageInfo = pageInfo; + this.payload = payload; + } + return IntegrationData; +}()); +export { IntegrationData }; +//# sourceMappingURL=integration-data.js.map \ No newline at end of file diff --git a/src/app/core/integration/integration-data.js.map b/src/app/core/integration/integration-data.js.map new file mode 100644 index 0000000000..5df64ce068 --- /dev/null +++ b/src/app/core/integration/integration-data.js.map @@ -0,0 +1 @@ +{"version":3,"file":"integration-data.js","sourceRoot":"","sources":["integration-data.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH;IACE,yBACS,QAAkB,EAClB,OAA2B;QAD3B,aAAQ,GAAR,QAAQ,CAAU;QAClB,YAAO,GAAP,OAAO,CAAoB;IAChC,CAAC;IACP,sBAAC;AAAD,CAAC,AALD,IAKC"} \ No newline at end of file diff --git a/src/app/core/integration/integration-object-factory.js b/src/app/core/integration/integration-object-factory.js new file mode 100644 index 0000000000..defd3b08d0 --- /dev/null +++ b/src/app/core/integration/integration-object-factory.js @@ -0,0 +1,19 @@ +import { IntegrationType } from './intergration-type'; +import { NormalizedAuthorityValue } from './models/normalized-authority-value.model'; +var IntegrationObjectFactory = /** @class */ (function () { + function IntegrationObjectFactory() { + } + IntegrationObjectFactory.getConstructor = function (type) { + switch (type) { + case IntegrationType.Authority: { + return NormalizedAuthorityValue; + } + default: { + return undefined; + } + } + }; + return IntegrationObjectFactory; +}()); +export { IntegrationObjectFactory }; +//# sourceMappingURL=integration-object-factory.js.map \ No newline at end of file diff --git a/src/app/core/integration/integration-object-factory.js.map b/src/app/core/integration/integration-object-factory.js.map new file mode 100644 index 0000000000..b86b4a3703 --- /dev/null +++ b/src/app/core/integration/integration-object-factory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"integration-object-factory.js","sourceRoot":"","sources":["integration-object-factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAErF;IAAA;IAWA,CAAC;IAVe,uCAAc,GAA5B,UAA6B,IAAI;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,eAAe,CAAC,SAAS,CAAC,CAAC;gBAC9B,OAAO,wBAAwB,CAAC;aACjC;YACD,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,+BAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/core/integration/integration-response-parsing.service.js b/src/app/core/integration/integration-response-parsing.service.js new file mode 100644 index 0000000000..a8d8e54127 --- /dev/null +++ b/src/app/core/integration/integration-response-parsing.service.js @@ -0,0 +1,47 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { ErrorResponse, IntegrationSuccessResponse } from '../cache/response.models'; +import { isNotEmpty } from '../../shared/empty.util'; +import { IntegrationObjectFactory } from './integration-object-factory'; +import { BaseResponseParsingService } from '../data/base-response-parsing.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { IntegrationType } from './intergration-type'; +import { AuthorityValue } from './models/authority.value'; +var IntegrationResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(IntegrationResponseParsingService, _super); + function IntegrationResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = IntegrationObjectFactory; + _this.toCache = true; + return _this; + } + IntegrationResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links)) { + var dataDefinition = this.process(data.payload, request.uuid); + return new IntegrationSuccessResponse(this.processResponse(dataDefinition), data.statusCode, data.statusText, this.processPageInfo(data.payload)); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from Integration endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + IntegrationResponseParsingService.prototype.processResponse = function (data) { + var returnList = Array.of(); + data.page.forEach(function (item, index) { + if (item.type === IntegrationType.Authority) { + data.page[index] = Object.assign(new AuthorityValue(), item); + } + }); + return data; + }; + IntegrationResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], IntegrationResponseParsingService); + return IntegrationResponseParsingService; +}(BaseResponseParsingService)); +export { IntegrationResponseParsingService }; +//# sourceMappingURL=integration-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/integration/integration-response-parsing.service.js.map b/src/app/core/integration/integration-response-parsing.service.js.map new file mode 100644 index 0000000000..48a736ada4 --- /dev/null +++ b/src/app/core/integration/integration-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"integration-response-parsing.service.js","sourceRoot":"","sources":["integration-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAInD,OAAO,EACL,aAAa,EACb,0BAA0B,EAE3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI1D;IAAuD,6DAA0B;IAK/E,2CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAIE,iBAAO,SACR;QAJkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QALjC,mBAAa,GAAG,wBAAwB,CAAC;QACzC,aAAO,GAAG,IAAI,CAAC;;IAOzB,CAAC;IAED,iDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC/D,IAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAmC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAClG,OAAO,IAAI,0BAA0B,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SACnJ;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,+CAA+C,CAAC,EAC1D,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAC,CAC3D,CACF,CAAC;SACH;IACH,CAAC;IAES,2DAAe,GAAzB,UAA0B,IAAqC;QAC7D,IAAM,UAAU,GAAG,KAAK,CAAC,EAAE,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAC,IAAI,EAAE,KAAK;YAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,SAAS,EAAE;gBAC3C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAE,IAAI,CAAC,CAAC;aAC9D;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAnCU,iCAAiC;QAD7C,UAAU,EAAE;QAOR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAPhC,iCAAiC,CAqC7C;IAAD,wCAAC;CAAA,AArCD,CAAuD,0BAA0B,GAqChF;SArCY,iCAAiC"} \ No newline at end of file diff --git a/src/app/core/integration/integration.service.js b/src/app/core/integration/integration.service.js new file mode 100644 index 0000000000..2138128b65 --- /dev/null +++ b/src/app/core/integration/integration.service.js @@ -0,0 +1,84 @@ +import { of as observableOf, throwError as observableThrowError } from 'rxjs'; +import { distinctUntilChanged, filter, map, mergeMap, tap } from 'rxjs/operators'; +import { IntegrationRequest } from '../data/request.models'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { IntegrationData } from './integration-data'; +import { IntegrationSearchOptions } from './models/integration-options.model'; +import { getResponseFromEntry } from '../shared/operators'; +var IntegrationService = /** @class */ (function () { + function IntegrationService() { + } + IntegrationService.prototype.getData = function (request) { + return this.requestService.getByHref(request.href).pipe(getResponseFromEntry(), mergeMap(function (response) { + if (response.isSuccessful && isNotEmpty(response)) { + return observableOf(new IntegrationData(response.pageInfo, (response.dataDefinition) ? response.dataDefinition.page : [])); + } + else if (!response.isSuccessful) { + return observableThrowError(new Error("Couldn't retrieve the integration data")); + } + }), distinctUntilChanged()); + }; + IntegrationService.prototype.getEntriesHref = function (endpoint, options) { + if (options === void 0) { options = new IntegrationSearchOptions(); } + var result; + var args = []; + if (hasValue(options.name)) { + result = endpoint + "/" + options.name + "/" + this.entriesEndpoint; + } + else { + result = endpoint; + } + if (hasValue(options.query)) { + args.push("query=" + options.query); + } + if (hasValue(options.metadata)) { + args.push("metadata=" + options.metadata); + } + if (hasValue(options.uuid)) { + args.push("uuid=" + options.uuid); + } + if (hasValue(options.currentPage) && typeof options.currentPage === 'number') { + /* TODO: this is a temporary fix for the pagination start index (0 or 1) discrepancy between the rest and the frontend respectively */ + args.push("page=" + (options.currentPage - 1)); + } + if (hasValue(options.elementsPerPage)) { + args.push("size=" + options.elementsPerPage); + } + if (hasValue(options.sort)) { + args.push("sort=" + options.sort.field + "," + options.sort.direction); + } + if (isNotEmpty(args)) { + result = result + "?" + args.join('&'); + } + return result; + }; + IntegrationService.prototype.getEntryValueHref = function (endpoint, options) { + if (options === void 0) { options = new IntegrationSearchOptions(); } + var result; + var args = []; + if (hasValue(options.name) && hasValue(options.query)) { + result = endpoint + "/" + options.name + "/" + this.entryValueEndpoint + "/" + options.query; + } + else { + result = endpoint; + } + if (hasValue(options.metadata)) { + args.push("metadata=" + options.metadata); + } + if (isNotEmpty(args)) { + result = result + "?" + args.join('&'); + } + return result; + }; + IntegrationService.prototype.getEntriesByName = function (options) { + var _this = this; + return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getEntriesHref(endpoint, options); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new IntegrationRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getData(request); }), distinctUntilChanged()); + }; + IntegrationService.prototype.getEntryByValue = function (options) { + var _this = this; + return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getEntryValueHref(endpoint, options); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new IntegrationRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getData(request); }), distinctUntilChanged()); + }; + return IntegrationService; +}()); +export { IntegrationService }; +//# sourceMappingURL=integration.service.js.map \ No newline at end of file diff --git a/src/app/core/integration/integration.service.js.map b/src/app/core/integration/integration.service.js.map new file mode 100644 index 0000000000..6be9b6439c --- /dev/null +++ b/src/app/core/integration/integration.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"integration.service.js","sourceRoot":"","sources":["integration.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/integration/intergration-type.js b/src/app/core/integration/intergration-type.js new file mode 100644 index 0000000000..cfbfa76c50 --- /dev/null +++ b/src/app/core/integration/intergration-type.js @@ -0,0 +1,5 @@ +export var IntegrationType; +(function (IntegrationType) { + IntegrationType["Authority"] = "authority"; +})(IntegrationType || (IntegrationType = {})); +//# sourceMappingURL=intergration-type.js.map \ No newline at end of file diff --git a/src/app/core/integration/intergration-type.js.map b/src/app/core/integration/intergration-type.js.map new file mode 100644 index 0000000000..22d36e23e7 --- /dev/null +++ b/src/app/core/integration/intergration-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"intergration-type.js","sourceRoot":"","sources":["intergration-type.ts"],"names":[],"mappings":"AACA,MAAM,CAAN,IAAY,eAEX;AAFD,WAAY,eAAe;IACzB,0CAAuB,CAAA;AACzB,CAAC,EAFW,eAAe,KAAf,eAAe,QAE1B"} \ No newline at end of file diff --git a/src/app/core/integration/models/authority-options.model.js b/src/app/core/integration/models/authority-options.model.js new file mode 100644 index 0000000000..b7dd353e92 --- /dev/null +++ b/src/app/core/integration/models/authority-options.model.js @@ -0,0 +1,12 @@ +var AuthorityOptions = /** @class */ (function () { + function AuthorityOptions(name, metadata, scope, closed) { + if (closed === void 0) { closed = false; } + this.name = name; + this.metadata = metadata; + this.scope = scope; + this.closed = closed; + } + return AuthorityOptions; +}()); +export { AuthorityOptions }; +//# sourceMappingURL=authority-options.model.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/authority-options.model.js.map b/src/app/core/integration/models/authority-options.model.js.map new file mode 100644 index 0000000000..a1bb97b0fa --- /dev/null +++ b/src/app/core/integration/models/authority-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"authority-options.model.js","sourceRoot":"","sources":["authority-options.model.ts"],"names":[],"mappings":"AAAA;IAME,0BAAY,IAAY,EACZ,QAAgB,EAChB,KAAa,EACb,MAAuB;QAAvB,uBAAA,EAAA,cAAuB;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IACH,uBAAC;AAAD,CAAC,AAfD,IAeC"} \ No newline at end of file diff --git a/src/app/core/integration/models/authority.value.js b/src/app/core/integration/models/authority.value.js new file mode 100644 index 0000000000..8aff2025b4 --- /dev/null +++ b/src/app/core/integration/models/authority.value.js @@ -0,0 +1,48 @@ +import * as tslib_1 from "tslib"; +import { IntegrationModel } from './integration.model'; +import { isNotEmpty } from '../../../shared/empty.util'; +import { PLACEHOLDER_PARENT_METADATA } from '../../../shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; +/** + * Class representing an authority object + */ +var AuthorityValue = /** @class */ (function (_super) { + tslib_1.__extends(AuthorityValue, _super); + function AuthorityValue() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * This method checks if authority has an identifier value + * + * @return boolean + */ + AuthorityValue.prototype.hasAuthority = function () { + return isNotEmpty(this.id); + }; + /** + * This method checks if authority has a value + * + * @return boolean + */ + AuthorityValue.prototype.hasValue = function () { + return isNotEmpty(this.value); + }; + /** + * This method checks if authority has related information object + * + * @return boolean + */ + AuthorityValue.prototype.hasOtherInformation = function () { + return isNotEmpty(this.otherInformation); + }; + /** + * This method checks if authority has a placeholder as value + * + * @return boolean + */ + AuthorityValue.prototype.hasPlaceholder = function () { + return this.hasValue() && this.value === PLACEHOLDER_PARENT_METADATA; + }; + return AuthorityValue; +}(IntegrationModel)); +export { AuthorityValue }; +//# sourceMappingURL=authority.value.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/authority.value.js.map b/src/app/core/integration/models/authority.value.js.map new file mode 100644 index 0000000000..3b56e06858 --- /dev/null +++ b/src/app/core/integration/models/authority.value.js.map @@ -0,0 +1 @@ +{"version":3,"file":"authority.value.js","sourceRoot":"","sources":["authority.value.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oGAAoG,CAAC;AAIjJ;;GAEG;AACH;IAAoC,0CAAgB;IAApD;;IA8DA,CAAC;IAnCC;;;;OAIG;IACH,qCAAY,GAAZ;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,iCAAQ,GAAR;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,4CAAmB,GAAnB;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,uCAAc,GAAd;QACE,OAAO,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,2BAA2B,CAAC;IACvE,CAAC;IACH,qBAAC;AAAD,CAAC,AA9DD,CAAoC,gBAAgB,GA8DnD"} \ No newline at end of file diff --git a/src/app/core/integration/models/confidence-type.js b/src/app/core/integration/models/confidence-type.js new file mode 100644 index 0000000000..3895a17951 --- /dev/null +++ b/src/app/core/integration/models/confidence-type.js @@ -0,0 +1,39 @@ +export var ConfidenceType; +(function (ConfidenceType) { + /** + * This authority value has been confirmed as accurate by an + * interactive user or authoritative policy + */ + ConfidenceType[ConfidenceType["CF_ACCEPTED"] = 600] = "CF_ACCEPTED"; + /** + * Value is singular and valid but has not been seen and accepted + * by a human, so its provenance is uncertain. + */ + ConfidenceType[ConfidenceType["CF_UNCERTAIN"] = 500] = "CF_UNCERTAIN"; + /** + * There are multiple matching authority values of equal validity. + */ + ConfidenceType[ConfidenceType["CF_AMBIGUOUS"] = 400] = "CF_AMBIGUOUS"; + /** + * There are no matching answers from the authority. + */ + ConfidenceType[ConfidenceType["CF_NOTFOUND"] = 300] = "CF_NOTFOUND"; + /** + * The authority encountered an internal failure - this preserves a + * record in the metadata of why there is no value. + */ + ConfidenceType[ConfidenceType["CF_FAILED"] = 200] = "CF_FAILED"; + /** + * The authority recommends this submission be rejected. + */ + ConfidenceType[ConfidenceType["CF_REJECTED"] = 100] = "CF_REJECTED"; + /** + * No reasonable confidence value is available + */ + ConfidenceType[ConfidenceType["CF_NOVALUE"] = 0] = "CF_NOVALUE"; + /** + * Value has not been set (DB default). + */ + ConfidenceType[ConfidenceType["CF_UNSET"] = -1] = "CF_UNSET"; +})(ConfidenceType || (ConfidenceType = {})); +//# sourceMappingURL=confidence-type.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/confidence-type.js.map b/src/app/core/integration/models/confidence-type.js.map new file mode 100644 index 0000000000..f716d3ef42 --- /dev/null +++ b/src/app/core/integration/models/confidence-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"confidence-type.js","sourceRoot":"","sources":["confidence-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,cA2CX;AA3CD,WAAY,cAAc;IACxB;;;OAGG;IACH,mEAAiB,CAAA;IAEjB;;;OAGG;IACH,qEAAkB,CAAA;IAElB;;OAEG;IACH,qEAAkB,CAAA;IAElB;;OAEG;IACH,mEAAiB,CAAA;IAEjB;;;OAGG;IACH,+DAAe,CAAA;IAEf;;OAEG;IACH,mEAAiB,CAAA;IAEjB;;OAEG;IACH,+DAAc,CAAA;IAEd;;OAEG;IACH,4DAAa,CAAA;AACf,CAAC,EA3CW,cAAc,KAAd,cAAc,QA2CzB"} \ No newline at end of file diff --git a/src/app/core/integration/models/integration-options.model.js b/src/app/core/integration/models/integration-options.model.js new file mode 100644 index 0000000000..37c3c4cf3c --- /dev/null +++ b/src/app/core/integration/models/integration-options.model.js @@ -0,0 +1,18 @@ +var IntegrationSearchOptions = /** @class */ (function () { + function IntegrationSearchOptions(uuid, name, metadata, query, elementsPerPage, currentPage, sort) { + if (uuid === void 0) { uuid = ''; } + if (name === void 0) { name = ''; } + if (metadata === void 0) { metadata = ''; } + if (query === void 0) { query = ''; } + this.uuid = uuid; + this.name = name; + this.metadata = metadata; + this.query = query; + this.elementsPerPage = elementsPerPage; + this.currentPage = currentPage; + this.sort = sort; + } + return IntegrationSearchOptions; +}()); +export { IntegrationSearchOptions }; +//# sourceMappingURL=integration-options.model.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/integration-options.model.js.map b/src/app/core/integration/models/integration-options.model.js.map new file mode 100644 index 0000000000..d4395a3ed4 --- /dev/null +++ b/src/app/core/integration/models/integration-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"integration-options.model.js","sourceRoot":"","sources":["integration-options.model.ts"],"names":[],"mappings":"AAEA;IAEE,kCAAmB,IAAiB,EACjB,IAAiB,EACjB,QAAqB,EACrB,KAAkB,EAClB,eAAwB,EACxB,WAAoB,EACpB,IAAkB;QANlB,qBAAA,EAAA,SAAiB;QACjB,qBAAA,EAAA,SAAiB;QACjB,yBAAA,EAAA,aAAqB;QACrB,sBAAA,EAAA,UAAkB;QAHlB,SAAI,GAAJ,IAAI,CAAa;QACjB,SAAI,GAAJ,IAAI,CAAa;QACjB,aAAQ,GAAR,QAAQ,CAAa;QACrB,UAAK,GAAL,KAAK,CAAa;QAClB,oBAAe,GAAf,eAAe,CAAS;QACxB,gBAAW,GAAX,WAAW,CAAS;QACpB,SAAI,GAAJ,IAAI,CAAc;IAErC,CAAC;IACH,+BAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/core/integration/models/integration.model.js b/src/app/core/integration/models/integration.model.js new file mode 100644 index 0000000000..d77588dd49 --- /dev/null +++ b/src/app/core/integration/models/integration.model.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { autoserialize } from 'cerialize'; +var IntegrationModel = /** @class */ (function () { + function IntegrationModel() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], IntegrationModel.prototype, "self", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], IntegrationModel.prototype, "uuid", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], IntegrationModel.prototype, "type", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], IntegrationModel.prototype, "_links", void 0); + return IntegrationModel; +}()); +export { IntegrationModel }; +//# sourceMappingURL=integration.model.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/integration.model.js.map b/src/app/core/integration/models/integration.model.js.map new file mode 100644 index 0000000000..b6fe631caf --- /dev/null +++ b/src/app/core/integration/models/integration.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"integration.model.js","sourceRoot":"","sources":["integration.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG1C;IAAA;IAgBA,CAAC;IAbC;QADC,aAAa;;kDACD;IAGb;QADC,aAAa;;kDACD;IAGb;QADC,aAAa;;kDACG;IAGjB;QADC,aAAa;;oDAGb;IAEH,uBAAC;CAAA,AAhBD,IAgBC;SAhBqB,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/integration/models/normalized-authority-value.model.js b/src/app/core/integration/models/normalized-authority-value.model.js new file mode 100644 index 0000000000..7531a3f0f3 --- /dev/null +++ b/src/app/core/integration/models/normalized-authority-value.model.js @@ -0,0 +1,41 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { IntegrationModel } from './integration.model'; +import { mapsTo } from '../../cache/builders/build-decorators'; +import { AuthorityValue } from './authority.value'; +/** + * Normalized model class for an Authority Value + */ +var NormalizedAuthorityValue = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedAuthorityValue, _super); + function NormalizedAuthorityValue() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedAuthorityValue.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedAuthorityValue.prototype, "display", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedAuthorityValue.prototype, "value", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], NormalizedAuthorityValue.prototype, "otherInformation", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedAuthorityValue.prototype, "language", void 0); + NormalizedAuthorityValue = tslib_1.__decorate([ + mapsTo(AuthorityValue), + inheritSerialization(IntegrationModel) + ], NormalizedAuthorityValue); + return NormalizedAuthorityValue; +}(IntegrationModel)); +export { NormalizedAuthorityValue }; +//# sourceMappingURL=normalized-authority-value.model.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/normalized-authority-value.model.js.map b/src/app/core/integration/models/normalized-authority-value.model.js.map new file mode 100644 index 0000000000..9fe308140b --- /dev/null +++ b/src/app/core/integration/models/normalized-authority-value.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-authority-value.model.js","sourceRoot":"","sources":["normalized-authority-value.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;GAEG;AAGH;IAA8C,oDAAgB;IAA9D;;IAiBA,CAAC;IAdC;QADC,aAAa;;wDACH;IAGX;QADC,aAAa;;6DACE;IAGhB;QADC,aAAa;;2DACA;IAGd;QADC,aAAa;;sEACQ;IAGtB;QADC,aAAa;;8DACG;IAfN,wBAAwB;QAFpC,MAAM,CAAC,cAAc,CAAC;QACtB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,wBAAwB,CAiBpC;IAAD,+BAAC;CAAA,AAjBD,CAA8C,gBAAgB,GAiB7D;SAjBY,wBAAwB"} \ No newline at end of file diff --git a/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js b/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js new file mode 100644 index 0000000000..c73e04bb3e --- /dev/null +++ b/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js @@ -0,0 +1,56 @@ +import * as tslib_1 from "tslib"; +import { isNotUndefined } from '../../../shared/empty.util'; +import { URLCombiner } from '../../url-combiner/url-combiner'; +/** + * Combines a variable number of strings representing parts + * of a JSON-PATCH path + */ +var JsonPatchOperationPathCombiner = /** @class */ (function (_super) { + tslib_1.__extends(JsonPatchOperationPathCombiner, _super); + function JsonPatchOperationPathCombiner(rootElement) { + var subRootElements = []; + for (var _i = 1; _i < arguments.length; _i++) { + subRootElements[_i - 1] = arguments[_i]; + } + var _this = _super.apply(this, [rootElement].concat(subRootElements)) || this; + _this._rootElement = rootElement; + _this._subRootElement = subRootElements.join('/'); + return _this; + } + Object.defineProperty(JsonPatchOperationPathCombiner.prototype, "rootElement", { + get: function () { + return this._rootElement; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(JsonPatchOperationPathCombiner.prototype, "subRootElement", { + get: function () { + return this._subRootElement; + }, + enumerable: true, + configurable: true + }); + /** + * Combines the parts of this JsonPatchOperationPathCombiner in to a JSON-PATCH path member + * + * e.g. new JsonPatchOperationPathCombiner('sections', 'basic').getPath(['dc.title', '0']) + * returns: {rootElement: 'sections', subRootElement: 'basic', path: '/sections/basic/dc.title/0'} + * + * @return {JsonPatchOperationPathObject} + * The combined path object + */ + JsonPatchOperationPathCombiner.prototype.getPath = function (fragment) { + if (isNotUndefined(fragment) && Array.isArray(fragment)) { + fragment = fragment.join('/'); + } + var path = '/' + this.toString(); + if (isNotUndefined(fragment)) { + path += '/' + fragment; + } + return { rootElement: this._rootElement, subRootElement: this._subRootElement, path: path }; + }; + return JsonPatchOperationPathCombiner; +}(URLCombiner)); +export { JsonPatchOperationPathCombiner }; +//# sourceMappingURL=json-patch-operation-path-combiner.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js.map b/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js.map new file mode 100644 index 0000000000..277d072c2a --- /dev/null +++ b/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js.map @@ -0,0 +1 @@ +{"version":3,"file":"json-patch-operation-path-combiner.js","sourceRoot":"","sources":["json-patch-operation-path-combiner.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAY9D;;;GAGG;AACH;IAAoD,0DAAW;IAI7D,wCAAY,WAAW;QAAE,yBAA4B;aAA5B,UAA4B,EAA5B,qBAA4B,EAA5B,IAA4B;YAA5B,wCAA4B;;QAArD,gCACQ,WAAW,SAAK,eAAe,WAGtC;QAFC,KAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,KAAI,CAAC,eAAe,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;IACnD,CAAC;IAED,sBAAI,uDAAW;aAAf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAED,sBAAI,0DAAc;aAAlB;YACE,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;;;OAAA;IAED;;;;;;;;OAQG;IACI,gDAAO,GAAd,UAAe,QAA0B;QACvC,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACvD,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC/B;QAED,IAAI,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE;YAC5B,IAAI,IAAI,GAAG,GAAG,QAAQ,CAAC;SACxB;QAED,OAAO,EAAC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC;IAC5F,CAAC;IACH,qCAAC;AAAD,CAAC,AAvCD,CAAoD,WAAW,GAuC9D"} \ No newline at end of file diff --git a/src/app/core/json-patch/builder/json-patch-operations-builder.js b/src/app/core/json-patch/builder/json-patch-operations-builder.js new file mode 100644 index 0000000000..87d4f918f7 --- /dev/null +++ b/src/app/core/json-patch/builder/json-patch-operations-builder.js @@ -0,0 +1,134 @@ +import * as tslib_1 from "tslib"; +import { Store } from '@ngrx/store'; +import { NewPatchAddOperationAction, NewPatchRemoveOperationAction, NewPatchReplaceOperationAction } from '../json-patch-operations.actions'; +import { Injectable } from '@angular/core'; +import { isEmpty, isNotEmpty } from '../../../shared/empty.util'; +import { dateToISOFormat } from '../../../shared/date.util'; +import { AuthorityValue } from '../../integration/models/authority.value'; +import { FormFieldMetadataValueObject } from '../../../shared/form/builder/models/form-field-metadata-value.model'; +import { FormFieldLanguageValueObject } from '../../../shared/form/builder/models/form-field-language-value.model'; +/** + * Provides methods to dispatch JsonPatch Operations Actions + */ +var JsonPatchOperationsBuilder = /** @class */ (function () { + function JsonPatchOperationsBuilder(store) { + this.store = store; + } + /** + * Dispatches a new NewPatchAddOperationAction + * + * @param path + * a JsonPatchOperationPathObject representing path + * @param value + * The value to update the referenced path + * @param first + * A boolean representing if the value to be added is the first of an array + * @param plain + * A boolean representing if the value to be added is a plain text value + */ + JsonPatchOperationsBuilder.prototype.add = function (path, value, first, plain) { + if (first === void 0) { first = false; } + if (plain === void 0) { plain = false; } + this.store.dispatch(new NewPatchAddOperationAction(path.rootElement, path.subRootElement, path.path, this.prepareValue(value, plain, first))); + }; + /** + * Dispatches a new NewPatchReplaceOperationAction + * + * @param path + * a JsonPatchOperationPathObject representing path + * @param value + * the value to update the referenced path + * @param plain + * a boolean representing if the value to be added is a plain text value + */ + JsonPatchOperationsBuilder.prototype.replace = function (path, value, plain) { + if (plain === void 0) { plain = false; } + this.store.dispatch(new NewPatchReplaceOperationAction(path.rootElement, path.subRootElement, path.path, this.prepareValue(value, plain, false))); + }; + /** + * Dispatches a new NewPatchRemoveOperationAction + * + * @param path + * a JsonPatchOperationPathObject representing path + */ + JsonPatchOperationsBuilder.prototype.remove = function (path) { + this.store.dispatch(new NewPatchRemoveOperationAction(path.rootElement, path.subRootElement, path.path)); + }; + JsonPatchOperationsBuilder.prototype.prepareValue = function (value, plain, first) { + var _this = this; + var operationValue = null; + if (isNotEmpty(value)) { + if (plain) { + operationValue = value; + } + else { + if (Array.isArray(value)) { + operationValue = []; + value.forEach(function (entry) { + if ((typeof entry === 'object')) { + operationValue.push(_this.prepareObjectValue(entry)); + } + else { + operationValue.push(new FormFieldMetadataValueObject(entry)); + } + }); + } + else if (typeof value === 'object') { + operationValue = this.prepareObjectValue(value); + } + else { + operationValue = new FormFieldMetadataValueObject(value); + } + } + } + return (first && !Array.isArray(operationValue)) ? [operationValue] : operationValue; + }; + JsonPatchOperationsBuilder.prototype.prepareObjectValue = function (value) { + var _this = this; + var operationValue = Object.create({}); + if (isEmpty(value) || value instanceof FormFieldMetadataValueObject) { + operationValue = value; + } + else if (value instanceof Date) { + operationValue = new FormFieldMetadataValueObject(dateToISOFormat(value)); + } + else if (value instanceof AuthorityValue) { + operationValue = this.prepareAuthorityValue(value); + } + else if (value instanceof FormFieldLanguageValueObject) { + operationValue = new FormFieldMetadataValueObject(value.value, value.language); + } + else if (value.hasOwnProperty('value')) { + operationValue = new FormFieldMetadataValueObject(value.value); + } + else { + Object.keys(value) + .forEach(function (key) { + if (typeof value[key] === 'object') { + operationValue[key] = _this.prepareObjectValue(value[key]); + } + else { + operationValue[key] = value[key]; + } + }); + } + return operationValue; + }; + JsonPatchOperationsBuilder.prototype.prepareAuthorityValue = function (value) { + var operationValue = null; + if (isNotEmpty(value.id)) { + operationValue = new FormFieldMetadataValueObject(value.value, value.language, value.id); + } + else { + operationValue = new FormFieldMetadataValueObject(value.value, value.language); + } + return operationValue; + }; + JsonPatchOperationsBuilder = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store]) + ], JsonPatchOperationsBuilder); + return JsonPatchOperationsBuilder; +}()); +export { JsonPatchOperationsBuilder }; +//# sourceMappingURL=json-patch-operations-builder.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/builder/json-patch-operations-builder.js.map b/src/app/core/json-patch/builder/json-patch-operations-builder.js.map new file mode 100644 index 0000000000..f401e75cae --- /dev/null +++ b/src/app/core/json-patch/builder/json-patch-operations-builder.js.map @@ -0,0 +1 @@ +{"version":3,"file":"json-patch-operations-builder.js","sourceRoot":"","sources":["json-patch-operations-builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.actions.js b/src/app/core/json-patch/json-patch-operations.actions.js new file mode 100644 index 0000000000..9f02747448 --- /dev/null +++ b/src/app/core/json-patch/json-patch-operations.actions.js @@ -0,0 +1,213 @@ +import { type } from '../../shared/ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var JsonPatchOperationsActionTypes = { + NEW_JSON_PATCH_ADD_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_ADD_OPERATION'), + NEW_JSON_PATCH_COPY_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_COPY_OPERATION'), + NEW_JSON_PATCH_MOVE_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_MOVE_OPERATION'), + NEW_JSON_PATCH_REMOVE_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_REMOVE_OPERATION'), + NEW_JSON_PATCH_REPLACE_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_REPLACE_OPERATION'), + COMMIT_JSON_PATCH_OPERATIONS: type('dspace/core/patch/COMMIT_JSON_PATCH_OPERATIONS'), + ROLLBACK_JSON_PATCH_OPERATIONS: type('dspace/core/patch/ROLLBACK_JSON_PATCH_OPERATIONS'), + FLUSH_JSON_PATCH_OPERATIONS: type('dspace/core/patch/FLUSH_JSON_PATCH_OPERATIONS'), + START_TRANSACTION_JSON_PATCH_OPERATIONS: type('dspace/core/patch/START_TRANSACTION_JSON_PATCH_OPERATIONS'), +}; +/* tslint:disable:max-classes-per-file */ +/** + * An ngrx action to commit the current transaction + */ +var CommitPatchOperationsAction = /** @class */ (function () { + /** + * Create a new CommitPatchOperationsAction + * + * @param resourceType + * the resource's type + * @param resourceId + * the resource's ID + */ + function CommitPatchOperationsAction(resourceType, resourceId) { + this.type = JsonPatchOperationsActionTypes.COMMIT_JSON_PATCH_OPERATIONS; + this.payload = { resourceType: resourceType, resourceId: resourceId }; + } + return CommitPatchOperationsAction; +}()); +export { CommitPatchOperationsAction }; +/** + * An ngrx action to rollback the current transaction + */ +var RollbacktPatchOperationsAction = /** @class */ (function () { + /** + * Create a new CommitPatchOperationsAction + * + * @param resourceType + * the resource's type + * @param resourceId + * the resource's ID + */ + function RollbacktPatchOperationsAction(resourceType, resourceId) { + this.type = JsonPatchOperationsActionTypes.ROLLBACK_JSON_PATCH_OPERATIONS; + this.payload = { resourceType: resourceType, resourceId: resourceId }; + } + return RollbacktPatchOperationsAction; +}()); +export { RollbacktPatchOperationsAction }; +/** + * An ngrx action to initiate a transaction block + */ +var StartTransactionPatchOperationsAction = /** @class */ (function () { + /** + * Create a new CommitPatchOperationsAction + * + * @param resourceType + * the resource's type + * @param resourceId + * the resource's ID + * @param startTime + * the start timestamp + */ + function StartTransactionPatchOperationsAction(resourceType, resourceId, startTime) { + this.type = JsonPatchOperationsActionTypes.START_TRANSACTION_JSON_PATCH_OPERATIONS; + this.payload = { resourceType: resourceType, resourceId: resourceId, startTime: startTime }; + } + return StartTransactionPatchOperationsAction; +}()); +export { StartTransactionPatchOperationsAction }; +/** + * An ngrx action to flush list of the JSON Patch operations + */ +var FlushPatchOperationsAction = /** @class */ (function () { + /** + * Create a new FlushPatchOperationsAction + * + * @param resourceType + * the resource's type + * @param resourceId + * the resource's ID + */ + function FlushPatchOperationsAction(resourceType, resourceId) { + this.type = JsonPatchOperationsActionTypes.FLUSH_JSON_PATCH_OPERATIONS; + this.payload = { resourceType: resourceType, resourceId: resourceId }; + } + return FlushPatchOperationsAction; +}()); +export { FlushPatchOperationsAction }; +/** + * An ngrx action to Add new HTTP/PATCH ADD operations to state + */ +var NewPatchAddOperationAction = /** @class */ (function () { + /** + * Create a new NewPatchAddOperationAction + * + * @param resourceType + * the resource's type where to add operation + * @param resourceId + * the resource's ID + * @param path + * the path of the operation + * @param value + * the operation's payload + */ + function NewPatchAddOperationAction(resourceType, resourceId, path, value) { + this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_ADD_OPERATION; + this.payload = { resourceType: resourceType, resourceId: resourceId, path: path, value: value }; + } + return NewPatchAddOperationAction; +}()); +export { NewPatchAddOperationAction }; +/** + * An ngrx action to add new JSON Patch COPY operation to state + */ +var NewPatchCopyOperationAction = /** @class */ (function () { + /** + * Create a new NewPatchCopyOperationAction + * + * @param resourceType + * the resource's type + * @param resourceId + * the resource's ID + * @param from + * the path to copy the value from + * @param path + * the path where to copy the value + */ + function NewPatchCopyOperationAction(resourceType, resourceId, from, path) { + this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_COPY_OPERATION; + this.payload = { resourceType: resourceType, resourceId: resourceId, from: from, path: path }; + } + return NewPatchCopyOperationAction; +}()); +export { NewPatchCopyOperationAction }; +/** + * An ngrx action to Add new JSON Patch MOVE operation to state + */ +var NewPatchMoveOperationAction = /** @class */ (function () { + /** + * Create a new NewPatchMoveOperationAction + * + * @param resourceType + * the resource's type + * @param resourceId + * the resource's ID + * @param from + * the path to move the value from + * @param path + * the path where to move the value + */ + function NewPatchMoveOperationAction(resourceType, resourceId, from, path) { + this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_MOVE_OPERATION; + this.payload = { resourceType: resourceType, resourceId: resourceId, from: from, path: path }; + } + return NewPatchMoveOperationAction; +}()); +export { NewPatchMoveOperationAction }; +/** + * An ngrx action to Add new JSON Patch REMOVE operation to state + */ +var NewPatchRemoveOperationAction = /** @class */ (function () { + /** + * Create a new NewPatchRemoveOperationAction + * + * @param resourceType + * the resource's type + * @param resourceId + * the resource's ID + * @param path + * the path of the operation + */ + function NewPatchRemoveOperationAction(resourceType, resourceId, path) { + this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REMOVE_OPERATION; + this.payload = { resourceType: resourceType, resourceId: resourceId, path: path }; + } + return NewPatchRemoveOperationAction; +}()); +export { NewPatchRemoveOperationAction }; +/** + * An ngrx action to add new JSON Patch REPLACE operation to state + */ +var NewPatchReplaceOperationAction = /** @class */ (function () { + /** + * Create a new NewPatchReplaceOperationAction + * + * @param resourceType + * the resource's type + * @param resourceId + * the resource's ID + * @param path + * the path of the operation + * @param value + * the operation's payload + */ + function NewPatchReplaceOperationAction(resourceType, resourceId, path, value) { + this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REPLACE_OPERATION; + this.payload = { resourceType: resourceType, resourceId: resourceId, path: path, value: value }; + } + return NewPatchReplaceOperationAction; +}()); +export { NewPatchReplaceOperationAction }; +//# sourceMappingURL=json-patch-operations.actions.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.actions.js.map b/src/app/core/json-patch/json-patch-operations.actions.js.map new file mode 100644 index 0000000000..13851a1595 --- /dev/null +++ b/src/app/core/json-patch/json-patch-operations.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"json-patch-operations.actions.js","sourceRoot":"","sources":["json-patch-operations.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.effects.js b/src/app/core/json-patch/json-patch-operations.effects.js new file mode 100644 index 0000000000..2d8bc5ffff --- /dev/null +++ b/src/app/core/json-patch/json-patch-operations.effects.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { map } from 'rxjs/operators'; +import { Effect, Actions, ofType } from '@ngrx/effects'; +import { FlushPatchOperationsAction, JsonPatchOperationsActionTypes } from './json-patch-operations.actions'; +/** + * Provides effect methods for jsonPatch Operations actions + */ +var JsonPatchOperationsEffects = /** @class */ (function () { + function JsonPatchOperationsEffects(actions$) { + this.actions$ = actions$; + /** + * Dispatches a FlushPatchOperationsAction for every dispatched CommitPatchOperationsAction + */ + this.commit$ = this.actions$.pipe(ofType(JsonPatchOperationsActionTypes.COMMIT_JSON_PATCH_OPERATIONS), map(function (action) { + return new FlushPatchOperationsAction(action.payload.resourceType, action.payload.resourceId); + })); + } + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], JsonPatchOperationsEffects.prototype, "commit$", void 0); + JsonPatchOperationsEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions]) + ], JsonPatchOperationsEffects); + return JsonPatchOperationsEffects; +}()); +export { JsonPatchOperationsEffects }; +//# sourceMappingURL=json-patch-operations.effects.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.effects.js.map b/src/app/core/json-patch/json-patch-operations.effects.js.map new file mode 100644 index 0000000000..f78e5b8595 --- /dev/null +++ b/src/app/core/json-patch/json-patch-operations.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"json-patch-operations.effects.js","sourceRoot":"","sources":["json-patch-operations.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,EACwB,0BAA0B,EACvD,8BAA8B,EAC/B,MAAM,iCAAiC,CAAC;AAEzC;;GAEG;AAEH;IAWE,oCAAoB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;QATrC;;WAEG;QACO,YAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CACpC,MAAM,CAAC,8BAA8B,CAAC,4BAA4B,CAAC,EACnE,GAAG,CAAC,UAAC,MAAmC;YACtC,OAAO,IAAI,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC,CAAC;IAEkC,CAAC;IAN/B;QAAT,MAAM,EAAE;;+DAIH;IATK,0BAA0B;QADtC,UAAU,EAAE;iDAYmB,OAAO;OAX1B,0BAA0B,CAatC;IAAD,iCAAC;CAAA,AAbD,IAaC;SAbY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.reducer.js b/src/app/core/json-patch/json-patch-operations.reducer.js new file mode 100644 index 0000000000..5ebda1661d --- /dev/null +++ b/src/app/core/json-patch/json-patch-operations.reducer.js @@ -0,0 +1,264 @@ +import { hasValue, isNotEmpty, isNotUndefined, isNull } from '../../shared/empty.util'; +import { JsonPatchOperationsActionTypes } from './json-patch-operations.actions'; +import { JsonPatchOperationType } from './json-patch.model'; +var initialState = Object.create(null); +/** + * The JSON-PATCH operations Reducer + * + * @param state + * the current state + * @param action + * the action to perform on the state + * @return JsonPatchOperationsState + * the new state + */ +export function jsonPatchOperationsReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case JsonPatchOperationsActionTypes.COMMIT_JSON_PATCH_OPERATIONS: { + return commitOperations(state, action); + } + case JsonPatchOperationsActionTypes.FLUSH_JSON_PATCH_OPERATIONS: { + return flushOperation(state, action); + } + case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_ADD_OPERATION: { + return newOperation(state, action); + } + case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_COPY_OPERATION: { + return newOperation(state, action); + } + case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_MOVE_OPERATION: { + return newOperation(state, action); + } + case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REMOVE_OPERATION: { + return newOperation(state, action); + } + case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REPLACE_OPERATION: { + return newOperation(state, action); + } + case JsonPatchOperationsActionTypes.ROLLBACK_JSON_PATCH_OPERATIONS: { + return rollbackOperations(state, action); + } + case JsonPatchOperationsActionTypes.START_TRANSACTION_JSON_PATCH_OPERATIONS: { + return startTransactionPatchOperations(state, action); + } + default: { + return state; + } + } +} +/** + * Set the transaction start time. + * + * @param state + * the current state + * @param action + * an StartTransactionPatchOperationsAction + * @return JsonPatchOperationsState + * the new state. + */ +function startTransactionPatchOperations(state, action) { + var _a; + if (hasValue(state[action.payload.resourceType]) + && isNull(state[action.payload.resourceType].transactionStartTime)) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { + transactionStartTime: action.payload.startTime, + commitPending: true + }), + _a)); + } + else { + return state; + } +} +/** + * Set commit pending state. + * + * @param state + * the current state + * @param action + * an CommitPatchOperationsAction + * @return JsonPatchOperationsState + * the new state, with the section new validity status. + */ +function commitOperations(state, action) { + var _a; + if (hasValue(state[action.payload.resourceType]) + && state[action.payload.resourceType].commitPending) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { + commitPending: false + }), + _a)); + } + else { + return state; + } +} +/** + * Set commit pending state. + * + * @param state + * the current state + * @param action + * an RollbacktPatchOperationsAction + * @return JsonPatchOperationsState + * the new state. + */ +function rollbackOperations(state, action) { + var _a; + if (hasValue(state[action.payload.resourceType]) + && state[action.payload.resourceType].commitPending) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { + transactionStartTime: null, + commitPending: false + }), + _a)); + } + else { + return state; + } +} +/** + * Add new JSON patch operation list. + * + * @param state + * the current state + * @param action + * an NewPatchAddOperationAction + * @return JsonPatchOperationsState + * the new state, with the section new validity status. + */ +function newOperation(state, action) { + var _a, _b, _c, _d; + var newState = Object.assign({}, state); + var body = hasValidBody(newState, action.payload.resourceType, action.payload.resourceId) + ? newState[action.payload.resourceType].children[action.payload.resourceId].body : Array.of(); + var newBody = addOperationToList(body, action.type, action.payload.path, hasValue(action.payload.value) ? action.payload.value : null); + if (hasValue(newState[action.payload.resourceType]) + && hasValue(newState[action.payload.resourceType].children)) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { + children: Object.assign({}, state[action.payload.resourceType].children, (_b = {}, + _b[action.payload.resourceId] = { + body: newBody, + }, + _b)), + commitPending: isNotUndefined(state[action.payload.resourceType].commitPending) ? state[action.payload.resourceType].commitPending : false + }), + _a)); + } + else { + return Object.assign({}, state, (_c = {}, + _c[action.payload.resourceType] = Object.assign({}, { + children: (_d = {}, + _d[action.payload.resourceId] = { + body: newBody, + }, + _d), + transactionStartTime: null, + commitPending: false + }), + _c)); + } +} +/** + * Check if state has a valid body. + * + * @param state + * the current state + * @param resourceType + * an resource type + * @param resourceId + * an resource ID + * @return boolean + */ +function hasValidBody(state, resourceType, resourceId) { + return (hasValue(state[resourceType]) + && hasValue(state[resourceType].children) + && hasValue(state[resourceType].children[resourceId]) + && isNotEmpty(state[resourceType].children[resourceId].body)); +} +/** + * Set the section validity. + * + * @param state + * the current state + * @param action + * an FlushPatchOperationsAction + * @return SubmissionObjectState + * the new state, with the section new validity status. + */ +function flushOperation(state, action) { + var _a, _b; + if (hasValue(state[action.payload.resourceType])) { + var newChildren_1; + if (isNotUndefined(action.payload.resourceId)) { + // flush only specified child's operations + if (hasValue(state[action.payload.resourceType].children) + && hasValue(state[action.payload.resourceType].children[action.payload.resourceId])) { + newChildren_1 = Object.assign({}, state[action.payload.resourceType].children, (_a = {}, + _a[action.payload.resourceId] = { + body: state[action.payload.resourceType].children[action.payload.resourceId].body + .filter(function (entry) { return entry.timeAdded > state[action.payload.resourceType].transactionStartTime; }) + }, + _a)); + } + else { + newChildren_1 = state[action.payload.resourceType].children; + } + } + else { + // flush all children's operations + newChildren_1 = state[action.payload.resourceType].children; + Object.keys(newChildren_1) + .forEach(function (resourceId) { + var _a; + newChildren_1 = Object.assign({}, newChildren_1, (_a = {}, + _a[resourceId] = { + body: newChildren_1[resourceId].body + .filter(function (entry) { return entry.timeAdded > state[action.payload.resourceType].transactionStartTime; }) + }, + _a)); + }); + } + return Object.assign({}, state, (_b = {}, + _b[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { + children: newChildren_1, + transactionStartTime: null, + }), + _b)); + } + else { + return state; + } +} +function addOperationToList(body, actionType, targetPath, value) { + var newBody = Array.from(body); + switch (actionType) { + case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_ADD_OPERATION: + newBody.push(makeOperationEntry({ + op: JsonPatchOperationType.add, + path: targetPath, + value: value + })); + break; + case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REPLACE_OPERATION: + newBody.push(makeOperationEntry({ + op: JsonPatchOperationType.replace, + path: targetPath, + value: value + })); + break; + case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REMOVE_OPERATION: + newBody.push(makeOperationEntry({ op: JsonPatchOperationType.remove, path: targetPath })); + break; + } + return newBody; +} +function makeOperationEntry(operation) { + return { operation: operation, timeAdded: new Date().getTime() }; +} +//# sourceMappingURL=json-patch-operations.reducer.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.reducer.js.map b/src/app/core/json-patch/json-patch-operations.reducer.js.map new file mode 100644 index 0000000000..360aba9668 --- /dev/null +++ b/src/app/core/json-patch/json-patch-operations.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"json-patch-operations.reducer.js","sourceRoot":"","sources":["json-patch-operations.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.service.js b/src/app/core/json-patch/json-patch-operations.service.js new file mode 100644 index 0000000000..27711715e8 --- /dev/null +++ b/src/app/core/json-patch/json-patch-operations.service.js @@ -0,0 +1,117 @@ +import { merge as observableMerge, throwError as observableThrowError } from 'rxjs'; +import { distinctUntilChanged, filter, find, flatMap, map, partition, take, tap } from 'rxjs/operators'; +import { hasValue, isEmpty, isNotEmpty, isNotUndefined, isUndefined } from '../../shared/empty.util'; +import { jsonPatchOperationsByResourceType } from './selectors'; +import { CommitPatchOperationsAction, RollbacktPatchOperationsAction, StartTransactionPatchOperationsAction } from './json-patch-operations.actions'; +import { getResponseFromEntry } from '../shared/operators'; +/** + * An abstract class that provides methods to make JSON Patch requests. + */ +var JsonPatchOperationsService = /** @class */ (function () { + function JsonPatchOperationsService() { + } + /** + * Submit a new JSON Patch request with all operations stored in the state that are ready to be dispatched + * + * @param hrefObs + * Observable of request href + * @param resourceType + * The resource type value + * @param resourceId + * The resource id value + * @return Observable + * observable of response + */ + JsonPatchOperationsService.prototype.submitJsonPatchOperations = function (hrefObs, resourceType, resourceId) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + var startTransactionTime = null; + var _a = partition(function (request) { return isNotEmpty(request.body); })(hrefObs.pipe(flatMap(function (endpointURL) { + return _this.store.select(jsonPatchOperationsByResourceType(resourceType)).pipe(take(1), filter(function (operationsList) { return isUndefined(operationsList) || !(operationsList.commitPending); }), tap(function () { return startTransactionTime = new Date().getTime(); }), map(function (operationsList) { + var body = []; + if (isNotEmpty(operationsList)) { + if (isNotEmpty(resourceId)) { + if (isNotUndefined(operationsList.children[resourceId]) && isNotEmpty(operationsList.children[resourceId].body)) { + operationsList.children[resourceId].body.forEach(function (entry) { + body.push(entry.operation); + }); + } + } + else { + Object.keys(operationsList.children) + .filter(function (key) { return operationsList.children.hasOwnProperty(key); }) + .filter(function (key) { return hasValue(operationsList.children[key]); }) + .filter(function (key) { return hasValue(operationsList.children[key].body); }) + .forEach(function (key) { + operationsList.children[key].body.forEach(function (entry) { + body.push(entry.operation); + }); + }); + } + } + return _this.getRequestInstance(requestId, endpointURL, body); + })); + }))), patchRequest$ = _a[0], emptyRequest$ = _a[1]; + return observableMerge(emptyRequest$.pipe(filter(function (request) { return isEmpty(request.body); }), tap(function () { return startTransactionTime = null; }), map(function () { return null; })), patchRequest$.pipe(filter(function (request) { return isNotEmpty(request.body); }), tap(function () { return _this.store.dispatch(new StartTransactionPatchOperationsAction(resourceType, resourceId, startTransactionTime)); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function () { + var _a = partition(function (response) { return response.isSuccessful; })(_this.requestService.getByUUID(requestId).pipe(getResponseFromEntry(), find(function (entry) { return startTransactionTime < entry.timeAdded; }), map(function (entry) { return entry; }))), successResponse$ = _a[0], errorResponse$ = _a[1]; + return observableMerge(errorResponse$.pipe(tap(function () { return _this.store.dispatch(new RollbacktPatchOperationsAction(resourceType, resourceId)); }), flatMap(function (error) { return observableThrowError(error); })), successResponse$.pipe(filter(function (response) { return isNotEmpty(response); }), tap(function () { return _this.store.dispatch(new CommitPatchOperationsAction(resourceType, resourceId)); }), map(function (response) { return response.dataDefinition; }), distinctUntilChanged())); + }))); + }; + /** + * Return an instance for RestRequest class + * + * @param uuid + * The request uuid + * @param href + * The request href + * @param body + * The request body + * @return Object + * instance of PatchRequestDefinition + */ + JsonPatchOperationsService.prototype.getRequestInstance = function (uuid, href, body) { + return new this.patchRequestConstructor(uuid, href, body); + }; + JsonPatchOperationsService.prototype.getEndpointByIDHref = function (endpoint, resourceID) { + return isNotEmpty(resourceID) ? endpoint + "/" + resourceID : "" + endpoint; + }; + /** + * Make a new JSON Patch request with all operations related to the specified resource type + * + * @param linkPath + * The link path of the request + * @param scopeId + * The scope id + * @param resourceType + * The resource type value + * @return Observable + * observable of response + */ + JsonPatchOperationsService.prototype.jsonPatchByResourceType = function (linkPath, scopeId, resourceType) { + var _this = this; + var href$ = this.halService.getEndpoint(linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); })); + return this.submitJsonPatchOperations(href$, resourceType); + }; + /** + * Make a new JSON Patch request with all operations related to the specified resource id + * + * @param linkPath + * The link path of the request + * @param scopeId + * The scope id + * @param resourceType + * The resource type value + * @param resourceId + * The resource id value + * @return Observable + * observable of response + */ + JsonPatchOperationsService.prototype.jsonPatchByResourceID = function (linkPath, scopeId, resourceType, resourceId) { + var _this = this; + var hrefObs = this.halService.getEndpoint(linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); })); + return this.submitJsonPatchOperations(hrefObs, resourceType, resourceId); + }; + return JsonPatchOperationsService; +}()); +export { JsonPatchOperationsService }; +//# sourceMappingURL=json-patch-operations.service.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.service.js.map b/src/app/core/json-patch/json-patch-operations.service.js.map new file mode 100644 index 0000000000..2a5df7005c --- /dev/null +++ b/src/app/core/json-patch/json-patch-operations.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"json-patch-operations.service.js","sourceRoot":"","sources":["json-patch-operations.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch.model.js b/src/app/core/json-patch/json-patch.model.js new file mode 100644 index 0000000000..54a700e167 --- /dev/null +++ b/src/app/core/json-patch/json-patch.model.js @@ -0,0 +1,22 @@ +/** + * Represents all JSON Patch operations type. + */ +export var JsonPatchOperationType; +(function (JsonPatchOperationType) { + JsonPatchOperationType["test"] = "test"; + JsonPatchOperationType["remove"] = "remove"; + JsonPatchOperationType["add"] = "add"; + JsonPatchOperationType["replace"] = "replace"; + JsonPatchOperationType["move"] = "move"; + JsonPatchOperationType["copy"] = "copy"; +})(JsonPatchOperationType || (JsonPatchOperationType = {})); +/** + * Represents a JSON Patch operations. + */ +var JsonPatchOperationModel = /** @class */ (function () { + function JsonPatchOperationModel() { + } + return JsonPatchOperationModel; +}()); +export { JsonPatchOperationModel }; +//# sourceMappingURL=json-patch.model.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch.model.js.map b/src/app/core/json-patch/json-patch.model.js.map new file mode 100644 index 0000000000..4f15735e67 --- /dev/null +++ b/src/app/core/json-patch/json-patch.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"json-patch.model.js","sourceRoot":"","sources":["json-patch.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAChC,uCAAa,CAAA;IACb,2CAAiB,CAAA;IACjB,qCAAW,CAAA;IACX,6CAAmB,CAAA;IACnB,uCAAa,CAAA;IACb,uCAAa,CAAA;AACf,CAAC,EAPW,sBAAsB,KAAtB,sBAAsB,QAOjC;AAED;;GAEG;AACH;IAAA;IAIA,CAAC;IAAD,8BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/core/json-patch/selectors.js b/src/app/core/json-patch/selectors.js new file mode 100644 index 0000000000..b25e647a08 --- /dev/null +++ b/src/app/core/json-patch/selectors.js @@ -0,0 +1,28 @@ +import { coreSelector } from '../core.selectors'; +import { keySelector, subStateSelector } from '../../submission/selectors'; +/** + * Return MemoizedSelector to select all jsonPatchOperations for a specified resource type, stored in the state + * + * @param resourceType + * the resource type + * @return MemoizedSelector + * MemoizedSelector + */ +export function jsonPatchOperationsByResourceType(resourceType) { + return keySelector(coreSelector, 'json/patch', resourceType); +} +/** + * Return MemoizedSelector to select all jsonPatchOperations for a specified resource id, stored in the state + * + * @param resourceType + * the resource type + * @param resourceId + * the resourceId type + * @return MemoizedSelector + * MemoizedSelector + */ +export function jsonPatchOperationsByResourceId(resourceType, resourceId) { + var resourceTypeSelector = jsonPatchOperationsByResourceType(resourceType); + return subStateSelector(resourceTypeSelector, resourceId); +} +//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/selectors.js.map b/src/app/core/json-patch/selectors.js.map new file mode 100644 index 0000000000..cf86522c49 --- /dev/null +++ b/src/app/core/json-patch/selectors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE3E;;;;;;;GAOG;AACH,MAAM,4CAA4C,YAAoB;IACpE,OAAO,WAAW,CAA8C,YAAY,EAAC,YAAY,EAAE,YAAY,CAAC,CAAC;AAC3G,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,0CAA0C,YAAoB,EAAE,UAAkB;IACtF,IAAM,oBAAoB,GAAI,iCAAiC,CAAC,YAAY,CAAC,CAAC;IAC9E,OAAO,gBAAgB,CAAsC,oBAAoB,EAAE,UAAU,CAAC,CAAC;AACjG,CAAC"} \ No newline at end of file diff --git a/src/app/core/metadata/metadata.service.js b/src/app/core/metadata/metadata.service.js new file mode 100644 index 0000000000..2f5a3af133 --- /dev/null +++ b/src/app/core/metadata/metadata.service.js @@ -0,0 +1,317 @@ +import * as tslib_1 from "tslib"; +import { catchError, distinctUntilKeyChanged, filter, first, map, take } from 'rxjs/operators'; +import { Inject, Injectable } from '@angular/core'; +import { NavigationEnd, Router } from '@angular/router'; +import { Meta, Title } from '@angular/platform-browser'; +import { TranslateService } from '@ngx-translate/core'; +import { BehaviorSubject } from 'rxjs'; +import { Item } from '../shared/item.model'; +import { GLOBAL_CONFIG } from '../../../config'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +var MetadataService = /** @class */ (function () { + function MetadataService(router, translate, meta, title, envConfig) { + this.router = router; + this.translate = translate; + this.meta = meta; + this.title = title; + this.envConfig = envConfig; + // TODO: determine what open graph meta tags are needed and whether + // the differ per route. potentially add image based on DSpaceObject + this.meta.addTags([ + { property: 'og:title', content: 'DSpace Angular Universal' }, + { property: 'og:description', content: 'The modern front-end for DSpace 7.' } + ]); + this.initialized = false; + this.tagStore = new Map(); + } + MetadataService.prototype.listenForRouteChange = function () { + var _this = this; + this.router.events.pipe(filter(function (event) { return event instanceof NavigationEnd; }), map(function () { return _this.router.routerState.root; }), map(function (route) { + route = _this.getCurrentRoute(route); + return { params: route.params, data: route.data }; + })).subscribe(function (routeInfo) { + _this.processRouteChange(routeInfo); + }); + }; + MetadataService.prototype.processRemoteData = function (remoteData) { + var _this = this; + remoteData.pipe(map(function (rd) { return rd.payload; }), filter(function (co) { return hasValue(co); }), take(1)) + .subscribe(function (dspaceObject) { + if (!_this.initialized) { + _this.initialize(dspaceObject); + } + _this.currentObject.next(dspaceObject); + }); + }; + MetadataService.prototype.processRouteChange = function (routeInfo) { + var _this = this; + if (routeInfo.params.value.id === undefined) { + this.clearMetaTags(); + } + if (routeInfo.data.value.title) { + this.translate.get(routeInfo.data.value.title, routeInfo.data.value).pipe(take(1)).subscribe(function (translatedTitle) { + _this.addMetaTag('title', translatedTitle); + _this.title.setTitle(translatedTitle); + }); + } + if (routeInfo.data.value.description) { + this.translate.get(routeInfo.data.value.description).pipe(take(1)).subscribe(function (translatedDescription) { + _this.addMetaTag('description', translatedDescription); + }); + } + }; + MetadataService.prototype.initialize = function (dspaceObject) { + var _this = this; + this.currentObject = new BehaviorSubject(dspaceObject); + this.currentObject.asObservable().pipe(distinctUntilKeyChanged('uuid')).subscribe(function () { + _this.setMetaTags(); + }); + this.initialized = true; + }; + MetadataService.prototype.getCurrentRoute = function (route) { + while (route.firstChild) { + route = route.firstChild; + } + return route; + }; + MetadataService.prototype.setMetaTags = function () { + this.clearMetaTags(); + this.setTitleTag(); + this.setDescriptionTag(); + this.setCitationTitleTag(); + this.setCitationAuthorTags(); + this.setCitationDateTag(); + this.setCitationISSNTag(); + this.setCitationISBNTag(); + this.setCitationLanguageTag(); + this.setCitationKeywordsTag(); + this.setCitationAbstractUrlTag(); + this.setCitationPdfUrlTag(); + if (this.isDissertation()) { + this.setCitationDissertationNameTag(); + this.setCitationDissertationInstitutionTag(); + } + if (this.isTechReport()) { + this.setCitationTechReportInstitutionTag(); + } + // this.setCitationJournalTitleTag(); + // this.setCitationVolumeTag(); + // this.setCitationIssueTag(); + // this.setCitationFirstPageTag(); + // this.setCitationLastPageTag(); + // this.setCitationDOITag(); + // this.setCitationPMIDTag(); + // this.setCitationFullTextTag(); + // this.setCitationConferenceTag(); + // this.setCitationPatentCountryTag(); + // this.setCitationPatentNumberTag(); + }; + /** + * Add to the + */ + MetadataService.prototype.setTitleTag = function () { + var value = this.getMetaTagValue('dc.title'); + this.addMetaTag('title', value); + this.title.setTitle(value); + }; + /** + * Add to the + */ + MetadataService.prototype.setDescriptionTag = function () { + // TODO: truncate abstract + var value = this.getMetaTagValue('dc.description.abstract'); + this.addMetaTag('desciption', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationTitleTag = function () { + var value = this.getMetaTagValue('dc.title'); + this.addMetaTag('citation_title', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationAuthorTags = function () { + var values = this.getMetaTagValues(['dc.author', 'dc.contributor.author', 'dc.creator']); + this.addMetaTags('citation_author', values); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationDateTag = function () { + var value = this.getFirstMetaTagValue(['dc.date.copyright', 'dc.date.issued', 'dc.date.available', 'dc.date.accessioned']); + this.addMetaTag('citation_date', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationISSNTag = function () { + var value = this.getMetaTagValue('dc.identifier.issn'); + this.addMetaTag('citation_issn', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationISBNTag = function () { + var value = this.getMetaTagValue('dc.identifier.isbn'); + this.addMetaTag('citation_isbn', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationLanguageTag = function () { + var value = this.getFirstMetaTagValue(['dc.language', 'dc.language.iso']); + this.addMetaTag('citation_language', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationDissertationNameTag = function () { + var value = this.getMetaTagValue('dc.title'); + this.addMetaTag('citation_dissertation_name', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationDissertationInstitutionTag = function () { + var value = this.getMetaTagValue('dc.publisher'); + this.addMetaTag('citation_dissertation_institution', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationTechReportInstitutionTag = function () { + var value = this.getMetaTagValue('dc.publisher'); + this.addMetaTag('citation_technical_report_institution', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationKeywordsTag = function () { + var value = this.getMetaTagValuesAndCombine('dc.subject'); + this.addMetaTag('citation_keywords', value); + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationAbstractUrlTag = function () { + if (this.currentObject.value instanceof Item) { + var value = [this.envConfig.ui.baseUrl, this.router.url].join(''); + this.addMetaTag('citation_abstract_html_url', value); + } + }; + /** + * Add to the + */ + MetadataService.prototype.setCitationPdfUrlTag = function () { + var _this = this; + if (this.currentObject.value instanceof Item) { + var item = this.currentObject.value; + item.getFiles() + .pipe(first(function (files) { return isNotEmpty(files); }), catchError(function (error) { + console.debug(error.message); + return []; + })) + .subscribe(function (bitstreams) { + var _loop_1 = function (bitstream) { + bitstream.format.pipe(first(), catchError(function (error) { + console.debug(error.message); + return []; + }), map(function (rd) { return rd.payload; }), filter(function (format) { return hasValue(format); })) + .subscribe(function (format) { + if (format.mimetype === 'application/pdf') { + _this.addMetaTag('citation_pdf_url', bitstream.content); + } + }); + }; + for (var _i = 0, bitstreams_1 = bitstreams; _i < bitstreams_1.length; _i++) { + var bitstream = bitstreams_1[_i]; + _loop_1(bitstream); + } + }); + } + }; + MetadataService.prototype.hasType = function (value) { + return this.currentObject.value.hasMetadata('dc.type', { value: value, ignoreCase: true }); + }; + /** + * Returns true if this._item is a dissertation + * + * @returns {boolean} + * true if this._item has a dc.type equal to 'Thesis' + */ + MetadataService.prototype.isDissertation = function () { + return this.hasType('thesis'); + }; + /** + * Returns true if this._item is a technical report + * + * @returns {boolean} + * true if this._item has a dc.type equal to 'Technical Report' + */ + MetadataService.prototype.isTechReport = function () { + return this.hasType('technical report'); + }; + MetadataService.prototype.getMetaTagValue = function (key) { + return this.currentObject.value.firstMetadataValue(key); + }; + MetadataService.prototype.getFirstMetaTagValue = function (keys) { + return this.currentObject.value.firstMetadataValue(keys); + }; + MetadataService.prototype.getMetaTagValuesAndCombine = function (key) { + return this.getMetaTagValues([key]).join('; '); + }; + MetadataService.prototype.getMetaTagValues = function (keys) { + return this.currentObject.value.allMetadataValues(keys); + }; + MetadataService.prototype.addMetaTag = function (property, content) { + if (content) { + var tag = { property: property, content: content }; + this.meta.addTag(tag); + this.storeTag(property, tag); + } + }; + MetadataService.prototype.addMetaTags = function (property, content) { + for (var _i = 0, content_1 = content; _i < content_1.length; _i++) { + var value = content_1[_i]; + this.addMetaTag(property, value); + } + }; + MetadataService.prototype.storeTag = function (key, tag) { + var tags = this.getTags(key); + tags.push(tag); + this.setTags(key, tags); + }; + MetadataService.prototype.getTags = function (key) { + var tags = this.tagStore.get(key); + if (tags === undefined) { + tags = []; + } + return tags; + }; + MetadataService.prototype.setTags = function (key, tags) { + this.tagStore.set(key, tags); + }; + MetadataService.prototype.clearMetaTags = function () { + var _this = this; + this.tagStore.forEach(function (tags, property) { + _this.meta.removeTag("property='" + property + "'"); + }); + this.tagStore.clear(); + }; + MetadataService.prototype.getTagStore = function () { + return this.tagStore; + }; + MetadataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(4, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Router, + TranslateService, + Meta, + Title, Object]) + ], MetadataService); + return MetadataService; +}()); +export { MetadataService }; +//# sourceMappingURL=metadata.service.js.map \ No newline at end of file diff --git a/src/app/core/metadata/metadata.service.js.map b/src/app/core/metadata/metadata.service.js.map new file mode 100644 index 0000000000..3e55504743 --- /dev/null +++ b/src/app/core/metadata/metadata.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata.service.js","sourceRoot":"","sources":["metadata.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/metadata/metadatafield.model.js b/src/app/core/metadata/metadatafield.model.js new file mode 100644 index 0000000000..4dd4ed83bf --- /dev/null +++ b/src/app/core/metadata/metadatafield.model.js @@ -0,0 +1,43 @@ +import * as tslib_1 from "tslib"; +import { MetadataSchema } from './metadataschema.model'; +import { autoserialize } from 'cerialize'; +import { isNotEmpty } from '../../shared/empty.util'; +var MetadataField = /** @class */ (function () { + function MetadataField() { + } + MetadataField.prototype.toString = function (separator) { + if (separator === void 0) { separator = '.'; } + var key = this.schema.prefix + separator + this.element; + if (isNotEmpty(this.qualifier)) { + key += separator + this.qualifier; + } + return key; + }; + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], MetadataField.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataField.prototype, "self", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataField.prototype, "element", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataField.prototype, "qualifier", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataField.prototype, "scopeNote", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", MetadataSchema) + ], MetadataField.prototype, "schema", void 0); + return MetadataField; +}()); +export { MetadataField }; +//# sourceMappingURL=metadatafield.model.js.map \ No newline at end of file diff --git a/src/app/core/metadata/metadatafield.model.js.map b/src/app/core/metadata/metadatafield.model.js.map new file mode 100644 index 0000000000..0dfd3be4d2 --- /dev/null +++ b/src/app/core/metadata/metadatafield.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadatafield.model.js","sourceRoot":"","sources":["metadatafield.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD;IAAA;IA0BA,CAAC;IAPC,gCAAQ,GAAR,UAAS,SAAuB;QAAvB,0BAAA,EAAA,eAAuB;QAC9B,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;QACxD,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YAC9B,GAAG,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;SACnC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAvBD;QADC,aAAa;;6CACH;IAGX;QADC,aAAa;;+CACD;IAGb;QADC,aAAa;;kDACE;IAGhB;QADC,aAAa;;oDACI;IAGlB;QADC,aAAa;;oDACI;IAGlB;QADC,aAAa;0CACN,cAAc;iDAAC;IASzB,oBAAC;CAAA,AA1BD,IA0BC;SA1BY,aAAa"} \ No newline at end of file diff --git a/src/app/core/metadata/metadataschema.model.js b/src/app/core/metadata/metadataschema.model.js new file mode 100644 index 0000000000..4c99d47821 --- /dev/null +++ b/src/app/core/metadata/metadataschema.model.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { autoserialize } from 'cerialize'; +var MetadataSchema = /** @class */ (function () { + function MetadataSchema() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], MetadataSchema.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataSchema.prototype, "self", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataSchema.prototype, "prefix", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataSchema.prototype, "namespace", void 0); + return MetadataSchema; +}()); +export { MetadataSchema }; +//# sourceMappingURL=metadataschema.model.js.map \ No newline at end of file diff --git a/src/app/core/metadata/metadataschema.model.js.map b/src/app/core/metadata/metadataschema.model.js.map new file mode 100644 index 0000000000..471749b028 --- /dev/null +++ b/src/app/core/metadata/metadataschema.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadataschema.model.js","sourceRoot":"","sources":["metadataschema.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG1C;IAAA;IAYA,CAAC;IAVC;QADC,aAAa;;8CACH;IAGX;QADC,aAAa;;gDACD;IAGb;QADC,aAAa;;kDACC;IAGf;QADC,aAAa;;qDACI;IACpB,qBAAC;CAAA,AAZD,IAYC;SAZY,cAAc"} \ No newline at end of file diff --git a/src/app/core/metadata/normalized-metadata-schema.model.js b/src/app/core/metadata/normalized-metadata-schema.model.js new file mode 100644 index 0000000000..81f6a7bf89 --- /dev/null +++ b/src/app/core/metadata/normalized-metadata-schema.model.js @@ -0,0 +1,36 @@ +import * as tslib_1 from "tslib"; +import { autoserialize } from 'cerialize'; +import { NormalizedObject } from '../cache/models/normalized-object.model'; +import { mapsTo } from '../cache/builders/build-decorators'; +import { MetadataSchema } from './metadataschema.model'; +/** + * Normalized class for a DSpace MetadataSchema + */ +var NormalizedMetadataSchema = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedMetadataSchema, _super); + function NormalizedMetadataSchema() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], NormalizedMetadataSchema.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedMetadataSchema.prototype, "self", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedMetadataSchema.prototype, "prefix", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedMetadataSchema.prototype, "namespace", void 0); + NormalizedMetadataSchema = tslib_1.__decorate([ + mapsTo(MetadataSchema) + ], NormalizedMetadataSchema); + return NormalizedMetadataSchema; +}(NormalizedObject)); +export { NormalizedMetadataSchema }; +//# sourceMappingURL=normalized-metadata-schema.model.js.map \ No newline at end of file diff --git a/src/app/core/metadata/normalized-metadata-schema.model.js.map b/src/app/core/metadata/normalized-metadata-schema.model.js.map new file mode 100644 index 0000000000..3bdc210fe4 --- /dev/null +++ b/src/app/core/metadata/normalized-metadata-schema.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-metadata-schema.model.js","sourceRoot":"","sources":["normalized-metadata-schema.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD;;GAEG;AAEH;IAA8C,oDAAgC;IAA9E;;IAwBA,CAAC;IAnBC;QADC,aAAa;;wDACH;IAMX;QADC,aAAa;;0DACD;IAMb;QADC,aAAa;;4DACC;IAMf;QADC,aAAa;;+DACI;IAvBP,wBAAwB;QADpC,MAAM,CAAC,cAAc,CAAC;OACV,wBAAwB,CAwBpC;IAAD,+BAAC;CAAA,AAxBD,CAA8C,gBAAgB,GAwB7D;SAxBY,wBAAwB"} \ No newline at end of file diff --git a/src/app/core/registry/mock-bitstream-format.model.js b/src/app/core/registry/mock-bitstream-format.model.js new file mode 100644 index 0000000000..2b95f79f22 --- /dev/null +++ b/src/app/core/registry/mock-bitstream-format.model.js @@ -0,0 +1,7 @@ +var BitstreamFormat = /** @class */ (function () { + function BitstreamFormat() { + } + return BitstreamFormat; +}()); +export { BitstreamFormat }; +//# sourceMappingURL=mock-bitstream-format.model.js.map \ No newline at end of file diff --git a/src/app/core/registry/mock-bitstream-format.model.js.map b/src/app/core/registry/mock-bitstream-format.model.js.map new file mode 100644 index 0000000000..660273c9b0 --- /dev/null +++ b/src/app/core/registry/mock-bitstream-format.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-bitstream-format.model.js","sourceRoot":"","sources":["mock-bitstream-format.model.ts"],"names":[],"mappings":"AAAA;IAAA;IAOA,CAAC;IAAD,sBAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/core/registry/registry-bitstreamformats-response.model.js b/src/app/core/registry/registry-bitstreamformats-response.model.js new file mode 100644 index 0000000000..cf8c1942c0 --- /dev/null +++ b/src/app/core/registry/registry-bitstreamformats-response.model.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs } from 'cerialize'; +import { PageInfo } from '../shared/page-info.model'; +import { BitstreamFormat } from '../shared/bitstream-format.model'; +var RegistryBitstreamformatsResponse = /** @class */ (function () { + function RegistryBitstreamformatsResponse() { + } + tslib_1.__decorate([ + autoserializeAs(BitstreamFormat), + tslib_1.__metadata("design:type", Array) + ], RegistryBitstreamformatsResponse.prototype, "bitstreamformats", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", PageInfo) + ], RegistryBitstreamformatsResponse.prototype, "page", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], RegistryBitstreamformatsResponse.prototype, "self", void 0); + return RegistryBitstreamformatsResponse; +}()); +export { RegistryBitstreamformatsResponse }; +//# sourceMappingURL=registry-bitstreamformats-response.model.js.map \ No newline at end of file diff --git a/src/app/core/registry/registry-bitstreamformats-response.model.js.map b/src/app/core/registry/registry-bitstreamformats-response.model.js.map new file mode 100644 index 0000000000..97b0fa35e0 --- /dev/null +++ b/src/app/core/registry/registry-bitstreamformats-response.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry-bitstreamformats-response.model.js","sourceRoot":"","sources":["registry-bitstreamformats-response.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE;IAAA;IASA,CAAC;IAPC;QADC,eAAe,CAAC,eAAe,CAAC;;8EACG;IAGpC;QADC,aAAa;0CACR,QAAQ;kEAAC;IAGf;QADC,aAAa;;kEACD;IACf,uCAAC;CAAA,AATD,IASC;SATY,gCAAgC"} \ No newline at end of file diff --git a/src/app/core/registry/registry-metadatafields-response.model.js b/src/app/core/registry/registry-metadatafields-response.model.js new file mode 100644 index 0000000000..db76e693f6 --- /dev/null +++ b/src/app/core/registry/registry-metadatafields-response.model.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { PageInfo } from '../shared/page-info.model'; +import { autoserialize, autoserializeAs } from 'cerialize'; +import { MetadataField } from '../metadata/metadatafield.model'; +var RegistryMetadatafieldsResponse = /** @class */ (function () { + function RegistryMetadatafieldsResponse() { + } + tslib_1.__decorate([ + autoserializeAs(MetadataField), + tslib_1.__metadata("design:type", Array) + ], RegistryMetadatafieldsResponse.prototype, "metadatafields", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", PageInfo) + ], RegistryMetadatafieldsResponse.prototype, "page", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], RegistryMetadatafieldsResponse.prototype, "self", void 0); + return RegistryMetadatafieldsResponse; +}()); +export { RegistryMetadatafieldsResponse }; +//# sourceMappingURL=registry-metadatafields-response.model.js.map \ No newline at end of file diff --git a/src/app/core/registry/registry-metadatafields-response.model.js.map b/src/app/core/registry/registry-metadatafields-response.model.js.map new file mode 100644 index 0000000000..144b47cce1 --- /dev/null +++ b/src/app/core/registry/registry-metadatafields-response.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry-metadatafields-response.model.js","sourceRoot":"","sources":["registry-metadatafields-response.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE;IAAA;IASA,CAAC;IAPC;QADC,eAAe,CAAC,aAAa,CAAC;;0EACC;IAGhC;QADC,aAAa;0CACR,QAAQ;gEAAC;IAGf;QADC,aAAa;;gEACD;IACf,qCAAC;CAAA,AATD,IASC;SATY,8BAA8B"} \ No newline at end of file diff --git a/src/app/core/registry/registry-metadataschemas-response.model.js b/src/app/core/registry/registry-metadataschemas-response.model.js new file mode 100644 index 0000000000..c5d74cec98 --- /dev/null +++ b/src/app/core/registry/registry-metadataschemas-response.model.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { MetadataSchema } from '../metadata/metadataschema.model'; +import { PageInfo } from '../shared/page-info.model'; +import { autoserialize, autoserializeAs } from 'cerialize'; +var RegistryMetadataschemasResponse = /** @class */ (function () { + function RegistryMetadataschemasResponse() { + } + tslib_1.__decorate([ + autoserializeAs(MetadataSchema), + tslib_1.__metadata("design:type", Array) + ], RegistryMetadataschemasResponse.prototype, "metadataschemas", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", PageInfo) + ], RegistryMetadataschemasResponse.prototype, "page", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], RegistryMetadataschemasResponse.prototype, "self", void 0); + return RegistryMetadataschemasResponse; +}()); +export { RegistryMetadataschemasResponse }; +//# sourceMappingURL=registry-metadataschemas-response.model.js.map \ No newline at end of file diff --git a/src/app/core/registry/registry-metadataschemas-response.model.js.map b/src/app/core/registry/registry-metadataschemas-response.model.js.map new file mode 100644 index 0000000000..d953130dfe --- /dev/null +++ b/src/app/core/registry/registry-metadataschemas-response.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry-metadataschemas-response.model.js","sourceRoot":"","sources":["registry-metadataschemas-response.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE3D;IAAA;IASA,CAAC;IAPC;QADC,eAAe,CAAC,cAAc,CAAC;;4EACE;IAGlC;QADC,aAAa;0CACR,QAAQ;iEAAC;IAGf;QADC,aAAa;;iEACD;IACf,sCAAC;CAAA,AATD,IASC;SATY,+BAA+B"} \ No newline at end of file diff --git a/src/app/core/registry/registry.service.js b/src/app/core/registry/registry.service.js new file mode 100644 index 0000000000..b4df79c0d9 --- /dev/null +++ b/src/app/core/registry/registry.service.js @@ -0,0 +1,386 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { Injectable } from '@angular/core'; +import { PaginatedList } from '../data/paginated-list'; +import { PageInfo } from '../shared/page-info.model'; +import { MetadataField } from '../metadata/metadatafield.model'; +import { CreateMetadataFieldRequest, CreateMetadataSchemaRequest, DeleteRequest, GetRequest, UpdateMetadataFieldRequest, UpdateMetadataSchemaRequest } from '../data/request.models'; +import { RegistryMetadataschemasResponseParsingService } from '../data/registry-metadataschemas-response-parsing.service'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { RequestService } from '../data/request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { RegistryMetadatafieldsResponseParsingService } from '../data/registry-metadatafields-response-parsing.service'; +import { hasValue, hasNoValue, isNotEmpty, isNotEmptyOperator } from '../../shared/empty.util'; +import { URLCombiner } from '../url-combiner/url-combiner'; +import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; +import { RegistryBitstreamformatsResponseParsingService } from '../data/registry-bitstreamformats-response-parsing.service'; +import { configureRequest, getResponseFromEntry } from '../shared/operators'; +import { createSelector, select, Store } from '@ngrx/store'; +import { MetadataRegistryCancelFieldAction, MetadataRegistryCancelSchemaAction, MetadataRegistryDeselectAllFieldAction, MetadataRegistryDeselectAllSchemaAction, MetadataRegistryDeselectFieldAction, MetadataRegistryDeselectSchemaAction, MetadataRegistryEditFieldAction, MetadataRegistryEditSchemaAction, MetadataRegistrySelectFieldAction, MetadataRegistrySelectSchemaAction } from '../../+admin/admin-registries/metadata-registry/metadata-registry.actions'; +import { distinctUntilChanged, flatMap, map, take, tap } from 'rxjs/operators'; +import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; +import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; +import { ResourceType } from '../shared/resource-type'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { NotificationOptions } from '../../shared/notifications/models/notification-options.model'; +import { HttpHeaders } from '@angular/common/http'; +import { TranslateService } from '@ngx-translate/core'; +var metadataRegistryStateSelector = function (state) { return state.metadataRegistry; }; +var editMetadataSchemaSelector = createSelector(metadataRegistryStateSelector, function (metadataState) { return metadataState.editSchema; }); +var selectedMetadataSchemasSelector = createSelector(metadataRegistryStateSelector, function (metadataState) { return metadataState.selectedSchemas; }); +var editMetadataFieldSelector = createSelector(metadataRegistryStateSelector, function (metadataState) { return metadataState.editField; }); +var selectedMetadataFieldsSelector = createSelector(metadataRegistryStateSelector, function (metadataState) { return metadataState.selectedFields; }); +var RegistryService = /** @class */ (function () { + function RegistryService(requestService, rdb, halService, store, notificationsService, translateService) { + this.requestService = requestService; + this.rdb = rdb; + this.halService = halService; + this.store = store; + this.notificationsService = notificationsService; + this.translateService = translateService; + this.metadataSchemasPath = 'metadataschemas'; + this.metadataFieldsPath = 'metadatafields'; + this.bitstreamFormatsPath = 'bitstreamformats'; + } + RegistryService.prototype.getMetadataSchemas = function (pagination) { + var _this = this; + var requestObs = this.getMetadataSchemasRequestObs(pagination); + var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); + var rmrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.metadataschemasResponse; })); + var metadataschemasObs = rmrObs.pipe(map(function (rmr) { return rmr.metadataschemas; })); + var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); + var payloadObs = observableCombineLatest(metadataschemasObs, pageInfoObs).pipe(map(function (_a) { + var metadataschemas = _a[0], pageInfo = _a[1]; + return new PaginatedList(pageInfo, metadataschemas); + })); + return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); + }; + RegistryService.prototype.getMetadataSchemaByName = function (schemaName) { + var _this = this; + // Temporary pagination to get ALL metadataschemas until there's a rest api endpoint for fetching a specific schema + var pagination = Object.assign(new PaginationComponentOptions(), { + id: 'all-metadatafields-pagination', + pageSize: 10000 + }); + var requestObs = this.getMetadataSchemasRequestObs(pagination); + var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); + var rmrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.metadataschemasResponse; })); + var metadataschemaObs = rmrObs.pipe(map(function (rmr) { return rmr.metadataschemas; }), map(function (metadataSchemas) { return metadataSchemas.filter(function (value) { return value.prefix === schemaName; })[0]; })); + return this.rdb.toRemoteDataObservable(requestEntryObs, metadataschemaObs); + }; + RegistryService.prototype.getMetadataFieldsBySchema = function (schema, pagination) { + var _this = this; + var requestObs = this.getMetadataFieldsBySchemaRequestObs(pagination, schema); + var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); + var rmrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.metadatafieldsResponse; })); + var metadatafieldsObs = rmrObs.pipe(map(function (rmr) { return rmr.metadatafields; })); + var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); + var payloadObs = observableCombineLatest(metadatafieldsObs, pageInfoObs).pipe(map(function (_a) { + var metadatafields = _a[0], pageInfo = _a[1]; + return new PaginatedList(pageInfo, metadatafields); + })); + return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); + }; + /** + * Retrieve all existing metadata fields as a paginated list + * @param pagination Pagination options to determine which page of metadata fields should be requested + * When no pagination is provided, all metadata fields are requested in one large page + * @returns an observable that emits a remote data object with a page of metadata fields + */ + RegistryService.prototype.getAllMetadataFields = function (pagination) { + var _this = this; + if (hasNoValue(pagination)) { + pagination = { currentPage: 1, pageSize: 10000 }; + } + var requestObs = this.getMetadataFieldsRequestObs(pagination); + var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); + var rmrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.metadatafieldsResponse; })); + var metadatafieldsObs = rmrObs.pipe(map(function (rmr) { return rmr.metadatafields; }), + /* Make sure to explicitly cast this into a MetadataField object, on first page loads this object comes from the object cache created by the server and its prototype is unknown */ + map(function (metadataFields) { return metadataFields.map(function (metadataField) { return Object.assign(new MetadataField(), metadataField); }); })); + var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); + var payloadObs = observableCombineLatest(metadatafieldsObs, pageInfoObs).pipe(map(function (_a) { + var metadatafields = _a[0], pageInfo = _a[1]; + return new PaginatedList(pageInfo, metadatafields); + })); + return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); + }; + RegistryService.prototype.getBitstreamFormats = function (pagination) { + var _this = this; + var requestObs = this.getBitstreamFormatsRequestObs(pagination); + var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); + var rbrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.bitstreamformatsResponse; })); + var bitstreamformatsObs = rbrObs.pipe(map(function (rbr) { return rbr.bitstreamformats; })); + var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); + var payloadObs = observableCombineLatest(bitstreamformatsObs, pageInfoObs).pipe(map(function (_a) { + var bitstreamformats = _a[0], pageInfo = _a[1]; + return new PaginatedList(pageInfo, bitstreamformats); + })); + return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); + }; + RegistryService.prototype.getMetadataSchemasRequestObs = function (pagination) { + var _this = this; + return this.halService.getEndpoint(this.metadataSchemasPath).pipe(map(function (url) { + var args = []; + args.push("size=" + pagination.pageSize); + args.push("page=" + (pagination.currentPage - 1)); + if (isNotEmpty(args)) { + url = new URLCombiner(url, "?" + args.join('&')).toString(); + } + var request = new GetRequest(_this.requestService.generateRequestId(), url); + return Object.assign(request, { + getResponseParser: function () { + return RegistryMetadataschemasResponseParsingService; + } + }); + }), tap(function (request) { return _this.requestService.configure(request); })); + }; + RegistryService.prototype.getMetadataFieldsBySchemaRequestObs = function (pagination, schema) { + var _this = this; + return this.halService.getEndpoint(this.metadataFieldsPath + '/search/bySchema').pipe( + // return this.halService.getEndpoint(this.metadataFieldsPath).pipe( + map(function (url) { + var args = []; + args.push("schema=" + schema.prefix); + args.push("size=" + pagination.pageSize); + args.push("page=" + (pagination.currentPage - 1)); + if (isNotEmpty(args)) { + url = new URLCombiner(url, "?" + args.join('&')).toString(); + } + var request = new GetRequest(_this.requestService.generateRequestId(), url); + return Object.assign(request, { + getResponseParser: function () { + return RegistryMetadatafieldsResponseParsingService; + } + }); + }), tap(function (request) { return _this.requestService.configure(request); })); + }; + RegistryService.prototype.getMetadataFieldsRequestObs = function (pagination) { + var _this = this; + return this.halService.getEndpoint(this.metadataFieldsPath).pipe(map(function (url) { + var args = []; + args.push("size=" + pagination.pageSize); + args.push("page=" + (pagination.currentPage - 1)); + if (isNotEmpty(args)) { + url = new URLCombiner(url, "?" + args.join('&')).toString(); + } + var request = new GetRequest(_this.requestService.generateRequestId(), url); + return Object.assign(request, { + getResponseParser: function () { + return RegistryMetadatafieldsResponseParsingService; + } + }); + }), tap(function (request) { return _this.requestService.configure(request); })); + }; + RegistryService.prototype.getBitstreamFormatsRequestObs = function (pagination) { + var _this = this; + return this.halService.getEndpoint(this.bitstreamFormatsPath).pipe(map(function (url) { + var args = []; + args.push("size=" + pagination.pageSize); + args.push("page=" + (pagination.currentPage - 1)); + if (isNotEmpty(args)) { + url = new URLCombiner(url, "?" + args.join('&')).toString(); + } + var request = new GetRequest(_this.requestService.generateRequestId(), url); + return Object.assign(request, { + getResponseParser: function () { + return RegistryBitstreamformatsResponseParsingService; + } + }); + }), tap(function (request) { return _this.requestService.configure(request); })); + }; + RegistryService.prototype.editMetadataSchema = function (schema) { + this.store.dispatch(new MetadataRegistryEditSchemaAction(schema)); + }; + RegistryService.prototype.cancelEditMetadataSchema = function () { + this.store.dispatch(new MetadataRegistryCancelSchemaAction()); + }; + RegistryService.prototype.getActiveMetadataSchema = function () { + return this.store.pipe(select(editMetadataSchemaSelector)); + }; + RegistryService.prototype.selectMetadataSchema = function (schema) { + this.store.dispatch(new MetadataRegistrySelectSchemaAction(schema)); + }; + RegistryService.prototype.deselectMetadataSchema = function (schema) { + this.store.dispatch(new MetadataRegistryDeselectSchemaAction(schema)); + }; + RegistryService.prototype.deselectAllMetadataSchema = function () { + this.store.dispatch(new MetadataRegistryDeselectAllSchemaAction()); + }; + RegistryService.prototype.getSelectedMetadataSchemas = function () { + return this.store.pipe(select(selectedMetadataSchemasSelector)); + }; + RegistryService.prototype.editMetadataField = function (field) { + this.store.dispatch(new MetadataRegistryEditFieldAction(field)); + }; + RegistryService.prototype.cancelEditMetadataField = function () { + this.store.dispatch(new MetadataRegistryCancelFieldAction()); + }; + RegistryService.prototype.getActiveMetadataField = function () { + return this.store.pipe(select(editMetadataFieldSelector)); + }; + RegistryService.prototype.selectMetadataField = function (field) { + this.store.dispatch(new MetadataRegistrySelectFieldAction(field)); + }; + RegistryService.prototype.deselectMetadataField = function (field) { + this.store.dispatch(new MetadataRegistryDeselectFieldAction(field)); + }; + RegistryService.prototype.deselectAllMetadataField = function () { + this.store.dispatch(new MetadataRegistryDeselectAllFieldAction()); + }; + RegistryService.prototype.getSelectedMetadataFields = function () { + return this.store.pipe(select(selectedMetadataFieldsSelector)); + }; + /** + * Create or Update a MetadataSchema + * If the MetadataSchema contains an id, it is assumed the schema already exists and is updated instead + * Since creating or updating is nearly identical, the only real difference is the request (and slight difference in endpoint): + * - On creation, a CreateMetadataSchemaRequest is used + * - On update, a UpdateMetadataSchemaRequest is used + * @param schema The MetadataSchema to create or update + */ + RegistryService.prototype.createOrUpdateMetadataSchema = function (schema) { + var _this = this; + var isUpdate = hasValue(schema.id); + var requestId = this.requestService.generateRequestId(); + var endpoint$ = this.halService.getEndpoint(this.metadataSchemasPath).pipe(isNotEmptyOperator(), map(function (endpoint) { return (isUpdate ? endpoint + "/" + schema.id : endpoint); }), distinctUntilChanged()); + var serializedSchema = new DSpaceRESTv2Serializer(NormalizedObjectFactory.getConstructor(ResourceType.MetadataSchema)).serialize(schema); + var request$ = endpoint$.pipe(take(1), map(function (endpoint) { + if (isUpdate) { + var options = Object.create({}); + var headers = new HttpHeaders(); + headers = headers.append('Content-Type', 'application/json'); + options.headers = headers; + return new UpdateMetadataSchemaRequest(requestId, endpoint, JSON.stringify(serializedSchema), options); + } + else { + return new CreateMetadataSchemaRequest(requestId, endpoint, JSON.stringify(serializedSchema)); + } + })); + // Execute the post/put request + request$.pipe(configureRequest(this.requestService)).subscribe(); + // Return created/updated schema + return this.requestService.getByUUID(requestId).pipe(getResponseFromEntry(), map(function (response) { + if (!response.isSuccessful) { + if (hasValue(response.errorMessage)) { + _this.notificationsService.error('Server Error:', response.errorMessage, new NotificationOptions(-1)); + } + } + else { + _this.showNotifications(true, isUpdate, false, { prefix: schema.prefix }); + return response; + } + }), isNotEmptyOperator(), map(function (response) { + if (isNotEmpty(response.metadataschema)) { + return response.metadataschema; + } + })); + }; + RegistryService.prototype.deleteMetadataSchema = function (id) { + return this.delete(this.metadataSchemasPath, id); + }; + RegistryService.prototype.clearMetadataSchemaRequests = function () { + var _this = this; + return this.halService.getEndpoint(this.metadataSchemasPath).pipe(tap(function (href) { return _this.requestService.removeByHrefSubstring(href); })); + }; + /** + * Create or Update a MetadataField + * If the MetadataField contains an id, it is assumed the field already exists and is updated instead + * Since creating or updating is nearly identical, the only real difference is the request (and slight difference in endpoint): + * - On creation, a CreateMetadataFieldRequest is used + * - On update, a UpdateMetadataFieldRequest is used + * @param field The MetadataField to create or update + */ + RegistryService.prototype.createOrUpdateMetadataField = function (field) { + var _this = this; + var isUpdate = hasValue(field.id); + var requestId = this.requestService.generateRequestId(); + var endpoint$ = this.halService.getEndpoint(this.metadataFieldsPath).pipe(isNotEmptyOperator(), map(function (endpoint) { return (isUpdate ? endpoint + "/" + field.id : endpoint + "?schemaId=" + field.schema.id); }), distinctUntilChanged()); + var request$ = endpoint$.pipe(take(1), map(function (endpoint) { + if (isUpdate) { + var options = Object.create({}); + var headers = new HttpHeaders(); + headers = headers.append('Content-Type', 'application/json'); + options.headers = headers; + return new UpdateMetadataFieldRequest(requestId, endpoint, JSON.stringify(field), options); + } + else { + return new CreateMetadataFieldRequest(requestId, endpoint, JSON.stringify(field)); + } + })); + // Execute the post/put request + request$.pipe(configureRequest(this.requestService)).subscribe(); + // Return created/updated field + return this.requestService.getByUUID(requestId).pipe(getResponseFromEntry(), map(function (response) { + if (!response.isSuccessful) { + if (hasValue(response.errorMessage)) { + _this.notificationsService.error('Server Error:', response.errorMessage, new NotificationOptions(-1)); + } + } + else { + var fieldString = field.schema.prefix + "." + field.element + (field.qualifier ? "." + field.qualifier : ''); + _this.showNotifications(true, isUpdate, true, { field: fieldString }); + return response; + } + }), isNotEmptyOperator(), map(function (response) { + if (isNotEmpty(response.metadatafield)) { + return response.metadatafield; + } + })); + }; + RegistryService.prototype.deleteMetadataField = function (id) { + return this.delete(this.metadataFieldsPath, id); + }; + RegistryService.prototype.clearMetadataFieldRequests = function () { + var _this = this; + return this.halService.getEndpoint(this.metadataFieldsPath).pipe(tap(function (href) { return _this.requestService.removeByHrefSubstring(href); })); + }; + RegistryService.prototype.delete = function (path, id) { + var requestId = this.requestService.generateRequestId(); + var endpoint$ = this.halService.getEndpoint(path).pipe(isNotEmptyOperator(), map(function (endpoint) { return endpoint + "/" + id; }), distinctUntilChanged()); + var request$ = endpoint$.pipe(take(1), map(function (endpoint) { return new DeleteRequest(requestId, endpoint); })); + // Execute the delete request + request$.pipe(configureRequest(this.requestService)).subscribe(); + return this.requestService.getByUUID(requestId).pipe(getResponseFromEntry()); + }; + RegistryService.prototype.showNotifications = function (success, edited, isField, options) { + var _this = this; + var prefix = 'admin.registries.schema.notification'; + var suffix = success ? 'success' : 'failure'; + var editedString = edited ? 'edited' : 'created'; + var messages = observableCombineLatest(this.translateService.get(success ? prefix + "." + suffix : prefix + "." + suffix), this.translateService.get("" + prefix + (isField ? '.field' : '') + "." + editedString, options)); + messages.subscribe(function (_a) { + var head = _a[0], content = _a[1]; + if (success) { + _this.notificationsService.success(head, content); + } + else { + _this.notificationsService.error(head, content); + } + }); + }; + /** + * Retrieve a filtered paginated list of metadata fields + * @param query {string} The query to filter the field names by + * @returns an observable that emits a remote data object with a page of metadata fields that match the query + */ + RegistryService.prototype.queryMetadataFields = function (query) { + return this.getAllMetadataFields().pipe(map(function (rd) { + var filteredFields = rd.payload.page.filter(function (field) { return field.toString().indexOf(query) >= 0; }); + var page = new PaginatedList(new PageInfo(), filteredFields); + return Object.assign({}, rd, { payload: page }); + })); + }; + RegistryService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + HALEndpointService, + Store, + NotificationsService, + TranslateService]) + ], RegistryService); + return RegistryService; +}()); +export { RegistryService }; +//# sourceMappingURL=registry.service.js.map \ No newline at end of file diff --git a/src/app/core/registry/registry.service.js.map b/src/app/core/registry/registry.service.js.map new file mode 100644 index 0000000000..9a81d423e7 --- /dev/null +++ b/src/app/core/registry/registry.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"registry.service.js","sourceRoot":"","sources":["registry.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,MAAM,MAAM,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,aAAa,EACb,UAAU,EACG,0BAA0B,EACvC,2BAA2B,EAC5B,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,6CAA6C,EAAE,MAAM,2DAA2D,CAAC;AAC1H,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAQzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,4CAA4C,EAAE,MAAM,0DAA0D,CAAC;AAExH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,4DAA4D,CAAC;AACxG,OAAO,EAAE,8CAA8C,EAAE,MAAM,4DAA4D,CAAC;AAE5H,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EAErB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAG5D,OAAO,EACL,iCAAiC,EACjC,kCAAkC,EAClC,sCAAsC,EACtC,uCAAuC,EACvC,mCAAmC,EACnC,oCAAoC,EACpC,+BAA+B,EAC/B,gCAAgC,EAChC,iCAAiC,EACjC,kCAAkC,EACnC,MAAM,2EAA2E,CAAC;AACnF,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,GAAG,EAAa,IAAI,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,8DAA8D,CAAC;AAEnG,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,IAAM,6BAA6B,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,gBAAgB,EAAtB,CAAsB,CAAC;AAClF,IAAM,0BAA0B,GAAG,cAAc,CAAC,6BAA6B,EAAE,UAAC,aAAoC,IAAK,OAAA,aAAa,CAAC,UAAU,EAAxB,CAAwB,CAAC,CAAC;AACrJ,IAAM,+BAA+B,GAAG,cAAc,CAAC,6BAA6B,EAAE,UAAC,aAAoC,IAAK,OAAA,aAAa,CAAC,eAAe,EAA7B,CAA6B,CAAC,CAAC;AAC/J,IAAM,yBAAyB,GAAG,cAAc,CAAC,6BAA6B,EAAE,UAAC,aAAoC,IAAK,OAAA,aAAa,CAAC,SAAS,EAAvB,CAAuB,CAAC,CAAC;AACnJ,IAAM,8BAA8B,GAAG,cAAc,CAAC,6BAA6B,EAAE,UAAC,aAAoC,IAAK,OAAA,aAAa,CAAC,cAAc,EAA5B,CAA4B,CAAC,CAAC;AAG7J;IAME,yBAAsB,cAA8B,EAChC,GAA2B,EAC3B,UAA8B,EAC9B,KAAsB,EACtB,oBAA0C,EAC1C,gBAAkC;QALhC,mBAAc,GAAd,cAAc,CAAgB;QAChC,QAAG,GAAH,GAAG,CAAwB;QAC3B,eAAU,GAAV,UAAU,CAAoB;QAC9B,UAAK,GAAL,KAAK,CAAiB;QACtB,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,qBAAgB,GAAhB,gBAAgB,CAAkB;QAT9C,wBAAmB,GAAG,iBAAiB,CAAC;QACxC,uBAAkB,GAAG,gBAAgB,CAAC;QACtC,yBAAoB,GAAG,kBAAkB,CAAC;IASlD,CAAC;IAEM,4CAAkB,GAAzB,UAA0B,UAAsC;QAAhE,iBA4BC;QA3BC,IAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;QAEjE,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,OAAO,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,CAC/E,CAAC;QAEF,IAAM,MAAM,GAAgD,eAAe,CAAC,IAAI,CAC9E,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAgD,IAAK,OAAA,QAAQ,CAAC,uBAAuB,EAAhC,CAAgC,CAAC,CAC5F,CAAC;QAEF,IAAM,kBAAkB,GAAiC,MAAM,CAAC,IAAI,CAClE,GAAG,CAAC,UAAC,GAAoC,IAAK,OAAA,GAAG,CAAC,eAAe,EAAnB,CAAmB,CAAC,CACnE,CAAC;QAEF,IAAM,WAAW,GAAyB,eAAe,CAAC,IAAI,CAC5D,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAgD,IAAK,OAAA,QAAQ,CAAC,QAAQ,EAAjB,CAAiB,CAAC,CAC7E,CAAC;QAEF,IAAM,UAAU,GAAG,uBAAuB,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC,IAAI,CAC9E,GAAG,CAAC,UAAC,EAA2B;gBAA1B,uBAAe,EAAE,gBAAQ;YAC7B,OAAO,IAAI,aAAa,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACtD,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAEM,iDAAuB,GAA9B,UAA+B,UAAkB;QAAjD,iBAuBC;QAtBC,mHAAmH;QACnH,IAAM,UAAU,GAA+B,MAAM,CAAC,MAAM,CAAC,IAAI,0BAA0B,EAAE,EAAE;YAC7F,EAAE,EAAE,+BAA+B;YACnC,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QACH,IAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;QAEjE,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,OAAO,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,CAC/E,CAAC;QAEF,IAAM,MAAM,GAAgD,eAAe,CAAC,IAAI,CAC9E,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAgD,IAAK,OAAA,QAAQ,CAAC,uBAAuB,EAAhC,CAAgC,CAAC,CAC5F,CAAC;QAEF,IAAM,iBAAiB,GAA+B,MAAM,CAAC,IAAI,CAC/D,GAAG,CAAC,UAAC,GAAoC,IAAK,OAAA,GAAG,CAAC,eAAe,EAAnB,CAAmB,CAAC,EAClE,GAAG,CAAC,UAAC,eAAiC,IAAK,OAAA,eAAe,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,MAAM,KAAK,UAAU,EAA3B,CAA2B,CAAC,CAAC,CAAC,CAAC,EAAjE,CAAiE,CAAC,CAC9G,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;IAC7E,CAAC;IAEM,mDAAyB,GAAhC,UAAiC,MAAsB,EAAE,UAAsC;QAA/F,iBA6BC;QA5BC,IAAM,UAAU,GAAG,IAAI,CAAC,mCAAmC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAEhF,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,OAAO,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,CAC/E,CAAC;QAEF,IAAM,MAAM,GAA+C,eAAe,CAAC,IAAI,CAC7E,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAA+C,IAAK,OAAA,QAAQ,CAAC,sBAAsB,EAA/B,CAA+B,CAAC,CAC1F,CAAC;QAEF,IAAM,iBAAiB,GAAgC,MAAM,CAAC,IAAI,CAChE,GAAG,CAAC,UAAC,GAAmC,IAAK,OAAA,GAAG,CAAC,cAAc,EAAlB,CAAkB,CAAC,CACjE,CAAC;QAEF,IAAM,WAAW,GAAyB,eAAe,CAAC,IAAI,CAC5D,oBAAoB,EAAE,EAEtB,GAAG,CAAC,UAAC,QAA+C,IAAK,OAAA,QAAQ,CAAC,QAAQ,EAAjB,CAAiB,CAAC,CAC5E,CAAC;QAEF,IAAM,UAAU,GAAG,uBAAuB,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC,IAAI,CAC7E,GAAG,CAAC,UAAC,EAA0B;gBAAzB,sBAAc,EAAE,gBAAQ;YAC5B,OAAO,IAAI,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACrD,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACI,8CAAoB,GAA3B,UAA4B,UAAuC;QAAnE,iBAkCC;QAjCC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;YAC1B,UAAU,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAS,CAAC;SACzD;QACD,IAAM,UAAU,GAAG,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;QAEhE,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,OAAO,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,CAC/E,CAAC;QAEF,IAAM,MAAM,GAA+C,eAAe,CAAC,IAAI,CAC7E,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAA+C,IAAK,OAAA,QAAQ,CAAC,sBAAsB,EAA/B,CAA+B,CAAC,CAC1F,CAAC;QAEF,IAAM,iBAAiB,GAAgC,MAAM,CAAC,IAAI,CAChE,GAAG,CAAC,UAAC,GAAmC,IAAK,OAAA,GAAG,CAAC,cAAc,EAAlB,CAAkB,CAAC;QAChE,mLAAmL;QACnL,GAAG,CAAC,UAAC,cAA+B,IAAK,OAAA,cAAc,CAAC,GAAG,CAAC,UAAC,aAA4B,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,IAAI,aAAa,EAAE,EAAE,aAAa,CAAC,EAAjD,CAAiD,CAAC,EAAvG,CAAuG,CAAC,CAClJ,CAAC;QAEF,IAAM,WAAW,GAAyB,eAAe,CAAC,IAAI,CAC5D,oBAAoB,EAAE,EAEtB,GAAG,CAAC,UAAC,QAA+C,IAAK,OAAA,QAAQ,CAAC,QAAQ,EAAjB,CAAiB,CAAC,CAC5E,CAAC;QAEF,IAAM,UAAU,GAAG,uBAAuB,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC,IAAI,CAC7E,GAAG,CAAC,UAAC,EAA0B;gBAAzB,sBAAc,EAAE,gBAAQ;YAC5B,OAAO,IAAI,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACrD,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAEM,6CAAmB,GAA1B,UAA2B,UAAsC;QAAjE,iBA4BC;QA3BC,IAAM,UAAU,GAAG,IAAI,CAAC,6BAA6B,CAAC,UAAU,CAAC,CAAC;QAElE,IAAM,eAAe,GAAG,UAAU,CAAC,IAAI,CACrC,OAAO,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,CAC/E,CAAC;QAEF,IAAM,MAAM,GAAiD,eAAe,CAAC,IAAI,CAC/E,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAiD,IAAK,OAAA,QAAQ,CAAC,wBAAwB,EAAjC,CAAiC,CAAC,CAC9F,CAAC;QAEF,IAAM,mBAAmB,GAAkC,MAAM,CAAC,IAAI,CACpE,GAAG,CAAC,UAAC,GAAqC,IAAK,OAAA,GAAG,CAAC,gBAAgB,EAApB,CAAoB,CAAC,CACrE,CAAC;QAEF,IAAM,WAAW,GAAyB,eAAe,CAAC,IAAI,CAC5D,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAiD,IAAK,OAAA,QAAQ,CAAC,QAAQ,EAAjB,CAAiB,CAAC,CAC9E,CAAC;QAEF,IAAM,UAAU,GAAG,uBAAuB,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC,IAAI,CAC/E,GAAG,CAAC,UAAC,EAA4B;gBAA3B,wBAAgB,EAAE,gBAAQ;YAC9B,OAAO,IAAI,aAAa,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QACvD,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAEM,sDAA4B,GAAnC,UAAoC,UAAsC;QAA1E,iBAkBC;QAjBC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAC/D,GAAG,CAAC,UAAC,GAAW;YACd,IAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,UAAQ,UAAU,CAAC,QAAU,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,CAAC,WAAQ,UAAU,CAAC,WAAW,GAAG,CAAC,CAAE,CAAC,CAAC;YAChD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpB,GAAG,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,MAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;aAC7D;YACD,IAAM,OAAO,GAAG,IAAI,UAAU,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7E,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;gBAC5B,iBAAiB,EAAjB;oBACE,OAAO,6CAA6C,CAAC;gBACvD,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,EACF,GAAG,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAtC,CAAsC,CAAC,CACtE,CAAC;IACJ,CAAC;IAEO,6DAAmC,GAA3C,UAA4C,UAAsC,EAAE,MAAsB;QAA1G,iBAoBC;QAnBC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,CAAC,IAAI;QACnF,oEAAoE;QACpE,GAAG,CAAC,UAAC,GAAW;YACd,IAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,YAAU,MAAM,CAAC,MAAQ,CAAC,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,UAAQ,UAAU,CAAC,QAAU,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,CAAC,WAAQ,UAAU,CAAC,WAAW,GAAG,CAAC,CAAE,CAAC,CAAC;YAChD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpB,GAAG,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,MAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;aAC7D;YACD,IAAM,OAAO,GAAG,IAAI,UAAU,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7E,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;gBAC5B,iBAAiB,EAAjB;oBACE,OAAO,4CAA4C,CAAC;gBACtD,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,EACF,GAAG,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAtC,CAAsC,CAAC,CACtE,CAAC;IACJ,CAAC;IAEO,qDAA2B,GAAnC,UAAoC,UAAsC;QAA1E,iBAkBC;QAjBC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAC9D,GAAG,CAAC,UAAC,GAAW;YACd,IAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,UAAQ,UAAU,CAAC,QAAU,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,CAAC,WAAQ,UAAU,CAAC,WAAW,GAAG,CAAC,CAAE,CAAC,CAAC;YAChD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpB,GAAG,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,MAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;aAC7D;YACD,IAAM,OAAO,GAAG,IAAI,UAAU,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7E,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;gBAC5B,iBAAiB,EAAjB;oBACE,OAAO,4CAA4C,CAAC;gBACtD,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,EACF,GAAG,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAtC,CAAsC,CAAC,CACtE,CAAC;IACJ,CAAC;IAEO,uDAA6B,GAArC,UAAsC,UAAsC;QAA5E,iBAkBC;QAjBC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAChE,GAAG,CAAC,UAAC,GAAW;YACd,IAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,UAAQ,UAAU,CAAC,QAAU,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,CAAC,WAAQ,UAAU,CAAC,WAAW,GAAG,CAAC,CAAE,CAAC,CAAC;YAChD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpB,GAAG,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,MAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;aAC7D;YACD,IAAM,OAAO,GAAG,IAAI,UAAU,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7E,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;gBAC5B,iBAAiB,EAAjB;oBACE,OAAO,8CAA8C,CAAC;gBACxD,CAAC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,EACF,GAAG,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAtC,CAAsC,CAAC,CACtE,CAAC;IACJ,CAAC;IAEM,4CAAkB,GAAzB,UAA0B,MAAsB;QAC9C,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,gCAAgC,CAAC,MAAM,CAAC,CAAC,CAAC;IACpE,CAAC;IAEM,kDAAwB,GAA/B;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,kCAAkC,EAAE,CAAC,CAAC;IAChE,CAAC;IAEM,iDAAuB,GAA9B;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC,CAAC;IAC7D,CAAC;IAEM,8CAAoB,GAA3B,UAA4B,MAAsB;QAChD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,kCAAkC,CAAC,MAAM,CAAC,CAAC,CAAA;IACrE,CAAC;IAEM,gDAAsB,GAA7B,UAA8B,MAAsB;QAClD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,oCAAoC,CAAC,MAAM,CAAC,CAAC,CAAA;IACvE,CAAC;IAEM,mDAAyB,GAAhC;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,uCAAuC,EAAE,CAAC,CAAA;IACpE,CAAC;IAEM,oDAA0B,GAAjC;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAClE,CAAC;IAEM,2CAAiB,GAAxB,UAAyB,KAAoB;QAC3C,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,+BAA+B,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC;IAEM,iDAAuB,GAA9B;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,iCAAiC,EAAE,CAAC,CAAC;IAC/D,CAAC;IAEM,gDAAsB,GAA7B;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAC5D,CAAC;IAEM,6CAAmB,GAA1B,UAA2B,KAAoB;QAC7C,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,iCAAiC,CAAC,KAAK,CAAC,CAAC,CAAA;IACnE,CAAC;IAEM,+CAAqB,GAA5B,UAA6B,KAAoB;QAC/C,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,mCAAmC,CAAC,KAAK,CAAC,CAAC,CAAA;IACrE,CAAC;IAEM,kDAAwB,GAA/B;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,sCAAsC,EAAE,CAAC,CAAA;IACnE,CAAC;IAEM,mDAAyB,GAAhC;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IACI,sDAA4B,GAAnC,UAAoC,MAAsB;QAA1D,iBAmDC;QAlDC,IAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrC,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;QAC1D,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAC1E,kBAAkB,EAAE,EACpB,GAAG,CAAC,UAAC,QAAgB,IAAK,OAAA,CAAC,QAAQ,CAAC,CAAC,CAAI,QAAQ,SAAI,MAAM,CAAC,EAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAlD,CAAkD,CAAC,EAC7E,oBAAoB,EAAE,CACvB,CAAC;QAEF,IAAM,gBAAgB,GAAG,IAAI,sBAAsB,CAAC,uBAAuB,CAAC,cAAc,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,MAAkC,CAAC,CAAC;QAEvK,IAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAC7B,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,QAAgB;YACnB,IAAI,QAAQ,EAAE;gBACZ,IAAM,OAAO,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC/C,IAAI,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;gBAChC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;gBAC7D,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC1B,OAAO,IAAI,2BAA2B,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC,CAAC;aACxG;iBAAM;gBACL,OAAO,IAAI,2BAA2B,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC;aAC/F;QACH,CAAC,CAAC,CACH,CAAC;QAEF,+BAA+B;QAC/B,QAAQ,CAAC,IAAI,CACX,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CACtC,CAAC,SAAS,EAAE,CAAC;QAEd,gCAAgC;QAChC,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAClD,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAsB;YACzB,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;gBAC1B,IAAI,QAAQ,CAAE,QAAgB,CAAC,YAAY,CAAC,EAAE;oBAC5C,KAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,eAAe,EAAG,QAAgB,CAAC,YAAY,EAAE,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC/G;aACF;iBAAM;gBACL,KAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;gBACzE,OAAO,QAAQ,CAAC;aACjB;QACH,CAAC,CAAC,EACF,kBAAkB,EAAE,EACpB,GAAG,CAAC,UAAC,QAAuC;YAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;gBACvC,OAAO,QAAQ,CAAC,cAAc,CAAC;aAChC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEM,8CAAoB,GAA3B,UAA4B,EAAU;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IAEM,qDAA2B,GAAlC;QAAA,iBAIC;QAHC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAC/D,GAAG,CAAC,UAAC,IAAY,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAA/C,CAA+C,CAAC,CACvE,CAAA;IACH,CAAC;IAED;;;;;;;OAOG;IACI,qDAA2B,GAAlC,UAAmC,KAAoB;QAAvD,iBAkDC;QAjDC,IAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACpC,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;QAC1D,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CACzE,kBAAkB,EAAE,EACpB,GAAG,CAAC,UAAC,QAAgB,IAAK,OAAA,CAAC,QAAQ,CAAC,CAAC,CAAI,QAAQ,SAAI,KAAK,CAAC,EAAI,CAAC,CAAC,CAAI,QAAQ,kBAAa,KAAK,CAAC,MAAM,CAAC,EAAI,CAAC,EAAlF,CAAkF,CAAC,EAC7G,oBAAoB,EAAE,CACvB,CAAC;QAEF,IAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAC7B,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,QAAgB;YACnB,IAAI,QAAQ,EAAE;gBACZ,IAAM,OAAO,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC/C,IAAI,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;gBAChC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;gBAC7D,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC1B,OAAO,IAAI,0BAA0B,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;aAC5F;iBAAM;gBACL,OAAO,IAAI,0BAA0B,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;aACnF;QACH,CAAC,CAAC,CACH,CAAC;QAEF,+BAA+B;QAC/B,QAAQ,CAAC,IAAI,CACX,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CACtC,CAAC,SAAS,EAAE,CAAC;QAEd,+BAA+B;QAC/B,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAClD,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAsB;YACzB,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;gBAC1B,IAAI,QAAQ,CAAE,QAAgB,CAAC,YAAY,CAAC,EAAE;oBAC5C,KAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,eAAe,EAAG,QAAgB,CAAC,YAAY,EAAE,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC/G;aACF;iBAAM;gBACL,IAAM,WAAW,GAAM,KAAK,CAAC,MAAM,CAAC,MAAM,SAAI,KAAK,CAAC,OAAO,IAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,MAAI,KAAK,CAAC,SAAW,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC;gBAC7G,KAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;gBACrE,OAAO,QAAQ,CAAC;aACjB;QACH,CAAC,CAAC,EACF,kBAAkB,EAAE,EACpB,GAAG,CAAC,UAAC,QAAsC;YACzC,IAAI,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;gBACtC,OAAO,QAAQ,CAAC,aAAa,CAAC;aAC/B;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEM,6CAAmB,GAA1B,UAA2B,EAAU;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IAEM,oDAA0B,GAAjC;QAAA,iBAIC;QAHC,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAC9D,GAAG,CAAC,UAAC,IAAY,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAA/C,CAA+C,CAAC,CACvE,CAAA;IACH,CAAC;IAEO,gCAAM,GAAd,UAAe,IAAY,EAAE,EAAU;QACrC,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;QAC1D,IAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CACtD,kBAAkB,EAAE,EACpB,GAAG,CAAC,UAAC,QAAgB,IAAK,OAAG,QAAQ,SAAI,EAAI,EAAnB,CAAmB,CAAC,EAC9C,oBAAoB,EAAE,CACvB,CAAC;QAEF,IAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAC7B,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,QAAgB,IAAK,OAAA,IAAI,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAtC,CAAsC,CAAC,CAClE,CAAC;QAEF,6BAA6B;QAC7B,QAAQ,CAAC,IAAI,CACX,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CACtC,CAAC,SAAS,EAAE,CAAC;QAEd,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAClD,oBAAoB,EAAE,CACvB,CAAC;IACJ,CAAC;IAEO,2CAAiB,GAAzB,UAA0B,OAAgB,EAAE,MAAe,EAAE,OAAgB,EAAE,OAAY;QAA3F,iBAeC;QAdC,IAAM,MAAM,GAAG,sCAAsC,CAAC;QACtD,IAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/C,IAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACnD,IAAM,QAAQ,GAAG,uBAAuB,CACtC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAI,MAAM,SAAI,MAAQ,CAAC,CAAC,CAAI,MAAM,SAAI,MAAQ,CAAC,EAClF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAG,MAAM,IAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAI,YAAc,EAAE,OAAO,CAAC,CAC1F,CAAC;QACF,QAAQ,CAAC,SAAS,CAAC,UAAC,EAAe;gBAAd,YAAI,EAAE,eAAO;YAChC,IAAI,OAAO,EAAE;gBACX,KAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;aACjD;iBAAM;gBACL,KAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;aAC/C;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,6CAAmB,GAAnB,UAAoB,KAAa;QAC/B,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CACrC,GAAG,CAAC,UAAC,EAA4C;YAC/C,IAAM,cAAc,GAAoB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAC5D,UAAC,KAAoB,IAAK,OAAA,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAApC,CAAoC,CAC/D,CAAC;YACF,IAAM,IAAI,GAAiC,IAAI,aAAa,CAAgB,IAAI,QAAQ,EAAE,EAAE,cAAc,CAAC,CAAA;YAC3G,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IA3fU,eAAe;QAD3B,UAAU,EAAE;iDAO2B,cAAc;YAC3B,sBAAsB;YACf,kBAAkB;YACvB,KAAK;YACU,oBAAoB;YACxB,gBAAgB;OAX3C,eAAe,CA4f3B;IAAD,sBAAC;CAAA,AA5fD,IA4fC;SA5fY,eAAe"} \ No newline at end of file diff --git a/src/app/core/roles/role-types.js b/src/app/core/roles/role-types.js new file mode 100644 index 0000000000..78e876cd48 --- /dev/null +++ b/src/app/core/roles/role-types.js @@ -0,0 +1,7 @@ +export var RoleType; +(function (RoleType) { + RoleType["Submitter"] = "submitter"; + RoleType["Controller"] = "controller"; + RoleType["Admin"] = "admin"; +})(RoleType || (RoleType = {})); +//# sourceMappingURL=role-types.js.map \ No newline at end of file diff --git a/src/app/core/roles/role-types.js.map b/src/app/core/roles/role-types.js.map new file mode 100644 index 0000000000..95b2dea04d --- /dev/null +++ b/src/app/core/roles/role-types.js.map @@ -0,0 +1 @@ +{"version":3,"file":"role-types.js","sourceRoot":"","sources":["role-types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,mCAAuB,CAAA;IACvB,qCAAyB,CAAA;IACzB,2BAAe,CAAA;AACjB,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB"} \ No newline at end of file diff --git a/src/app/core/roles/role.service.js b/src/app/core/roles/role.service.js new file mode 100644 index 0000000000..169d06592f --- /dev/null +++ b/src/app/core/roles/role.service.js @@ -0,0 +1,67 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { distinctUntilChanged } from 'rxjs/operators'; +import { RoleType } from './role-types'; +import { CollectionDataService } from '../data/collection-data.service'; +/** + * A service that provides methods to identify user role. + */ +var RoleService = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {CollectionDataService} collectionService + */ + function RoleService(collectionService) { + this.collectionService = collectionService; + } + /** + * Check if current user is a submitter + */ + RoleService.prototype.isSubmitter = function () { + return this.collectionService.hasAuthorizedCollection().pipe(distinctUntilChanged()); + }; + /** + * Check if current user is a controller + */ + RoleService.prototype.isController = function () { + // TODO find a way to check if user is a controller + return observableOf(true); + }; + /** + * Check if current user is an admin + */ + RoleService.prototype.isAdmin = function () { + // TODO find a way to check if user is an admin + return observableOf(false); + }; + /** + * Check if current user by role type + * + * @param {RoleType} role + * the role type + */ + RoleService.prototype.checkRole = function (role) { + var check; + switch (role) { + case RoleType.Submitter: + check = this.isSubmitter(); + break; + case RoleType.Controller: + check = this.isController(); + break; + case RoleType.Admin: + check = this.isAdmin(); + break; + } + return check; + }; + RoleService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [CollectionDataService]) + ], RoleService); + return RoleService; +}()); +export { RoleService }; +//# sourceMappingURL=role.service.js.map \ No newline at end of file diff --git a/src/app/core/roles/role.service.js.map b/src/app/core/roles/role.service.js.map new file mode 100644 index 0000000000..5b04248904 --- /dev/null +++ b/src/app/core/roles/role.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"role.service.js","sourceRoot":"","sources":["role.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE;;GAEG;AAEH;IAEE;;;;OAIG;IACH,qBAAoB,iBAAwC;QAAxC,sBAAiB,GAAjB,iBAAiB,CAAuB;IAC5D,CAAC;IAED;;OAEG;IACH,iCAAW,GAAX;QACE,OAAO,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAC1D,oBAAoB,EAAE,CACvB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,kCAAY,GAAZ;QACE,mDAAmD;QACnD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,6BAAO,GAAP;QACE,+CAA+C;QAC/C,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,+BAAS,GAAT,UAAU,IAAc;QACtB,IAAI,KAA0B,CAAC;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,QAAQ,CAAC,SAAS;gBACrB,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,QAAQ,CAAC,UAAU;gBACtB,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5B,MAAM;YACR,KAAK,QAAQ,CAAC,KAAK;gBACjB,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM;SACT;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAxDU,WAAW;QADvB,UAAU,EAAE;iDAQ4B,qBAAqB;OAPjD,WAAW,CAyDvB;IAAD,kBAAC;CAAA,AAzDD,IAyDC;SAzDY,WAAW"} \ No newline at end of file diff --git a/src/app/core/serializer.js b/src/app/core/serializer.js new file mode 100644 index 0000000000..4b3b4ca18d --- /dev/null +++ b/src/app/core/serializer.js @@ -0,0 +1 @@ +//# sourceMappingURL=serializer.js.map \ No newline at end of file diff --git a/src/app/core/serializer.js.map b/src/app/core/serializer.js.map new file mode 100644 index 0000000000..36f3dae23e --- /dev/null +++ b/src/app/core/serializer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"serializer.js","sourceRoot":"","sources":["serializer.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/shared/bitstream-format.model.js b/src/app/core/shared/bitstream-format.model.js new file mode 100644 index 0000000000..9b822ece42 --- /dev/null +++ b/src/app/core/shared/bitstream-format.model.js @@ -0,0 +1,10 @@ +/** + * Model class for a Bitstream Format + */ +var BitstreamFormat = /** @class */ (function () { + function BitstreamFormat() { + } + return BitstreamFormat; +}()); +export { BitstreamFormat }; +//# sourceMappingURL=bitstream-format.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/bitstream-format.model.js.map b/src/app/core/shared/bitstream-format.model.js.map new file mode 100644 index 0000000000..fc2f4bac23 --- /dev/null +++ b/src/app/core/shared/bitstream-format.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bitstream-format.model.js","sourceRoot":"","sources":["bitstream-format.model.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH;IAAA;IA+CA,CAAC;IAAD,sBAAC;AAAD,CAAC,AA/CD,IA+CC"} \ No newline at end of file diff --git a/src/app/core/shared/bitstream.model.js b/src/app/core/shared/bitstream.model.js new file mode 100644 index 0000000000..4ca998a61d --- /dev/null +++ b/src/app/core/shared/bitstream.model.js @@ -0,0 +1,11 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from './dspace-object.model'; +var Bitstream = /** @class */ (function (_super) { + tslib_1.__extends(Bitstream, _super); + function Bitstream() { + return _super !== null && _super.apply(this, arguments) || this; + } + return Bitstream; +}(DSpaceObject)); +export { Bitstream }; +//# sourceMappingURL=bitstream.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/bitstream.model.js.map b/src/app/core/shared/bitstream.model.js.map new file mode 100644 index 0000000000..98c82ef30a --- /dev/null +++ b/src/app/core/shared/bitstream.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bitstream.model.js","sourceRoot":"","sources":["bitstream.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAMrD;IAA+B,qCAAY;IAA3C;;IAqCA,CAAC;IAAD,gBAAC;AAAD,CAAC,AArCD,CAA+B,YAAY,GAqC1C"} \ No newline at end of file diff --git a/src/app/core/shared/browse-definition.model.js b/src/app/core/shared/browse-definition.model.js new file mode 100644 index 0000000000..aded025a94 --- /dev/null +++ b/src/app/core/shared/browse-definition.model.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs } from 'cerialize'; +var BrowseDefinition = /** @class */ (function () { + function BrowseDefinition() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], BrowseDefinition.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], BrowseDefinition.prototype, "metadataBrowse", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Array) + ], BrowseDefinition.prototype, "sortOptions", void 0); + tslib_1.__decorate([ + autoserializeAs('order'), + tslib_1.__metadata("design:type", String) + ], BrowseDefinition.prototype, "defaultSortOrder", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], BrowseDefinition.prototype, "type", void 0); + tslib_1.__decorate([ + autoserializeAs('metadata'), + tslib_1.__metadata("design:type", Array) + ], BrowseDefinition.prototype, "metadataKeys", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], BrowseDefinition.prototype, "_links", void 0); + return BrowseDefinition; +}()); +export { BrowseDefinition }; +//# sourceMappingURL=browse-definition.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/browse-definition.model.js.map b/src/app/core/shared/browse-definition.model.js.map new file mode 100644 index 0000000000..5c903b3347 --- /dev/null +++ b/src/app/core/shared/browse-definition.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-definition.model.js","sourceRoot":"","sources":["browse-definition.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAG3D;IAAA;IAuBA,CAAC;IArBC;QADC,aAAa;;gDACH;IAGX;QADC,aAAa;;4DACU;IAGxB;QADC,aAAa;;yDACY;IAG1B;QADC,eAAe,CAAC,OAAO,CAAC;;8DACA;IAGzB;QADC,aAAa;;kDACD;IAGb;QADC,eAAe,CAAC,UAAU,CAAC;;0DACL;IAGvB;QADC,aAAa;;oDAGb;IACH,uBAAC;CAAA,AAvBD,IAuBC;SAvBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/shared/browse-entry.model.js b/src/app/core/shared/browse-entry.model.js new file mode 100644 index 0000000000..c0305a9bb8 --- /dev/null +++ b/src/app/core/shared/browse-entry.model.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs } from 'cerialize'; +var BrowseEntry = /** @class */ (function () { + function BrowseEntry() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], BrowseEntry.prototype, "type", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], BrowseEntry.prototype, "authority", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], BrowseEntry.prototype, "value", void 0); + tslib_1.__decorate([ + autoserializeAs('valueLang'), + tslib_1.__metadata("design:type", String) + ], BrowseEntry.prototype, "language", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], BrowseEntry.prototype, "count", void 0); + return BrowseEntry; +}()); +export { BrowseEntry }; +//# sourceMappingURL=browse-entry.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/browse-entry.model.js.map b/src/app/core/shared/browse-entry.model.js.map new file mode 100644 index 0000000000..fb24ae05ea --- /dev/null +++ b/src/app/core/shared/browse-entry.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-entry.model.js","sourceRoot":"","sources":["browse-entry.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAG3D;IAAA;IAiBA,CAAC;IAdC;QADC,aAAa;;6CACD;IAGb;QADC,aAAa;;kDACI;IAGlB;QADC,aAAa;;8CACA;IAGd;QADC,eAAe,CAAC,WAAW,CAAC;;iDACZ;IAGjB;QADC,aAAa;;8CACA;IAEhB,kBAAC;CAAA,AAjBD,IAiBC;SAjBY,WAAW"} \ No newline at end of file diff --git a/src/app/core/shared/bundle.model.js b/src/app/core/shared/bundle.model.js new file mode 100644 index 0000000000..1ede803117 --- /dev/null +++ b/src/app/core/shared/bundle.model.js @@ -0,0 +1,11 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from './dspace-object.model'; +var Bundle = /** @class */ (function (_super) { + tslib_1.__extends(Bundle, _super); + function Bundle() { + return _super !== null && _super.apply(this, arguments) || this; + } + return Bundle; +}(DSpaceObject)); +export { Bundle }; +//# sourceMappingURL=bundle.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/bundle.model.js.map b/src/app/core/shared/bundle.model.js.map new file mode 100644 index 0000000000..708d273307 --- /dev/null +++ b/src/app/core/shared/bundle.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bundle.model.js","sourceRoot":"","sources":["bundle.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAMrD;IAA4B,kCAAY;IAAxC;;IAkBA,CAAC;IAAD,aAAC;AAAD,CAAC,AAlBD,CAA4B,YAAY,GAkBvC"} \ No newline at end of file diff --git a/src/app/core/shared/collection.model.js b/src/app/core/shared/collection.model.js new file mode 100644 index 0000000000..b454d0c7ec --- /dev/null +++ b/src/app/core/shared/collection.model.js @@ -0,0 +1,66 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from './dspace-object.model'; +var Collection = /** @class */ (function (_super) { + tslib_1.__extends(Collection, _super); + function Collection() { + return _super !== null && _super.apply(this, arguments) || this; + } + Object.defineProperty(Collection.prototype, "introductoryText", { + /** + * The introductory text of this Collection + * Corresponds to the metadata field dc.description + */ + get: function () { + return this.firstMetadataValue('dc.description'); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Collection.prototype, "shortDescription", { + /** + * The short description: HTML + * Corresponds to the metadata field dc.description.abstract + */ + get: function () { + return this.firstMetadataValue('dc.description.abstract'); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Collection.prototype, "copyrightText", { + /** + * The copyright text of this Collection + * Corresponds to the metadata field dc.rights + */ + get: function () { + return this.firstMetadataValue('dc.rights'); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Collection.prototype, "dcLicense", { + /** + * The license of this Collection + * Corresponds to the metadata field dc.rights.license + */ + get: function () { + return this.firstMetadataValue('dc.rights.license'); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Collection.prototype, "sidebarText", { + /** + * The sidebar text of this Collection + * Corresponds to the metadata field dc.description.tableofcontents + */ + get: function () { + return this.firstMetadataValue('dc.description.tableofcontents'); + }, + enumerable: true, + configurable: true + }); + return Collection; +}(DSpaceObject)); +export { Collection }; +//# sourceMappingURL=collection.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/collection.model.js.map b/src/app/core/shared/collection.model.js.map new file mode 100644 index 0000000000..b19d242005 --- /dev/null +++ b/src/app/core/shared/collection.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection.model.js","sourceRoot":"","sources":["collection.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AASrD;IAAgC,sCAAY;IAA5C;;IA0EA,CAAC;IA/DC,sBAAI,wCAAgB;QAJpB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QACnD,CAAC;;;OAAA;IAMD,sBAAI,wCAAgB;QAJpB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,CAAC;QAC5D,CAAC;;;OAAA;IAMD,sBAAI,qCAAa;QAJjB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;;;OAAA;IAMD,sBAAI,iCAAS;QAJb;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC;;;OAAA;IAMD,sBAAI,mCAAW;QAJf;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,gCAAgC,CAAC,CAAC;QACnE,CAAC;;;OAAA;IA6BH,iBAAC;AAAD,CAAC,AA1ED,CAAgC,YAAY,GA0E3C"} \ No newline at end of file diff --git a/src/app/core/shared/community.model.js b/src/app/core/shared/community.model.js new file mode 100644 index 0000000000..d762595a4a --- /dev/null +++ b/src/app/core/shared/community.model.js @@ -0,0 +1,55 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from './dspace-object.model'; +var Community = /** @class */ (function (_super) { + tslib_1.__extends(Community, _super); + function Community() { + return _super !== null && _super.apply(this, arguments) || this; + } + Object.defineProperty(Community.prototype, "introductoryText", { + /** + * The introductory text of this Community + * Corresponds to the metadata field dc.description + */ + get: function () { + return this.firstMetadataValue('dc.description'); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Community.prototype, "shortDescription", { + /** + * The short description: HTML + * Corresponds to the metadata field dc.description.abstract + */ + get: function () { + return this.firstMetadataValue('dc.description.abstract'); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Community.prototype, "copyrightText", { + /** + * The copyright text of this Community + * Corresponds to the metadata field dc.rights + */ + get: function () { + return this.firstMetadataValue('dc.rights'); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(Community.prototype, "sidebarText", { + /** + * The sidebar text of this Community + * Corresponds to the metadata field dc.description.tableofcontents + */ + get: function () { + return this.firstMetadataValue('dc.description.tableofcontents'); + }, + enumerable: true, + configurable: true + }); + return Community; +}(DSpaceObject)); +export { Community }; +//# sourceMappingURL=community.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/community.model.js.map b/src/app/core/shared/community.model.js.map new file mode 100644 index 0000000000..974b25cc40 --- /dev/null +++ b/src/app/core/shared/community.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community.model.js","sourceRoot":"","sources":["community.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAOrD;IAA+B,qCAAY;IAA3C;;IA0DA,CAAC;IA/CC,sBAAI,uCAAgB;QAJpB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QACnD,CAAC;;;OAAA;IAMD,sBAAI,uCAAgB;QAJpB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,CAAC;QAC5D,CAAC;;;OAAA;IAMD,sBAAI,oCAAa;QAJjB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;;;OAAA;IAMD,sBAAI,kCAAW;QAJf;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,gCAAgC,CAAC,CAAC;QACnE,CAAC;;;OAAA;IAqBH,gBAAC;AAAD,CAAC,AA1DD,CAA+B,YAAY,GA0D1C"} \ No newline at end of file diff --git a/src/app/core/shared/dspace-object-type.model.js b/src/app/core/shared/dspace-object-type.model.js new file mode 100644 index 0000000000..462683c50f --- /dev/null +++ b/src/app/core/shared/dspace-object-type.model.js @@ -0,0 +1,9 @@ +export var DSpaceObjectType; +(function (DSpaceObjectType) { + DSpaceObjectType["BUNDLE"] = "BUNDLE"; + DSpaceObjectType["BITSTREAM"] = "BITSTREAM"; + DSpaceObjectType["ITEM"] = "ITEM"; + DSpaceObjectType["COLLECTION"] = "COLLECTION"; + DSpaceObjectType["COMMUNITY"] = "COMMUNITY"; +})(DSpaceObjectType || (DSpaceObjectType = {})); +//# sourceMappingURL=dspace-object-type.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/dspace-object-type.model.js.map b/src/app/core/shared/dspace-object-type.model.js.map new file mode 100644 index 0000000000..6b22f291f1 --- /dev/null +++ b/src/app/core/shared/dspace-object-type.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-object-type.model.js","sourceRoot":"","sources":["dspace-object-type.model.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,2CAAuB,CAAA;IACvB,iCAAa,CAAA;IACb,6CAAyB,CAAA;IACzB,2CAAuB,CAAA;AACzB,CAAC,EANW,gBAAgB,KAAhB,gBAAgB,QAM3B"} \ No newline at end of file diff --git a/src/app/core/shared/dspace-object.model.js b/src/app/core/shared/dspace-object.model.js new file mode 100644 index 0000000000..12f6bb3240 --- /dev/null +++ b/src/app/core/shared/dspace-object.model.js @@ -0,0 +1,107 @@ +import { Metadata } from './metadata.utils'; +import { isUndefined } from '../../shared/empty.util'; +import { hasNoValue } from '../../shared/empty.util'; +/** + * An abstract model class for a DSpaceObject. + */ +var DSpaceObject = /** @class */ (function () { + function DSpaceObject() { + } + Object.defineProperty(DSpaceObject.prototype, "name", { + /** + * The name for this DSpaceObject + */ + get: function () { + return (isUndefined(this._name)) ? this.firstMetadataValue('dc.title') : this._name; + }, + /** + * The name for this DSpaceObject + */ + set: function (name) { + this._name = name; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DSpaceObject.prototype, "metadataAsList", { + /** + * Retrieve the current metadata as a list of MetadatumViewModels + */ + get: function () { + return Metadata.toViewModelList(this.metadata); + }, + enumerable: true, + configurable: true + }); + /** + * Gets all matching metadata in this DSpaceObject. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {MetadataValue[]} the matching values or an empty array. + */ + DSpaceObject.prototype.allMetadata = function (keyOrKeys, valueFilter) { + return Metadata.all(this.metadata, keyOrKeys, valueFilter); + }; + /** + * Like [[allMetadata]], but only returns string values. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {string[]} the matching string values or an empty array. + */ + DSpaceObject.prototype.allMetadataValues = function (keyOrKeys, valueFilter) { + return Metadata.allValues(this.metadata, keyOrKeys, valueFilter); + }; + /** + * Gets the first matching MetadataValue object in this DSpaceObject, or `undefined`. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {MetadataValue} the first matching value, or `undefined`. + */ + DSpaceObject.prototype.firstMetadata = function (keyOrKeys, valueFilter) { + return Metadata.first(this.metadata, keyOrKeys, valueFilter); + }; + /** + * Like [[firstMetadata]], but only returns a string value, or `undefined`. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {string} the first matching string value, or `undefined`. + */ + DSpaceObject.prototype.firstMetadataValue = function (keyOrKeys, valueFilter) { + return Metadata.firstValue(this.metadata, keyOrKeys, valueFilter); + }; + /** + * Checks for a matching metadata value in this DSpaceObject. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {boolean} whether a match is found. + */ + DSpaceObject.prototype.hasMetadata = function (keyOrKeys, valueFilter) { + return Metadata.has(this.metadata, keyOrKeys, valueFilter); + }; + /** + * Find metadata on a specific field and order all of them using their "place" property. + * @param key + */ + DSpaceObject.prototype.findMetadataSortedByPlace = function (key) { + return this.allMetadata([key]).sort(function (a, b) { + if (hasNoValue(a.place) && hasNoValue(b.place)) { + return 0; + } + if (hasNoValue(a.place)) { + return -1; + } + if (hasNoValue(b.place)) { + return 1; + } + return a.place - b.place; + }); + }; + return DSpaceObject; +}()); +export { DSpaceObject }; +//# sourceMappingURL=dspace-object.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/dspace-object.model.js.map b/src/app/core/shared/dspace-object.model.js.map new file mode 100644 index 0000000000..76b3781cb2 --- /dev/null +++ b/src/app/core/shared/dspace-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-object.model.js","sourceRoot":"","sources":["dspace-object.model.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAKtD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD;;GAEG;AACH;IAAA;IAmIA,CAAC;IA3GC,sBAAI,8BAAI;QAHR;;WAEG;aACH;YACE,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QACtF,CAAC;QAED;;WAEG;aACH,UAAS,IAAI;YACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,CAAC;;;OAPA;IAiBD,sBAAI,wCAAc;QAHlB;;WAEG;aACH;YACE,OAAO,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC;;;OAAA;IAYD;;;;;;OAMG;IACH,kCAAW,GAAX,UAAY,SAA4B,EAAE,WAAiC;QACzE,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;OAMG;IACH,wCAAiB,GAAjB,UAAkB,SAA4B,EAAE,WAAiC;QAC/E,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;OAMG;IACH,oCAAa,GAAb,UAAc,SAA4B,EAAE,WAAiC;QAC3E,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;OAMG;IACH,yCAAkB,GAAlB,UAAmB,SAA4B,EAAE,WAAiC;QAChF,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;OAMG;IACH,kCAAW,GAAX,UAAY,SAA4B,EAAE,WAAiC;QACzE,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACH,gDAAyB,GAAzB,UAA0B,GAAW;QACnC,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAC,CAAgB,EAAE,CAAgB;YACrE,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBAC9C,OAAO,CAAC,CAAC;aACV;YACD,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBACvB,OAAO,CAAC,CAAC,CAAC;aACX;YACD,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBACvB,OAAO,CAAC,CAAC;aACV;YACD,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAEH,mBAAC;AAAD,CAAC,AAnID,IAmIC"} \ No newline at end of file diff --git a/src/app/core/shared/file.service.js b/src/app/core/shared/file.service.js new file mode 100644 index 0000000000..865ae26d7d --- /dev/null +++ b/src/app/core/shared/file.service.js @@ -0,0 +1,50 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { HttpHeaders } from '@angular/common/http'; +import { DSpaceRESTv2Service } from '../dspace-rest-v2/dspace-rest-v2.service'; +import { RestRequestMethod } from '../data/rest-request-method'; +import { saveAs } from 'file-saver'; +/** + * Provides utility methods to save files on the client-side. + */ +var FileService = /** @class */ (function () { + function FileService(restService) { + this.restService = restService; + } + /** + * Makes a HTTP Get request to download a file + * + * @param url + * file url + */ + FileService.prototype.downloadFile = function (url) { + var _this = this; + var headers = new HttpHeaders(); + var options = Object.create({ headers: headers, responseType: 'blob' }); + return this.restService.request(RestRequestMethod.GET, url, null, options) + .subscribe(function (data) { + saveAs(data.payload, _this.getFileNameFromResponseContentDisposition(data)); + }); + }; + /** + * Derives file name from the http response + * by looking inside content-disposition + * @param res + * http DSpaceRESTV2Response + */ + FileService.prototype.getFileNameFromResponseContentDisposition = function (res) { + // NOTE: to be able to retrieve 'Content-Disposition' header, + // you need to set 'Access-Control-Expose-Headers': 'Content-Disposition' ON SERVER SIDE + var contentDisposition = res.headers.get('content-disposition') || ''; + var matches = /filename="([^;]+)"/ig.exec(contentDisposition) || []; + return (matches[1] || 'untitled').trim().replace(/\.[^/.]+$/, ''); + }; + ; + FileService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSpaceRESTv2Service]) + ], FileService); + return FileService; +}()); +export { FileService }; +//# sourceMappingURL=file.service.js.map \ No newline at end of file diff --git a/src/app/core/shared/file.service.js.map b/src/app/core/shared/file.service.js.map new file mode 100644 index 0000000000..c0452e0f09 --- /dev/null +++ b/src/app/core/shared/file.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"file.service.js","sourceRoot":"","sources":["file.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,mBAAmB,EAAe,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGpC;;GAEG;AAEH;IACE,qBACU,WAAgC;QAAhC,gBAAW,GAAX,WAAW,CAAqB;IACtC,CAAC;IAEL;;;;;OAKG;IACH,kCAAY,GAAZ,UAAa,GAAW;QAAxB,iBAOC;QANC,IAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,IAAM,OAAO,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAC,OAAO,SAAA,EAAE,YAAY,EAAE,MAAM,EAAC,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC;aACvE,SAAS,CAAC,UAAC,IAAI;YACd,MAAM,CAAC,IAAI,CAAC,OAAe,EAAE,KAAI,CAAC,yCAAyC,CAAC,IAAI,CAAC,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACH,+DAAyC,GAAzC,UAA0C,GAAyB;QACjE,6DAA6D;QAC7D,wFAAwF;QACxF,IAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;QACxE,IAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACtE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAAA,CAAC;IAhCS,WAAW;QADvB,UAAU,EAAE;iDAGY,mBAAmB;OAF/B,WAAW,CAiCvB;IAAD,kBAAC;CAAA,AAjCD,IAiCC;SAjCY,WAAW"} \ No newline at end of file diff --git a/src/app/core/shared/generic-constructor.js b/src/app/core/shared/generic-constructor.js new file mode 100644 index 0000000000..470d00546d --- /dev/null +++ b/src/app/core/shared/generic-constructor.js @@ -0,0 +1,2 @@ +/* tslint:enable:interface-over-type-literal */ +//# sourceMappingURL=generic-constructor.js.map \ No newline at end of file diff --git a/src/app/core/shared/generic-constructor.js.map b/src/app/core/shared/generic-constructor.js.map new file mode 100644 index 0000000000..d1cb9f319e --- /dev/null +++ b/src/app/core/shared/generic-constructor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"generic-constructor.js","sourceRoot":"","sources":["generic-constructor.ts"],"names":[],"mappings":"AAOA,+CAA+C"} \ No newline at end of file diff --git a/src/app/core/shared/hal-endpoint.service.js b/src/app/core/shared/hal-endpoint.service.js new file mode 100644 index 0000000000..644ddc95f0 --- /dev/null +++ b/src/app/core/shared/hal-endpoint.service.js @@ -0,0 +1,75 @@ +import * as tslib_1 from "tslib"; +import { distinctUntilChanged, map, startWith, switchMap } from 'rxjs/operators'; +import { RequestService } from '../data/request.service'; +import { EndpointMapRequest } from '../data/request.models'; +import { hasValue, isEmpty, isNotEmpty } from '../../shared/empty.util'; +import { RESTURLCombiner } from '../url-combiner/rest-url-combiner'; +import { Inject, Injectable } from '@angular/core'; +import { GLOBAL_CONFIG } from '../../../config'; +import { getResponseFromEntry } from './operators'; +import { URLCombiner } from '../url-combiner/url-combiner'; +var HALEndpointService = /** @class */ (function () { + function HALEndpointService(requestService, EnvConfig) { + this.requestService = requestService; + this.EnvConfig = EnvConfig; + } + HALEndpointService.prototype.getRootHref = function () { + return new RESTURLCombiner(this.EnvConfig, '/').toString(); + }; + HALEndpointService.prototype.getRootEndpointMap = function () { + return this.getEndpointMapAt(this.getRootHref()); + }; + HALEndpointService.prototype.getEndpointMapAt = function (href) { + var request = new EndpointMapRequest(this.requestService.generateRequestId(), href); + this.requestService.configure(request); + return this.requestService.getByHref(request.href).pipe(getResponseFromEntry(), map(function (response) { return response.endpointMap; })); + }; + HALEndpointService.prototype.getEndpoint = function (linkPath) { + return this.getEndpointAt.apply(this, [this.getRootHref()].concat(linkPath.split('/'))); + }; + /** + * Resolve the actual hal url based on a list of hal names + * @param {string} href The root url to start from + * @param {string} halNames List of hal names for which a url should be resolved + * @returns {Observable} Observable that emits the found hal url + */ + HALEndpointService.prototype.getEndpointAt = function (href) { + var _this = this; + var halNames = []; + for (var _i = 1; _i < arguments.length; _i++) { + halNames[_i - 1] = arguments[_i]; + } + if (isEmpty(halNames)) { + throw new Error('cant\'t fetch the URL without the HAL link names'); + } + var nextHref$ = this.getEndpointMapAt(href).pipe(map(function (endpointMap) { + /*TODO remove if/else block once the rest response contains _links for facets*/ + var nextName = halNames[0]; + if (hasValue(endpointMap) && hasValue(endpointMap[nextName])) { + return endpointMap[nextName]; + } + else { + return new URLCombiner(href, nextName).toString(); + } + })); + if (halNames.length === 1) { + return nextHref$; + } + else { + return nextHref$.pipe(switchMap(function (nextHref) { return _this.getEndpointAt.apply(_this, [nextHref].concat(halNames.slice(1))); })); + } + }; + HALEndpointService.prototype.isEnabledOnRestApi = function (linkPath) { + return this.getRootEndpointMap().pipe( + // TODO this only works when there's no / in linkPath + map(function (endpointMap) { return isNotEmpty(endpointMap[linkPath]); }), startWith(undefined), distinctUntilChanged()); + }; + HALEndpointService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(1, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [RequestService, Object]) + ], HALEndpointService); + return HALEndpointService; +}()); +export { HALEndpointService }; +//# sourceMappingURL=hal-endpoint.service.js.map \ No newline at end of file diff --git a/src/app/core/shared/hal-endpoint.service.js.map b/src/app/core/shared/hal-endpoint.service.js.map new file mode 100644 index 0000000000..fe1334a14f --- /dev/null +++ b/src/app/core/shared/hal-endpoint.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"hal-endpoint.service.js","sourceRoot":"","sources":["hal-endpoint.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/item-type.model.js b/src/app/core/shared/item-relationships/item-type.model.js new file mode 100644 index 0000000000..f8264a7bb7 --- /dev/null +++ b/src/app/core/shared/item-relationships/item-type.model.js @@ -0,0 +1,10 @@ +/** + * Describes a type of Item + */ +var ItemType = /** @class */ (function () { + function ItemType() { + } + return ItemType; +}()); +export { ItemType }; +//# sourceMappingURL=item-type.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/item-type.model.js.map b/src/app/core/shared/item-relationships/item-type.model.js.map new file mode 100644 index 0000000000..0153ee426e --- /dev/null +++ b/src/app/core/shared/item-relationships/item-type.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-type.model.js","sourceRoot":"","sources":["item-type.model.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH;IAAA;IAoBA,CAAC;IAAD,eAAC;AAAD,CAAC,AApBD,IAoBC"} \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/relationship-type.model.js b/src/app/core/shared/item-relationships/relationship-type.model.js new file mode 100644 index 0000000000..5442dda2a5 --- /dev/null +++ b/src/app/core/shared/item-relationships/relationship-type.model.js @@ -0,0 +1,10 @@ +/** + * Describes a type of Relationship between multiple possible Items + */ +var RelationshipType = /** @class */ (function () { + function RelationshipType() { + } + return RelationshipType; +}()); +export { RelationshipType }; +//# sourceMappingURL=relationship-type.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/relationship-type.model.js.map b/src/app/core/shared/item-relationships/relationship-type.model.js.map new file mode 100644 index 0000000000..e477b7d090 --- /dev/null +++ b/src/app/core/shared/item-relationships/relationship-type.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"relationship-type.model.js","sourceRoot":"","sources":["relationship-type.model.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH;IAAA;IAiEA,CAAC;IAAD,uBAAC;AAAD,CAAC,AAjED,IAiEC"} \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/relationship.model.js b/src/app/core/shared/item-relationships/relationship.model.js new file mode 100644 index 0000000000..adf7c234de --- /dev/null +++ b/src/app/core/shared/item-relationships/relationship.model.js @@ -0,0 +1,10 @@ +/** + * Describes a Relationship between two Items + */ +var Relationship = /** @class */ (function () { + function Relationship() { + } + return Relationship; +}()); +export { Relationship }; +//# sourceMappingURL=relationship.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/relationship.model.js.map b/src/app/core/shared/item-relationships/relationship.model.js.map new file mode 100644 index 0000000000..e610d87740 --- /dev/null +++ b/src/app/core/shared/item-relationships/relationship.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"relationship.model.js","sourceRoot":"","sources":["relationship.model.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH;IAAA;IA6CA,CAAC;IAAD,mBAAC;AAAD,CAAC,AA7CD,IA6CC"} \ No newline at end of file diff --git a/src/app/core/shared/item.model.js b/src/app/core/shared/item.model.js new file mode 100644 index 0000000000..d085f6e120 --- /dev/null +++ b/src/app/core/shared/item.model.js @@ -0,0 +1,60 @@ +import * as tslib_1 from "tslib"; +import { map, startWith, filter, take } from 'rxjs/operators'; +import { DSpaceObject } from './dspace-object.model'; +import { hasValue, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; +var Item = /** @class */ (function (_super) { + tslib_1.__extends(Item, _super); + function Item() { + return _super !== null && _super.apply(this, arguments) || this; + } + Object.defineProperty(Item.prototype, "owner", { + get: function () { + return this.owningCollection; + }, + enumerable: true, + configurable: true + }); + /** + * Retrieves the thumbnail of this item + * @returns {Observable} the primaryBitstream of the 'THUMBNAIL' bundle + */ + Item.prototype.getThumbnail = function () { + // TODO: currently this just picks the first thumbnail + // should be adjusted when we have a way to determine + // the primary thumbnail from rest + return this.getBitstreamsByBundleName('THUMBNAIL').pipe(filter(function (thumbnails) { return isNotEmpty(thumbnails); }), map(function (thumbnails) { return thumbnails[0]; })); + }; + /** + * Retrieves the thumbnail for the given original of this item + * @returns {Observable} the primaryBitstream of the 'THUMBNAIL' bundle + */ + Item.prototype.getThumbnailForOriginal = function (original) { + return this.getBitstreamsByBundleName('THUMBNAIL').pipe(map(function (files) { + return files.find(function (thumbnail) { return thumbnail.name.startsWith(original.name); }); + }), startWith(undefined)); + }; + /** + * Retrieves all files that should be displayed on the item page of this item + * @returns {Observable>>} an array of all Bitstreams in the 'ORIGINAL' bundle + */ + Item.prototype.getFiles = function () { + return this.getBitstreamsByBundleName('ORIGINAL'); + }; + /** + * Retrieves bitstreams by bundle name + * @param bundleName The name of the Bundle that should be returned + * @returns {Observable} the bitstreams with the given bundleName + * TODO now that bitstreams can be paginated this should move to the server + * see https://github.com/DSpace/dspace-angular/issues/332 + */ + Item.prototype.getBitstreamsByBundleName = function (bundleName) { + return this.bitstreams.pipe(filter(function (rd) { return !rd.isResponsePending && isNotUndefined(rd.payload); }), map(function (rd) { return rd.payload.page; }), filter(function (bitstreams) { return hasValue(bitstreams); }), take(1), startWith([]), map(function (bitstreams) { + return bitstreams + .filter(function (bitstream) { return hasValue(bitstream); }) + .filter(function (bitstream) { return bitstream.bundleName === bundleName; }); + })); + }; + return Item; +}(DSpaceObject)); +export { Item }; +//# sourceMappingURL=item.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/item.model.js.map b/src/app/core/shared/item.model.js.map new file mode 100644 index 0000000000..3a1724abb6 --- /dev/null +++ b/src/app/core/shared/item.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item.model.js","sourceRoot":"","sources":["item.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAG9D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIrD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAI/E;IAA0B,gCAAY;IAAtC;;IAkGA,CAAC;IA7DC,sBAAI,uBAAK;aAAT;YACE,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;;;OAAA;IAMD;;;OAGG;IACH,2BAAY,GAAZ;QACE,sDAAsD;QACtD,qDAAqD;QACrD,kCAAkC;QAClC,OAAO,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,IAAI,CACrD,MAAM,CAAC,UAAC,UAAU,IAAK,OAAA,UAAU,CAAC,UAAU,CAAC,EAAtB,CAAsB,CAAC,EAC9C,GAAG,CAAC,UAAC,UAAU,IAAK,OAAA,UAAU,CAAC,CAAC,CAAC,EAAb,CAAa,CAAC,CAAE,CAAA;IACxC,CAAC;IAED;;;OAGG;IACH,sCAAuB,GAAvB,UAAwB,QAAmB;QACzC,OAAO,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,IAAI,CACrD,GAAG,CAAC,UAAC,KAAK;YACR,OAAO,KAAK,CAAC,IAAI,CAAC,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAxC,CAAwC,CAAC,CAAA;QAC5E,CAAC,CAAC,EAAC,SAAS,CAAC,SAAS,CAAC,CAAE,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,uBAAQ,GAAR;QACE,OAAO,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACH,wCAAyB,GAAzB,UAA0B,UAAkB;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CACzB,MAAM,CAAC,UAAC,EAAwC,IAAK,OAAA,CAAC,EAAE,CAAC,iBAAiB,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAAnD,CAAmD,CAAC,EACzG,GAAG,CAAC,UAAC,EAAwC,IAAK,OAAA,EAAE,CAAC,OAAO,CAAC,IAAI,EAAf,CAAe,CAAC,EAClE,MAAM,CAAC,UAAC,UAAuB,IAAK,OAAA,QAAQ,CAAC,UAAU,CAAC,EAApB,CAAoB,CAAC,EACzD,IAAI,CAAC,CAAC,CAAC,EACP,SAAS,CAAC,EAAE,CAAC,EACb,GAAG,CAAC,UAAC,UAAU;YACb,OAAO,UAAU;iBACd,MAAM,CAAC,UAAC,SAAS,IAAK,OAAA,QAAQ,CAAC,SAAS,CAAC,EAAnB,CAAmB,CAAC;iBAC1C,MAAM,CAAC,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,UAAU,KAAK,UAAU,EAAnC,CAAmC,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAEH,WAAC;AAAD,CAAC,AAlGD,CAA0B,YAAY,GAkGrC"} \ No newline at end of file diff --git a/src/app/core/shared/license.model.js b/src/app/core/shared/license.model.js new file mode 100644 index 0000000000..a5e53573a1 --- /dev/null +++ b/src/app/core/shared/license.model.js @@ -0,0 +1,11 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from './dspace-object.model'; +var License = /** @class */ (function (_super) { + tslib_1.__extends(License, _super); + function License() { + return _super !== null && _super.apply(this, arguments) || this; + } + return License; +}(DSpaceObject)); +export { License }; +//# sourceMappingURL=license.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/license.model.js.map b/src/app/core/shared/license.model.js.map new file mode 100644 index 0000000000..4380b59922 --- /dev/null +++ b/src/app/core/shared/license.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"license.model.js","sourceRoot":"","sources":["license.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD;IAA6B,mCAAY;IAAzC;;IAWA,CAAC;IAAD,cAAC;AAAD,CAAC,AAXD,CAA6B,YAAY,GAWxC"} \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js b/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js new file mode 100644 index 0000000000..af54dddd24 --- /dev/null +++ b/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js @@ -0,0 +1,57 @@ +import * as tslib_1 from "tslib"; +import { Item } from '../../item.model'; +import { MetadataRepresentationType } from '../metadata-representation.model'; +import { hasValue } from '../../../../shared/empty.util'; +/** + * An object to convert item types into the metadata field it should render for the item's value + */ +export var ItemTypeToValue = { + Default: 'dc.title', + Person: 'dc.contributor.author', + OrgUnit: 'dc.title' +}; +/** + * This class determines which fields to use when rendering an Item as a metadata value. + */ +var ItemMetadataRepresentation = /** @class */ (function (_super) { + tslib_1.__extends(ItemMetadataRepresentation, _super); + function ItemMetadataRepresentation() { + return _super !== null && _super.apply(this, arguments) || this; + } + Object.defineProperty(ItemMetadataRepresentation.prototype, "itemType", { + /** + * The type of item this item can be represented as + */ + get: function () { + return this.firstMetadataValue('relationship.type'); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ItemMetadataRepresentation.prototype, "representationType", { + /** + * Fetch the way this item should be rendered as in a list + */ + get: function () { + return MetadataRepresentationType.Item; + }, + enumerable: true, + configurable: true + }); + /** + * Get the value to display, depending on the itemType + */ + ItemMetadataRepresentation.prototype.getValue = function () { + var metadata; + if (hasValue(ItemTypeToValue[this.itemType])) { + metadata = ItemTypeToValue[this.itemType]; + } + else { + metadata = ItemTypeToValue.Default; + } + return this.firstMetadataValue(metadata); + }; + return ItemMetadataRepresentation; +}(Item)); +export { ItemMetadataRepresentation }; +//# sourceMappingURL=item-metadata-representation.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js.map b/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js.map new file mode 100644 index 0000000000..5cb25e9aac --- /dev/null +++ b/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-metadata-representation.model.js","sourceRoot":"","sources":["item-metadata-representation.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAA0B,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AACtG,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,IAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,uBAAuB;IAC/B,OAAO,EAAE,UAAU;CACpB,CAAC;AAEF;;GAEG;AACH;IAAgD,sDAAI;IAApD;;IA6BA,CAAC;IAxBC,sBAAI,gDAAQ;QAHZ;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC;;;OAAA;IAKD,sBAAI,0DAAkB;QAHtB;;WAEG;aACH;YACE,OAAO,0BAA0B,CAAC,IAAI,CAAC;QACzC,CAAC;;;OAAA;IAED;;OAEG;IACH,6CAAQ,GAAR;QACE,IAAI,QAAQ,CAAC;QACb,IAAI,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE;YAC5C,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC3C;aAAM;YACL,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC;SACpC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAEH,iCAAC;AAAD,CAAC,AA7BD,CAAgD,IAAI,GA6BnD"} \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/metadata-representation.model.js b/src/app/core/shared/metadata-representation/metadata-representation.model.js new file mode 100644 index 0000000000..2e5057ddd8 --- /dev/null +++ b/src/app/core/shared/metadata-representation/metadata-representation.model.js @@ -0,0 +1,11 @@ +/** + * An Enum defining the representation type of metadata + */ +export var MetadataRepresentationType; +(function (MetadataRepresentationType) { + MetadataRepresentationType["None"] = "none"; + MetadataRepresentationType["Item"] = "item"; + MetadataRepresentationType["AuthorityControlled"] = "authority_controlled"; + MetadataRepresentationType["PlainText"] = "plain_text"; +})(MetadataRepresentationType || (MetadataRepresentationType = {})); +//# sourceMappingURL=metadata-representation.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/metadata-representation.model.js.map b/src/app/core/shared/metadata-representation/metadata-representation.model.js.map new file mode 100644 index 0000000000..ea75b0fc78 --- /dev/null +++ b/src/app/core/shared/metadata-representation/metadata-representation.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-representation.model.js","sourceRoot":"","sources":["metadata-representation.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,0BAKX;AALD,WAAY,0BAA0B;IACpC,2CAAa,CAAA;IACb,2CAAa,CAAA;IACb,0EAA4C,CAAA;IAC5C,sDAAwB,CAAA;AAC1B,CAAC,EALW,0BAA0B,KAA1B,0BAA0B,QAKrC"} \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js b/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js new file mode 100644 index 0000000000..60b14385eb --- /dev/null +++ b/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js @@ -0,0 +1,39 @@ +import * as tslib_1 from "tslib"; +import { MetadataRepresentationType } from '../metadata-representation.model'; +import { hasValue } from '../../../../shared/empty.util'; +import { MetadataValue } from '../../metadata.models'; +/** + * This class defines the way the metadatum it extends should be represented + */ +var MetadatumRepresentation = /** @class */ (function (_super) { + tslib_1.__extends(MetadatumRepresentation, _super); + function MetadatumRepresentation(itemType) { + var _this = _super.call(this) || this; + _this.itemType = itemType; + return _this; + } + Object.defineProperty(MetadatumRepresentation.prototype, "representationType", { + /** + * Fetch the way this metadatum should be rendered as in a list + */ + get: function () { + if (hasValue(this.authority)) { + return MetadataRepresentationType.AuthorityControlled; + } + else { + return MetadataRepresentationType.PlainText; + } + }, + enumerable: true, + configurable: true + }); + /** + * Get the value to display + */ + MetadatumRepresentation.prototype.getValue = function () { + return this.value; + }; + return MetadatumRepresentation; +}(MetadataValue)); +export { MetadatumRepresentation }; +//# sourceMappingURL=metadatum-representation.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js.map b/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js.map new file mode 100644 index 0000000000..e8614af9cc --- /dev/null +++ b/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadatum-representation.model.js","sourceRoot":"","sources":["metadatum-representation.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA0B,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AACtG,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;GAEG;AACH;IAA6C,mDAAa;IAOxD,iCAAY,QAAgB;QAA5B,YACE,iBAAO,SAER;QADC,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;;IAC3B,CAAC;IAKD,sBAAI,uDAAkB;QAHtB;;WAEG;aACH;YACE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBAC5B,OAAO,0BAA0B,CAAC,mBAAmB,CAAC;aACvD;iBAAM;gBACL,OAAO,0BAA0B,CAAC,SAAS,CAAC;aAC7C;QACH,CAAC;;;OAAA;IAED;;OAEG;IACH,0CAAQ,GAAR;QACE,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEH,8BAAC;AAAD,CAAC,AA9BD,CAA6C,aAAa,GA8BzD"} \ No newline at end of file diff --git a/src/app/core/shared/metadata.models.js b/src/app/core/shared/metadata.models.js new file mode 100644 index 0000000000..acf11607e2 --- /dev/null +++ b/src/app/core/shared/metadata.models.js @@ -0,0 +1,98 @@ +import * as tslib_1 from "tslib"; +import * as uuidv4 from 'uuid/v4'; +import { autoserialize, Serialize, Deserialize } from 'cerialize'; +import { hasValue } from '../../shared/empty.util'; +/* tslint:disable:max-classes-per-file */ +var VIRTUAL_METADATA_PREFIX = 'virtual::'; +/** A map of metadata keys to an ordered list of MetadataValue objects. */ +var MetadataMap = /** @class */ (function () { + function MetadataMap() { + } + return MetadataMap; +}()); +export { MetadataMap }; +/** A single metadata value and its properties. */ +var MetadataValue = /** @class */ (function () { + function MetadataValue() { + /** The uuid. */ + this.uuid = uuidv4(); + } + Object.defineProperty(MetadataValue.prototype, "isVirtual", { + /** + * Returns true if this Metadatum's authority key starts with 'virtual::' + */ + get: function () { + return hasValue(this.authority) && this.authority.startsWith(VIRTUAL_METADATA_PREFIX); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(MetadataValue.prototype, "virtualValue", { + /** + * If this is a virtual Metadatum, it returns everything in the authority key after 'virtual::'. + * Returns undefined otherwise. + */ + get: function () { + if (this.isVirtual) { + return this.authority.substring(this.authority.indexOf(VIRTUAL_METADATA_PREFIX) + VIRTUAL_METADATA_PREFIX.length); + } + else { + return undefined; + } + }, + enumerable: true, + configurable: true + }); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataValue.prototype, "language", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataValue.prototype, "value", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], MetadataValue.prototype, "place", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], MetadataValue.prototype, "authority", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], MetadataValue.prototype, "confidence", void 0); + return MetadataValue; +}()); +export { MetadataValue }; +var MetadatumViewModel = /** @class */ (function () { + function MetadatumViewModel() { + /** The uuid. */ + this.uuid = uuidv4(); + } + return MetadatumViewModel; +}()); +export { MetadatumViewModel }; +/** Serializer used for MetadataMaps. + * This is necessary because Cerialize has trouble instantiating the MetadataValues using their constructor + * when they are inside arrays which also represent the values in a map. + */ +export var MetadataMapSerializer = { + Serialize: function (map) { + var json = {}; + Object.keys(map).forEach(function (key) { + json[key] = Serialize(map[key], MetadataValue); + }); + return json; + }, + Deserialize: function (json) { + var metadataMap = {}; + Object.keys(json).forEach(function (key) { + metadataMap[key] = Deserialize(json[key], MetadataValue); + }); + return metadataMap; + } +}; +/* tslint:enable:max-classes-per-file */ +//# sourceMappingURL=metadata.models.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata.models.js.map b/src/app/core/shared/metadata.models.js.map new file mode 100644 index 0000000000..03fe92a3ec --- /dev/null +++ b/src/app/core/shared/metadata.models.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata.models.js","sourceRoot":"","sources":["metadata.models.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,yCAAyC;AAEzC,IAAM,uBAAuB,GAAG,WAAW,CAAC;AAiB5C,0EAA0E;AAC1E;IAAA;IAEA,CAAC;IAAD,kBAAC;AAAD,CAAC,AAFD,IAEC;;AAED,kDAAkD;AAClD;IAAA;QACE,gBAAgB;QAChB,SAAI,GAAW,MAAM,EAAE,CAAC;IA2C1B,CAAC;IAfC,sBAAI,oCAAS;QAHb;;WAEG;aACH;YACE,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;QACxF,CAAC;;;OAAA;IAMD,sBAAI,uCAAY;QAJhB;;;WAGG;aACH;YACE,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;aACnH;iBAAM;gBACL,OAAO,SAAS,CAAC;aAClB;QACH,CAAC;;;OAAA;IAtCD;QADC,aAAa;;mDACG;IAIjB;QADC,aAAa;;gDACA;IAOd;QADC,aAAa;;gDACA;IAId;QADC,aAAa;;oDACI;IAIlB;QADC,aAAa;;qDACK;IAoBrB,oBAAC;CAAA,AA7CD,IA6CC;SA7CY,aAAa;AA8D1B;IAAA;QACE,gBAAgB;QAChB,SAAI,GAAW,MAAM,EAAE,CAAC;IAsB1B,CAAC;IAAD,yBAAC;AAAD,CAAC,AAxBD,IAwBC;;AAED;;;GAGG;AACH,MAAM,CAAC,IAAM,qBAAqB,GAAG;IACnC,SAAS,EAAT,UAAU,GAAgB;QACxB,IAAM,IAAI,GAAG,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,GAAW;YACnC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,EAAX,UAAY,IAAS;QACnB,IAAM,WAAW,GAAgB,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAC,GAAW;YACpC,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC;CACF,CAAC;AACF,wCAAwC"} \ No newline at end of file diff --git a/src/app/core/shared/metadata.utils.js b/src/app/core/shared/metadata.utils.js new file mode 100644 index 0000000000..945870e4ab --- /dev/null +++ b/src/app/core/shared/metadata.utils.js @@ -0,0 +1,211 @@ +import { isEmpty, isNotUndefined, isUndefined } from '../../shared/empty.util'; +import { MetadataValue } from './metadata.models'; +import { groupBy, sortBy } from 'lodash'; +/** + * Utility class for working with DSpace object metadata. + * + * When specifying metadata keys, wildcards are supported, so `'*'` will match all keys, `'dc.date.*'` will + * match all qualified dc dates, and so on. Exact keys will be evaluated (and matches returned) in the order + * they are given. + * + * When multiple keys in a map match a given wildcard, they are evaluated in the order they are stored in + * the map (alphanumeric if obtained from the REST api). If duplicate or overlapping keys are specified, the + * first one takes precedence. For example, specifying `['dc.date', 'dc.*', '*']` will cause any `dc.date` + * values to be evaluated (and returned, if matched) first, followed by any other `dc` metadata values, + * followed by any other (non-dc) metadata values. + */ +var Metadata = /** @class */ (function () { + function Metadata() { + } + /** + * Gets all matching metadata in the map(s). + * + * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). When multiple maps are given, they will be + * checked in order, and only values from the first with at least one match will be returned. + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {MetadataValue[]} the matching values or an empty array. + */ + Metadata.all = function (mapOrMaps, keyOrKeys, filter) { + var mdMaps = mapOrMaps instanceof Array ? mapOrMaps : [mapOrMaps]; + var matches = []; + for (var _i = 0, mdMaps_1 = mdMaps; _i < mdMaps_1.length; _i++) { + var mdMap = mdMaps_1[_i]; + for (var _a = 0, _b = Metadata.resolveKeys(mdMap, keyOrKeys); _a < _b.length; _a++) { + var mdKey = _b[_a]; + var candidates = mdMap[mdKey]; + if (candidates) { + for (var _c = 0, candidates_1 = candidates; _c < candidates_1.length; _c++) { + var candidate = candidates_1[_c]; + if (Metadata.valueMatches(candidate, filter)) { + matches.push(candidate); + } + } + } + } + if (!isEmpty(matches)) { + return matches; + } + } + return matches; + }; + /** + * Like [[Metadata.all]], but only returns string values. + * + * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). When multiple maps are given, they will be + * checked in order, and only values from the first with at least one match will be returned. + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {string[]} the matching string values or an empty array. + */ + Metadata.allValues = function (mapOrMaps, keyOrKeys, filter) { + return Metadata.all(mapOrMaps, keyOrKeys, filter).map(function (mdValue) { return mdValue.value; }); + }; + /** + * Gets the first matching MetadataValue object in the map(s), or `undefined`. + * + * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {MetadataValue} the first matching value, or `undefined`. + */ + Metadata.first = function (mdMapOrMaps, keyOrKeys, filter) { + var mdMaps = mdMapOrMaps instanceof Array ? mdMapOrMaps : [mdMapOrMaps]; + for (var _i = 0, mdMaps_2 = mdMaps; _i < mdMaps_2.length; _i++) { + var mdMap = mdMaps_2[_i]; + for (var _a = 0, _b = Metadata.resolveKeys(mdMap, keyOrKeys); _a < _b.length; _a++) { + var key = _b[_a]; + var values = mdMap[key]; + if (values) { + return values.find(function (value) { return Metadata.valueMatches(value, filter); }); + } + } + } + }; + /** + * Like [[Metadata.first]], but only returns a string value, or `undefined`. + * + * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {string} the first matching string value, or `undefined`. + */ + Metadata.firstValue = function (mdMapOrMaps, keyOrKeys, filter) { + var value = Metadata.first(mdMapOrMaps, keyOrKeys, filter); + return isUndefined(value) ? undefined : value.value; + }; + /** + * Checks for a matching metadata value in the given map(s). + * + * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. + * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. + * @returns {boolean} whether a match is found. + */ + Metadata.has = function (mdMapOrMaps, keyOrKeys, filter) { + return isNotUndefined(Metadata.first(mdMapOrMaps, keyOrKeys, filter)); + }; + /** + * Checks if a value matches a filter. + * + * @param {MetadataValue} mdValue the value to check. + * @param {MetadataValueFilter} filter the filter to use. + * @returns {boolean} whether the filter matches, or true if no filter is given. + */ + Metadata.valueMatches = function (mdValue, filter) { + if (!filter) { + return true; + } + else if (filter.language && filter.language !== mdValue.language) { + return false; + } + else if (filter.value) { + var fValue = filter.value; + var mValue = mdValue.value; + if (filter.ignoreCase) { + fValue = filter.value.toLowerCase(); + mValue = mdValue.value.toLowerCase(); + } + if (filter.substring) { + return mValue.includes(fValue); + } + else { + return mValue === fValue; + } + } + return true; + }; + /** + * Gets the list of keys in the map limited by, and in the order given by `keyOrKeys`. + * + * @param {MetadataMapInterface} mdMap The source map. + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. + */ + Metadata.resolveKeys = function (mdMap, keyOrKeys) { + if (mdMap === void 0) { mdMap = {}; } + var inputKeys = keyOrKeys instanceof Array ? keyOrKeys : [keyOrKeys]; + var outputKeys = []; + for (var _i = 0, inputKeys_1 = inputKeys; _i < inputKeys_1.length; _i++) { + var inputKey = inputKeys_1[_i]; + if (inputKey.includes('*')) { + var inputKeyRegex = new RegExp('^' + inputKey.replace('.', '\.').replace('*', '.*') + '$'); + for (var _a = 0, _b = Object.keys(mdMap); _a < _b.length; _a++) { + var mapKey = _b[_a]; + if (!outputKeys.includes(mapKey) && inputKeyRegex.test(mapKey)) { + outputKeys.push(mapKey); + } + } + } + else if (mdMap.hasOwnProperty(inputKey) && !outputKeys.includes(inputKey)) { + outputKeys.push(inputKey); + } + } + return outputKeys; + }; + /** + * Creates an array of MetadatumViewModels from an existing MetadataMapInterface. + * + * @param {MetadataMapInterface} mdMap The source map. + * @returns {MetadatumViewModel[]} List of metadata view models based on the source map. + */ + Metadata.toViewModelList = function (mdMap) { + var metadatumList = []; + Object.keys(mdMap) + .sort() + .forEach(function (key) { + var fields = mdMap[key].map(function (metadataValue, index) { + return Object.assign({}, metadataValue, { + order: index, + key: key + }); + }); + metadatumList = metadatumList.concat(fields); + }); + return metadatumList; + }; + /** + * Creates an MetadataMapInterface from an existing array of MetadatumViewModels. + * + * @param {MetadatumViewModel[]} viewModelList The source list. + * @returns {MetadataMapInterface} Map with metadata values based on the source list. + */ + Metadata.toMetadataMap = function (viewModelList) { + var metadataMap = {}; + var groupedList = groupBy(viewModelList, function (viewModel) { return viewModel.key; }); + Object.keys(groupedList) + .sort() + .forEach(function (key) { + var orderedValues = sortBy(groupedList[key], ['order']); + metadataMap[key] = orderedValues.map(function (value) { + var val = Object.assign(new MetadataValue(), value); + delete val.order; + delete val.key; + return val; + }); + }); + return metadataMap; + }; + return Metadata; +}()); +export { Metadata }; +//# sourceMappingURL=metadata.utils.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata.utils.js.map b/src/app/core/shared/metadata.utils.js.map new file mode 100644 index 0000000000..3348b42336 --- /dev/null +++ b/src/app/core/shared/metadata.utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata.utils.js","sourceRoot":"","sources":["metadata.utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/shared/operators.js b/src/app/core/shared/operators.js new file mode 100644 index 0000000000..dba1ece736 --- /dev/null +++ b/src/app/core/shared/operators.js @@ -0,0 +1,105 @@ +import { filter, find, flatMap, map, tap } from 'rxjs/operators'; +import { hasValue, hasValueOperator, isNotEmpty } from '../../shared/empty.util'; +/** + * This file contains custom RxJS operators that can be used in multiple places + */ +export var getRequestFromRequestHref = function (requestService) { + return function (source) { + return source.pipe(flatMap(function (href) { return requestService.getByHref(href); }), hasValueOperator()); + }; +}; +export var getRequestFromRequestUUID = function (requestService) { + return function (source) { + return source.pipe(flatMap(function (uuid) { return requestService.getByUUID(uuid); }), hasValueOperator()); + }; +}; +export var filterSuccessfulResponses = function () { + return function (source) { + return source.pipe(getResponseFromEntry(), filter(function (response) { return response.isSuccessful === true; })); + }; +}; +export var getResponseFromEntry = function () { + return function (source) { + return source.pipe(filter(function (entry) { return hasValue(entry) && hasValue(entry.response); }), map(function (entry) { return entry.response; })); + }; +}; +export var getResourceLinksFromResponse = function () { + return function (source) { + return source.pipe(filterSuccessfulResponses(), map(function (response) { return response.resourceSelfLinks; })); + }; +}; +export var configureRequest = function (requestService, forceBypassCache) { + return function (source) { + return source.pipe(tap(function (request) { return requestService.configure(request, forceBypassCache); })); + }; +}; +export var getRemoteDataPayload = function () { + return function (source) { + return source.pipe(map(function (remoteData) { return remoteData.payload; })); + }; +}; +export var getSucceededRemoteData = function () { + return function (source) { + return source.pipe(find(function (rd) { return rd.hasSucceeded; })); + }; +}; +/** + * Operator that checks if a remote data object contains a page not found error + * When it does contain such an error, it will redirect the user to a page not found, without altering the current URL + * @param router The router used to navigate to a new page + */ +export var redirectToPageNotFoundOn404 = function (router) { + return function (source) { + return source.pipe(tap(function (rd) { + if (rd.hasFailed && rd.error.statusCode === 404) { + router.navigateByUrl('/404', { skipLocationChange: true }); + } + })); + }; +}; +export var getFinishedRemoteData = function () { + return function (source) { + return source.pipe(find(function (rd) { return !rd.isLoading; })); + }; +}; +export var getAllSucceededRemoteData = function () { + return function (source) { + return source.pipe(filter(function (rd) { return rd.hasSucceeded; })); + }; +}; +export var toDSpaceObjectListRD = function () { + return function (source) { + return source.pipe(filter(function (rd) { return rd.hasSucceeded; }), map(function (rd) { + var dsoPage = rd.payload.page.map(function (searchResult) { return searchResult.indexableObject; }); + var payload = Object.assign(rd.payload, { page: dsoPage }); + return Object.assign(rd, { payload: payload }); + })); + }; +}; +/** + * Get the browse links from a definition by ID given an array of all definitions + * @param {string} definitionID + * @returns {(source: Observable>) => Observable} + */ +export var getBrowseDefinitionLinks = function (definitionID) { + return function (source) { + return source.pipe(getRemoteDataPayload(), map(function (browseDefinitions) { return browseDefinitions + .find(function (def) { return def.id === definitionID; }); }), map(function (def) { + if (isNotEmpty(def)) { + return def._links; + } + else { + throw new Error("No metadata browse definition could be found for id '" + definitionID + "'"); + } + })); + }; +}; +/** + * Get the first occurrence of an object within a paginated list + */ +export var getFirstOccurrence = function () { + return function (source) { + return source.pipe(map(function (rd) { return Object.assign(rd, { payload: rd.payload.page.length > 0 ? rd.payload.page[0] : undefined }); })); + }; +}; +//# sourceMappingURL=operators.js.map \ No newline at end of file diff --git a/src/app/core/shared/operators.js.map b/src/app/core/shared/operators.js.map new file mode 100644 index 0000000000..dfb16c246f --- /dev/null +++ b/src/app/core/shared/operators.js.map @@ -0,0 +1 @@ +{"version":3,"file":"operators.js","sourceRoot":"","sources":["operators.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/shared/page-info.model.js b/src/app/core/shared/page-info.model.js new file mode 100644 index 0000000000..af6158995b --- /dev/null +++ b/src/app/core/shared/page-info.model.js @@ -0,0 +1,48 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs } from 'cerialize'; +/** + * Represents the state of a paginated response + */ +var PageInfo = /** @class */ (function () { + function PageInfo() { + } + tslib_1.__decorate([ + autoserializeAs(Number, 'size'), + tslib_1.__metadata("design:type", Number) + ], PageInfo.prototype, "elementsPerPage", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], PageInfo.prototype, "totalElements", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Number) + ], PageInfo.prototype, "totalPages", void 0); + tslib_1.__decorate([ + autoserializeAs(Number, 'number'), + tslib_1.__metadata("design:type", Number) + ], PageInfo.prototype, "currentPage", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], PageInfo.prototype, "last", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], PageInfo.prototype, "next", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], PageInfo.prototype, "prev", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], PageInfo.prototype, "first", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], PageInfo.prototype, "self", void 0); + return PageInfo; +}()); +export { PageInfo }; +//# sourceMappingURL=page-info.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/page-info.model.js.map b/src/app/core/shared/page-info.model.js.map new file mode 100644 index 0000000000..53aca86049 --- /dev/null +++ b/src/app/core/shared/page-info.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"page-info.model.js","sourceRoot":"","sources":["page-info.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE3D;;GAEG;AACH;IAAA;IAuCA,CAAC;IAlCC;QADC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;;qDACR;IAMxB;QADC,aAAa;;mDACQ;IAMtB;QADC,aAAa;;gDACK;IAMnB;QADC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC;;iDACd;IAGpB;QADC,aAAa;;0CACD;IAGb;QADC,aAAa;;0CACD;IAGb;QADC,aAAa;;0CACD;IAGb;QADC,aAAa;;2CACA;IAGd;QADC,aAAa;;0CACD;IACf,eAAC;CAAA,AAvCD,IAuCC;SAvCY,QAAQ"} \ No newline at end of file diff --git a/src/app/core/shared/resource-policy.model.js b/src/app/core/shared/resource-policy.model.js new file mode 100644 index 0000000000..8e896c4d7b --- /dev/null +++ b/src/app/core/shared/resource-policy.model.js @@ -0,0 +1,10 @@ +/** + * Model class for a Resource Policy + */ +var ResourcePolicy = /** @class */ (function () { + function ResourcePolicy() { + } + return ResourcePolicy; +}()); +export { ResourcePolicy }; +//# sourceMappingURL=resource-policy.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/resource-policy.model.js.map b/src/app/core/shared/resource-policy.model.js.map new file mode 100644 index 0000000000..1831562283 --- /dev/null +++ b/src/app/core/shared/resource-policy.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"resource-policy.model.js","sourceRoot":"","sources":["resource-policy.model.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH;IAAA;IA+BA,CAAC;IAAD,qBAAC;AAAD,CAAC,AA/BD,IA+BC"} \ No newline at end of file diff --git a/src/app/core/shared/resource-type.js b/src/app/core/shared/resource-type.js new file mode 100644 index 0000000000..2eba7cecb6 --- /dev/null +++ b/src/app/core/shared/resource-type.js @@ -0,0 +1,30 @@ +export var ResourceType; +(function (ResourceType) { + ResourceType["DSpaceObject"] = "dspaceobject"; + ResourceType["Bundle"] = "bundle"; + ResourceType["Bitstream"] = "bitstream"; + ResourceType["BitstreamFormat"] = "bitstreamformat"; + ResourceType["Item"] = "item"; + ResourceType["Collection"] = "collection"; + ResourceType["Community"] = "community"; + ResourceType["EPerson"] = "eperson"; + ResourceType["Group"] = "group"; + ResourceType["ResourcePolicy"] = "resourcePolicy"; + ResourceType["MetadataSchema"] = "metadataschema"; + ResourceType["MetadataField"] = "metadatafield"; + ResourceType["Relationship"] = "relationship"; + ResourceType["RelationshipType"] = "relationshiptype"; + ResourceType["ItemType"] = "entitytype"; + ResourceType["License"] = "license"; + ResourceType["Workflowitem"] = "workflowitem"; + ResourceType["Workspaceitem"] = "workspaceitem"; + ResourceType["SubmissionDefinitions"] = "submissiondefinitions"; + ResourceType["SubmissionDefinition"] = "submissiondefinition"; + ResourceType["SubmissionForm"] = "submissionform"; + ResourceType["SubmissionForms"] = "submissionforms"; + ResourceType["SubmissionSections"] = "submissionsections"; + ResourceType["SubmissionSection"] = "submissionsection"; + ResourceType["ClaimedTask"] = "claimedtask"; + ResourceType["PoolTask"] = "pooltask"; +})(ResourceType || (ResourceType = {})); +//# sourceMappingURL=resource-type.js.map \ No newline at end of file diff --git a/src/app/core/shared/resource-type.js.map b/src/app/core/shared/resource-type.js.map new file mode 100644 index 0000000000..22474f21ea --- /dev/null +++ b/src/app/core/shared/resource-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"resource-type.js","sourceRoot":"","sources":["resource-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,YA2BX;AA3BD,WAAY,YAAY;IACtB,6CAA6B,CAAA;IAC7B,iCAAiB,CAAA;IACjB,uCAAuB,CAAA;IACvB,mDAAmC,CAAA;IACnC,6BAAa,CAAA;IACb,yCAAyB,CAAA;IACzB,uCAAuB,CAAA;IACvB,mCAAmB,CAAA;IACnB,+BAAe,CAAA;IACf,iDAAiC,CAAA;IACjC,iDAAiC,CAAA;IACjC,+CAA+B,CAAA;IAC/B,6CAA6B,CAAA;IAC7B,qDAAqC,CAAA;IACrC,uCAAuB,CAAA;IACvB,mCAAmB,CAAA;IACnB,6CAA6B,CAAA;IAC7B,+CAA+B,CAAA;IAC/B,+DAA+C,CAAA;IAC/C,6DAA6C,CAAA;IAC7C,iDAAiC,CAAA;IACjC,mDAAmC,CAAA;IACnC,yDAAyC,CAAA;IACzC,uDAAuC,CAAA;IACvC,2CAA2B,CAAA;IAC3B,qCAAqB,CAAA;AACvB,CAAC,EA3BW,YAAY,KAAZ,YAAY,QA2BvB"} \ No newline at end of file diff --git a/src/app/core/shared/sort-option.model.js b/src/app/core/shared/sort-option.model.js new file mode 100644 index 0000000000..28fd01f333 --- /dev/null +++ b/src/app/core/shared/sort-option.model.js @@ -0,0 +1,17 @@ +import * as tslib_1 from "tslib"; +import { autoserialize } from 'cerialize'; +var SortOption = /** @class */ (function () { + function SortOption() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SortOption.prototype, "name", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], SortOption.prototype, "metadata", void 0); + return SortOption; +}()); +export { SortOption }; +//# sourceMappingURL=sort-option.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/sort-option.model.js.map b/src/app/core/shared/sort-option.model.js.map new file mode 100644 index 0000000000..9cc1c2ab26 --- /dev/null +++ b/src/app/core/shared/sort-option.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sort-option.model.js","sourceRoot":"","sources":["sort-option.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C;IAAA;IAMA,CAAC;IAJC;QADC,aAAa;;4CACD;IAGb;QADC,aAAa;;gDACG;IACnB,iBAAC;CAAA,AAND,IAMC;SANY,UAAU"} \ No newline at end of file diff --git a/src/app/core/shared/submit-data-response-definition.model.js b/src/app/core/shared/submit-data-response-definition.model.js new file mode 100644 index 0000000000..2b7715c9be --- /dev/null +++ b/src/app/core/shared/submit-data-response-definition.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=submit-data-response-definition.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/submit-data-response-definition.model.js.map b/src/app/core/shared/submit-data-response-definition.model.js.map new file mode 100644 index 0000000000..3f64e805e5 --- /dev/null +++ b/src/app/core/shared/submit-data-response-definition.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submit-data-response-definition.model.js","sourceRoot":"","sources":["submit-data-response-definition.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/shared/uuid.service.js b/src/app/core/shared/uuid.service.js new file mode 100644 index 0000000000..0d22b513a8 --- /dev/null +++ b/src/app/core/shared/uuid.service.js @@ -0,0 +1,16 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import * as uuidv4 from 'uuid/v4'; +var UUIDService = /** @class */ (function () { + function UUIDService() { + } + UUIDService.prototype.generate = function () { + return uuidv4(); + }; + UUIDService = tslib_1.__decorate([ + Injectable() + ], UUIDService); + return UUIDService; +}()); +export { UUIDService }; +//# sourceMappingURL=uuid.service.js.map \ No newline at end of file diff --git a/src/app/core/shared/uuid.service.js.map b/src/app/core/shared/uuid.service.js.map new file mode 100644 index 0000000000..d82c081412 --- /dev/null +++ b/src/app/core/shared/uuid.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"uuid.service.js","sourceRoot":"","sources":["uuid.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAGlC;IAAA;IAIA,CAAC;IAHC,8BAAQ,GAAR;QACE,OAAO,MAAM,EAAE,CAAC;IAClB,CAAC;IAHU,WAAW;QADvB,UAAU,EAAE;OACA,WAAW,CAIvB;IAAD,kBAAC;CAAA,AAJD,IAIC;SAJY,WAAW"} \ No newline at end of file diff --git a/src/app/core/shared/view-mode.model.js b/src/app/core/shared/view-mode.model.js new file mode 100644 index 0000000000..c56238b365 --- /dev/null +++ b/src/app/core/shared/view-mode.model.js @@ -0,0 +1,10 @@ +/** + * This enumeration represents all possible ways of representing a group of objects in the UI + */ +export var ViewMode; +(function (ViewMode) { + ViewMode["List"] = "list"; + ViewMode["Grid"] = "grid"; + ViewMode["Detail"] = "detail"; +})(ViewMode || (ViewMode = {})); +//# sourceMappingURL=view-mode.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/view-mode.model.js.map b/src/app/core/shared/view-mode.model.js.map new file mode 100644 index 0000000000..180e03558a --- /dev/null +++ b/src/app/core/shared/view-mode.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"view-mode.model.js","sourceRoot":"","sources":["view-mode.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,6BAAiB,CAAA;AACnB,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB"} \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-submission-object.model.js b/src/app/core/submission/models/normalized-submission-object.model.js new file mode 100644 index 0000000000..a30fd59c35 --- /dev/null +++ b/src/app/core/submission/models/normalized-submission-object.model.js @@ -0,0 +1,39 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; +import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; +import { WorkspaceitemSectionsObject } from './workspaceitem-sections.model'; +/** + * An abstract model class for a NormalizedSubmissionObject. + */ +var NormalizedSubmissionObject = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedSubmissionObject, _super); + function NormalizedSubmissionObject() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedSubmissionObject.prototype, "id", void 0); + tslib_1.__decorate([ + autoserializeAs(String, 'id'), + tslib_1.__metadata("design:type", String) + ], NormalizedSubmissionObject.prototype, "uuid", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Date) + ], NormalizedSubmissionObject.prototype, "lastModified", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", WorkspaceitemSectionsObject) + ], NormalizedSubmissionObject.prototype, "sections", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Array) + ], NormalizedSubmissionObject.prototype, "errors", void 0); + NormalizedSubmissionObject = tslib_1.__decorate([ + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedSubmissionObject); + return NormalizedSubmissionObject; +}(NormalizedDSpaceObject)); +export { NormalizedSubmissionObject }; +//# sourceMappingURL=normalized-submission-object.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-submission-object.model.js.map b/src/app/core/submission/models/normalized-submission-object.model.js.map new file mode 100644 index 0000000000..9a3e3bc65d --- /dev/null +++ b/src/app/core/submission/models/normalized-submission-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-submission-object.model.js","sourceRoot":"","sources":["normalized-submission-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAI7E;;GAEG;AAEH;IAAwE,sDAAyB;IAAjG;;IA+BA,CAAC;IAzBC;QADC,aAAa;;0DACH;IAMX;QADC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC;;4DACjB;IAMb;QADC,aAAa;0CACA,IAAI;oEAAC;IAMnB;QADC,aAAa;0CACJ,2BAA2B;gEAAC;IAMtC;QADC,aAAa;;8DACkB;IA9BrB,0BAA0B;QADtC,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,0BAA0B,CA+BtC;IAAD,iCAAC;CAAA,AA/BD,CAAwE,sBAAsB,GA+B7F;SA/BY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-workflowitem.model.js b/src/app/core/submission/models/normalized-workflowitem.model.js new file mode 100644 index 0000000000..f75d0d41df --- /dev/null +++ b/src/app/core/submission/models/normalized-workflowitem.model.js @@ -0,0 +1,42 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { mapsTo, relationship } from '../../cache/builders/build-decorators'; +import { Workflowitem } from './workflowitem.model'; +import { NormalizedSubmissionObject } from './normalized-submission-object.model'; +import { ResourceType } from '../../shared/resource-type'; +/** + * An model class for a NormalizedWorkflowItem. + */ +var NormalizedWorkflowItem = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedWorkflowItem, _super); + function NormalizedWorkflowItem() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Collection, false), + tslib_1.__metadata("design:type", String) + ], NormalizedWorkflowItem.prototype, "collection", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Item, false), + tslib_1.__metadata("design:type", String) + ], NormalizedWorkflowItem.prototype, "item", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.SubmissionDefinition, false), + tslib_1.__metadata("design:type", String) + ], NormalizedWorkflowItem.prototype, "submissionDefinition", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.EPerson, false), + tslib_1.__metadata("design:type", String) + ], NormalizedWorkflowItem.prototype, "submitter", void 0); + NormalizedWorkflowItem = tslib_1.__decorate([ + mapsTo(Workflowitem), + inheritSerialization(NormalizedSubmissionObject) + ], NormalizedWorkflowItem); + return NormalizedWorkflowItem; +}(NormalizedSubmissionObject)); +export { NormalizedWorkflowItem }; +//# sourceMappingURL=normalized-workflowitem.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-workflowitem.model.js.map b/src/app/core/submission/models/normalized-workflowitem.model.js.map new file mode 100644 index 0000000000..712c22d6f7 --- /dev/null +++ b/src/app/core/submission/models/normalized-workflowitem.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-workflowitem.model.js","sourceRoot":"","sources":["normalized-workflowitem.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAA4C,kDAAwC;IAApF;;IA8BA,CAAC;IAvBC;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC;;8DAC1B;IAOnB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;;wDAC1B;IAOb;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,oBAAoB,EAAE,KAAK,CAAC;;wEAC1B;IAO7B;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;;6DACxB;IA5BP,sBAAsB;QAFlC,MAAM,CAAC,YAAY,CAAC;QACpB,oBAAoB,CAAC,0BAA0B,CAAC;OACpC,sBAAsB,CA8BlC;IAAD,6BAAC;CAAA,AA9BD,CAA4C,0BAA0B,GA8BrE;SA9BY,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-workspaceitem.model.js b/src/app/core/submission/models/normalized-workspaceitem.model.js new file mode 100644 index 0000000000..99e722ea6b --- /dev/null +++ b/src/app/core/submission/models/normalized-workspaceitem.model.js @@ -0,0 +1,44 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { Workspaceitem } from './workspaceitem.model'; +import { NormalizedSubmissionObject } from './normalized-submission-object.model'; +import { mapsTo, relationship } from '../../cache/builders/build-decorators'; +import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; +import { ResourceType } from '../../shared/resource-type'; +/** + * An model class for a NormalizedWorkspaceItem. + */ +var NormalizedWorkspaceItem = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedWorkspaceItem, _super); + function NormalizedWorkspaceItem() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Collection, false), + tslib_1.__metadata("design:type", String) + ], NormalizedWorkspaceItem.prototype, "collection", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Item, false), + tslib_1.__metadata("design:type", String) + ], NormalizedWorkspaceItem.prototype, "item", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.SubmissionDefinition, false), + tslib_1.__metadata("design:type", String) + ], NormalizedWorkspaceItem.prototype, "submissionDefinition", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.EPerson, false), + tslib_1.__metadata("design:type", String) + ], NormalizedWorkspaceItem.prototype, "submitter", void 0); + NormalizedWorkspaceItem = tslib_1.__decorate([ + mapsTo(Workspaceitem), + inheritSerialization(NormalizedDSpaceObject), + inheritSerialization(NormalizedSubmissionObject) + ], NormalizedWorkspaceItem); + return NormalizedWorkspaceItem; +}(NormalizedSubmissionObject)); +export { NormalizedWorkspaceItem }; +//# sourceMappingURL=normalized-workspaceitem.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-workspaceitem.model.js.map b/src/app/core/submission/models/normalized-workspaceitem.model.js.map new file mode 100644 index 0000000000..259e7691cf --- /dev/null +++ b/src/app/core/submission/models/normalized-workspaceitem.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-workspaceitem.model.js","sourceRoot":"","sources":["normalized-workspaceitem.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D;;GAEG;AAIH;IAA6C,mDAAwC;IAArF;;IA6BA,CAAC;IAtBC;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC;;+DAC1B;IAOnB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;;yDAC1B;IAOb;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,oBAAoB,EAAE,KAAK,CAAC;;yEAC1B;IAO7B;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;;8DACxB;IA5BP,uBAAuB;QAHnC,MAAM,CAAC,aAAa,CAAC;QACrB,oBAAoB,CAAC,sBAAsB,CAAC;QAC5C,oBAAoB,CAAC,0BAA0B,CAAC;OACpC,uBAAuB,CA6BnC;IAAD,8BAAC;CAAA,AA7BD,CAA6C,0BAA0B,GA6BtE;SA7BY,uBAAuB"} \ No newline at end of file diff --git a/src/app/core/submission/models/submission-object.model.js b/src/app/core/submission/models/submission-object.model.js new file mode 100644 index 0000000000..e1e60c5a14 --- /dev/null +++ b/src/app/core/submission/models/submission-object.model.js @@ -0,0 +1,14 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from '../../shared/dspace-object.model'; +/** + * An abstract model class for a SubmissionObject. + */ +var SubmissionObject = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionObject, _super); + function SubmissionObject() { + return _super !== null && _super.apply(this, arguments) || this; + } + return SubmissionObject; +}(DSpaceObject)); +export { SubmissionObject }; +//# sourceMappingURL=submission-object.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/submission-object.model.js.map b/src/app/core/submission/models/submission-object.model.js.map new file mode 100644 index 0000000000..39f97f5d7a --- /dev/null +++ b/src/app/core/submission/models/submission-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-object.model.js","sourceRoot":"","sources":["submission-object.model.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAahE;;GAEG;AACH;IAA+C,4CAAY;IAA3D;;IA8CA,CAAC;IAAD,uBAAC;AAAD,CAAC,AA9CD,CAA+C,YAAY,GA8C1D"} \ No newline at end of file diff --git a/src/app/core/submission/models/submission-upload-file-access-condition.model.js b/src/app/core/submission/models/submission-upload-file-access-condition.model.js new file mode 100644 index 0000000000..d466644be2 --- /dev/null +++ b/src/app/core/submission/models/submission-upload-file-access-condition.model.js @@ -0,0 +1,10 @@ +/** + * An interface to represent bitstream's access condition. + */ +var SubmissionUploadFileAccessConditionObject = /** @class */ (function () { + function SubmissionUploadFileAccessConditionObject() { + } + return SubmissionUploadFileAccessConditionObject; +}()); +export { SubmissionUploadFileAccessConditionObject }; +//# sourceMappingURL=submission-upload-file-access-condition.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/submission-upload-file-access-condition.model.js.map b/src/app/core/submission/models/submission-upload-file-access-condition.model.js.map new file mode 100644 index 0000000000..a0e0032701 --- /dev/null +++ b/src/app/core/submission/models/submission-upload-file-access-condition.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-upload-file-access-condition.model.js","sourceRoot":"","sources":["submission-upload-file-access-condition.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;IAAA;IA0BA,CAAC;IAAD,gDAAC;AAAD,CAAC,AA1BD,IA0BC"} \ No newline at end of file diff --git a/src/app/core/submission/models/workflowitem.model.js b/src/app/core/submission/models/workflowitem.model.js new file mode 100644 index 0000000000..2ddb44ad60 --- /dev/null +++ b/src/app/core/submission/models/workflowitem.model.js @@ -0,0 +1,14 @@ +import * as tslib_1 from "tslib"; +import { Workspaceitem } from './workspaceitem.model'; +/** + * A model class for a Workflowitem. + */ +var Workflowitem = /** @class */ (function (_super) { + tslib_1.__extends(Workflowitem, _super); + function Workflowitem() { + return _super !== null && _super.apply(this, arguments) || this; + } + return Workflowitem; +}(Workspaceitem)); +export { Workflowitem }; +//# sourceMappingURL=workflowitem.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workflowitem.model.js.map b/src/app/core/submission/models/workflowitem.model.js.map new file mode 100644 index 0000000000..5105f5650d --- /dev/null +++ b/src/app/core/submission/models/workflowitem.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workflowitem.model.js","sourceRoot":"","sources":["workflowitem.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;GAEG;AACH;IAAkC,wCAAa;IAA/C;;IACA,CAAC;IAAD,mBAAC;AAAD,CAAC,AADD,CAAkC,aAAa,GAC9C"} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-form.model.js b/src/app/core/submission/models/workspaceitem-section-form.model.js new file mode 100644 index 0000000000..8a73a48ef8 --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-section-form.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=workspaceitem-section-form.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-form.model.js.map b/src/app/core/submission/models/workspaceitem-section-form.model.js.map new file mode 100644 index 0000000000..823e525b8b --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-section-form.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-section-form.model.js","sourceRoot":"","sources":["workspaceitem-section-form.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-license.model.js b/src/app/core/submission/models/workspaceitem-section-license.model.js new file mode 100644 index 0000000000..6e69b8cb5c --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-section-license.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=workspaceitem-section-license.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-license.model.js.map b/src/app/core/submission/models/workspaceitem-section-license.model.js.map new file mode 100644 index 0000000000..922351e245 --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-section-license.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-section-license.model.js","sourceRoot":"","sources":["workspaceitem-section-license.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-upload-file.model.js b/src/app/core/submission/models/workspaceitem-section-upload-file.model.js new file mode 100644 index 0000000000..97d5062f8a --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-section-upload-file.model.js @@ -0,0 +1,10 @@ +/** + * An interface to represent submission's upload section file entry. + */ +var WorkspaceitemSectionUploadFileObject = /** @class */ (function () { + function WorkspaceitemSectionUploadFileObject() { + } + return WorkspaceitemSectionUploadFileObject; +}()); +export { WorkspaceitemSectionUploadFileObject }; +//# sourceMappingURL=workspaceitem-section-upload-file.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-upload-file.model.js.map b/src/app/core/submission/models/workspaceitem-section-upload-file.model.js.map new file mode 100644 index 0000000000..6f0c01bc80 --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-section-upload-file.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-section-upload-file.model.js","sourceRoot":"","sources":["workspaceitem-section-upload-file.model.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH;IAAA;IAuCA,CAAC;IAAD,2CAAC;AAAD,CAAC,AAvCD,IAuCC"} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-upload.model.js b/src/app/core/submission/models/workspaceitem-section-upload.model.js new file mode 100644 index 0000000000..52836c66be --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-section-upload.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=workspaceitem-section-upload.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-upload.model.js.map b/src/app/core/submission/models/workspaceitem-section-upload.model.js.map new file mode 100644 index 0000000000..65f414c553 --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-section-upload.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-section-upload.model.js","sourceRoot":"","sources":["workspaceitem-section-upload.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-sections.model.js b/src/app/core/submission/models/workspaceitem-sections.model.js new file mode 100644 index 0000000000..26f0ca8795 --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-sections.model.js @@ -0,0 +1,11 @@ +/** + * An interface to represent submission's section object. + * A map of section keys to an ordered list of WorkspaceitemSectionDataType objects. + */ +var WorkspaceitemSectionsObject = /** @class */ (function () { + function WorkspaceitemSectionsObject() { + } + return WorkspaceitemSectionsObject; +}()); +export { WorkspaceitemSectionsObject }; +//# sourceMappingURL=workspaceitem-sections.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-sections.model.js.map b/src/app/core/submission/models/workspaceitem-sections.model.js.map new file mode 100644 index 0000000000..be362aef82 --- /dev/null +++ b/src/app/core/submission/models/workspaceitem-sections.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-sections.model.js","sourceRoot":"","sources":["workspaceitem-sections.model.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH;IAAA;IAEA,CAAC;IAAD,kCAAC;AAAD,CAAC,AAFD,IAEC"} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem.model.js b/src/app/core/submission/models/workspaceitem.model.js new file mode 100644 index 0000000000..42734e3856 --- /dev/null +++ b/src/app/core/submission/models/workspaceitem.model.js @@ -0,0 +1,14 @@ +import * as tslib_1 from "tslib"; +import { SubmissionObject } from './submission-object.model'; +/** + * A model class for a Workspaceitem. + */ +var Workspaceitem = /** @class */ (function (_super) { + tslib_1.__extends(Workspaceitem, _super); + function Workspaceitem() { + return _super !== null && _super.apply(this, arguments) || this; + } + return Workspaceitem; +}(SubmissionObject)); +export { Workspaceitem }; +//# sourceMappingURL=workspaceitem.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem.model.js.map b/src/app/core/submission/models/workspaceitem.model.js.map new file mode 100644 index 0000000000..799705d1ea --- /dev/null +++ b/src/app/core/submission/models/workspaceitem.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem.model.js","sourceRoot":"","sources":["workspaceitem.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;GAEG;AACH;IAAmC,yCAAgB;IAAnD;;IAEA,CAAC;IAAD,oBAAC;AAAD,CAAC,AAFD,CAAmC,gBAAgB,GAElD"} \ No newline at end of file diff --git a/src/app/core/submission/submission-json-patch-operations.service.js b/src/app/core/submission/submission-json-patch-operations.service.js new file mode 100644 index 0000000000..ffad1ab7d4 --- /dev/null +++ b/src/app/core/submission/submission-json-patch-operations.service.js @@ -0,0 +1,31 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Store } from '@ngrx/store'; +import { RequestService } from '../data/request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { JsonPatchOperationsService } from '../json-patch/json-patch-operations.service'; +import { SubmissionPatchRequest } from '../data/request.models'; +/** + * A service that provides methods to make JSON Patch requests. + */ +var SubmissionJsonPatchOperationsService = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionJsonPatchOperationsService, _super); + function SubmissionJsonPatchOperationsService(requestService, store, halService) { + var _this = _super.call(this) || this; + _this.requestService = requestService; + _this.store = store; + _this.halService = halService; + _this.linkPath = ''; + _this.patchRequestConstructor = SubmissionPatchRequest; + return _this; + } + SubmissionJsonPatchOperationsService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + Store, + HALEndpointService]) + ], SubmissionJsonPatchOperationsService); + return SubmissionJsonPatchOperationsService; +}(JsonPatchOperationsService)); +export { SubmissionJsonPatchOperationsService }; +//# sourceMappingURL=submission-json-patch-operations.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-json-patch-operations.service.js.map b/src/app/core/submission/submission-json-patch-operations.service.js.map new file mode 100644 index 0000000000..67f351bcc7 --- /dev/null +++ b/src/app/core/submission/submission-json-patch-operations.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-json-patch-operations.service.js","sourceRoot":"","sources":["submission-json-patch-operations.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAEzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAGhE;;GAEG;AAEH;IAA0D,gEAAsF;IAI9I,8CACY,cAA8B,EAC9B,KAAuB,EACvB,UAA8B;QAH1C,YAKE,iBAAO,SACR;QALW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,WAAK,GAAL,KAAK,CAAkB;QACvB,gBAAU,GAAV,UAAU,CAAoB;QANhC,cAAQ,GAAG,EAAE,CAAC;QACd,6BAAuB,GAAG,sBAAsB,CAAC;;IAQ3D,CAAC;IAVU,oCAAoC;QADhD,UAAU,EAAE;iDAMiB,cAAc;YACvB,KAAK;YACA,kBAAkB;OAP/B,oCAAoC,CAYhD;IAAD,2CAAC;CAAA,AAZD,CAA0D,0BAA0B,GAYnF;SAZY,oCAAoC"} \ No newline at end of file diff --git a/src/app/core/submission/submission-resource-type.js b/src/app/core/submission/submission-resource-type.js new file mode 100644 index 0000000000..ea0d9e2e19 --- /dev/null +++ b/src/app/core/submission/submission-resource-type.js @@ -0,0 +1,23 @@ +export var SubmissionResourceType; +(function (SubmissionResourceType) { + SubmissionResourceType["Bundle"] = "bundle"; + SubmissionResourceType["Bitstream"] = "bitstream"; + SubmissionResourceType["BitstreamFormat"] = "bitstreamformat"; + SubmissionResourceType["Item"] = "item"; + SubmissionResourceType["Collection"] = "collection"; + SubmissionResourceType["Community"] = "community"; + SubmissionResourceType["ResourcePolicy"] = "resourcePolicy"; + SubmissionResourceType["License"] = "license"; + SubmissionResourceType["EPerson"] = "eperson"; + SubmissionResourceType["Group"] = "group"; + SubmissionResourceType["WorkspaceItem"] = "workspaceitem"; + SubmissionResourceType["WorkflowItem"] = "workflowitem"; + SubmissionResourceType["SubmissionDefinitions"] = "submissiondefinitions"; + SubmissionResourceType["SubmissionDefinition"] = "submissiondefinition"; + SubmissionResourceType["SubmissionForm"] = "submissionform"; + SubmissionResourceType["SubmissionForms"] = "submissionforms"; + SubmissionResourceType["SubmissionSections"] = "submissionsections"; + SubmissionResourceType["SubmissionSection"] = "submissionsection"; + SubmissionResourceType["Authority"] = "authority"; +})(SubmissionResourceType || (SubmissionResourceType = {})); +//# sourceMappingURL=submission-resource-type.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-resource-type.js.map b/src/app/core/submission/submission-resource-type.js.map new file mode 100644 index 0000000000..a3b43d393e --- /dev/null +++ b/src/app/core/submission/submission-resource-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-resource-type.js","sourceRoot":"","sources":["submission-resource-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,sBAoBX;AApBD,WAAY,sBAAsB;IAChC,2CAAiB,CAAA;IACjB,iDAAuB,CAAA;IACvB,6DAAmC,CAAA;IACnC,uCAAa,CAAA;IACb,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;IACvB,2DAAiC,CAAA;IACjC,6CAAmB,CAAA;IACnB,6CAAmB,CAAA;IACnB,yCAAe,CAAA;IACf,yDAA+B,CAAA;IAC/B,uDAA6B,CAAA;IAC7B,yEAA+C,CAAA;IAC/C,uEAA6C,CAAA;IAC7C,2DAAiC,CAAA;IACjC,6DAAmC,CAAA;IACnC,mEAAyC,CAAA;IACzC,iEAAuC,CAAA;IACvC,iDAAuB,CAAA;AACzB,CAAC,EApBW,sBAAsB,KAAtB,sBAAsB,QAoBjC"} \ No newline at end of file diff --git a/src/app/core/submission/submission-response-parsing.service.js b/src/app/core/submission/submission-response-parsing.service.js new file mode 100644 index 0000000000..002dbc3b38 --- /dev/null +++ b/src/app/core/submission/submission-response-parsing.service.js @@ -0,0 +1,150 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { ErrorResponse, SubmissionSuccessResponse } from '../cache/response.models'; +import { isEmpty, isNotEmpty, isNotNull } from '../../shared/empty.util'; +import { BaseResponseParsingService } from '../data/base-response-parsing.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { NormalizedWorkspaceItem } from './models/normalized-workspaceitem.model'; +import { NormalizedWorkflowItem } from './models/normalized-workflowitem.model'; +import { FormFieldMetadataValueObject } from '../../shared/form/builder/models/form-field-metadata-value.model'; +import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; +/** + * Export a function to check if object has same properties of FormFieldMetadataValueObject + * + * @param obj + */ +export function isServerFormValue(obj) { + return (typeof obj === 'object' + && obj.hasOwnProperty('value') + && obj.hasOwnProperty('language') + && obj.hasOwnProperty('authority') + && obj.hasOwnProperty('confidence')); +} +/** + * Export a function to normalize sections object of the server response + * + * @param obj + * @param objIndex + */ +export function normalizeSectionData(obj, objIndex) { + var result = obj; + if (isNotNull(obj)) { + // If is an Instance of FormFieldMetadataValueObject normalize it + if (typeof obj === 'object' && isServerFormValue(obj)) { + // If authority property is set normalize as a FormFieldMetadataValueObject object + /* NOTE: Data received from server could have authority property equal to null, but into form + field's model is required a FormFieldMetadataValueObject object as field value, so instantiate it */ + result = new FormFieldMetadataValueObject(obj.value, obj.language, obj.authority, (obj.display || obj.value), obj.place || objIndex, obj.confidence, obj.otherInformation); + } + else if (Array.isArray(obj)) { + result = []; + obj.forEach(function (item, index) { + result[index] = normalizeSectionData(item, index); + }); + } + else if (typeof obj === 'object') { + result = Object.create({}); + Object.keys(obj) + .forEach(function (key) { + result[key] = normalizeSectionData(obj[key]); + }); + } + } + return result; +} +/** + * Provides methods to parse response for a submission request. + */ +var SubmissionResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionResponseParsingService, _super); + function SubmissionResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = NormalizedObjectFactory; + _this.toCache = false; + return _this; + } + /** + * Parses data from the workspaceitems/workflowitems endpoints + * + * @param {RestRequest} request + * @param {DSpaceRESTV2Response} data + * @returns {RestResponse} + */ + SubmissionResponseParsingService.prototype.parse = function (request, data) { + if (isNotEmpty(data.payload) + && isNotEmpty(data.payload._links) + && this.isSuccessStatus(data.statusCode)) { + var dataDefinition = this.processResponse(data.payload, request.href); + return new SubmissionSuccessResponse(dataDefinition, data.statusCode, data.statusText, this.processPageInfo(data.payload)); + } + else if (isEmpty(data.payload) && this.isSuccessStatus(data.statusCode)) { + return new SubmissionSuccessResponse(null, data.statusCode, data.statusText); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from server'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + /** + * Parses response and normalize it + * + * @param {DSpaceRESTV2Response} data + * @param {string} requestHref + * @returns {any[]} + */ + SubmissionResponseParsingService.prototype.processResponse = function (data, requestHref) { + var dataDefinition = this.process(data, requestHref); + var normalizedDefinition = Array.of(); + var processedList = Array.isArray(dataDefinition) ? dataDefinition : Array.of(dataDefinition); + processedList.forEach(function (item) { + var normalizedItem = Object.assign({}, item); + // In case data is an Instance of NormalizedWorkspaceItem normalize field value of all the section of type form + if (item instanceof NormalizedWorkspaceItem + || item instanceof NormalizedWorkflowItem) { + if (item.sections) { + var precessedSection_1 = Object.create({}); + // Iterate over all workspaceitem's sections + Object.keys(item.sections) + .forEach(function (sectionId) { + if (typeof item.sections[sectionId] === 'object' && isNotEmpty(item.sections[sectionId])) { + var normalizedSectionData_1 = Object.create({}); + // Iterate over all sections property + Object.keys(item.sections[sectionId]) + .forEach(function (metdadataId) { + var entry = item.sections[sectionId][metdadataId]; + // If entry is not an array, for sure is not a section of type form + if (Array.isArray(entry)) { + normalizedSectionData_1[metdadataId] = []; + entry.forEach(function (valueItem, index) { + // Parse value and normalize it + var normValue = normalizeSectionData(valueItem, index); + if (isNotEmpty(normValue)) { + normalizedSectionData_1[metdadataId].push(normValue); + } + }); + } + else { + normalizedSectionData_1[metdadataId] = entry; + } + }); + precessedSection_1[sectionId] = normalizedSectionData_1; + } + }); + normalizedItem = Object.assign({}, item, { sections: precessedSection_1 }); + } + } + normalizedDefinition.push(normalizedItem); + }); + return normalizedDefinition; + }; + SubmissionResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], SubmissionResponseParsingService); + return SubmissionResponseParsingService; +}(BaseResponseParsingService)); +export { SubmissionResponseParsingService }; +//# sourceMappingURL=submission-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-response-parsing.service.js.map b/src/app/core/submission/submission-response-parsing.service.js.map new file mode 100644 index 0000000000..02a7e9b250 --- /dev/null +++ b/src/app/core/submission/submission-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-response-parsing.service.js","sourceRoot":"","sources":["submission-response-parsing.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/submission/submission-rest.service.js b/src/app/core/submission/submission-rest.service.js new file mode 100644 index 0000000000..50e12f99b3 --- /dev/null +++ b/src/app/core/submission/submission-rest.service.js @@ -0,0 +1,121 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { merge as observableMerge, throwError as observableThrowError } from 'rxjs'; +import { distinctUntilChanged, filter, flatMap, map, mergeMap, tap } from 'rxjs/operators'; +import { RequestService } from '../data/request.service'; +import { isNotEmpty } from '../../shared/empty.util'; +import { SubmissionDeleteRequest, SubmissionPatchRequest, SubmissionPostRequest, SubmissionRequest } from '../data/request.models'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { getResponseFromEntry } from '../shared/operators'; +/** + * The service handling all submission REST requests + */ +var SubmissionRestService = /** @class */ (function () { + function SubmissionRestService(rdbService, requestService, halService) { + this.rdbService = rdbService; + this.requestService = requestService; + this.halService = halService; + this.linkPath = 'workspaceitems'; + } + /** + * Fetch a RestRequest + * + * @param requestId + * The base endpoint for the type of object + * @return Observable + * server response + */ + SubmissionRestService.prototype.fetchRequest = function (requestId) { + var responses = this.requestService.getByUUID(requestId).pipe(getResponseFromEntry()); + var errorResponses = responses.pipe(filter(function (response) { return !response.isSuccessful; }), mergeMap(function (error) { return observableThrowError(error); })); + var successResponses = responses.pipe(filter(function (response) { return response.isSuccessful; }), map(function (response) { return response.dataDefinition; }), distinctUntilChanged()); + return observableMerge(errorResponses, successResponses); + }; + /** + * Create the HREF for a specific submission object based on its identifier + * + * @param endpoint + * The base endpoint for the type of object + * @param resourceID + * The identifier for the object + */ + SubmissionRestService.prototype.getEndpointByIDHref = function (endpoint, resourceID) { + return isNotEmpty(resourceID) ? endpoint + "/" + resourceID : "" + endpoint; + }; + /** + * Delete an existing submission Object on the server + * + * @param scopeId + * The submission Object to be removed + * @param linkName + * The endpoint link name + * @return Observable + * server response + */ + SubmissionRestService.prototype.deleteById = function (scopeId, linkName) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + return this.halService.getEndpoint(linkName || this.linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), map(function (endpointURL) { return new SubmissionDeleteRequest(requestId, endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function () { return _this.fetchRequest(requestId); }), distinctUntilChanged()); + }; + /** + * Return an existing submission Object from the server + * + * @param linkName + * The endpoint link name + * @param id + * The submission Object to retrieve + * @return Observable + * server response + */ + SubmissionRestService.prototype.getDataById = function (linkName, id) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + return this.halService.getEndpoint(linkName).pipe(map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, id); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new SubmissionRequest(requestId, endpointURL); }), tap(function (request) { return _this.requestService.configure(request, true); }), flatMap(function () { return _this.fetchRequest(requestId); }), distinctUntilChanged()); + }; + /** + * Make a new post request + * + * @param linkName + * The endpoint link name + * @param body + * The post request body + * @param scopeId + * The submission Object id + * @param options + * The [HttpOptions] object + * @return Observable + * server response + */ + SubmissionRestService.prototype.postToEndpoint = function (linkName, body, scopeId, options) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + return this.halService.getEndpoint(linkName).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), distinctUntilChanged(), map(function (endpointURL) { return new SubmissionPostRequest(requestId, endpointURL, body, options); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function () { return _this.fetchRequest(requestId); }), distinctUntilChanged()); + }; + /** + * Make a new patch to a specified object + * + * @param linkName + * The endpoint link name + * @param body + * The post request body + * @param scopeId + * The submission Object id + * @return Observable + * server response + */ + SubmissionRestService.prototype.patchToEndpoint = function (linkName, body, scopeId) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + return this.halService.getEndpoint(linkName).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), distinctUntilChanged(), map(function (endpointURL) { return new SubmissionPatchRequest(requestId, endpointURL, body); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function () { return _this.fetchRequest(requestId); }), distinctUntilChanged()); + }; + SubmissionRestService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RemoteDataBuildService, + RequestService, + HALEndpointService]) + ], SubmissionRestService); + return SubmissionRestService; +}()); +export { SubmissionRestService }; +//# sourceMappingURL=submission-rest.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-rest.service.js.map b/src/app/core/submission/submission-rest.service.js.map new file mode 100644 index 0000000000..5be3262b87 --- /dev/null +++ b/src/app/core/submission/submission-rest.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-rest.service.js","sourceRoot":"","sources":["submission-rest.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,KAAK,IAAI,eAAe,EAAc,UAAU,IAAI,oBAAoB,EAAE,MAAM,MAAM,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAE3F,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAIL,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D;;GAEG;AAEH;IAGE,+BACY,UAAkC,EAClC,cAA8B,EAC9B,UAA8B;QAF9B,eAAU,GAAV,UAAU,CAAwB;QAClC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,eAAU,GAAV,UAAU,CAAoB;QALhC,aAAQ,GAAG,gBAAgB,CAAC;IAMtC,CAAC;IAED;;;;;;;OAOG;IACO,4CAAY,GAAtB,UAAuB,SAAiB;QACtC,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAC7D,oBAAoB,EAAE,CACvB,CAAC;QACF,IAAM,cAAc,GAAG,SAAS,CAAC,IAAI,CACnC,MAAM,CAAC,UAAC,QAAsB,IAAK,OAAA,CAAC,QAAQ,CAAC,YAAY,EAAtB,CAAsB,CAAC,EAC1D,QAAQ,CAAC,UAAC,KAAoB,IAAK,OAAA,oBAAoB,CAAC,KAAK,CAAC,EAA3B,CAA2B,CAAC,CAChE,CAAC;QACF,IAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CACrC,MAAM,CAAC,UAAC,QAAsB,IAAK,OAAA,QAAQ,CAAC,YAAY,EAArB,CAAqB,CAAC,EACzD,GAAG,CAAC,UAAC,QAAmC,IAAK,OAAA,QAAQ,CAAC,cAAqB,EAA9B,CAA8B,CAAC,EAC5E,oBAAoB,EAAE,CACvB,CAAC;QACF,OAAO,eAAe,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;OAOG;IACO,mDAAmB,GAA7B,UAA8B,QAAQ,EAAE,UAAU;QAChD,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAI,QAAQ,SAAI,UAAY,CAAC,CAAC,CAAC,KAAG,QAAU,CAAC;IAC9E,CAAC;IAED;;;;;;;;;OASG;IACI,0CAAU,GAAjB,UAAkB,OAAe,EAAE,QAAiB;QAApD,iBAUC;QATC,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAChE,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,EAC1C,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,KAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,EAA9C,CAA8C,CAAC,EAC5E,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,IAAI,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,EAAnD,CAAmD,CAAC,EACjF,GAAG,CAAC,UAAC,OAAsB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAtC,CAAsC,CAAC,EACvE,OAAO,CAAC,cAAM,OAAA,KAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAA5B,CAA4B,CAAC,EAC3C,oBAAoB,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;;;;;OASG;IACI,2CAAW,GAAlB,UAAmB,QAAgB,EAAE,EAAU;QAA/C,iBAUC;QATC,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,CAC/C,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,KAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE,CAAC,EAAzC,CAAyC,CAAC,EACvE,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,EAC1C,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,IAAI,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,EAA7C,CAA6C,CAAC,EAC3E,GAAG,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,EAA5C,CAA4C,CAAC,EAC3E,OAAO,CAAC,cAAM,OAAA,KAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAA5B,CAA4B,CAAC,EAC3C,oBAAoB,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACI,8CAAc,GAArB,UAAsB,QAAgB,EAAE,IAAS,EAAE,OAAgB,EAAE,OAAqB;QAA1F,iBAUC;QATC,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,CAC/C,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,EAC1C,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,KAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,EAA9C,CAA8C,CAAC,EAC5E,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,IAAI,qBAAqB,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,EAAhE,CAAgE,CAAC,EAC9F,GAAG,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAtC,CAAsC,CAAC,EACrE,OAAO,CAAC,cAAM,OAAA,KAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAA5B,CAA4B,CAAC,EAC3C,oBAAoB,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;;;;;;;OAWG;IACI,+CAAe,GAAtB,UAAuB,QAAgB,EAAE,IAAS,EAAE,OAAgB;QAApE,iBAUC;QATC,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,IAAI,CAC/C,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,EAC1C,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,KAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,EAA9C,CAA8C,CAAC,EAC5E,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,WAAmB,IAAK,OAAA,IAAI,sBAAsB,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,EAAxD,CAAwD,CAAC,EACtF,GAAG,CAAC,UAAC,OAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAtC,CAAsC,CAAC,EACrE,OAAO,CAAC,cAAM,OAAA,KAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAA5B,CAA4B,CAAC,EAC3C,oBAAoB,EAAE,CAAC,CAAC;IAC5B,CAAC;IAzIU,qBAAqB;QADjC,UAAU,EAAE;iDAKa,sBAAsB;YAClB,cAAc;YAClB,kBAAkB;OAN/B,qBAAqB,CA2IjC;IAAD,4BAAC;CAAA,AA3ID,IA2IC;SA3IY,qBAAqB"} \ No newline at end of file diff --git a/src/app/core/submission/submission-scope-type.js b/src/app/core/submission/submission-scope-type.js new file mode 100644 index 0000000000..93eb6385d8 --- /dev/null +++ b/src/app/core/submission/submission-scope-type.js @@ -0,0 +1,6 @@ +export var SubmissionScopeType; +(function (SubmissionScopeType) { + SubmissionScopeType["WorkspaceItem"] = "WORKSPACE"; + SubmissionScopeType["WorkflowItem"] = "WORKFLOW"; +})(SubmissionScopeType || (SubmissionScopeType = {})); +//# sourceMappingURL=submission-scope-type.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-scope-type.js.map b/src/app/core/submission/submission-scope-type.js.map new file mode 100644 index 0000000000..d1025182f8 --- /dev/null +++ b/src/app/core/submission/submission-scope-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-scope-type.js","sourceRoot":"","sources":["submission-scope-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,kDAA2B,CAAA;IAC3B,gDAAyB,CAAA;AAC3B,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,QAG9B"} \ No newline at end of file diff --git a/src/app/core/submission/workflowitem-data.service.js b/src/app/core/submission/workflowitem-data.service.js new file mode 100644 index 0000000000..5a73b3b377 --- /dev/null +++ b/src/app/core/submission/workflowitem-data.service.js @@ -0,0 +1,51 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { Store } from '@ngrx/store'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { DataService } from '../data/data.service'; +import { RequestService } from '../data/request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; +/** + * A service that provides methods to make REST requests with workflowitems endpoint. + */ +var WorkflowitemDataService = /** @class */ (function (_super) { + tslib_1.__extends(WorkflowitemDataService, _super); + function WorkflowitemDataService(comparator, dataBuildService, halService, http, notificationsService, requestService, rdbService, objectCache, store) { + var _this = _super.call(this) || this; + _this.comparator = comparator; + _this.dataBuildService = dataBuildService; + _this.halService = halService; + _this.http = http; + _this.notificationsService = notificationsService; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.objectCache = objectCache; + _this.store = store; + _this.linkPath = 'workflowitems'; + _this.forceBypassCache = true; + return _this; + } + WorkflowitemDataService.prototype.getBrowseEndpoint = function (options) { + return this.halService.getEndpoint(this.linkPath); + }; + WorkflowitemDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSOChangeAnalyzer, + NormalizedObjectBuildService, + HALEndpointService, + HttpClient, + NotificationsService, + RequestService, + RemoteDataBuildService, + ObjectCacheService, + Store]) + ], WorkflowitemDataService); + return WorkflowitemDataService; +}(DataService)); +export { WorkflowitemDataService }; +//# sourceMappingURL=workflowitem-data.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/workflowitem-data.service.js.map b/src/app/core/submission/workflowitem-data.service.js.map new file mode 100644 index 0000000000..e9d7ac746b --- /dev/null +++ b/src/app/core/submission/workflowitem-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workflowitem-data.service.js","sourceRoot":"","sources":["workflowitem-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE;;GAEG;AAEH;IAA6C,mDAAyB;IAIpE,iCACY,UAA2C,EAC3C,gBAA8C,EAC9C,UAA8B,EAC9B,IAAgB,EAChB,oBAA0C,EAC1C,cAA8B,EAC9B,UAAkC,EAClC,WAA+B,EAC/B,KAAuB;QATnC,YAUE,iBAAO,SACR;QAVW,gBAAU,GAAV,UAAU,CAAiC;QAC3C,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,gBAAU,GAAV,UAAU,CAAoB;QAC9B,UAAI,GAAJ,IAAI,CAAY;QAChB,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,iBAAW,GAAX,WAAW,CAAoB;QAC/B,WAAK,GAAL,KAAK,CAAkB;QAZzB,cAAQ,GAAG,eAAe,CAAC;QAC3B,sBAAgB,GAAG,IAAI,CAAC;;IAalC,CAAC;IAEM,mDAAiB,GAAxB,UAAyB,OAAuB;QAC9C,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAnBU,uBAAuB;QADnC,UAAU,EAAE;iDAMa,iBAAiB;YACX,4BAA4B;YAClC,kBAAkB;YACxB,UAAU;YACM,oBAAoB;YAC1B,cAAc;YAClB,sBAAsB;YACrB,kBAAkB;YACxB,KAAK;OAbb,uBAAuB,CAqBnC;IAAD,8BAAC;CAAA,AArBD,CAA6C,WAAW,GAqBvD;SArBY,uBAAuB"} \ No newline at end of file diff --git a/src/app/core/submission/workspaceitem-data.service.js b/src/app/core/submission/workspaceitem-data.service.js new file mode 100644 index 0000000000..f36c51985e --- /dev/null +++ b/src/app/core/submission/workspaceitem-data.service.js @@ -0,0 +1,51 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { Store } from '@ngrx/store'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { DataService } from '../data/data.service'; +import { RequestService } from '../data/request.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; +/** + * A service that provides methods to make REST requests with workspaceitems endpoint. + */ +var WorkspaceitemDataService = /** @class */ (function (_super) { + tslib_1.__extends(WorkspaceitemDataService, _super); + function WorkspaceitemDataService(comparator, dataBuildService, halService, http, notificationsService, requestService, rdbService, objectCache, store) { + var _this = _super.call(this) || this; + _this.comparator = comparator; + _this.dataBuildService = dataBuildService; + _this.halService = halService; + _this.http = http; + _this.notificationsService = notificationsService; + _this.requestService = requestService; + _this.rdbService = rdbService; + _this.objectCache = objectCache; + _this.store = store; + _this.linkPath = 'workspaceitems'; + _this.forceBypassCache = true; + return _this; + } + WorkspaceitemDataService.prototype.getBrowseEndpoint = function (options) { + return this.halService.getEndpoint(this.linkPath); + }; + WorkspaceitemDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [DSOChangeAnalyzer, + NormalizedObjectBuildService, + HALEndpointService, + HttpClient, + NotificationsService, + RequestService, + RemoteDataBuildService, + ObjectCacheService, + Store]) + ], WorkspaceitemDataService); + return WorkspaceitemDataService; +}(DataService)); +export { WorkspaceitemDataService }; +//# sourceMappingURL=workspaceitem-data.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/workspaceitem-data.service.js.map b/src/app/core/submission/workspaceitem-data.service.js.map new file mode 100644 index 0000000000..3056aae1a3 --- /dev/null +++ b/src/app/core/submission/workspaceitem-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-data.service.js","sourceRoot":"","sources":["workspaceitem-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE;;GAEG;AAEH;IAA8C,oDAA0B;IAItE,kCACY,UAA4C,EAC5C,gBAA8C,EAC9C,UAA8B,EAC9B,IAAgB,EAChB,oBAA0C,EAC1C,cAA8B,EAC9B,UAAkC,EAClC,WAA+B,EAC/B,KAAuB;QATnC,YAUE,iBAAO,SACR;QAVW,gBAAU,GAAV,UAAU,CAAkC;QAC5C,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,gBAAU,GAAV,UAAU,CAAoB;QAC9B,UAAI,GAAJ,IAAI,CAAY;QAChB,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,iBAAW,GAAX,WAAW,CAAoB;QAC/B,WAAK,GAAL,KAAK,CAAkB;QAZzB,cAAQ,GAAG,gBAAgB,CAAC;QAC5B,sBAAgB,GAAG,IAAI,CAAC;;IAalC,CAAC;IAEM,oDAAiB,GAAxB,UAAyB,OAAuB;QAC9C,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAnBU,wBAAwB;QADpC,UAAU,EAAE;iDAMa,iBAAiB;YACX,4BAA4B;YAClC,kBAAkB;YACxB,UAAU;YACM,oBAAoB;YAC1B,cAAc;YAClB,sBAAsB;YACrB,kBAAkB;YACxB,KAAK;OAbb,wBAAwB,CAqBpC;IAAD,+BAAC;CAAA,AArBD,CAA8C,WAAW,GAqBxD;SArBY,wBAAwB"} \ No newline at end of file diff --git a/src/app/core/tasks/claimed-task-data.service.js b/src/app/core/tasks/claimed-task-data.service.js new file mode 100644 index 0000000000..0f77d2fd65 --- /dev/null +++ b/src/app/core/tasks/claimed-task-data.service.js @@ -0,0 +1,109 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { Store } from '@ngrx/store'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { RequestService } from '../data/request.service'; +import { TasksService } from './tasks.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; +/** + * The service handling all REST requests for ClaimedTask + */ +var ClaimedTaskDataService = /** @class */ (function (_super) { + tslib_1.__extends(ClaimedTaskDataService, _super); + /** + * Initialize instance variables + * + * @param {RequestService} requestService + * @param {RemoteDataBuildService} rdbService + * @param {NormalizedObjectBuildService} dataBuildService + * @param {Store} store + * @param {ObjectCacheService} objectCache + * @param {HALEndpointService} halService + * @param {NotificationsService} notificationsService + * @param {HttpClient} http + * @param {DSOChangeAnalyzer} + * Emit the server response + */ + ClaimedTaskDataService.prototype.approveTask = function (scopeId) { + var body = { + submit_approve: 'true' + }; + return this.postToEndpoint(this.linkPath, this.requestService.uriEncodeBody(body), scopeId, this.makeHttpOptions()); + }; + /** + * Make a request to reject the given task + * + * @param reason + * The reason of reject + * @param scopeId + * The task id + * @return {Observable} + * Emit the server response + */ + ClaimedTaskDataService.prototype.rejectTask = function (reason, scopeId) { + var body = { + submit_reject: 'true', + reason: reason + }; + return this.postToEndpoint(this.linkPath, this.requestService.uriEncodeBody(body), scopeId, this.makeHttpOptions()); + }; + /** + * Make a request to return the given task to the pool + * + * @param scopeId + * The task id + * @return {Observable} + * Emit the server response + */ + ClaimedTaskDataService.prototype.returnToPoolTask = function (scopeId) { + return this.deleteById(this.linkPath, scopeId, this.makeHttpOptions()); + }; + ClaimedTaskDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + NormalizedObjectBuildService, + Store, + ObjectCacheService, + HALEndpointService, + NotificationsService, + HttpClient, + DSOChangeAnalyzer]) + ], ClaimedTaskDataService); + return ClaimedTaskDataService; +}(TasksService)); +export { ClaimedTaskDataService }; +//# sourceMappingURL=claimed-task-data.service.js.map \ No newline at end of file diff --git a/src/app/core/tasks/claimed-task-data.service.js.map b/src/app/core/tasks/claimed-task-data.service.js.map new file mode 100644 index 0000000000..99939a49aa --- /dev/null +++ b/src/app/core/tasks/claimed-task-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-task-data.service.js","sourceRoot":"","sources":["claimed-task-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAGxE;;GAEG;AAEH;IAA4C,kDAAyB;IAYnE;;;;;;;;;;;;OAYG;IACH,gCACY,cAA8B,EAC9B,UAAkC,EAClC,gBAA8C,EAC9C,KAAuB,EACvB,WAA+B,EAC/B,UAA8B,EAC9B,oBAA0C,EAC1C,IAAgB,EAChB,UAA0C;QATtD,YAUE,iBAAO,SACR;QAVW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,WAAK,GAAL,KAAK,CAAkB;QACvB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAC9B,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAI,GAAJ,IAAI,CAAY;QAChB,gBAAU,GAAV,UAAU,CAAgC;QAhCtD;;WAEG;QACO,cAAQ,GAAG,cAAc,CAAC;QAEpC;;WAEG;QACO,sBAAgB,GAAG,IAAI,CAAC;;IA0BlC,CAAC;IAED;;;;;;;OAOG;IACI,4CAAW,GAAlB,UAAmB,OAAe;QAChC,IAAM,IAAI,GAAG;YACX,cAAc,EAAE,MAAM;SACvB,CAAC;QACF,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtH,CAAC;IAED;;;;;;;;;OASG;IACI,2CAAU,GAAjB,UAAkB,MAAc,EAAE,OAAe;QAC/C,IAAM,IAAI,GAAG;YACX,aAAa,EAAE,MAAM;YACrB,MAAM,QAAA;SACP,CAAC;QACF,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtH,CAAC;IAED;;;;;;;OAOG;IACI,iDAAgB,GAAvB,UAAwB,OAAe;QACrC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACzE,CAAC;IAjFU,sBAAsB;QADlC,UAAU,EAAE;iDA2BiB,cAAc;YAClB,sBAAsB;YAChB,4BAA4B;YACvC,KAAK;YACC,kBAAkB;YACnB,kBAAkB;YACR,oBAAoB;YACpC,UAAU;YACJ,iBAAiB;OAlC9B,sBAAsB,CAmFlC;IAAD,6BAAC;CAAA,AAnFD,CAA4C,YAAY,GAmFvD;SAnFY,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/tasks/models/claimed-task-object.model.js b/src/app/core/tasks/models/claimed-task-object.model.js new file mode 100644 index 0000000000..d989e74103 --- /dev/null +++ b/src/app/core/tasks/models/claimed-task-object.model.js @@ -0,0 +1,14 @@ +import * as tslib_1 from "tslib"; +import { TaskObject } from './task-object.model'; +/** + * A model class for a ClaimedTask. + */ +var ClaimedTask = /** @class */ (function (_super) { + tslib_1.__extends(ClaimedTask, _super); + function ClaimedTask() { + return _super !== null && _super.apply(this, arguments) || this; + } + return ClaimedTask; +}(TaskObject)); +export { ClaimedTask }; +//# sourceMappingURL=claimed-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/claimed-task-object.model.js.map b/src/app/core/tasks/models/claimed-task-object.model.js.map new file mode 100644 index 0000000000..db6fbca599 --- /dev/null +++ b/src/app/core/tasks/models/claimed-task-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-task-object.model.js","sourceRoot":"","sources":["claimed-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;GAEG;AACH;IAAiC,uCAAU;IAA3C;;IAEA,CAAC;IAAD,kBAAC;AAAD,CAAC,AAFD,CAAiC,UAAU,GAE1C"} \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-claimed-task-object.model.js b/src/app/core/tasks/models/normalized-claimed-task-object.model.js new file mode 100644 index 0000000000..ff2afd23de --- /dev/null +++ b/src/app/core/tasks/models/normalized-claimed-task-object.model.js @@ -0,0 +1,39 @@ +import * as tslib_1 from "tslib"; +import { NormalizedTaskObject } from './normalized-task-object.model'; +import { mapsTo, relationship } from '../../cache/builders/build-decorators'; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { ClaimedTask } from './claimed-task-object.model'; +import { ResourceType } from '../../shared/resource-type'; +/** + * A normalized model class for a ClaimedTask. + */ +var NormalizedClaimedTask = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedClaimedTask, _super); + function NormalizedClaimedTask() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedClaimedTask.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedClaimedTask.prototype, "step", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedClaimedTask.prototype, "action", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Workflowitem, false), + tslib_1.__metadata("design:type", String) + ], NormalizedClaimedTask.prototype, "workflowitem", void 0); + NormalizedClaimedTask = tslib_1.__decorate([ + mapsTo(ClaimedTask), + inheritSerialization(NormalizedTaskObject) + ], NormalizedClaimedTask); + return NormalizedClaimedTask; +}(NormalizedTaskObject)); +export { NormalizedClaimedTask }; +//# sourceMappingURL=normalized-claimed-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-claimed-task-object.model.js.map b/src/app/core/tasks/models/normalized-claimed-task-object.model.js.map new file mode 100644 index 0000000000..a258c6c215 --- /dev/null +++ b/src/app/core/tasks/models/normalized-claimed-task-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-claimed-task-object.model.js","sourceRoot":"","sources":["normalized-claimed-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAA2C,iDAAiC;IAA5E;;IA2BA,CAAC;IArBC;QADC,aAAa;;qDACH;IAMX;QADC,aAAa;;uDACD;IAMb;QADC,aAAa;;yDACC;IAOf;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC;;+DAC1B;IAzBV,qBAAqB;QAFjC,MAAM,CAAC,WAAW,CAAC;QACnB,oBAAoB,CAAC,oBAAoB,CAAC;OAC9B,qBAAqB,CA2BjC;IAAD,4BAAC;CAAA,AA3BD,CAA2C,oBAAoB,GA2B9D;SA3BY,qBAAqB"} \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-pool-task-object.model.js b/src/app/core/tasks/models/normalized-pool-task-object.model.js new file mode 100644 index 0000000000..5999d59086 --- /dev/null +++ b/src/app/core/tasks/models/normalized-pool-task-object.model.js @@ -0,0 +1,39 @@ +import * as tslib_1 from "tslib"; +import { NormalizedTaskObject } from './normalized-task-object.model'; +import { PoolTask } from './pool-task-object.model'; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { mapsTo, relationship } from '../../cache/builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +/** + * A normalized model class for a PoolTask. + */ +var NormalizedPoolTask = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedPoolTask, _super); + function NormalizedPoolTask() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedPoolTask.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedPoolTask.prototype, "step", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedPoolTask.prototype, "action", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Workflowitem, false), + tslib_1.__metadata("design:type", String) + ], NormalizedPoolTask.prototype, "workflowitem", void 0); + NormalizedPoolTask = tslib_1.__decorate([ + mapsTo(PoolTask), + inheritSerialization(NormalizedTaskObject) + ], NormalizedPoolTask); + return NormalizedPoolTask; +}(NormalizedTaskObject)); +export { NormalizedPoolTask }; +//# sourceMappingURL=normalized-pool-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-pool-task-object.model.js.map b/src/app/core/tasks/models/normalized-pool-task-object.model.js.map new file mode 100644 index 0000000000..a7beecfbc2 --- /dev/null +++ b/src/app/core/tasks/models/normalized-pool-task-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-pool-task-object.model.js","sourceRoot":"","sources":["normalized-pool-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAwC,8CAA8B;IAAtE;;IA0BA,CAAC;IApBC;QADC,aAAa;;kDACH;IAMX;QADC,aAAa;;oDACD;IAMb;QADC,aAAa;;sDACC;IAOf;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC;;4DAC1B;IAzBV,kBAAkB;QAF9B,MAAM,CAAC,QAAQ,CAAC;QAChB,oBAAoB,CAAC,oBAAoB,CAAC;OAC9B,kBAAkB,CA0B9B;IAAD,yBAAC;CAAA,AA1BD,CAAwC,oBAAoB,GA0B3D;SA1BY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-task-object.model.js b/src/app/core/tasks/models/normalized-task-object.model.js new file mode 100644 index 0000000000..be01d57c88 --- /dev/null +++ b/src/app/core/tasks/models/normalized-task-object.model.js @@ -0,0 +1,39 @@ +import * as tslib_1 from "tslib"; +import { autoserialize, inheritSerialization } from 'cerialize'; +import { mapsTo, relationship } from '../../cache/builders/build-decorators'; +import { ResourceType } from '../../shared/resource-type'; +import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; +import { TaskObject } from './task-object.model'; +/** + * An abstract normalized model class for a TaskObject. + */ +var NormalizedTaskObject = /** @class */ (function (_super) { + tslib_1.__extends(NormalizedTaskObject, _super); + function NormalizedTaskObject() { + return _super !== null && _super.apply(this, arguments) || this; + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedTaskObject.prototype, "id", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedTaskObject.prototype, "step", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], NormalizedTaskObject.prototype, "action", void 0); + tslib_1.__decorate([ + autoserialize, + relationship(ResourceType.Workflowitem, false), + tslib_1.__metadata("design:type", String) + ], NormalizedTaskObject.prototype, "workflowitem", void 0); + NormalizedTaskObject = tslib_1.__decorate([ + mapsTo(TaskObject), + inheritSerialization(NormalizedDSpaceObject) + ], NormalizedTaskObject); + return NormalizedTaskObject; +}(NormalizedDSpaceObject)); +export { NormalizedTaskObject }; +//# sourceMappingURL=normalized-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-task-object.model.js.map b/src/app/core/tasks/models/normalized-task-object.model.js.map new file mode 100644 index 0000000000..064e77da70 --- /dev/null +++ b/src/app/core/tasks/models/normalized-task-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"normalized-task-object.model.js","sourceRoot":"","sources":["normalized-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD;;GAEG;AAGH;IAA2E,gDAAyB;IAApG;;IA0BA,CAAC;IApBC;QADC,aAAa;;oDACH;IAMX;QADC,aAAa;;sDACD;IAMb;QADC,aAAa;;wDACC;IAOf;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC;;8DAC1B;IAzBD,oBAAoB;QAFzC,MAAM,CAAC,UAAU,CAAC;QAClB,oBAAoB,CAAC,sBAAsB,CAAC;OACvB,oBAAoB,CA0BzC;IAAD,2BAAC;CAAA,AA1BD,CAA2E,sBAAsB,GA0BhG;SA1BqB,oBAAoB"} \ No newline at end of file diff --git a/src/app/core/tasks/models/pool-task-object.model.js b/src/app/core/tasks/models/pool-task-object.model.js new file mode 100644 index 0000000000..a6d4ba9acd --- /dev/null +++ b/src/app/core/tasks/models/pool-task-object.model.js @@ -0,0 +1,14 @@ +import * as tslib_1 from "tslib"; +import { TaskObject } from './task-object.model'; +/** + * A model class for a PoolTask. + */ +var PoolTask = /** @class */ (function (_super) { + tslib_1.__extends(PoolTask, _super); + function PoolTask() { + return _super !== null && _super.apply(this, arguments) || this; + } + return PoolTask; +}(TaskObject)); +export { PoolTask }; +//# sourceMappingURL=pool-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/pool-task-object.model.js.map b/src/app/core/tasks/models/pool-task-object.model.js.map new file mode 100644 index 0000000000..36227a16c3 --- /dev/null +++ b/src/app/core/tasks/models/pool-task-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pool-task-object.model.js","sourceRoot":"","sources":["pool-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;GAEG;AACH;IAA8B,oCAAU;IAAxC;;IAEA,CAAC;IAAD,eAAC;AAAD,CAAC,AAFD,CAA8B,UAAU,GAEvC"} \ No newline at end of file diff --git a/src/app/core/tasks/models/process-task-response.js b/src/app/core/tasks/models/process-task-response.js new file mode 100644 index 0000000000..908a08a83b --- /dev/null +++ b/src/app/core/tasks/models/process-task-response.js @@ -0,0 +1,20 @@ +/** + * A class to represent the data retrieved by after processing a task + */ +var ProcessTaskResponse = /** @class */ (function () { + function ProcessTaskResponse(isSuccessful, error, payload) { + this.isSuccessful = isSuccessful; + this.error = error; + this.payload = payload; + } + Object.defineProperty(ProcessTaskResponse.prototype, "hasSucceeded", { + get: function () { + return this.isSuccessful; + }, + enumerable: true, + configurable: true + }); + return ProcessTaskResponse; +}()); +export { ProcessTaskResponse }; +//# sourceMappingURL=process-task-response.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/process-task-response.js.map b/src/app/core/tasks/models/process-task-response.js.map new file mode 100644 index 0000000000..ce51c1e1d6 --- /dev/null +++ b/src/app/core/tasks/models/process-task-response.js.map @@ -0,0 +1 @@ +{"version":3,"file":"process-task-response.js","sourceRoot":"","sources":["process-task-response.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH;IACE,6BACU,YAAqB,EACtB,KAAuB,EACvB,OAAa;QAFZ,iBAAY,GAAZ,YAAY,CAAS;QACtB,UAAK,GAAL,KAAK,CAAkB;QACvB,YAAO,GAAP,OAAO,CAAM;IAEtB,CAAC;IAED,sBAAI,6CAAY;aAAhB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IACH,0BAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/core/tasks/models/task-object.model.js b/src/app/core/tasks/models/task-object.model.js new file mode 100644 index 0000000000..03109ad998 --- /dev/null +++ b/src/app/core/tasks/models/task-object.model.js @@ -0,0 +1,14 @@ +import * as tslib_1 from "tslib"; +import { DSpaceObject } from '../../shared/dspace-object.model'; +/** + * An abstract model class for a TaskObject. + */ +var TaskObject = /** @class */ (function (_super) { + tslib_1.__extends(TaskObject, _super); + function TaskObject() { + return _super !== null && _super.apply(this, arguments) || this; + } + return TaskObject; +}(DSpaceObject)); +export { TaskObject }; +//# sourceMappingURL=task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/task-object.model.js.map b/src/app/core/tasks/models/task-object.model.js.map new file mode 100644 index 0000000000..f8bd94f41f --- /dev/null +++ b/src/app/core/tasks/models/task-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"task-object.model.js","sourceRoot":"","sources":["task-object.model.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKhE;;GAEG;AACH;IAAgC,sCAAY;IAA5C;;IAqBA,CAAC;IAAD,iBAAC;AAAD,CAAC,AArBD,CAAgC,YAAY,GAqB3C"} \ No newline at end of file diff --git a/src/app/core/tasks/pool-task-data.service.js b/src/app/core/tasks/pool-task-data.service.js new file mode 100644 index 0000000000..6e8b94c509 --- /dev/null +++ b/src/app/core/tasks/pool-task-data.service.js @@ -0,0 +1,78 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { Store } from '@ngrx/store'; +import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import { RequestService } from '../data/request.service'; +import { TasksService } from './tasks.service'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; +/** + * The service handling all REST requests for PoolTask + */ +var PoolTaskDataService = /** @class */ (function (_super) { + tslib_1.__extends(PoolTaskDataService, _super); + /** + * Initialize instance variables + * + * @param {RequestService} requestService + * @param {RemoteDataBuildService} rdbService + * @param {NormalizedObjectBuildService} dataBuildService + * @param {Store} store + * @param {ObjectCacheService} objectCache + * @param {HALEndpointService} halService + * @param {NotificationsService} notificationsService + * @param {HttpClient} http + * @param {DSOChangeAnalyzer} + * Emit the server response + */ + PoolTaskDataService.prototype.claimTask = function (scopeId) { + return this.postToEndpoint(this.linkPath, {}, scopeId, this.makeHttpOptions()); + }; + PoolTaskDataService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [RequestService, + RemoteDataBuildService, + NormalizedObjectBuildService, + Store, + ObjectCacheService, + HALEndpointService, + NotificationsService, + HttpClient, + DSOChangeAnalyzer]) + ], PoolTaskDataService); + return PoolTaskDataService; +}(TasksService)); +export { PoolTaskDataService }; +//# sourceMappingURL=pool-task-data.service.js.map \ No newline at end of file diff --git a/src/app/core/tasks/pool-task-data.service.js.map b/src/app/core/tasks/pool-task-data.service.js.map new file mode 100644 index 0000000000..3848f03263 --- /dev/null +++ b/src/app/core/tasks/pool-task-data.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pool-task-data.service.js","sourceRoot":"","sources":["pool-task-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAGxE;;GAEG;AAEH;IAAyC,+CAAsB;IAY7D;;;;;;;;;;;;OAYG;IACH,6BACY,cAA8B,EAC9B,UAAkC,EAClC,gBAA8C,EAC9C,KAAuB,EACvB,WAA+B,EAC/B,UAA8B,EAC9B,oBAA0C,EAC1C,IAAgB,EAChB,UAAuC;QATnD,YAUE,iBAAO,SACR;QAVW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,WAAK,GAAL,KAAK,CAAkB;QACvB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAC9B,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAI,GAAJ,IAAI,CAAY;QAChB,gBAAU,GAAV,UAAU,CAA6B;QAhCnD;;WAEG;QACO,cAAQ,GAAG,WAAW,CAAC;QAEjC;;WAEG;QACO,sBAAgB,GAAG,IAAI,CAAC;;IA0BlC,CAAC;IAED;;;;;;;OAOG;IACI,uCAAS,GAAhB,UAAiB,OAAe;QAC9B,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACjF,CAAC;IAhDU,mBAAmB;QAD/B,UAAU,EAAE;iDA2BiB,cAAc;YAClB,sBAAsB;YAChB,4BAA4B;YACvC,KAAK;YACC,kBAAkB;YACnB,kBAAkB;YACR,oBAAoB;YACpC,UAAU;YACJ,iBAAiB;OAlC9B,mBAAmB,CAiD/B;IAAD,0BAAC;CAAA,AAjDD,CAAyC,YAAY,GAiDpD;SAjDY,mBAAmB"} \ No newline at end of file diff --git a/src/app/core/tasks/task-response-parsing.service.js b/src/app/core/tasks/task-response-parsing.service.js new file mode 100644 index 0000000000..be48104bf7 --- /dev/null +++ b/src/app/core/tasks/task-response-parsing.service.js @@ -0,0 +1,50 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { BaseResponseParsingService } from '../data/base-response-parsing.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { ObjectCacheService } from '../cache/object-cache.service'; +import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; +import { ErrorResponse, TaskResponse } from '../cache/response.models'; +/** + * Provides methods to parse response for a task request. + */ +var TaskResponseParsingService = /** @class */ (function (_super) { + tslib_1.__extends(TaskResponseParsingService, _super); + /** + * Initialize instance variables + * + * @param {GlobalConfig} EnvConfig + * @param {ObjectCacheService} objectCache + */ + function TaskResponseParsingService(EnvConfig, objectCache) { + var _this = _super.call(this) || this; + _this.EnvConfig = EnvConfig; + _this.objectCache = objectCache; + _this.objectFactory = NormalizedObjectFactory; + _this.toCache = false; + return _this; + } + /** + * Parses data from the tasks endpoints + * + * @param {RestRequest} request + * @param {DSpaceRESTV2Response} data + * @returns {RestResponse} + */ + TaskResponseParsingService.prototype.parse = function (request, data) { + if (this.isSuccessStatus(data.statusCode)) { + return new TaskResponse(data.statusCode, data.statusText); + } + else { + return new ErrorResponse(Object.assign(new Error('Unexpected response from server'), { statusCode: data.statusCode, statusText: data.statusText })); + } + }; + TaskResponseParsingService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) + ], TaskResponseParsingService); + return TaskResponseParsingService; +}(BaseResponseParsingService)); +export { TaskResponseParsingService }; +//# sourceMappingURL=task-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/tasks/task-response-parsing.service.js.map b/src/app/core/tasks/task-response-parsing.service.js.map new file mode 100644 index 0000000000..e7be5a994a --- /dev/null +++ b/src/app/core/tasks/task-response-parsing.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"task-response-parsing.service.js","sourceRoot":"","sources":["task-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAMnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,aAAa,EAAgB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAErF;;GAEG;AAEH;IAAgD,sDAA0B;IAKxE;;;;;OAKG;IACH,oCAA6C,SAAuB,EAC9C,WAA+B;QADrD,YAEE,iBAAO,SACR;QAH4C,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAV3C,mBAAa,GAAG,uBAAuB,CAAC;QACxC,aAAO,GAAG,KAAK,CAAC;;IAW1B,CAAC;IAED;;;;;;OAMG;IACH,0CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACzC,OAAO,IAAI,YAAY,CAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAC5D;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,iCAAiC,CAAC,EAC5C,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IAlCU,0BAA0B;QADtC,UAAU,EAAE;QAYE,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAZ1C,0BAA0B,CAoCtC;IAAD,iCAAC;CAAA,AApCD,CAAgD,0BAA0B,GAoCzE;SApCY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/tasks/tasks.service.js b/src/app/core/tasks/tasks.service.js new file mode 100644 index 0000000000..7504ec248e --- /dev/null +++ b/src/app/core/tasks/tasks.service.js @@ -0,0 +1,96 @@ +import * as tslib_1 from "tslib"; +import { HttpHeaders } from '@angular/common/http'; +import { merge as observableMerge, of as observableOf } from 'rxjs'; +import { distinctUntilChanged, filter, flatMap, map, mergeMap, tap } from 'rxjs/operators'; +import { DataService } from '../data/data.service'; +import { TaskDeleteRequest, TaskPostRequest } from '../data/request.models'; +import { isNotEmpty } from '../../shared/empty.util'; +import { ProcessTaskResponse } from './models/process-task-response'; +import { RemoteDataError } from '../data/remote-data-error'; +import { getResponseFromEntry } from '../shared/operators'; +/** + * An abstract class that provides methods to handle task requests. + */ +var TasksService = /** @class */ (function (_super) { + tslib_1.__extends(TasksService, _super); + function TasksService() { + return _super !== null && _super.apply(this, arguments) || this; + } + TasksService.prototype.getBrowseEndpoint = function (options) { + return this.halService.getEndpoint(this.linkPath); + }; + /** + * Fetch a RestRequest + * + * @param requestId + * The base endpoint for the type of object + * @return Observable + * server response + */ + TasksService.prototype.fetchRequest = function (requestId) { + var responses = this.requestService.getByUUID(requestId).pipe(getResponseFromEntry()); + var errorResponses = responses.pipe(filter(function (response) { return !response.isSuccessful; }), mergeMap(function (response) { return observableOf(new ProcessTaskResponse(response.isSuccessful, new RemoteDataError(response.statusCode, response.statusText, response.errorMessage))); })); + var successResponses = responses.pipe(filter(function (response) { return response.isSuccessful; }), map(function (response) { return new ProcessTaskResponse(response.isSuccessful); }), distinctUntilChanged()); + return observableMerge(errorResponses, successResponses); + }; + /** + * Create the HREF for a specific submission object based on its identifier + * + * @param endpoint + * The base endpoint for the type of object + * @param resourceID + * The identifier for the object + */ + TasksService.prototype.getEndpointByIDHref = function (endpoint, resourceID) { + return isNotEmpty(resourceID) ? endpoint + "/" + resourceID : "" + endpoint; + }; + /** + * Make a new post request + * + * @param linkPath + * The endpoint link name + * @param body + * The request body + * @param scopeId + * The task id to be removed + * @param options + * The HttpOptions object + * @return Observable + * server response + */ + TasksService.prototype.postToEndpoint = function (linkPath, body, scopeId, options) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + return this.halService.getEndpoint(linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), distinctUntilChanged(), map(function (endpointURL) { return new TaskPostRequest(requestId, endpointURL, body, options); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function (request) { return _this.fetchRequest(requestId); }), distinctUntilChanged()); + }; + /** + * Delete an existing task on the server + * + * @param linkPath + * The endpoint link name + * @param scopeId + * The task id to be removed + * @param options + * The HttpOptions object + * @return Observable + * server response + */ + TasksService.prototype.deleteById = function (linkPath, scopeId, options) { + var _this = this; + var requestId = this.requestService.generateRequestId(); + return this.halService.getEndpoint(linkPath || this.linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), map(function (endpointURL) { return new TaskDeleteRequest(requestId, endpointURL, null, options); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function (request) { return _this.fetchRequest(requestId); }), distinctUntilChanged()); + }; + /** + * Create a new HttpOptions + */ + TasksService.prototype.makeHttpOptions = function () { + var options = Object.create({}); + var headers = new HttpHeaders(); + headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); + options.headers = headers; + return options; + }; + return TasksService; +}(DataService)); +export { TasksService }; +//# sourceMappingURL=tasks.service.js.map \ No newline at end of file diff --git a/src/app/core/tasks/tasks.service.js.map b/src/app/core/tasks/tasks.service.js.map new file mode 100644 index 0000000000..6ae3946573 --- /dev/null +++ b/src/app/core/tasks/tasks.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"tasks.service.js","sourceRoot":"","sources":["tasks.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/url-baser/url-baser.js b/src/app/core/url-baser/url-baser.js new file mode 100644 index 0000000000..ea748cbea1 --- /dev/null +++ b/src/app/core/url-baser/url-baser.js @@ -0,0 +1,39 @@ +import { isEmpty } from '../../shared/empty.util'; +/** + * Extracts the base URL + * from a URL with query parameters + */ +var URLBaser = /** @class */ (function () { + /** + * Creates a new URLBaser + * + * @param originalURL + * a string representing the original URL with possible query parameters + */ + function URLBaser(originalURL) { + this.original = originalURL; + } + /** + * Removes the query parameters from the original URL of this URLBaser + * + * @return {string} + * The base URL + */ + URLBaser.prototype.toString = function () { + if (isEmpty(this.original)) { + return ''; + } + else { + var index = this.original.indexOf('?'); + if (index < 0) { + return this.original; + } + else { + return this.original.substring(0, index); + } + } + }; + return URLBaser; +}()); +export { URLBaser }; +//# sourceMappingURL=url-baser.js.map \ No newline at end of file diff --git a/src/app/core/url-baser/url-baser.js.map b/src/app/core/url-baser/url-baser.js.map new file mode 100644 index 0000000000..6aae19fb0a --- /dev/null +++ b/src/app/core/url-baser/url-baser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"url-baser.js","sourceRoot":"","sources":["url-baser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;;GAGG;AACH;IAGE;;;;;OAKG;IACH,kBAAY,WAAmB;QAC7B,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR;QACE,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC1B,OAAO,EAAE,CAAC;SACX;aAAM;YACL,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,KAAK,GAAG,CAAC,EAAE;gBACb,OAAO,IAAI,CAAC,QAAQ,CAAC;aACtB;iBAAM;gBACL,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;aAC1C;SACF;IACH,CAAC;IAEH,eAAC;AAAD,CAAC,AAhCD,IAgCC"} \ No newline at end of file diff --git a/src/app/core/url-combiner/rest-url-combiner.js b/src/app/core/url-combiner/rest-url-combiner.js new file mode 100644 index 0000000000..887f063c85 --- /dev/null +++ b/src/app/core/url-combiner/rest-url-combiner.js @@ -0,0 +1,21 @@ +import * as tslib_1 from "tslib"; +import { URLCombiner } from './url-combiner'; +/** + * Combines a variable number of strings representing parts + * of a relative REST URL in to a single, absolute REST URL + * + * TODO write tests once GlobalConfig becomes injectable + */ +var RESTURLCombiner = /** @class */ (function (_super) { + tslib_1.__extends(RESTURLCombiner, _super); + function RESTURLCombiner(EnvConfig) { + var parts = []; + for (var _i = 1; _i < arguments.length; _i++) { + parts[_i - 1] = arguments[_i]; + } + return _super.apply(this, [EnvConfig.rest.baseUrl].concat(parts)) || this; + } + return RESTURLCombiner; +}(URLCombiner)); +export { RESTURLCombiner }; +//# sourceMappingURL=rest-url-combiner.js.map \ No newline at end of file diff --git a/src/app/core/url-combiner/rest-url-combiner.js.map b/src/app/core/url-combiner/rest-url-combiner.js.map new file mode 100644 index 0000000000..9b39c4edca --- /dev/null +++ b/src/app/core/url-combiner/rest-url-combiner.js.map @@ -0,0 +1 @@ +{"version":3,"file":"rest-url-combiner.js","sourceRoot":"","sources":["rest-url-combiner.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI7C;;;;;GAKG;AACH;IAAqC,2CAAW;IAC9C,yBAAY,SAAuB;QAAE,eAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,8BAAkB;;mCAC/C,SAAS,CAAC,IAAI,CAAC,OAAO,SAAK,KAAK;IACxC,CAAC;IACH,sBAAC;AAAD,CAAC,AAJD,CAAqC,WAAW,GAI/C"} \ No newline at end of file diff --git a/src/app/core/url-combiner/ui-url-combiner.js b/src/app/core/url-combiner/ui-url-combiner.js new file mode 100644 index 0000000000..0b20f6de37 --- /dev/null +++ b/src/app/core/url-combiner/ui-url-combiner.js @@ -0,0 +1,21 @@ +import * as tslib_1 from "tslib"; +import { URLCombiner } from './url-combiner'; +/** + * Combines a variable number of strings representing parts + * of a relative UI URL in to a single, absolute UI URL + * + * TODO write tests once GlobalConfig becomes injectable + */ +var UIURLCombiner = /** @class */ (function (_super) { + tslib_1.__extends(UIURLCombiner, _super); + function UIURLCombiner(EnvConfig) { + var parts = []; + for (var _i = 1; _i < arguments.length; _i++) { + parts[_i - 1] = arguments[_i]; + } + return _super.apply(this, [EnvConfig.ui.baseUrl].concat(parts)) || this; + } + return UIURLCombiner; +}(URLCombiner)); +export { UIURLCombiner }; +//# sourceMappingURL=ui-url-combiner.js.map \ No newline at end of file diff --git a/src/app/core/url-combiner/ui-url-combiner.js.map b/src/app/core/url-combiner/ui-url-combiner.js.map new file mode 100644 index 0000000000..c013190d7f --- /dev/null +++ b/src/app/core/url-combiner/ui-url-combiner.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ui-url-combiner.js","sourceRoot":"","sources":["ui-url-combiner.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C;;;;;GAKG;AACH;IAAmC,yCAAW;IAC5C,uBAAY,SAAuB;QAAE,eAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,8BAAkB;;mCAC/C,SAAS,CAAC,EAAE,CAAC,OAAO,SAAK,KAAK;IACtC,CAAC;IACH,oBAAC;AAAD,CAAC,AAJD,CAAmC,WAAW,GAI7C"} \ No newline at end of file diff --git a/src/app/core/url-combiner/url-combiner.js b/src/app/core/url-combiner/url-combiner.js new file mode 100644 index 0000000000..2da34fde1a --- /dev/null +++ b/src/app/core/url-combiner/url-combiner.js @@ -0,0 +1,52 @@ +import { isEmpty } from '../../shared/empty.util'; +/** + * Combines a variable number of strings representing parts + * of a URL in to a single, normalized URL + */ +var URLCombiner = /** @class */ (function () { + /** + * Creates a new URLCombiner + * + * @param parts + * a variable number of strings representing parts of a URL + */ + function URLCombiner() { + var parts = []; + for (var _i = 0; _i < arguments.length; _i++) { + parts[_i] = arguments[_i]; + } + // can't do this in the constructor signature, + // because of the spread operator + this.parts = parts; + } + /** + * Combines the parts of this URLCombiner in to a single, + * normalized URL + * + * e.g. new URLCombiner('http:/foo.com/', '/bar', 'id', '5').toString() + * returns: http://foo.com/bar/id/5 + * + * @return {string} + * The combined URL + */ + URLCombiner.prototype.toString = function () { + if (isEmpty(this.parts)) { + return ''; + } + else { + var url = this.parts.join('/'); + // make sure protocol is followed by two slashes + url = url.replace(/:\//g, '://'); + // remove consecutive slashes + url = url.replace(/([^:\s])\/+/g, '$1/'); + // remove trailing slash before parameters or hash + url = url.replace(/\/(\?|&|#[^!])/g, '$1'); + // replace ? in parameters with & + url = url.replace(/(\?.+)\?/g, '$1&'); + return url; + } + }; + return URLCombiner; +}()); +export { URLCombiner }; +//# sourceMappingURL=url-combiner.js.map \ No newline at end of file diff --git a/src/app/core/url-combiner/url-combiner.js.map b/src/app/core/url-combiner/url-combiner.js.map new file mode 100644 index 0000000000..f3372b7158 --- /dev/null +++ b/src/app/core/url-combiner/url-combiner.js.map @@ -0,0 +1 @@ +{"version":3,"file":"url-combiner.js","sourceRoot":"","sources":["url-combiner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;;GAGG;AACH;IAGE;;;;;OAKG;IACH;QAAY,eAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,0BAAkB;;QAC5B,8CAA8C;QAC9C,iCAAiC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;;;;;;;OASG;IACH,8BAAQ,GAAR;QACE,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,EAAE,CAAC;SACX;aAAM;YACL,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE/B,gDAAgD;YAChD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAEjC,6BAA6B;YAC7B,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAEzC,kDAAkD;YAClD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YAE3C,iCAAiC;YACjC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAEtC,OAAO,GAAG,CAAC;SACZ;IACH,CAAC;IAEH,kBAAC;AAAD,CAAC,AA/CD,IA+CC"} \ No newline at end of file diff --git a/src/app/footer/footer.component.js b/src/app/footer/footer.component.js new file mode 100644 index 0000000000..9b61c075e4 --- /dev/null +++ b/src/app/footer/footer.component.js @@ -0,0 +1,17 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +var FooterComponent = /** @class */ (function () { + function FooterComponent() { + this.dateObj = Date.now(); + } + FooterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-footer', + styleUrls: ['footer.component.scss'], + templateUrl: 'footer.component.html' + }) + ], FooterComponent); + return FooterComponent; +}()); +export { FooterComponent }; +//# sourceMappingURL=footer.component.js.map \ No newline at end of file diff --git a/src/app/footer/footer.component.js.map b/src/app/footer/footer.component.js.map new file mode 100644 index 0000000000..f010e95142 --- /dev/null +++ b/src/app/footer/footer.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"footer.component.js","sourceRoot":"","sources":["footer.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAO1C;IALA;QAOE,YAAO,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAE/B,CAAC;IAJY,eAAe;QAL3B,SAAS,CAAC;YACT,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,CAAC,uBAAuB,CAAC;YACpC,WAAW,EAAE,uBAAuB;SACrC,CAAC;OACW,eAAe,CAI3B;IAAD,sBAAC;CAAA,AAJD,IAIC;SAJY,eAAe"} \ No newline at end of file diff --git a/src/app/header-nav-wrapper/header-navbar-wrapper.component.js b/src/app/header-nav-wrapper/header-navbar-wrapper.component.js new file mode 100644 index 0000000000..652f164d8a --- /dev/null +++ b/src/app/header-nav-wrapper/header-navbar-wrapper.component.js @@ -0,0 +1,43 @@ +import * as tslib_1 from "tslib"; +import { Component, HostBinding } from '@angular/core'; +import { Store } from '@ngrx/store'; +import { hasValue } from '../shared/empty.util'; +import { MenuService } from '../shared/menu/menu.service'; +import { MenuID } from '../shared/menu/initial-menus-state'; +/** + * This component represents a wrapper for the horizontal navbar and the header + */ +var HeaderNavbarWrapperComponent = /** @class */ (function () { + function HeaderNavbarWrapperComponent(store, menuService) { + this.store = store; + this.menuService = menuService; + this.isOpen = false; + this.menuID = MenuID.PUBLIC; + } + HeaderNavbarWrapperComponent.prototype.ngOnInit = function () { + var _this = this; + this.isNavBarCollapsed = this.menuService.isMenuCollapsed(this.menuID); + this.sub = this.isNavBarCollapsed.subscribe(function (isCollapsed) { return _this.isOpen = !isCollapsed; }); + }; + HeaderNavbarWrapperComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + HostBinding('class.open'), + tslib_1.__metadata("design:type", Object) + ], HeaderNavbarWrapperComponent.prototype, "isOpen", void 0); + HeaderNavbarWrapperComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-header-navbar-wrapper', + styleUrls: ['header-navbar-wrapper.component.scss'], + templateUrl: 'header-navbar-wrapper.component.html', + }), + tslib_1.__metadata("design:paramtypes", [Store, + MenuService]) + ], HeaderNavbarWrapperComponent); + return HeaderNavbarWrapperComponent; +}()); +export { HeaderNavbarWrapperComponent }; +//# sourceMappingURL=header-navbar-wrapper.component.js.map \ No newline at end of file diff --git a/src/app/header-nav-wrapper/header-navbar-wrapper.component.js.map b/src/app/header-nav-wrapper/header-navbar-wrapper.component.js.map new file mode 100644 index 0000000000..f742261544 --- /dev/null +++ b/src/app/header-nav-wrapper/header-navbar-wrapper.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"header-navbar-wrapper.component.js","sourceRoot":"","sources":["header-navbar-wrapper.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAqB,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D;;GAEG;AAMH;IAME,sCACU,KAAsB,EACtB,WAAwB;QADxB,UAAK,GAAL,KAAK,CAAiB;QACtB,gBAAW,GAAX,WAAW,CAAa;QAPP,WAAM,GAAG,KAAK,CAAC;QAG1C,WAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAMvB,CAAC;IAED,+CAAQ,GAAR;QAAA,iBAGC;QAFC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,UAAC,WAAW,IAAK,OAAA,KAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAA1B,CAA0B,CAAC,CAAA;IAC1F,CAAC;IAED,kDAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IApB0B;QAA1B,WAAW,CAAC,YAAY,CAAC;;gEAAgB;IAD/B,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;iDAQiB,KAAK;YACC,WAAW;OARvB,4BAA4B,CAsBxC;IAAD,mCAAC;CAAA,AAtBD,IAsBC;SAtBY,4BAA4B"} \ No newline at end of file diff --git a/src/app/header/header.component.js b/src/app/header/header.component.js new file mode 100644 index 0000000000..0929f8c308 --- /dev/null +++ b/src/app/header/header.component.js @@ -0,0 +1,28 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { MenuService } from '../shared/menu/menu.service'; +import { MenuID } from '../shared/menu/initial-menus-state'; +/** + * Represents the header with the logo and simple navigation + */ +var HeaderComponent = /** @class */ (function () { + function HeaderComponent(menuService) { + this.menuService = menuService; + this.showAuth = false; + this.menuID = MenuID.PUBLIC; + } + HeaderComponent.prototype.toggleNavbar = function () { + this.menuService.toggleMenu(this.menuID); + }; + HeaderComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-header', + styleUrls: ['header.component.scss'], + templateUrl: 'header.component.html', + }), + tslib_1.__metadata("design:paramtypes", [MenuService]) + ], HeaderComponent); + return HeaderComponent; +}()); +export { HeaderComponent }; +//# sourceMappingURL=header.component.js.map \ No newline at end of file diff --git a/src/app/header/header.component.js.map b/src/app/header/header.component.js.map new file mode 100644 index 0000000000..95aa45ca67 --- /dev/null +++ b/src/app/header/header.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"header.component.js","sourceRoot":"","sources":["header.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D;;GAEG;AAMH;IASE,yBACU,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QAJ3B,aAAQ,GAAG,KAAK,CAAC;QACxB,WAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAKvB,CAAC;IAEM,sCAAY,GAAnB;QACE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAhBU,eAAe;QAL3B,SAAS,CAAC;YACT,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,CAAC,uBAAuB,CAAC;YACpC,WAAW,EAAE,uBAAuB;SACrC,CAAC;iDAWuB,WAAW;OAVvB,eAAe,CAiB3B;IAAD,sBAAC;CAAA,AAjBD,IAiBC;SAjBY,eAAe"} \ No newline at end of file diff --git a/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js b/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js new file mode 100644 index 0000000000..1d6acc5d7a --- /dev/null +++ b/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js @@ -0,0 +1,85 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Injector } from '@angular/core'; +import { NavbarSectionComponent } from '../navbar-section/navbar-section.component'; +import { MenuService } from '../../shared/menu/menu.service'; +import { MenuID } from '../../shared/menu/initial-menus-state'; +import { slide } from '../../shared/animations/slide'; +import { first } from 'rxjs/operators'; +import { HostWindowService } from '../../shared/host-window.service'; +import { rendersSectionForMenu } from '../../shared/menu/menu-section.decorator'; +/** + * Represents an expandable section in the navbar + */ +var ExpandableNavbarSectionComponent = /** @class */ (function (_super) { + tslib_1.__extends(ExpandableNavbarSectionComponent, _super); + function ExpandableNavbarSectionComponent(menuSection, menuService, injector, windowService) { + var _this = _super.call(this, menuSection, menuService, injector) || this; + _this.menuService = menuService; + _this.injector = injector; + _this.windowService = windowService; + /** + * This section resides in the Public Navbar + */ + _this.menuID = MenuID.PUBLIC; + return _this; + } + ExpandableNavbarSectionComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + }; + /** + * Overrides the super function that activates this section (triggered on hover) + * Has an extra check to make sure the section can only be activated on non-mobile devices + * @param {Event} event The user event that triggered this function + */ + ExpandableNavbarSectionComponent.prototype.activateSection = function (event) { + var _this = this; + this.windowService.isXsOrSm().pipe(first()).subscribe(function (isMobile) { + if (!isMobile) { + _super.prototype.activateSection.call(_this, event); + } + }); + }; + /** + * Overrides the super function that deactivates this section (triggered on hover) + * Has an extra check to make sure the section can only be deactivated on non-mobile devices + * @param {Event} event The user event that triggered this function + */ + ExpandableNavbarSectionComponent.prototype.deactivateSection = function (event) { + var _this = this; + this.windowService.isXsOrSm().pipe(first()).subscribe(function (isMobile) { + if (!isMobile) { + _super.prototype.deactivateSection.call(_this, event); + } + }); + }; + /** + * Overrides the super function that toggles this section (triggered on click) + * Has an extra check to make sure the section can only be toggled on mobile devices + * @param {Event} event The user event that triggered this function + */ + ExpandableNavbarSectionComponent.prototype.toggleSection = function (event) { + var _this = this; + event.preventDefault(); + this.windowService.isXsOrSm().pipe(first()).subscribe(function (isMobile) { + if (isMobile) { + _super.prototype.toggleSection.call(_this, event); + } + }); + }; + ExpandableNavbarSectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-expandable-navbar-section', + templateUrl: './expandable-navbar-section.component.html', + styleUrls: ['./expandable-navbar-section.component.scss'], + animations: [slide] + }), + rendersSectionForMenu(MenuID.PUBLIC, true), + tslib_1.__param(0, Inject('sectionDataProvider')), + tslib_1.__metadata("design:paramtypes", [Object, MenuService, + Injector, + HostWindowService]) + ], ExpandableNavbarSectionComponent); + return ExpandableNavbarSectionComponent; +}(NavbarSectionComponent)); +export { ExpandableNavbarSectionComponent }; +//# sourceMappingURL=expandable-navbar-section.component.js.map \ No newline at end of file diff --git a/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js.map b/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js.map new file mode 100644 index 0000000000..00834d2b20 --- /dev/null +++ b/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"expandable-navbar-section.component.js","sourceRoot":"","sources":["expandable-navbar-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF;;GAEG;AAQH;IAAsD,4DAAsB;IAM1E,0CAA2C,WAAW,EAChC,WAAwB,EACxB,QAAkB,EACpB,aAAgC;QAHpD,YAKE,kBAAM,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,SAC1C;QALqB,iBAAW,GAAX,WAAW,CAAa;QACxB,cAAQ,GAAR,QAAQ,CAAU;QACpB,mBAAa,GAAb,aAAa,CAAmB;QARpD;;WAEG;QACH,YAAM,GAAG,MAAM,CAAC,MAAM,CAAC;;IAQvB,CAAC;IAED,mDAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,0DAAe,GAAf,UAAgB,KAAK;QAArB,iBAQC;QAPC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,CAChC,KAAK,EAAE,CACR,CAAC,SAAS,CAAC,UAAC,QAAQ;YACnB,IAAI,CAAC,QAAQ,EAAE;gBACb,iBAAM,eAAe,aAAC,KAAK,CAAC,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,4DAAiB,GAAjB,UAAkB,KAAK;QAAvB,iBAQC;QAPC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,CAChC,KAAK,EAAE,CACR,CAAC,SAAS,CAAC,UAAC,QAAQ;YACnB,IAAI,CAAC,QAAQ,EAAE;gBACb,iBAAM,iBAAiB,aAAC,KAAK,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,wDAAa,GAAb,UAAc,KAAK;QAAnB,iBASC;QARC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,CAChC,KAAK,EAAE,CACR,CAAC,SAAS,CAAC,UAAC,QAAQ;YACnB,IAAI,QAAQ,EAAE;gBACZ,iBAAM,aAAa,aAAC,KAAK,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IA9DU,gCAAgC;QAP5C,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,WAAW,EAAE,4CAA4C;YACzD,SAAS,EAAE,CAAC,4CAA4C,CAAC;YACzD,UAAU,EAAE,CAAC,KAAK,CAAC;SACpB,CAAC;QACD,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC;QAO5B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;yDACP,WAAW;YACd,QAAQ;YACL,iBAAiB;OATzC,gCAAgC,CA+D5C;IAAD,uCAAC;CAAA,AA/DD,CAAsD,sBAAsB,GA+D3E;SA/DY,gCAAgC"} \ No newline at end of file diff --git a/src/app/navbar/navbar-section/navbar-section.component.js b/src/app/navbar/navbar-section/navbar-section.component.js new file mode 100644 index 0000000000..768e9de26a --- /dev/null +++ b/src/app/navbar/navbar-section/navbar-section.component.js @@ -0,0 +1,39 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject, Injector } from '@angular/core'; +import { MenuSectionComponent } from '../../shared/menu/menu-section/menu-section.component'; +import { MenuService } from '../../shared/menu/menu.service'; +import { MenuID } from '../../shared/menu/initial-menus-state'; +import { rendersSectionForMenu } from '../../shared/menu/menu-section.decorator'; +/** + * Represents a non-expandable section in the navbar + */ +var NavbarSectionComponent = /** @class */ (function (_super) { + tslib_1.__extends(NavbarSectionComponent, _super); + function NavbarSectionComponent(menuSection, menuService, injector) { + var _this = _super.call(this, menuSection, menuService, injector) || this; + _this.menuService = menuService; + _this.injector = injector; + /** + * This section resides in the Public Navbar + */ + _this.menuID = MenuID.PUBLIC; + return _this; + } + NavbarSectionComponent.prototype.ngOnInit = function () { + _super.prototype.ngOnInit.call(this); + }; + NavbarSectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-navbar-section', + templateUrl: './navbar-section.component.html', + styleUrls: ['./navbar-section.component.scss'] + }), + rendersSectionForMenu(MenuID.PUBLIC, false), + tslib_1.__param(0, Inject('sectionDataProvider')), + tslib_1.__metadata("design:paramtypes", [Object, MenuService, + Injector]) + ], NavbarSectionComponent); + return NavbarSectionComponent; +}(MenuSectionComponent)); +export { NavbarSectionComponent }; +//# sourceMappingURL=navbar-section.component.js.map \ No newline at end of file diff --git a/src/app/navbar/navbar-section/navbar-section.component.js.map b/src/app/navbar/navbar-section/navbar-section.component.js.map new file mode 100644 index 0000000000..e2282258dd --- /dev/null +++ b/src/app/navbar/navbar-section/navbar-section.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"navbar-section.component.js","sourceRoot":"","sources":["navbar-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF;;GAEG;AAOH;IAA4C,kDAAoB;IAM9D,gCAA2C,WAAW,EAChC,WAAwB,EACxB,QAAkB;QAFxC,YAIE,kBAAM,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,SAC1C;QAJqB,iBAAW,GAAX,WAAW,CAAa;QACxB,cAAQ,GAAR,QAAQ,CAAU;QAPxC;;WAEG;QACH,YAAM,GAAG,MAAM,CAAC,MAAM,CAAC;;IAOvB,CAAC;IAED,yCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;IACnB,CAAC;IAfU,sBAAsB;QANlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;YAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;SAC/C,CAAC;QACD,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;QAO7B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;yDACP,WAAW;YACd,QAAQ;OAR7B,sBAAsB,CAgBlC;IAAD,6BAAC;CAAA,AAhBD,CAA4C,oBAAoB,GAgB/D;SAhBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/navbar/navbar.component.js b/src/app/navbar/navbar.component.js new file mode 100644 index 0000000000..117578b1fe --- /dev/null +++ b/src/app/navbar/navbar.component.js @@ -0,0 +1,130 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector } from '@angular/core'; +import { slideMobileNav } from '../shared/animations/slide'; +import { MenuComponent } from '../shared/menu/menu.component'; +import { MenuService } from '../shared/menu/menu.service'; +import { MenuID, MenuItemType } from '../shared/menu/initial-menus-state'; +import { HostWindowService } from '../shared/host-window.service'; +/** + * Component representing the public navbar + */ +var NavbarComponent = /** @class */ (function (_super) { + tslib_1.__extends(NavbarComponent, _super); + function NavbarComponent(menuService, injector, windowService) { + var _this = _super.call(this, menuService, injector) || this; + _this.menuService = menuService; + _this.injector = injector; + _this.windowService = windowService; + /** + * The menu ID of the Navbar is PUBLIC + * @type {MenuID.PUBLIC} + */ + _this.menuID = MenuID.PUBLIC; + return _this; + } + NavbarComponent.prototype.ngOnInit = function () { + this.createMenu(); + _super.prototype.ngOnInit.call(this); + }; + /** + * Initialize all menu sections and items for this menu + */ + NavbarComponent.prototype.createMenu = function () { + var _this = this; + var menuList = [ + /* News */ + { + id: 'browse_global', + active: false, + visible: true, + model: { + type: MenuItemType.TEXT, + text: 'menu.section.browse_global' + }, + index: 0 + }, + // { + // id: 'browse_global_communities_and_collections', + // parentID: 'browse_global', + // active: false, + // visible: true, + // model: { + // type: MenuItemType.LINK, + // text: 'menu.section.browse_global_communities_and_collections', + // link: '#' + // } as LinkMenuItemModel, + // }, + { + id: 'browse_global_global_by_title', + parentID: 'browse_global', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.browse_global_by_title', + link: '/browse/title' + }, + }, + { + id: 'browse_global_global_by_issue_date', + parentID: 'browse_global', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.browse_global_by_issue_date', + link: '/browse/dateissued' + }, + }, + { + id: 'browse_global_by_author', + parentID: 'browse_global', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.browse_global_by_author', + link: '/browse/author' + }, + }, + { + id: 'browse_global_by_subject', + parentID: 'browse_global', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.browse_global_by_subject', + link: '/browse/subject' + }, + }, + /* Statistics */ + { + id: 'statistics', + active: false, + visible: true, + model: { + type: MenuItemType.LINK, + text: 'menu.section.statistics', + link: '' + }, + index: 2 + }, + ]; + menuList.forEach(function (menuSection) { return _this.menuService.addSection(_this.menuID, menuSection); }); + }; + NavbarComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-navbar', + styleUrls: ['navbar.component.scss'], + templateUrl: 'navbar.component.html', + animations: [slideMobileNav] + }), + tslib_1.__metadata("design:paramtypes", [MenuService, + Injector, + HostWindowService]) + ], NavbarComponent); + return NavbarComponent; +}(MenuComponent)); +export { NavbarComponent }; +//# sourceMappingURL=navbar.component.js.map \ No newline at end of file diff --git a/src/app/navbar/navbar.component.js.map b/src/app/navbar/navbar.component.js.map new file mode 100644 index 0000000000..766fd0b9a0 --- /dev/null +++ b/src/app/navbar/navbar.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"navbar.component.js","sourceRoot":"","sources":["navbar.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/navbar/navbar.effects.js b/src/app/navbar/navbar.effects.js new file mode 100644 index 0000000000..147eb6d39c --- /dev/null +++ b/src/app/navbar/navbar.effects.js @@ -0,0 +1,63 @@ +import * as tslib_1 from "tslib"; +import { first, map, switchMap } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { Actions, Effect, ofType } from '@ngrx/effects'; +import * as fromRouter from '@ngrx/router-store'; +import { HostWindowActionTypes } from '../shared/host-window.actions'; +import { CollapseMenuAction, MenuActionTypes } from '../shared/menu/menu.actions'; +import { MenuID } from '../shared/menu/initial-menus-state'; +import { MenuService } from '../shared/menu/menu.service'; +var NavbarEffects = /** @class */ (function () { + function NavbarEffects(actions$, menuService) { + var _this = this; + this.actions$ = actions$; + this.menuService = menuService; + this.menuID = MenuID.PUBLIC; + /** + * Effect that collapses the public menu on window resize + * @type {Observable} + */ + this.resize$ = this.actions$ + .pipe(ofType(HostWindowActionTypes.RESIZE), map(function () { return new CollapseMenuAction(_this.menuID); })); + /** + * Effect that collapses the public menu on reroute + * @type {Observable} + */ + this.routeChange$ = this.actions$ + .pipe(ofType(fromRouter.ROUTER_NAVIGATION), map(function () { return new CollapseMenuAction(_this.menuID); })); + /** + * Effect that collapses the public menu when the admin sidebar opens + * @type {Observable} + */ + this.openAdminSidebar$ = this.actions$ + .pipe(ofType(MenuActionTypes.EXPAND_MENU_PREVIEW), switchMap(function (action) { + return _this.menuService.getMenu(action.menuID).pipe(first(), map(function (menu) { + if (menu.id === MenuID.ADMIN) { + if (!menu.previewCollapsed && menu.collapsed) { + return new CollapseMenuAction(MenuID.PUBLIC); + } + } + return { type: 'NO_ACTION' }; + })); + })); + } + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], NavbarEffects.prototype, "resize$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], NavbarEffects.prototype, "routeChange$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], NavbarEffects.prototype, "openAdminSidebar$", void 0); + NavbarEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions, MenuService]) + ], NavbarEffects); + return NavbarEffects; +}()); +export { NavbarEffects }; +//# sourceMappingURL=navbar.effects.js.map \ No newline at end of file diff --git a/src/app/navbar/navbar.effects.js.map b/src/app/navbar/navbar.effects.js.map new file mode 100644 index 0000000000..bd26e8b32b --- /dev/null +++ b/src/app/navbar/navbar.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"navbar.effects.js","sourceRoot":"","sources":["navbar.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACL,kBAAkB,EAElB,eAAe,EAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAI1D;IAyCE,uBAAoB,QAAiB,EAAU,WAAwB;QAAvE,iBAEC;QAFmB,aAAQ,GAAR,QAAQ,CAAS;QAAU,gBAAW,GAAX,WAAW,CAAa;QAxCvE,WAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACvB;;;WAGG;QACO,YAAO,GAAG,IAAI,CAAC,QAAQ;aAC9B,IAAI,CACH,MAAM,CAAC,qBAAqB,CAAC,MAAM,CAAC,EACpC,GAAG,CAAC,cAAM,OAAA,IAAI,kBAAkB,CAAC,KAAI,CAAC,MAAM,CAAC,EAAnC,CAAmC,CAAC,CAC/C,CAAC;QAEJ;;;WAGG;QACO,iBAAY,GAAG,IAAI,CAAC,QAAQ;aACnC,IAAI,CACH,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,EACpC,GAAG,CAAC,cAAM,OAAA,IAAI,kBAAkB,CAAC,KAAI,CAAC,MAAM,CAAC,EAAnC,CAAmC,CAAC,CAC/C,CAAC;QACJ;;;WAGG;QACO,sBAAiB,GAAG,IAAI,CAAC,QAAQ;aACxC,IAAI,CACH,MAAM,CAAC,eAAe,CAAC,mBAAmB,CAAC,EAC3C,SAAS,CAAC,UAAC,MAA+B;YACxC,OAAO,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CACjD,KAAK,EAAE,EACP,GAAG,CAAC,UAAC,IAAe;gBAClB,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,KAAK,EAAE;oBAC5B,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,SAAS,EAAE;wBAC5C,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;qBAC7C;iBACF;gBACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC,CAAC;QACR,CAAC,CAAC,CACH,CAAC;IAGJ,CAAC;IArCS;QAAT,MAAM,EAAE;;kDAIL;IAMM;QAAT,MAAM,EAAE;;uDAIL;IAKM;QAAT,MAAM,EAAE;;4DAeL;IAxCO,aAAa;QADzB,UAAU,EAAE;iDA0CmB,OAAO,EAAuB,WAAW;OAzC5D,aAAa,CA6CzB;IAAD,oBAAC;CAAA,AA7CD,IA6CC;SA7CY,aAAa"} \ No newline at end of file diff --git a/src/app/navbar/navbar.module.js b/src/app/navbar/navbar.module.js new file mode 100644 index 0000000000..e834bfe183 --- /dev/null +++ b/src/app/navbar/navbar.module.js @@ -0,0 +1,51 @@ +import * as tslib_1 from "tslib"; +import { SharedModule } from '../shared/shared.module'; +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { EffectsModule } from '@ngrx/effects'; +import { CoreModule } from '../core/core.module'; +import { NavbarEffects } from './navbar.effects'; +import { NavbarSectionComponent } from './navbar-section/navbar-section.component'; +import { ExpandableNavbarSectionComponent } from './expandable-navbar-section/expandable-navbar-section.component'; +import { NavbarComponent } from './navbar.component'; +var effects = [ + NavbarEffects +]; +var NavbarModule = /** @class */ (function () { + /** + * This module handles all components and pipes that are necessary for the horizontal navigation bar + */ + function NavbarModule() { + } + NavbarModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule, + EffectsModule.forFeature(effects), + CoreModule.forRoot() + ], + declarations: [ + NavbarComponent, + NavbarSectionComponent, + ExpandableNavbarSectionComponent + ], + providers: [], + entryComponents: [ + NavbarSectionComponent, + ExpandableNavbarSectionComponent + ], + exports: [ + NavbarComponent, + NavbarSectionComponent, + ExpandableNavbarSectionComponent + ] + }) + /** + * This module handles all components and pipes that are necessary for the horizontal navigation bar + */ + ], NavbarModule); + return NavbarModule; +}()); +export { NavbarModule }; +//# sourceMappingURL=navbar.module.js.map \ No newline at end of file diff --git a/src/app/navbar/navbar.module.js.map b/src/app/navbar/navbar.module.js.map new file mode 100644 index 0000000000..4fa76c23f8 --- /dev/null +++ b/src/app/navbar/navbar.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"navbar.module.js","sourceRoot":"","sources":["navbar.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,gCAAgC,EAAE,MAAM,iEAAiE,CAAC;AACnH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,IAAM,OAAO,GAAG;IACd,aAAa;CACd,CAAC;AA+BF;IAHA;;OAEG;IACH;IACA,CAAC;IADY,YAAY;QA7BxB,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;gBACjC,UAAU,CAAC,OAAO,EAAE;aACrB;YACD,YAAY,EAAE;gBACZ,eAAe;gBACf,sBAAsB;gBACtB,gCAAgC;aACjC;YACD,SAAS,EAAE,EAEV;YACD,eAAe,EAAE;gBACf,sBAAsB;gBACtB,gCAAgC;aACjC;YACD,OAAO,EAAE;gBACP,eAAe;gBACf,sBAAsB;gBACtB,gCAAgC;aACjC;SACF,CAAC;QAEF;;WAEG;OACU,YAAY,CACxB;IAAD,mBAAC;CAAA,AADD,IACC;SADY,YAAY"} \ No newline at end of file diff --git a/src/app/pagenotfound/pagenotfound.component.js b/src/app/pagenotfound/pagenotfound.component.js new file mode 100644 index 0000000000..b5579673ca --- /dev/null +++ b/src/app/pagenotfound/pagenotfound.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { ServerResponseService } from '../shared/services/server-response.service'; +import { Component, ChangeDetectionStrategy } from '@angular/core'; +import { AuthService } from '../core/auth/auth.service'; +/** + * This component representing the `PageNotFound` DSpace page. + */ +var PageNotFoundComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {AuthService} authservice + * @param {ServerResponseService} responseService + */ + function PageNotFoundComponent(authservice, responseService) { + this.authservice = authservice; + this.responseService = responseService; + this.responseService.setNotFound(); + } + /** + * Remove redirect url from the state + */ + PageNotFoundComponent.prototype.ngOnInit = function () { + this.authservice.clearRedirectUrl(); + }; + PageNotFoundComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-pagenotfound', + styleUrls: ['./pagenotfound.component.scss'], + templateUrl: './pagenotfound.component.html', + changeDetection: ChangeDetectionStrategy.Default + }), + tslib_1.__metadata("design:paramtypes", [AuthService, ServerResponseService]) + ], PageNotFoundComponent); + return PageNotFoundComponent; +}()); +export { PageNotFoundComponent }; +//# sourceMappingURL=pagenotfound.component.js.map \ No newline at end of file diff --git a/src/app/pagenotfound/pagenotfound.component.js.map b/src/app/pagenotfound/pagenotfound.component.js.map new file mode 100644 index 0000000000..decf78cd28 --- /dev/null +++ b/src/app/pagenotfound/pagenotfound.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pagenotfound.component.js","sourceRoot":"","sources":["pagenotfound.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD;;GAEG;AAOH;IAEE;;;;;OAKG;IACH,+BAAoB,WAAwB,EAAU,eAAsC;QAAxE,gBAAW,GAAX,WAAW,CAAa;QAAU,oBAAe,GAAf,eAAe,CAAuB;QAC1F,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,wCAAQ,GAAR;QACE,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;IACtC,CAAC;IAjBU,qBAAqB;QANjC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE,CAAC,+BAA+B,CAAC;YAC5C,WAAW,EAAE,+BAA+B;YAC5C,eAAe,EAAE,uBAAuB,CAAC,OAAO;SACjD,CAAC;iDASiC,WAAW,EAA2B,qBAAqB;OARjF,qBAAqB,CAmBjC;IAAD,4BAAC;CAAA,AAnBD,IAmBC;SAnBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/alert/alert.component.js b/src/app/shared/alert/alert.component.js new file mode 100644 index 0000000000..bd7b404238 --- /dev/null +++ b/src/app/shared/alert/alert.component.js @@ -0,0 +1,82 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; +import { trigger } from '@angular/animations'; +import { AlertType } from './aletr-type'; +import { fadeOutLeave, fadeOutState } from '../animations/fade'; +/** + * This component allow to create div that uses the Bootstrap's Alerts component. + */ +var AlertComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} cdr + */ + function AlertComponent(cdr) { + this.cdr = cdr; + /** + * A boolean representing if alert is dismissible + */ + this.dismissible = false; + /** + * An event fired when alert is dismissed. + */ + this.close = new EventEmitter(); + /** + * The initial animation name + */ + this.animate = 'fadeIn'; + /** + * A boolean representing if alert is dismissed or not + */ + this.dismissed = false; + } + /** + * Dismiss div with animation + */ + AlertComponent.prototype.dismiss = function () { + var _this = this; + if (this.dismissible) { + this.animate = 'fadeOut'; + this.cdr.detectChanges(); + setTimeout(function () { + _this.dismissed = true; + _this.close.emit(); + _this.cdr.detectChanges(); + }, 300); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], AlertComponent.prototype, "content", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], AlertComponent.prototype, "dismissible", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], AlertComponent.prototype, "type", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], AlertComponent.prototype, "close", void 0); + AlertComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-alert', + encapsulation: ViewEncapsulation.None, + animations: [ + trigger('enterLeave', [ + fadeOutLeave, fadeOutState, + ]) + ], + templateUrl: './alert.component.html', + styleUrls: ['./alert.component.scss'] + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef]) + ], AlertComponent); + return AlertComponent; +}()); +export { AlertComponent }; +//# sourceMappingURL=alert.component.js.map \ No newline at end of file diff --git a/src/app/shared/alert/alert.component.js.map b/src/app/shared/alert/alert.component.js.map new file mode 100644 index 0000000000..243bcc880a --- /dev/null +++ b/src/app/shared/alert/alert.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"alert.component.js","sourceRoot":"","sources":["alert.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEhE;;GAEG;AAYH;IAgCE;;;;OAIG;IACH,wBAAoB,GAAsB;QAAtB,QAAG,GAAH,GAAG,CAAmB;QA9B1C;;WAEG;QACM,gBAAW,GAAG,KAAK,CAAC;QAO7B;;WAEG;QACO,UAAK,GAAsB,IAAI,YAAY,EAAO,CAAC;QAE7D;;WAEG;QACI,YAAO,GAAG,QAAQ,CAAC;QAE1B;;WAEG;QACI,cAAS,GAAG,KAAK,CAAC;IAQzB,CAAC;IAED;;OAEG;IACH,gCAAO,GAAP;QAAA,iBAWC;QAVC,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,UAAU,CAAC;gBACT,KAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,KAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAClB,KAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;SAET;IACH,CAAC;IAjDQ;QAAR,KAAK,EAAE;;mDAAiB;IAKhB;QAAR,KAAK,EAAE;;uDAAqB;IAKpB;QAAR,KAAK,EAAE;;gDAAiB;IAKf;QAAT,MAAM,EAAE;0CAAQ,YAAY;iDAAgC;IApBlD,cAAc;QAX1B,SAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,aAAa,EAAE,iBAAiB,CAAC,IAAI;YACrC,UAAU,EAAE;gBACV,OAAO,CAAC,YAAY,EAAE;oBACpB,YAAY,EAAE,YAAY;iBAC3B,CAAC;aACH;YACD,WAAW,EAAE,wBAAwB;YACrC,SAAS,EAAE,CAAC,wBAAwB,CAAC;SACtC,CAAC;iDAsCyB,iBAAiB;OArC/B,cAAc,CAuD1B;IAAD,qBAAC;CAAA,AAvDD,IAuDC;SAvDY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/alert/aletr-type.js b/src/app/shared/alert/aletr-type.js new file mode 100644 index 0000000000..cbd99c8234 --- /dev/null +++ b/src/app/shared/alert/aletr-type.js @@ -0,0 +1,8 @@ +export var AlertType; +(function (AlertType) { + AlertType["Success"] = "alert-success"; + AlertType["Error"] = "alert-danger"; + AlertType["Info"] = "alert-info"; + AlertType["Warning"] = "alert-warning"; +})(AlertType || (AlertType = {})); +//# sourceMappingURL=aletr-type.js.map \ No newline at end of file diff --git a/src/app/shared/alert/aletr-type.js.map b/src/app/shared/alert/aletr-type.js.map new file mode 100644 index 0000000000..856e8e7b2f --- /dev/null +++ b/src/app/shared/alert/aletr-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"aletr-type.js","sourceRoot":"","sources":["aletr-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,sCAAyB,CAAA;IACzB,mCAAsB,CAAA;IACtB,gCAAmB,CAAA;IACnB,sCAAyB,CAAA;AAC3B,CAAC,EALW,SAAS,KAAT,SAAS,QAKpB"} \ No newline at end of file diff --git a/src/app/shared/animations/bgColor.js b/src/app/shared/animations/bgColor.js new file mode 100644 index 0000000000..8935f336b4 --- /dev/null +++ b/src/app/shared/animations/bgColor.js @@ -0,0 +1,12 @@ +import { animate, animateChild, group, query, state, style, transition, trigger } from '@angular/animations'; +var startStyle = style({ backgroundColor: '{{ startColor }}' }); +var endStyle = style({ backgroundColor: '{{ endColor }}' }); +export var bgColor = trigger('bgColor', [ + state('startBackground', startStyle, { params: { startColor: '*' } }), + state('endBackground', endStyle, { params: { endColor: '*' } }), + transition('startBackground <=> endBackground', group([ + query('@*', animateChild()), + animate('200ms'), + ])) +]); +//# sourceMappingURL=bgColor.js.map \ No newline at end of file diff --git a/src/app/shared/animations/bgColor.js.map b/src/app/shared/animations/bgColor.js.map new file mode 100644 index 0000000000..34f08a2cc2 --- /dev/null +++ b/src/app/shared/animations/bgColor.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bgColor.js","sourceRoot":"","sources":["bgColor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,YAAY,EACZ,KAAK,EAAE,KAAK,EACZ,KAAK,EACL,KAAK,EACL,UAAU,EACV,OAAO,EACR,MAAM,qBAAqB,CAAC;AAE7B,IAAM,UAAU,GAAG,KAAK,CAAC,EAAE,eAAe,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAClE,IAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAE9D,MAAM,CAAC,IAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EACtC;IACE,KAAK,CAAC,iBAAiB,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC;IACrE,KAAK,CAAC,eAAe,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;IAC/D,UAAU,CAAC,mCAAmC,EAC5C,KAAK,CACH;QACE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC;QAC3B,OAAO,CAAC,OAAO,CAAC;KAEjB,CACF,CAAC;CACL,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fade.js b/src/app/shared/animations/fade.js new file mode 100644 index 0000000000..dc92c5a630 --- /dev/null +++ b/src/app/shared/animations/fade.js @@ -0,0 +1,30 @@ +import { animate, state, style, transition, trigger } from '@angular/animations'; +export var fadeInState = state('fadeIn', style({ opacity: 1 })); +export var fadeInEnter = transition('* => fadeIn', [ + style({ opacity: 0 }), + animate(300, style({ opacity: 1 })) +]); +var fadeEnter = transition(':enter', [ + style({ opacity: 0 }), + animate(300, style({ opacity: 1 })) +]); +export var fadeOutState = state('fadeOut', style({ opacity: 0 })); +export var fadeOutLeave = transition('fadeIn => fadeOut', [ + style({ opacity: 1 }), + animate(400, style({ opacity: 0 })) +]); +var fadeLeave = transition(':leave', [ + style({ opacity: 0 }), + animate(300, style({ opacity: 1 })) +]); +export var fadeIn = trigger('fadeIn', [ + fadeEnter +]); +export var fadeOut = trigger('fadeOut', [ + fadeLeave +]); +export var fadeInOut = trigger('fadeInOut', [ + fadeEnter, + fadeLeave +]); +//# sourceMappingURL=fade.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fade.js.map b/src/app/shared/animations/fade.js.map new file mode 100644 index 0000000000..0c99723e76 --- /dev/null +++ b/src/app/shared/animations/fade.js.map @@ -0,0 +1 @@ +{"version":3,"file":"fade.js","sourceRoot":"","sources":["fade.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;AAChE,MAAM,CAAC,IAAM,WAAW,GAAI,UAAU,CAAC,aAAa,EAAE;IACpD,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACpC,CAAC,CAAC;AACH,IAAM,SAAS,GAAI,UAAU,CAAC,QAAQ,EAAE;IACtC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;AAClE,MAAM,CAAC,IAAM,YAAY,GAAG,UAAU,CAAC,mBAAmB,EAAE;IAC1D,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACpC,CAAC,CAAC;AACH,IAAM,SAAS,GAAI,UAAU,CAAC,QAAQ,EAAE;IACtC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE;IACtC,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE;IACxC,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAC5C,SAAS;IACT,SAAS;CACV,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/focus.js b/src/app/shared/animations/focus.js new file mode 100644 index 0000000000..9d55caeb52 --- /dev/null +++ b/src/app/shared/animations/focus.js @@ -0,0 +1,12 @@ +import { animate, state, transition, trigger, style } from '@angular/animations'; +export var focusShadow = trigger('focusShadow', [ + state('focus', style({ boxShadow: 'rgba(119, 119, 119, 0.6) 0px 0px 6px' })), + state('blur', style({ boxShadow: 'none' })), + transition('focus <=> blur', [animate('250ms')]) +]); +export var focusBackground = trigger('focusBackground', [ + state('focus', style({ backgroundColor: 'rgba(119, 119, 119, 0.1)' })), + state('blur', style({ backgroundColor: 'transparent' })), + transition('focus <=> blur', [animate('250ms')]) +]); +//# sourceMappingURL=focus.js.map \ No newline at end of file diff --git a/src/app/shared/animations/focus.js.map b/src/app/shared/animations/focus.js.map new file mode 100644 index 0000000000..f978a5c9ff --- /dev/null +++ b/src/app/shared/animations/focus.js.map @@ -0,0 +1 @@ +{"version":3,"file":"focus.js","sourceRoot":"","sources":["focus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAEhD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,sCAAsC,EAAE,CAAC,CAAC;IAE5E,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IAE3C,UAAU,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;CACjD,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,EAAE;IAExD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,eAAe,EAAE,0BAA0B,EAAE,CAAC,CAAC;IAEtE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC,CAAC;IAExD,UAAU,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;CACjD,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fromBottom.js b/src/app/shared/animations/fromBottom.js new file mode 100644 index 0000000000..2447dc0ca7 --- /dev/null +++ b/src/app/shared/animations/fromBottom.js @@ -0,0 +1,22 @@ +import { animate, state, style, transition, trigger } from '@angular/animations'; +export var fromBottomInState = state('fromBottomIn', style({ opacity: 1, transform: 'translateY(0)' })); +export var fromBottomEnter = transition('* => fromBottomIn', [ + style({ opacity: 0, transform: 'translateY(5%)' }), + animate('400ms ease-in-out') +]); +export var fromBottomOutState = state('fromBottomOut', style({ opacity: 0, transform: 'translateY(-5%)' })); +export var fromBottomLeave = transition('fromBottomIn => fromBottomOut', [ + style({ opacity: 1, transform: 'translateY(0)' }), + animate('300ms ease-in-out') +]); +export var fromBottomIn = trigger('fromBottomIn', [ + fromBottomEnter +]); +export var fromBottomOut = trigger('fromBottomOut', [ + fromBottomLeave +]); +export var fromBottomInOut = trigger('fromBottomInOut', [ + fromBottomEnter, + fromBottomLeave +]); +//# sourceMappingURL=fromBottom.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fromBottom.js.map b/src/app/shared/animations/fromBottom.js.map new file mode 100644 index 0000000000..0ee4636ebf --- /dev/null +++ b/src/app/shared/animations/fromBottom.js.map @@ -0,0 +1 @@ +{"version":3,"file":"fromBottom.js","sourceRoot":"","sources":["fromBottom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,iBAAiB,GAAG,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;AACxG,MAAM,CAAC,IAAM,eAAe,GAAG,UAAU,CAAC,mBAAmB,EAAE;IAC7D,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC;IAChD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,kBAAkB,GAAG,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC,CAAC,CAAC;AAC5G,MAAM,CAAC,IAAM,eAAe,GAAG,UAAU,CAAC,+BAA+B,EAAE;IACzE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC;IAC/C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,OAAO,CAAC,cAAc,EAAE;IAClD,eAAe;CAChB,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,aAAa,GAAG,OAAO,CAAC,eAAe,EAAE;IACpD,eAAe;CAChB,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,EAAE;IACxD,eAAe;IACf,eAAe;CAChB,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fromLeft.js b/src/app/shared/animations/fromLeft.js new file mode 100644 index 0000000000..ace2e29dac --- /dev/null +++ b/src/app/shared/animations/fromLeft.js @@ -0,0 +1,22 @@ +import { animate, state, style, transition, trigger } from '@angular/animations'; +export var fromLeftInState = state('fromLeftIn', style({ opacity: 1, transform: 'translateX(0)' })); +export var fromLeftEnter = transition('* => fromLeftIn', [ + style({ opacity: 0, transform: 'translateX(-5%)' }), + animate('400ms ease-in-out') +]); +export var fromLeftOutState = state('fromLeftOut', style({ opacity: 0, transform: 'translateX(5%)' })); +export var fromLeftLeave = transition('fromLeftIn => fromLeftOut', [ + style({ opacity: 1, transform: 'translateX(0)' }), + animate('300ms ease-in-out') +]); +export var fromLeftIn = trigger('fromLeftIn', [ + fromLeftEnter +]); +export var fromLeftOut = trigger('fromLeftOut', [ + fromLeftLeave +]); +export var fromLeftInOut = trigger('fromLeftInOut', [ + fromLeftEnter, + fromLeftLeave +]); +//# sourceMappingURL=fromLeft.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fromLeft.js.map b/src/app/shared/animations/fromLeft.js.map new file mode 100644 index 0000000000..12e6f5d440 --- /dev/null +++ b/src/app/shared/animations/fromLeft.js.map @@ -0,0 +1 @@ +{"version":3,"file":"fromLeft.js","sourceRoot":"","sources":["fromLeft.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;AACpG,MAAM,CAAC,IAAM,aAAa,GAAG,UAAU,CAAC,iBAAiB,EAAE;IACzD,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC;IACjD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC,CAAC,CAAC;AACvG,MAAM,CAAC,IAAM,aAAa,GAAG,UAAU,CAAC,2BAA2B,EAAE;IACnE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC;IAC/C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE;IAC9C,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAChD,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,aAAa,GAAG,OAAO,CAAC,eAAe,EAAE;IACpD,aAAa;IACb,aAAa;CACd,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fromRight.js b/src/app/shared/animations/fromRight.js new file mode 100644 index 0000000000..9c6aabb23f --- /dev/null +++ b/src/app/shared/animations/fromRight.js @@ -0,0 +1,22 @@ +import { animate, state, style, transition, trigger } from '@angular/animations'; +export var fromRightInState = state('fromRightIn', style({ opacity: 1, transform: 'translateX(0)' })); +export var fromRightEnter = transition('* => fromRightIn', [ + style({ opacity: 0, transform: 'translateX(5%)' }), + animate('400ms ease-in-out') +]); +export var fromRightOutState = state('fromRightOut', style({ opacity: 0, transform: 'translateX(-5%)' })); +export var fromRightLeave = transition('fromRightIn => fromRightOut', [ + style({ opacity: 1, transform: 'translateX(0)' }), + animate('300ms ease-in-out') +]); +export var fromRightIn = trigger('fromRightIn', [ + fromRightEnter +]); +export var fromRightOut = trigger('fromRightOut', [ + fromRightLeave +]); +export var fromRightInOut = trigger('fromRightInOut', [ + fromRightEnter, + fromRightLeave +]); +//# sourceMappingURL=fromRight.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fromRight.js.map b/src/app/shared/animations/fromRight.js.map new file mode 100644 index 0000000000..2fb535b538 --- /dev/null +++ b/src/app/shared/animations/fromRight.js.map @@ -0,0 +1 @@ +{"version":3,"file":"fromRight.js","sourceRoot":"","sources":["fromRight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;AACtG,MAAM,CAAC,IAAM,cAAc,GAAG,UAAU,CAAC,kBAAkB,EAAE;IAC3D,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC;IAChD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,iBAAiB,GAAG,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC,CAAC,CAAC;AAC1G,MAAM,CAAC,IAAM,cAAc,GAAG,UAAU,CAAC,6BAA6B,EAAE;IACtE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC;IAC/C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAChD,cAAc;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,OAAO,CAAC,cAAc,EAAE;IAClD,cAAc;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,cAAc,GAAG,OAAO,CAAC,gBAAgB,EAAE;IACtD,cAAc;IACd,cAAc;CACf,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fromTop.js b/src/app/shared/animations/fromTop.js new file mode 100644 index 0000000000..9c65ebae57 --- /dev/null +++ b/src/app/shared/animations/fromTop.js @@ -0,0 +1,22 @@ +import { animate, state, style, transition, trigger } from '@angular/animations'; +export var fromTopInState = state('fromTopIn', style({ opacity: 1, transform: 'translateY(0)' })); +export var fromTopEnter = transition('* => fromTopIn', [ + style({ opacity: 0, transform: 'translateY(-5%)' }), + animate('400ms ease-in-out') +]); +export var fromTopOutState = state('fromTopOut', style({ opacity: 0, transform: 'translateY(5%)' })); +export var fromTopLeave = transition('fromTopIn => fromTopOut', [ + style({ opacity: 1, transform: 'translateY(0)' }), + animate('300ms ease-in-out') +]); +export var fromTopIn = trigger('fromTopIn', [ + fromTopEnter +]); +export var fromTopOut = trigger('fromTopOut', [ + fromTopLeave +]); +export var fromTopInOut = trigger('fromTopInOut', [ + fromTopEnter, + fromTopLeave +]); +//# sourceMappingURL=fromTop.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fromTop.js.map b/src/app/shared/animations/fromTop.js.map new file mode 100644 index 0000000000..442316ab09 --- /dev/null +++ b/src/app/shared/animations/fromTop.js.map @@ -0,0 +1 @@ +{"version":3,"file":"fromTop.js","sourceRoot":"","sources":["fromTop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,cAAc,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;AAClG,MAAM,CAAC,IAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,EAAE;IACvD,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC;IACjD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC,CAAC,CAAC;AACrG,MAAM,CAAC,IAAM,YAAY,GAAG,UAAU,CAAC,yBAAyB,EAAE;IAChE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC;IAC/C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAC5C,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE;IAC9C,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,OAAO,CAAC,cAAc,EAAE;IAClD,YAAY;IACZ,YAAY;CACb,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/overlay.js b/src/app/shared/animations/overlay.js new file mode 100644 index 0000000000..168cac167e --- /dev/null +++ b/src/app/shared/animations/overlay.js @@ -0,0 +1,7 @@ +import { animate, state, transition, trigger, style } from '@angular/animations'; +export var overlay = trigger('overlay', [ + state('show', style({ opacity: 0.5 })), + state('hide', style({ opacity: 0 })), + transition('show <=> hide', animate(250)) +]); +//# sourceMappingURL=overlay.js.map \ No newline at end of file diff --git a/src/app/shared/animations/overlay.js.map b/src/app/shared/animations/overlay.js.map new file mode 100644 index 0000000000..4a7b1ff05a --- /dev/null +++ b/src/app/shared/animations/overlay.js.map @@ -0,0 +1 @@ +{"version":3,"file":"overlay.js","sourceRoot":"","sources":["overlay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE;IAExC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;IAEtC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAEpC,UAAU,CAAC,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;CAC1C,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/push.js b/src/app/shared/animations/push.js new file mode 100644 index 0000000000..42a0cf191b --- /dev/null +++ b/src/app/shared/animations/push.js @@ -0,0 +1,12 @@ +import { animate, state, transition, trigger, style } from '@angular/animations'; +export var pushInOut = trigger('pushInOut', [ + /* + state('expanded', style({ right: '100%' })); + + state('collapsed', style({ right: 0 })); + */ + state('expanded', style({ left: '100%' })), + state('collapsed', style({ left: 0 })), + transition('expanded <=> collapsed', animate(250)), +]); +//# sourceMappingURL=push.js.map \ No newline at end of file diff --git a/src/app/shared/animations/push.js.map b/src/app/shared/animations/push.js.map new file mode 100644 index 0000000000..e13df10003 --- /dev/null +++ b/src/app/shared/animations/push.js.map @@ -0,0 +1 @@ +{"version":3,"file":"push.js","sourceRoot":"","sources":["push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAE5C;;;;IAIA;IAEA,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAE1C,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAEtC,UAAU,CAAC,wBAAwB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;CACnD,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/rotate.js b/src/app/shared/animations/rotate.js new file mode 100644 index 0000000000..6fcd8586cf --- /dev/null +++ b/src/app/shared/animations/rotate.js @@ -0,0 +1,31 @@ +import { animate, state, style, transition, trigger } from '@angular/animations'; +export var rotateInState = state('rotateIn', style({ opacity: 1, transform: 'rotate(0deg)' })); +export var rotateEnter = transition('* => rotateIn', [ + style({ opacity: 0, transform: 'rotate(5deg)' }), + animate('400ms ease-in-out') +]); +export var rotateOutState = state('rotateOut', style({ opacity: 0, transform: 'rotate(5deg)' })); +export var rotateLeave = transition('rotateIn => rotateOut', [ + style({ opacity: 1, transform: 'rotate(0deg)' }), + animate('400ms ease-in-out') +]); +export var rotateIn = trigger('rotateIn', [ + rotateEnter +]); +export var rotateOut = trigger('rotateOut', [ + rotateLeave +]); +export var rotateInOut = trigger('rotateInOut', [ + rotateEnter, + rotateLeave +]); +var expandedStyle = { transform: 'rotate(90deg)' }; +var collapsedStyle = { transform: 'rotate(0deg)' }; +export var rotate = trigger('rotate', [ + state('expanded', style(expandedStyle)), + state('collapsed', style(collapsedStyle)), + transition('expanded <=> collapsed', [ + animate('200ms') + ]) +]); +//# sourceMappingURL=rotate.js.map \ No newline at end of file diff --git a/src/app/shared/animations/rotate.js.map b/src/app/shared/animations/rotate.js.map new file mode 100644 index 0000000000..e2c07bcf5c --- /dev/null +++ b/src/app/shared/animations/rotate.js.map @@ -0,0 +1 @@ +{"version":3,"file":"rotate.js","sourceRoot":"","sources":["rotate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,aAAa,GAAG,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;AACjG,MAAM,CAAC,IAAM,WAAW,GAAG,UAAU,CAAC,eAAe,EAAE;IACrD,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;IAChD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,cAAc,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;AACnG,MAAM,CAAC,IAAM,WAAW,GAAG,UAAU,CAAC,uBAAuB,EAAE;IAC7D,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;IAChD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE;IAC1C,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAC5C,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAChD,WAAW;IACX,WAAW;CACZ,CAAC,CAAC;AAEH,IAAM,aAAa,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;AACrD,IAAM,cAAc,GAAG,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;AAErD,MAAM,CAAC,IAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EACpC;IACE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IACvC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACzC,UAAU,CAAC,wBAAwB,EAAE;QACnC,OAAO,CAAC,OAAO,CAAC;KACjB,CAAC;CAEH,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/scale.js b/src/app/shared/animations/scale.js new file mode 100644 index 0000000000..0b957dcef0 --- /dev/null +++ b/src/app/shared/animations/scale.js @@ -0,0 +1,22 @@ +import { animate, state, style, transition, trigger } from '@angular/animations'; +export var scaleInState = state('scaleIn', style({ opacity: 1, transform: 'scale(1)' })); +export var scaleEnter = transition('* => scaleIn', [ + style({ opacity: 0, transform: 'scale(0)' }), + animate('400ms ease-in-out') +]); +export var scaleOutState = state('scaleOut', style({ opacity: 0, transform: 'scale(0)' })); +export var scaleLeave = transition('scaleIn => scaleOut', [ + style({ opacity: 1, transform: 'scale(1)' }), + animate('400ms ease-in-out') +]); +export var scaleIn = trigger('scaleIn', [ + scaleEnter +]); +export var scaleOut = trigger('scaleOut', [ + scaleLeave +]); +export var scaleInOut = trigger('scaleInOut', [ + scaleEnter, + scaleLeave +]); +//# sourceMappingURL=scale.js.map \ No newline at end of file diff --git a/src/app/shared/animations/scale.js.map b/src/app/shared/animations/scale.js.map new file mode 100644 index 0000000000..210c724577 --- /dev/null +++ b/src/app/shared/animations/scale.js.map @@ -0,0 +1 @@ +{"version":3,"file":"scale.js","sourceRoot":"","sources":["scale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC,CAAC,CAAC;AACzF,MAAM,CAAC,IAAM,UAAU,GAAI,UAAU,CAAC,cAAc,EAAE;IACpD,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC;IAC1C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,aAAa,GAAG,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC,CAAC,CAAC;AAC3F,MAAM,CAAC,IAAM,UAAU,GAAG,UAAU,CAAC,qBAAqB,EAAE;IAC1D,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC;IAC1C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE;IACxC,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE;IAC1C,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE;IAC9C,UAAU;IACV,UAAU;CACX,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/shrink.js b/src/app/shared/animations/shrink.js new file mode 100644 index 0000000000..219953756f --- /dev/null +++ b/src/app/shared/animations/shrink.js @@ -0,0 +1,13 @@ +import { animate, state, style, transition, trigger } from '@angular/animations'; +export var shrinkInOut = trigger('shrinkInOut', [ + state('in', style({ height: '100%', opacity: 1 })), + transition('* => void', [ + style({ height: '!', opacity: 1 }), + animate(200, style({ height: 0, opacity: 0 })) + ]), + transition('void => *', [ + style({ height: 0, opacity: 0 }), + animate(200, style({ height: '*', opacity: 1 })) + ]) +]); +//# sourceMappingURL=shrink.js.map \ No newline at end of file diff --git a/src/app/shared/animations/shrink.js.map b/src/app/shared/animations/shrink.js.map new file mode 100644 index 0000000000..084ccfa583 --- /dev/null +++ b/src/app/shared/animations/shrink.js.map @@ -0,0 +1 @@ +{"version":3,"file":"shrink.js","sourceRoot":"","sources":["shrink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAChD,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC;IAChD,UAAU,CAAC,WAAW,EAAE;QACtB,KAAK,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;QAChC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC;KAC7C,CAAC;IACF,UAAU,CAAC,WAAW,EAAE;QACtB,KAAK,CAAC,EAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC;KAC/C,CAAC;CACH,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/slide.js b/src/app/shared/animations/slide.js new file mode 100644 index 0000000000..ee6098ab69 --- /dev/null +++ b/src/app/shared/animations/slide.js @@ -0,0 +1,45 @@ +import { animate, animateChild, group, query, state, style, transition, trigger } from '@angular/animations'; +export var slide = trigger('slide', [ + state('expanded', style({ height: '*' })), + state('collapsed', style({ height: 0 })), + state('void', style({ height: 0 })), + state('*', style({ height: '*' })), + transition(':enter', [animate('200ms')]), + transition(':leave', [animate('200ms')]), + transition('expanded <=> collapsed', animate(250)) +]); +export var slideHorizontal = trigger('slideHorizontal', [ + state('void', style({ width: 0 })), + state('*', style({ width: '*' })), + transition(':enter', [animate('200ms')]), + transition(':leave', [animate('200ms')]) +]); +export var slideMobileNav = trigger('slideMobileNav', [ + state('expanded', style({ height: '100vh' })), + state('collapsed', style({ height: 0 })), + transition('expanded <=> collapsed', animate('300ms')) +]); +var collapsedStyle = style({ marginLeft: '-{{ sidebarWidth }}' }); +var expandedStyle = style({ marginLeft: '0' }); +var options = { params: { sidebarWidth: '*' } }; +export var slideSidebar = trigger('slideSidebar', [ + transition('expanded => collapsed', group([ + query('@*', animateChild()), + query('.sidebar-collapsible', expandedStyle, options), + query('.sidebar-collapsible', animate('300ms ease-in-out', collapsedStyle)) + ])), + transition('collapsed => expanded', group([ + query('@*', animateChild()), + query('.sidebar-collapsible', collapsedStyle), + query('.sidebar-collapsible', animate('300ms ease-in-out', expandedStyle), options) + ])) +]); +export var slideSidebarPadding = trigger('slideSidebarPadding', [ + state('hidden', style({ paddingLeft: 0 })), + state('shown', style({ paddingLeft: '{{ collapsedSidebarWidth }}' }), { params: { collapsedSidebarWidth: '*' } }), + state('expanded', style({ paddingLeft: '{{ totalSidebarWidth }}' }), { params: { totalSidebarWidth: '*' } }), + transition('hidden <=> shown', [animate('200ms')]), + transition('hidden <=> expanded', [animate('200ms')]), + transition('shown <=> expanded', [animate('200ms')]), +]); +//# sourceMappingURL=slide.js.map \ No newline at end of file diff --git a/src/app/shared/animations/slide.js.map b/src/app/shared/animations/slide.js.map new file mode 100644 index 0000000000..d21fb79207 --- /dev/null +++ b/src/app/shared/animations/slide.js.map @@ -0,0 +1 @@ +{"version":3,"file":"slide.js","sourceRoot":"","sources":["slide.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/auth-nav-menu/auth-nav-menu.component.js b/src/app/shared/auth-nav-menu/auth-nav-menu.component.js new file mode 100644 index 0000000000..828f0e88f8 --- /dev/null +++ b/src/app/shared/auth-nav-menu/auth-nav-menu.component.js @@ -0,0 +1,41 @@ +import * as tslib_1 from "tslib"; +import { of as observableOf } from 'rxjs'; +import { filter, map } from 'rxjs/operators'; +import { Component } from '@angular/core'; +import { select, Store } from '@ngrx/store'; +import { fadeInOut, fadeOut } from '../animations/fade'; +import { HostWindowService } from '../host-window.service'; +import { routerStateSelector } from '../../app.reducer'; +import { isNotUndefined } from '../empty.util'; +import { getAuthenticatedUser, isAuthenticated, isAuthenticationLoading } from '../../core/auth/selectors'; +import { LOGIN_ROUTE, LOGOUT_ROUTE } from '../../core/auth/auth.service'; +var AuthNavMenuComponent = /** @class */ (function () { + function AuthNavMenuComponent(store, windowService) { + this.store = store; + this.windowService = windowService; + this.showAuth = observableOf(false); + this.isXsOrSm$ = this.windowService.isXsOrSm(); + } + AuthNavMenuComponent.prototype.ngOnInit = function () { + // set isAuthenticated + this.isAuthenticated = this.store.pipe(select(isAuthenticated)); + // set loading + this.loading = this.store.pipe(select(isAuthenticationLoading)); + this.user = this.store.pipe(select(getAuthenticatedUser)); + this.showAuth = this.store.pipe(select(routerStateSelector), filter(function (router) { return isNotUndefined(router) && isNotUndefined(router.state); }), map(function (router) { return (!router.state.url.startsWith(LOGIN_ROUTE) + && !router.state.url.startsWith(LOGOUT_ROUTE)); })); + }; + AuthNavMenuComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-auth-nav-menu', + templateUrl: './auth-nav-menu.component.html', + styleUrls: ['./auth-nav-menu.component.scss'], + animations: [fadeInOut, fadeOut] + }), + tslib_1.__metadata("design:paramtypes", [Store, + HostWindowService]) + ], AuthNavMenuComponent); + return AuthNavMenuComponent; +}()); +export { AuthNavMenuComponent }; +//# sourceMappingURL=auth-nav-menu.component.js.map \ No newline at end of file diff --git a/src/app/shared/auth-nav-menu/auth-nav-menu.component.js.map b/src/app/shared/auth-nav-menu/auth-nav-menu.component.js.map new file mode 100644 index 0000000000..85e26fb386 --- /dev/null +++ b/src/app/shared/auth-nav-menu/auth-nav-menu.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-nav-menu.component.js","sourceRoot":"","sources":["auth-nav-menu.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAc,EAAE,IAAI,YAAY,EAAgB,MAAM,MAAM,CAAC;AAEpE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAY,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAE3G,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAQzE;IAqBE,8BAAoB,KAAsB,EACtB,aAAgC;QADhC,UAAK,GAAL,KAAK,CAAiB;QACtB,kBAAa,GAAb,aAAa,CAAmB;QAP7C,aAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QASpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,uCAAQ,GAAR;QACE,sBAAsB;QACtB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QAEhE,cAAc;QACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAEhE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAE1D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC7B,MAAM,CAAC,mBAAmB,CAAC,EAC3B,MAAM,CAAC,UAAC,MAA0B,IAAK,OAAA,cAAc,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAtD,CAAsD,CAAC,EAC9F,GAAG,CAAC,UAAC,MAA0B,IAAK,OAAA,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC;eACzE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EADZ,CACY,CAC/C,CACF,CAAC;IACJ,CAAC;IA3CU,oBAAoB;QANhC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,gCAAgC;YAC7C,SAAS,EAAE,CAAC,gCAAgC,CAAC;YAC7C,UAAU,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC;SACjC,CAAC;iDAsB2B,KAAK;YACG,iBAAiB;OAtBzC,oBAAoB,CA4ChC;IAAD,2BAAC;CAAA,AA5CD,IA4CC;SA5CY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js b/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js new file mode 100644 index 0000000000..1137f082db --- /dev/null +++ b/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { select, Store } from '@ngrx/store'; +import { getAuthenticatedUser, isAuthenticationLoading } from '../../../core/auth/selectors'; +import { MYDSPACE_ROUTE } from '../../../+my-dspace-page/my-dspace-page.component'; +/** + * This component represents the user nav menu. + */ +var UserMenuComponent = /** @class */ (function () { + function UserMenuComponent(store) { + this.store = store; + /** + * The mydspace page route. + * @type {string} + */ + this.mydspaceRoute = MYDSPACE_ROUTE; + } + /** + * Initialize all instance variables + */ + UserMenuComponent.prototype.ngOnInit = function () { + // set loading + this.loading$ = this.store.pipe(select(isAuthenticationLoading)); + // set user + this.user$ = this.store.pipe(select(getAuthenticatedUser)); + }; + UserMenuComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-user-menu', + templateUrl: './user-menu.component.html', + styleUrls: ['./user-menu.component.scss'] + }), + tslib_1.__metadata("design:paramtypes", [Store]) + ], UserMenuComponent); + return UserMenuComponent; +}()); +export { UserMenuComponent }; +//# sourceMappingURL=user-menu.component.js.map \ No newline at end of file diff --git a/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js.map b/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js.map new file mode 100644 index 0000000000..ce06b1675a --- /dev/null +++ b/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"user-menu.component.js","sourceRoot":"","sources":["user-menu.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAI5C,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC7F,OAAO,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AAEnF;;GAEG;AAMH;IAoBE,2BAAoB,KAAsB;QAAtB,UAAK,GAAL,KAAK,CAAiB;QAN1C;;;WAGG;QACI,kBAAa,GAAG,cAAc,CAAC;IAGtC,CAAC;IAED;;OAEG;IACH,oCAAQ,GAAR;QAEE,cAAc;QACd,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAEjE,WAAW;QACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAE7D,CAAC;IAlCU,iBAAiB;QAL7B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,WAAW,EAAE,4BAA4B;YACzC,SAAS,EAAE,CAAC,4BAA4B,CAAC;SAC1C,CAAC;iDAqB2B,KAAK;OApBrB,iBAAiB,CAmC7B;IAAD,wBAAC;CAAA,AAnCD,IAmCC;SAnCY,iBAAiB"} \ No newline at end of file diff --git a/src/app/shared/authority-confidence/authority-confidence-state.directive.js b/src/app/shared/authority-confidence/authority-confidence-state.directive.js new file mode 100644 index 0000000000..85001ab2b9 --- /dev/null +++ b/src/app/shared/authority-confidence/authority-confidence-state.directive.js @@ -0,0 +1,134 @@ +import * as tslib_1 from "tslib"; +import { Directive, ElementRef, EventEmitter, HostListener, Inject, Input, Output, Renderer2 } from '@angular/core'; +import { findIndex } from 'lodash'; +import { AuthorityValue } from '../../core/integration/models/authority.value'; +import { FormFieldMetadataValueObject } from '../form/builder/models/form-field-metadata-value.model'; +import { ConfidenceType } from '../../core/integration/models/confidence-type'; +import { isNotEmpty, isNull } from '../empty.util'; +import { GLOBAL_CONFIG } from '../../../config'; +/** + * Directive to add to the element a bootstrap utility class based on metadata confidence value + */ +var AuthorityConfidenceStateDirective = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {GlobalConfig} EnvConfig + * @param {ElementRef} elem + * @param {Renderer2} renderer + */ + function AuthorityConfidenceStateDirective(EnvConfig, elem, renderer) { + this.EnvConfig = EnvConfig; + this.elem = elem; + this.renderer = renderer; + /** + * A boolean representing if to show html icon if authority value is empty + */ + this.visibleWhenAuthorityEmpty = true; + /** + * The css class applied before directive changes + */ + this.previousClass = null; + /** + * An event fired when click on element that has a confidence value empty or different from CF_ACCEPTED + */ + this.whenClickOnConfidenceNotAccepted = new EventEmitter(); + } + /** + * Listener to click event + */ + AuthorityConfidenceStateDirective.prototype.onClick = function () { + if (isNotEmpty(this.authorityValue) && this.getConfidenceByValue(this.authorityValue) !== ConfidenceType.CF_ACCEPTED) { + this.whenClickOnConfidenceNotAccepted.emit(this.getConfidenceByValue(this.authorityValue)); + } + }; + /** + * Apply css class to element whenever authority value change + * + * @param {SimpleChanges} changes + */ + AuthorityConfidenceStateDirective.prototype.ngOnChanges = function (changes) { + if (!changes.authorityValue.firstChange) { + this.previousClass = this.getClassByConfidence(this.getConfidenceByValue(changes.authorityValue.previousValue)); + } + this.newClass = this.getClassByConfidence(this.getConfidenceByValue(changes.authorityValue.currentValue)); + if (isNull(this.previousClass)) { + this.renderer.addClass(this.elem.nativeElement, this.newClass); + } + else if (this.previousClass !== this.newClass) { + this.renderer.removeClass(this.elem.nativeElement, this.previousClass); + this.renderer.addClass(this.elem.nativeElement, this.newClass); + } + }; + /** + * Apply css class to element after view init + */ + AuthorityConfidenceStateDirective.prototype.ngAfterViewInit = function () { + if (isNull(this.previousClass)) { + this.renderer.addClass(this.elem.nativeElement, this.newClass); + } + else if (this.previousClass !== this.newClass) { + this.renderer.removeClass(this.elem.nativeElement, this.previousClass); + this.renderer.addClass(this.elem.nativeElement, this.newClass); + } + }; + /** + * Return confidence value as ConfidenceType + * + * @param value + */ + AuthorityConfidenceStateDirective.prototype.getConfidenceByValue = function (value) { + var confidence = ConfidenceType.CF_UNSET; + if (isNotEmpty(value) && value instanceof AuthorityValue && value.hasAuthority()) { + confidence = ConfidenceType.CF_ACCEPTED; + } + if (isNotEmpty(value) && value instanceof FormFieldMetadataValueObject) { + confidence = value.confidence; + } + return confidence; + }; + /** + * Return the properly css class based on confidence value + * + * @param confidence + */ + AuthorityConfidenceStateDirective.prototype.getClassByConfidence = function (confidence) { + if (!this.visibleWhenAuthorityEmpty && confidence === ConfidenceType.CF_UNSET) { + return 'd-none'; + } + var confidenceIcons = this.EnvConfig.submission.icons.authority.confidence; + var confidenceIndex = findIndex(confidenceIcons, { value: confidence }); + var defaultconfidenceIndex = findIndex(confidenceIcons, { value: 'default' }); + var defaultClass = (defaultconfidenceIndex !== -1) ? confidenceIcons[defaultconfidenceIndex].style : ''; + return (confidenceIndex !== -1) ? confidenceIcons[confidenceIndex].style : defaultClass; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], AuthorityConfidenceStateDirective.prototype, "authorityValue", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], AuthorityConfidenceStateDirective.prototype, "visibleWhenAuthorityEmpty", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], AuthorityConfidenceStateDirective.prototype, "whenClickOnConfidenceNotAccepted", void 0); + tslib_1.__decorate([ + HostListener('click'), + tslib_1.__metadata("design:type", Function), + tslib_1.__metadata("design:paramtypes", []), + tslib_1.__metadata("design:returntype", void 0) + ], AuthorityConfidenceStateDirective.prototype, "onClick", null); + AuthorityConfidenceStateDirective = tslib_1.__decorate([ + Directive({ + selector: '[dsAuthorityConfidenceState]' + }), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, ElementRef, + Renderer2]) + ], AuthorityConfidenceStateDirective); + return AuthorityConfidenceStateDirective; +}()); +export { AuthorityConfidenceStateDirective }; +//# sourceMappingURL=authority-confidence-state.directive.js.map \ No newline at end of file diff --git a/src/app/shared/authority-confidence/authority-confidence-state.directive.js.map b/src/app/shared/authority-confidence/authority-confidence-state.directive.js.map new file mode 100644 index 0000000000..397f4923c4 --- /dev/null +++ b/src/app/shared/authority-confidence/authority-confidence-state.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"authority-confidence-state.directive.js","sourceRoot":"","sources":["authority-confidence-state.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EACT,UAAU,EAAE,YAAY,EACxB,YAAY,EACZ,MAAM,EACN,KAAK,EAEL,MAAM,EACN,SAAS,EAEV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,wDAAwD,CAAC;AACtG,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,aAAa,EAAgB,MAAM,iBAAiB,CAAC;AAG9D;;GAEG;AAIH;IAoCE;;;;;;OAMG;IACH,2CACmC,SAAuB,EAChD,IAAgB,EAChB,QAAmB;QAFM,cAAS,GAAT,SAAS,CAAc;QAChD,SAAI,GAAJ,IAAI,CAAY;QAChB,aAAQ,GAAR,QAAQ,CAAW;QAvC7B;;WAEG;QACM,8BAAyB,GAAG,IAAI,CAAC;QAE1C;;WAEG;QACK,kBAAa,GAAW,IAAI,CAAC;QAOrC;;WAEG;QACO,qCAAgC,GAAiC,IAAI,YAAY,EAAkB,CAAC;IAuB9G,CAAC;IArBD;;OAEG;IACoB,mDAAO,GAAP;QACrB,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,cAAc,CAAC,WAAW,EAAE;YACpH,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;SAC5F;IACH,CAAC;IAgBD;;;;OAIG;IACH,uDAAW,GAAX,UAAY,OAAsB;QAChC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE;YACvC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAA;SAChH;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;QAE1G,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAChE;aAAM,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,QAAQ,EAAE;YAC/C,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAChE;IACH,CAAC;IAED;;OAEG;IACH,2DAAe,GAAf;QACE,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAChE;aAAM,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,QAAQ,EAAE;YAC/C,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAChE;IACH,CAAC;IAED;;;;OAIG;IACK,gEAAoB,GAA5B,UAA6B,KAAU;QACrC,IAAI,UAAU,GAAmB,cAAc,CAAC,QAAQ,CAAC;QAEzD,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,cAAc,IAAI,KAAK,CAAC,YAAY,EAAE,EAAE;YAChF,UAAU,GAAG,cAAc,CAAC,WAAW,CAAC;SACzC;QAED,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,4BAA4B,EAAE;YACtE,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;SAC/B;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACK,gEAAoB,GAA5B,UAA6B,UAAe;QAC1C,IAAI,CAAC,IAAI,CAAC,yBAAyB,IAAI,UAAU,KAAK,cAAc,CAAC,QAAQ,EAAE;YAC7E,OAAO,QAAQ,CAAC;SACjB;QAED,IAAM,eAAe,GAA2B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC;QAErG,IAAM,eAAe,GAAW,SAAS,CAAC,eAAe,EAAE,EAAC,KAAK,EAAE,UAAU,EAAC,CAAC,CAAC;QAEhF,IAAM,sBAAsB,GAAW,SAAS,CAAC,eAAe,EAAE,EAAC,KAAK,EAAE,SAAiB,EAAC,CAAC,CAAC;QAC9F,IAAM,YAAY,GAAW,CAAC,sBAAsB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAElH,OAAO,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;IAC1F,CAAC;IAjHQ;QAAR,KAAK,EAAE;;6EAAwE;IAKvE;QAAR,KAAK,EAAE;;wFAAkC;IAehC;QAAT,MAAM,EAAE;0CAAmC,YAAY;+FAAsD;IAKvF;QAAtB,YAAY,CAAC,OAAO,CAAC;;;;oEAIrB;IAlCU,iCAAiC;QAH7C,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;SACzC,CAAC;QA6CG,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACR,UAAU;YACN,SAAS;OA9ClB,iCAAiC,CAwH7C;IAAD,wCAAC;CAAA,AAxHD,IAwHC;SAxHY,iCAAiC"} \ No newline at end of file diff --git a/src/app/shared/browse-by/browse-by.component.js b/src/app/shared/browse-by/browse-by.component.js new file mode 100644 index 0000000000..af012851bb --- /dev/null +++ b/src/app/shared/browse-by/browse-by.component.js @@ -0,0 +1,157 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Injector, Input, Output } from '@angular/core'; +import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; +import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; +import { fadeIn, fadeInOut } from '../animations/fade'; +import { Observable } from 'rxjs'; +import { getStartsWithComponent, StartsWithType } from '../starts-with/starts-with-decorator'; +var BrowseByComponent = /** @class */ (function () { + function BrowseByComponent(injector) { + this.injector = injector; + /** + * The type of StartsWith options used to define what component to render for the options + * Defaults to text + */ + this.type = StartsWithType.text; + /** + * The list of options to render for the StartsWith component + */ + this.startsWithOptions = []; + /** + * Whether or not the pagination should be rendered as simple previous and next buttons instead of the normal pagination + */ + this.enableArrows = false; + /** + * If enableArrows is set to true, should it hide the options gear? + */ + this.hideGear = false; + /** + * If enableArrows is set to true, emit when the previous button is clicked + */ + this.prev = new EventEmitter(); + /** + * If enableArrows is set to true, emit when the next button is clicked + */ + this.next = new EventEmitter(); + /** + * If enableArrows is set to true, emit when the page size is changed + */ + this.pageSizeChange = new EventEmitter(); + /** + * If enableArrows is set to true, emit when the sort direction is changed + */ + this.sortDirectionChange = new EventEmitter(); + /** + * Declare SortDirection enumeration to use it in the template + */ + this.sortDirections = SortDirection; + } + /** + * Go to the previous page + */ + BrowseByComponent.prototype.goPrev = function () { + this.prev.emit(true); + }; + /** + * Go to the next page + */ + BrowseByComponent.prototype.goNext = function () { + this.next.emit(true); + }; + /** + * Change the page size + * @param size + */ + BrowseByComponent.prototype.doPageSizeChange = function (size) { + this.paginationConfig.pageSize = size; + this.pageSizeChange.emit(size); + }; + /** + * Change the sort direction + * @param direction + */ + BrowseByComponent.prototype.doSortDirectionChange = function (direction) { + this.sortConfig.direction = direction; + this.sortDirectionChange.emit(direction); + }; + /** + * Get the switchable StartsWith component dependant on the type + */ + BrowseByComponent.prototype.getStartsWithComponent = function () { + return getStartsWithComponent(this.type); + }; + BrowseByComponent.prototype.ngOnInit = function () { + var _this = this; + this.objectInjector = Injector.create({ + providers: [{ provide: 'startsWithOptions', useFactory: function () { return (_this.startsWithOptions); }, deps: [] }], + parent: this.injector + }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], BrowseByComponent.prototype, "title", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Observable) + ], BrowseByComponent.prototype, "objects$", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", PaginationComponentOptions) + ], BrowseByComponent.prototype, "paginationConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SortOptions) + ], BrowseByComponent.prototype, "sortConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], BrowseByComponent.prototype, "type", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], BrowseByComponent.prototype, "startsWithOptions", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], BrowseByComponent.prototype, "enableArrows", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], BrowseByComponent.prototype, "hideGear", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], BrowseByComponent.prototype, "prev", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], BrowseByComponent.prototype, "next", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], BrowseByComponent.prototype, "pageSizeChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], BrowseByComponent.prototype, "sortDirectionChange", void 0); + BrowseByComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-browse-by', + styleUrls: ['./browse-by.component.scss'], + templateUrl: './browse-by.component.html', + animations: [ + fadeIn, + fadeInOut + ] + }) + /** + * Component to display a browse-by page for any ListableObject + */ + , + tslib_1.__metadata("design:paramtypes", [Injector]) + ], BrowseByComponent); + return BrowseByComponent; +}()); +export { BrowseByComponent }; +//# sourceMappingURL=browse-by.component.js.map \ No newline at end of file diff --git a/src/app/shared/browse-by/browse-by.component.js.map b/src/app/shared/browse-by/browse-by.component.js.map new file mode 100644 index 0000000000..28f67adaaa --- /dev/null +++ b/src/app/shared/browse-by/browse-by.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-by.component.js","sourceRoot":"","sources":["browse-by.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/chips/chips.component.js b/src/app/shared/chips/chips.component.js new file mode 100644 index 0000000000..3b806df7d9 --- /dev/null +++ b/src/app/shared/chips/chips.component.js @@ -0,0 +1,136 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output, } from '@angular/core'; +import { isObject } from 'lodash'; +import { Chips } from './models/chips.model'; +import { UploaderService } from '../uploader/uploader.service'; +import { TranslateService } from '@ngx-translate/core'; +var ChipsComponent = /** @class */ (function () { + function ChipsComponent(cdr, uploaderService, translate) { + this.cdr = cdr; + this.uploaderService = uploaderService; + this.translate = translate; + this.editable = true; + this.showIcons = false; + this.selected = new EventEmitter(); + this.remove = new EventEmitter(); + this.change = new EventEmitter(); + this.dragged = -1; + this.options = { + animation: 300, + chosenClass: 'm-0', + dragClass: 'm-0', + filter: '.chips-sort-ignore', + ghostClass: 'm-0' + }; + } + ChipsComponent.prototype.ngOnChanges = function (changes) { + if (changes.chips && !changes.chips.isFirstChange()) { + this.chips = changes.chips.currentValue; + } + }; + ChipsComponent.prototype.chipsSelected = function (event, index) { + event.preventDefault(); + if (this.editable) { + this.chips.getChips().forEach(function (item, i) { + if (i === index) { + item.setEditMode(); + } + else { + item.unsetEditMode(); + } + }); + this.selected.emit(index); + } + }; + ChipsComponent.prototype.removeChips = function (event, index) { + event.preventDefault(); + event.stopPropagation(); + // Can't remove if this element is in editMode + if (!this.chips.getChipByIndex(index).editMode) { + this.chips.remove(this.chips.getChipByIndex(index)); + } + }; + ChipsComponent.prototype.onDragStart = function (index) { + this.uploaderService.overrideDragOverPage(); + this.dragged = index; + }; + ChipsComponent.prototype.onDragEnd = function (event) { + this.uploaderService.allowDragOverPage(); + this.dragged = -1; + this.chips.updateOrder(); + }; + ChipsComponent.prototype.showTooltip = function (tooltip, index, field) { + var _this = this; + tooltip.close(); + var chipsItem = this.chips.getChipByIndex(index); + var textToDisplay = []; + if (!chipsItem.editMode && this.dragged === -1) { + if (field) { + if (isObject(chipsItem.item[field])) { + textToDisplay.push(chipsItem.item[field].display); + if (chipsItem.item[field].hasOtherInformation()) { + Object.keys(chipsItem.item[field].otherInformation) + .forEach(function (otherField) { + _this.translate.get('form.other-information.' + otherField) + .subscribe(function (label) { + textToDisplay.push(label + ': ' + chipsItem.item[field].otherInformation[otherField]); + }); + }); + } + } + else { + textToDisplay.push(chipsItem.item[field]); + } + } + else { + textToDisplay.push(chipsItem.display); + } + this.cdr.detectChanges(); + if (!chipsItem.hasIcons() || !chipsItem.hasVisibleIcons() || field) { + this.tipText = textToDisplay; + tooltip.open(); + } + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Chips) + ], ChipsComponent.prototype, "chips", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ChipsComponent.prototype, "wrapperClass", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ChipsComponent.prototype, "editable", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ChipsComponent.prototype, "showIcons", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ChipsComponent.prototype, "selected", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ChipsComponent.prototype, "remove", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ChipsComponent.prototype, "change", void 0); + ChipsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-chips', + styleUrls: ['./chips.component.scss'], + templateUrl: './chips.component.html', + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + UploaderService, + TranslateService]) + ], ChipsComponent); + return ChipsComponent; +}()); +export { ChipsComponent }; +//# sourceMappingURL=chips.component.js.map \ No newline at end of file diff --git a/src/app/shared/chips/chips.component.js.map b/src/app/shared/chips/chips.component.js.map new file mode 100644 index 0000000000..ecbcaa17e4 --- /dev/null +++ b/src/app/shared/chips/chips.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"chips.component.js","sourceRoot":"","sources":["chips.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/chips/models/chips-item.model.js b/src/app/shared/chips/models/chips-item.model.js new file mode 100644 index 0000000000..98a8eb6d80 --- /dev/null +++ b/src/app/shared/chips/models/chips-item.model.js @@ -0,0 +1,88 @@ +import { isObject, uniqueId } from 'lodash'; +import { hasValue, isNotEmpty } from '../../empty.util'; +import { ConfidenceType } from '../../../core/integration/models/confidence-type'; +var ChipsItem = /** @class */ (function () { + function ChipsItem(item, fieldToDisplay, objToDisplay, icons, editMode) { + if (fieldToDisplay === void 0) { fieldToDisplay = 'display'; } + this.id = uniqueId(); + this._item = item; + this.fieldToDisplay = fieldToDisplay; + this.objToDisplay = objToDisplay; + this.setDisplayText(); + this.editMode = editMode || false; + this.icons = icons || []; + } + Object.defineProperty(ChipsItem.prototype, "item", { + get: function () { + return this._item; + }, + set: function (item) { + this._item = item; + }, + enumerable: true, + configurable: true + }); + ChipsItem.prototype.isNestedItem = function () { + return (isNotEmpty(this.item) + && isObject(this.item) + && isNotEmpty(this.objToDisplay) + && this.item[this.objToDisplay]); + }; + ChipsItem.prototype.hasIcons = function () { + return isNotEmpty(this.icons); + }; + ChipsItem.prototype.hasVisibleIcons = function () { + if (isNotEmpty(this.icons)) { + var hasVisible = false; + // check if it has at least one visible icon + for (var _i = 0, _a = this.icons; _i < _a.length; _i++) { + var icon = _a[_i]; + if (this._item.hasOwnProperty(icon.metadata) + && (((typeof this._item[icon.metadata] === 'string') && hasValue(this._item[icon.metadata])) + || this._item[icon.metadata].hasValue()) + && !this._item[icon.metadata].hasPlaceholder()) { + if ((icon.visibleWhenAuthorityEmpty + || this._item[icon.metadata].confidence !== ConfidenceType.CF_UNSET) + && isNotEmpty(icon.style)) { + hasVisible = true; + break; + } + } + } + return hasVisible; + } + else { + return false; + } + }; + ChipsItem.prototype.setEditMode = function () { + this.editMode = true; + }; + ChipsItem.prototype.updateIcons = function (icons) { + this.icons = icons; + }; + ChipsItem.prototype.updateItem = function (item) { + this._item = item; + this.setDisplayText(); + }; + ChipsItem.prototype.unsetEditMode = function () { + this.editMode = false; + }; + ChipsItem.prototype.setDisplayText = function () { + var value = this._item; + if (isObject(this._item)) { + // Check If displayField is in an internal object + var obj = this.objToDisplay ? this._item[this.objToDisplay] : this._item; + if (isObject(obj) && obj) { + value = obj[this.fieldToDisplay] || obj.value; + } + else { + value = obj; + } + } + this.display = value; + }; + return ChipsItem; +}()); +export { ChipsItem }; +//# sourceMappingURL=chips-item.model.js.map \ No newline at end of file diff --git a/src/app/shared/chips/models/chips-item.model.js.map b/src/app/shared/chips/models/chips-item.model.js.map new file mode 100644 index 0000000000..efefb8f99a --- /dev/null +++ b/src/app/shared/chips/models/chips-item.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"chips-item.model.js","sourceRoot":"","sources":["chips-item.model.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/chips/models/chips.model.js b/src/app/shared/chips/models/chips.model.js new file mode 100644 index 0000000000..83ae701633 --- /dev/null +++ b/src/app/shared/chips/models/chips.model.js @@ -0,0 +1,127 @@ +import { findIndex, isEqual, isObject } from 'lodash'; +import { BehaviorSubject } from 'rxjs'; +import { ChipsItem } from './chips-item.model'; +import { hasValue, isNotEmpty } from '../../empty.util'; +import { PLACEHOLDER_PARENT_METADATA } from '../../form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; +import { FormFieldMetadataValueObject } from '../../form/builder/models/form-field-metadata-value.model'; +import { AuthorityValue } from '../../../core/integration/models/authority.value'; +var Chips = /** @class */ (function () { + function Chips(items, displayField, displayObj, iconsConfig) { + if (items === void 0) { items = []; } + if (displayField === void 0) { displayField = 'display'; } + this.displayField = displayField; + this.displayObj = displayObj; + this.iconsConfig = iconsConfig || []; + if (Array.isArray(items)) { + this.setInitialItems(items); + } + } + Chips.prototype.add = function (item) { + var icons = this.getChipsIcons(item); + var chipsItem = new ChipsItem(item, this.displayField, this.displayObj, icons); + var duplicatedIndex = findIndex(this._items, { display: chipsItem.display.trim() }); + if (duplicatedIndex === -1 || !isEqual(item, this.getChipByIndex(duplicatedIndex).item)) { + this._items.push(chipsItem); + this.chipsItems.next(this._items); + } + }; + Chips.prototype.getChipById = function (id) { + var index = findIndex(this._items, { id: id }); + return this.getChipByIndex(index); + }; + Chips.prototype.getChipByIndex = function (index) { + if (this._items.length > 0 && this._items[index]) { + return this._items[index]; + } + else { + return null; + } + }; + Chips.prototype.getChips = function () { + return this._items; + }; + /** + * To use to get items before to store it + * @returns {any[]} + */ + Chips.prototype.getChipsItems = function () { + var out = []; + this._items.forEach(function (item) { + out.push(item.item); + }); + return out; + }; + Chips.prototype.hasItems = function () { + return this._items.length > 0; + }; + Chips.prototype.hasPlaceholder = function (value) { + if (isObject(value)) { + return value.value === PLACEHOLDER_PARENT_METADATA; + } + else { + return value === PLACEHOLDER_PARENT_METADATA; + } + }; + Chips.prototype.remove = function (chipsItem) { + var index = findIndex(this._items, { id: chipsItem.id }); + this._items.splice(index, 1); + this.chipsItems.next(this._items); + }; + Chips.prototype.update = function (id, item) { + var chipsItemTarget = this.getChipById(id); + var icons = this.getChipsIcons(item); + chipsItemTarget.updateItem(item); + chipsItemTarget.updateIcons(icons); + chipsItemTarget.unsetEditMode(); + this.chipsItems.next(this._items); + }; + Chips.prototype.updateOrder = function () { + this.chipsItems.next(this._items); + }; + Chips.prototype.getChipsIcons = function (item) { + var _this = this; + var icons = []; + if (typeof item === 'string' || item instanceof FormFieldMetadataValueObject || item instanceof AuthorityValue) { + return icons; + } + var defaultConfigIndex = findIndex(this.iconsConfig, { name: 'default' }); + var defaultConfig = (defaultConfigIndex !== -1) ? this.iconsConfig[defaultConfigIndex] : undefined; + var config; + var configIndex; + var value; + Object.keys(item) + .forEach(function (metadata) { + value = item[metadata]; + configIndex = findIndex(_this.iconsConfig, { name: metadata }); + config = (configIndex !== -1) ? _this.iconsConfig[configIndex] : defaultConfig; + if (hasValue(value) && isNotEmpty(config) && !_this.hasPlaceholder(value)) { + var icon = void 0; + var visibleWhenAuthorityEmpty = _this.displayObj !== metadata; + // Set icon + icon = { + metadata: metadata, + visibleWhenAuthorityEmpty: visibleWhenAuthorityEmpty, + style: config.style + }; + icons.push(icon); + } + }); + return icons; + }; + /** + * Sets initial items, used in edit mode + */ + Chips.prototype.setInitialItems = function (items) { + var _this = this; + this._items = []; + items.forEach(function (item) { + var icons = _this.getChipsIcons(item); + var chipsItem = new ChipsItem(item, _this.displayField, _this.displayObj, icons); + _this._items.push(chipsItem); + }); + this.chipsItems = new BehaviorSubject(this._items); + }; + return Chips; +}()); +export { Chips }; +//# sourceMappingURL=chips.model.js.map \ No newline at end of file diff --git a/src/app/shared/chips/models/chips.model.js.map b/src/app/shared/chips/models/chips.model.js.map new file mode 100644 index 0000000000..6f3f445f54 --- /dev/null +++ b/src/app/shared/chips/models/chips.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"chips.model.js","sourceRoot":"","sources":["chips.model.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js b/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js new file mode 100644 index 0000000000..dd45cf5ba5 --- /dev/null +++ b/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js @@ -0,0 +1,105 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +import { Location } from '@angular/common'; +import { DynamicFormService } from '@ng-dynamic-forms/core'; +import { TranslateService } from '@ngx-translate/core'; +import { isNotEmpty } from '../../empty.util'; +import { ResourceType } from '../../../core/shared/resource-type'; +/** + * A form for creating and editing Communities or Collections + */ +var ComColFormComponent = /** @class */ (function () { + function ComColFormComponent(location, formService, translate) { + this.location = location; + this.formService = formService; + this.translate = translate; + /** + * @type {string} Key prefix used to generate form labels + */ + this.LABEL_KEY_PREFIX = '.form.'; + /** + * @type {string} Key prefix used to generate form error messages + */ + this.ERROR_KEY_PREFIX = '.form.errors.'; + /** + * Emits DSO when the form is submitted + * @type {EventEmitter} + */ + this.submitForm = new EventEmitter(); + } + ComColFormComponent.prototype.ngOnInit = function () { + var _this = this; + this.formModel.forEach(function (fieldModel) { + fieldModel.value = _this.dso.firstMetadataValue(fieldModel.name); + }); + this.formGroup = this.formService.createFormGroup(this.formModel); + this.updateFieldTranslations(); + this.translate.onLangChange + .subscribe(function () { + _this.updateFieldTranslations(); + }); + }; + /** + * Checks which new fields were added and sends the updated version of the DSO to the parent component + */ + ComColFormComponent.prototype.onSubmit = function () { + var formMetadata = new Object(); + this.formModel.forEach(function (fieldModel) { + var value = { + value: fieldModel.value, + language: null + }; + if (formMetadata.hasOwnProperty(fieldModel.name)) { + formMetadata[fieldModel.name].push(value); + } + else { + formMetadata[fieldModel.name] = [value]; + } + }); + var updatedDSO = Object.assign({}, this.dso, { + metadata: tslib_1.__assign({}, this.dso.metadata, formMetadata), + type: ResourceType.Community + }); + this.submitForm.emit(updatedDSO); + }; + /** + * Used the update translations of errors and labels on init and on language change + */ + ComColFormComponent.prototype.updateFieldTranslations = function () { + var _this = this; + this.formModel.forEach(function (fieldModel) { + fieldModel.label = _this.translate.instant(_this.type + _this.LABEL_KEY_PREFIX + fieldModel.id); + if (isNotEmpty(fieldModel.validators)) { + fieldModel.errorMessages = {}; + Object.keys(fieldModel.validators).forEach(function (key) { + fieldModel.errorMessages[key] = _this.translate.instant(_this.type + _this.ERROR_KEY_PREFIX + fieldModel.id + '.' + key); + }); + } + }); + }; + ComColFormComponent.prototype.onCancel = function () { + this.location.back(); + }; + var _a; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", typeof (_a = typeof T !== "undefined" && T) === "function" && _a || Object) + ], ComColFormComponent.prototype, "dso", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ComColFormComponent.prototype, "submitForm", void 0); + ComColFormComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-comcol-form', + styleUrls: ['./comcol-form.component.scss'], + templateUrl: './comcol-form.component.html' + }), + tslib_1.__metadata("design:paramtypes", [Location, + DynamicFormService, + TranslateService]) + ], ComColFormComponent); + return ComColFormComponent; +}()); +export { ComColFormComponent }; +//# sourceMappingURL=comcol-form.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js.map b/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js.map new file mode 100644 index 0000000000..ea7706e78c --- /dev/null +++ b/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"comcol-form.component.js","sourceRoot":"","sources":["comcol-form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js b/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js new file mode 100644 index 0000000000..2bdc0bb419 --- /dev/null +++ b/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js @@ -0,0 +1,59 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { CommunityDataService } from '../../../core/data/community-data.service'; +import { RouteService } from '../../services/route.service'; +import { Router } from '@angular/router'; +import { isNotEmpty, isNotUndefined } from '../../empty.util'; +import { take } from 'rxjs/operators'; +import { getSucceededRemoteData } from '../../../core/shared/operators'; +import { DataService } from '../../../core/data/data.service'; +/** + * Component representing the create page for communities and collections + */ +var CreateComColPageComponent = /** @class */ (function () { + function CreateComColPageComponent(dsoDataService, parentDataService, routeService, router) { + this.dsoDataService = dsoDataService; + this.parentDataService = parentDataService; + this.routeService = routeService; + this.router = router; + } + CreateComColPageComponent.prototype.ngOnInit = function () { + var _this = this; + this.parentUUID$ = this.routeService.getQueryParameterValue('parent'); + this.parentUUID$.pipe(take(1)).subscribe(function (parentID) { + if (isNotEmpty(parentID)) { + _this.parentRD$ = _this.parentDataService.findById(parentID); + } + }); + }; + /** + * @param {TDomain} dso The updated version of the DSO + * Creates a new DSO based on the submitted user data and navigates to the new object's home page + */ + CreateComColPageComponent.prototype.onSubmit = function (dso) { + var _this = this; + this.parentUUID$.pipe(take(1)).subscribe(function (uuid) { + _this.dsoDataService.create(dso, uuid) + .pipe(getSucceededRemoteData()) + .subscribe(function (dsoRD) { + if (isNotUndefined(dsoRD)) { + var newUUID = dsoRD.payload.uuid; + _this.router.navigate([_this.frontendURL + newUUID]); + } + }); + }); + }; + CreateComColPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-create-comcol', + template: '' + }), + tslib_1.__metadata("design:paramtypes", [DataService, + CommunityDataService, + RouteService, + Router]) + ], CreateComColPageComponent); + return CreateComColPageComponent; +}()); +export { CreateComColPageComponent }; +//# sourceMappingURL=create-comcol-page.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js.map b/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js.map new file mode 100644 index 0000000000..0b3f4c104d --- /dev/null +++ b/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"create-comcol-page.component.js","sourceRoot":"","sources":["create-comcol-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D;;GAEG;AAKH;IAgBE,mCACY,cAAoC,EACpC,iBAAuC,EACvC,YAA0B,EAC1B,MAAc;QAHd,mBAAc,GAAd,cAAc,CAAsB;QACpC,sBAAiB,GAAjB,iBAAiB,CAAsB;QACvC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,WAAM,GAAN,MAAM,CAAQ;IAG1B,CAAC;IAED,4CAAQ,GAAR;QAAA,iBAOC;QANC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,QAAgB;YACxD,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;gBACxB,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;aAC5D;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,4CAAQ,GAAR,UAAS,GAAY;QAArB,iBAWC;QAVC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,IAAY;YACpD,KAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC;iBAClC,IAAI,CAAC,sBAAsB,EAAE,CAAC;iBAC9B,SAAS,CAAC,UAAC,KAA0B;gBACpC,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE;oBACzB,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;oBACnC,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAI,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;iBACpD;YACH,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;IAjDU,yBAAyB;QAJrC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,QAAQ,EAAE,EAAE;SACb,CAAC;iDAkB4B,WAAW;YACR,oBAAoB;YACzB,YAAY;YAClB,MAAM;OApBf,yBAAyB,CAmDrC;IAAD,gCAAC;CAAA,AAnDD,IAmDC;SAnDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js b/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js new file mode 100644 index 0000000000..96f340ee31 --- /dev/null +++ b/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js @@ -0,0 +1,63 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { first, map } from 'rxjs/operators'; +import { DataService } from '../../../core/data/data.service'; +import { NotificationsService } from '../../notifications/notifications.service'; +import { TranslateService } from '@ngx-translate/core'; +/** + * Component representing the delete page for communities and collections + */ +var DeleteComColPageComponent = /** @class */ (function () { + function DeleteComColPageComponent(dsoDataService, router, route, notifications, translate) { + this.dsoDataService = dsoDataService; + this.router = router; + this.route = route; + this.notifications = notifications; + this.translate = translate; + } + DeleteComColPageComponent.prototype.ngOnInit = function () { + this.dsoRD$ = this.route.data.pipe(first(), map(function (data) { return data.dso; })); + }; + /** + * @param {TDomain} dso The DSO to delete + * Deletes an existing DSO and redirects to the home page afterwards, showing a notification that states whether or not the deletion was successful + */ + DeleteComColPageComponent.prototype.onConfirm = function (dso) { + var _this = this; + this.dsoDataService.delete(dso) + .pipe(first()) + .subscribe(function (success) { + if (success) { + var successMessage = _this.translate.instant(dso.type + '.delete.notification.success'); + _this.notifications.success(successMessage); + } + else { + var errorMessage = _this.translate.instant(dso.type + '.delete.notification.fail'); + _this.notifications.error(errorMessage); + } + _this.router.navigate(['/']); + }); + }; + /** + * @param {TDomain} dso The DSO for which the delete action was canceled + * When a delete is canceled, the user is redirected to the DSO's edit page + */ + DeleteComColPageComponent.prototype.onCancel = function (dso) { + this.router.navigate([this.frontendURL + '/' + dso.uuid + '/edit']); + }; + DeleteComColPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-delete-comcol', + template: '' + }), + tslib_1.__metadata("design:paramtypes", [DataService, + Router, + ActivatedRoute, + NotificationsService, + TranslateService]) + ], DeleteComColPageComponent); + return DeleteComColPageComponent; +}()); +export { DeleteComColPageComponent }; +//# sourceMappingURL=delete-comcol-page.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js.map b/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js.map new file mode 100644 index 0000000000..7d2e7a4af4 --- /dev/null +++ b/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"delete-comcol-page.component.js","sourceRoot":"","sources":["delete-comcol-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;GAEG;AAKH;IAUE,mCACY,cAAoC,EACpC,MAAc,EACd,KAAqB,EACrB,aAAmC,EACnC,SAA2B;QAJ3B,mBAAc,GAAd,cAAc,CAAsB;QACpC,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAgB;QACrB,kBAAa,GAAb,aAAa,CAAsB;QACnC,cAAS,GAAT,SAAS,CAAkB;IAEvC,CAAC;IAED,4CAAQ,GAAR;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,GAAG,EAAR,CAAQ,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,6CAAS,GAAT,UAAU,GAAY;QAAtB,iBAaC;QAZC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC;aAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;aACb,SAAS,CAAC,UAAC,OAAgB;YAC1B,IAAI,OAAO,EAAE;gBACX,IAAM,cAAc,GAAG,KAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,8BAA8B,CAAC,CAAC;gBACzF,KAAI,CAAC,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;aAC3C;iBAAM;gBACL,IAAM,YAAY,GAAG,KAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,2BAA2B,CAAC,CAAC;gBACpF,KAAI,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;aACvC;YACD,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,4CAAQ,GAAR,UAAS,GAAY;QACnB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC;IACtE,CAAC;IAhDU,yBAAyB;QAJrC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,QAAQ,EAAE,EAAE;SACb,CAAC;iDAY4B,WAAW;YACnB,MAAM;YACP,cAAc;YACN,oBAAoB;YACxB,gBAAgB;OAf5B,yBAAyB,CAiDrC;IAAD,gCAAC;CAAA,AAjDD,IAiDC;SAjDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js b/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js new file mode 100644 index 0000000000..88f5c4e7eb --- /dev/null +++ b/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js @@ -0,0 +1,47 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { isNotUndefined } from '../../empty.util'; +import { first, map } from 'rxjs/operators'; +import { getSucceededRemoteData } from '../../../core/shared/operators'; +import { DataService } from '../../../core/data/data.service'; +/** + * Component representing the edit page for communities and collections + */ +var EditComColPageComponent = /** @class */ (function () { + function EditComColPageComponent(dsoDataService, router, route) { + this.dsoDataService = dsoDataService; + this.router = router; + this.route = route; + } + EditComColPageComponent.prototype.ngOnInit = function () { + this.dsoRD$ = this.route.data.pipe(first(), map(function (data) { return data.dso; })); + }; + /** + * @param {TDomain} dso The updated version of the DSO + * Updates an existing DSO based on the submitted user data and navigates to the edited object's home page + */ + EditComColPageComponent.prototype.onSubmit = function (dso) { + var _this = this; + this.dsoDataService.update(dso) + .pipe(getSucceededRemoteData()) + .subscribe(function (dsoRD) { + if (isNotUndefined(dsoRD)) { + var newUUID = dsoRD.payload.uuid; + _this.router.navigate([_this.frontendURL + newUUID]); + } + }); + }; + EditComColPageComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-edit-comcol', + template: '' + }), + tslib_1.__metadata("design:paramtypes", [DataService, + Router, + ActivatedRoute]) + ], EditComColPageComponent); + return EditComColPageComponent; +}()); +export { EditComColPageComponent }; +//# sourceMappingURL=edit-comcol-page.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js.map b/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js.map new file mode 100644 index 0000000000..fa2719e7c1 --- /dev/null +++ b/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-comcol-page.component.js","sourceRoot":"","sources":["edit-comcol-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG9D;;GAEG;AAKH;IAUE,iCACY,cAAoC,EACpC,MAAc,EACd,KAAqB;QAFrB,mBAAc,GAAd,cAAc,CAAsB;QACpC,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAgB;IAEjC,CAAC;IAED,0CAAQ,GAAR;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,GAAG,EAAR,CAAQ,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,0CAAQ,GAAR,UAAS,GAAY;QAArB,iBASC;QARC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC;aAC5B,IAAI,CAAC,sBAAsB,EAAE,CAAC;aAC9B,SAAS,CAAC,UAAC,KAA0B;YACpC,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE;gBACzB,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAI,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAlCU,uBAAuB;QAJnC,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ,EAAE,EAAE;SACb,CAAC;iDAY4B,WAAW;YACnB,MAAM;YACP,cAAc;OAbtB,uBAAuB,CAmCnC;IAAD,8BAAC;CAAA,AAnCD,IAmCC;SAnCY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js b/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js new file mode 100644 index 0000000000..76b8cd3307 --- /dev/null +++ b/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +/** + * A component to display the "Browse By" section of a Community or Collection page + * It expects the ID of the Community or Collection as input to be passed on as a scope + */ +var ComcolPageBrowseByComponent = /** @class */ (function () { + function ComcolPageBrowseByComponent() { + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ComcolPageBrowseByComponent.prototype, "id", void 0); + ComcolPageBrowseByComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-comcol-page-browse-by', + templateUrl: './comcol-page-browse-by.component.html', + }) + ], ComcolPageBrowseByComponent); + return ComcolPageBrowseByComponent; +}()); +export { ComcolPageBrowseByComponent }; +//# sourceMappingURL=comcol-page-browse-by.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js.map b/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js.map new file mode 100644 index 0000000000..cfcf881c1c --- /dev/null +++ b/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"comcol-page-browse-by.component.js","sourceRoot":"","sources":["comcol-page-browse-by.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD;;;GAGG;AAKH;IAAA;IAKA,CAAC;IADU;QAAR,KAAK,EAAE;;2DAAY;IAJT,2BAA2B;QAJvC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,WAAW,EAAE,wCAAwC;SACtD,CAAC;OACW,2BAA2B,CAKvC;IAAD,kCAAC;CAAA,AALD,IAKC;SALY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/comcol-page-content/comcol-page-content.component.js b/src/app/shared/comcol-page-content/comcol-page-content.component.js new file mode 100644 index 0000000000..319c6eac2a --- /dev/null +++ b/src/app/shared/comcol-page-content/comcol-page-content.component.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +/** + * This component renders any content inside of this component. + * If there is a title set it will render the title. + * If hasInnerHtml is true the content will be handled as html. + * To see how it is used see collection-page or community-page. + */ +var ComcolPageContentComponent = /** @class */ (function () { + function ComcolPageContentComponent() { + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ComcolPageContentComponent.prototype, "title", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ComcolPageContentComponent.prototype, "content", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Boolean) + ], ComcolPageContentComponent.prototype, "hasInnerHtml", void 0); + ComcolPageContentComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-comcol-page-content', + styleUrls: ['./comcol-page-content.component.scss'], + templateUrl: './comcol-page-content.component.html' + }) + ], ComcolPageContentComponent); + return ComcolPageContentComponent; +}()); +export { ComcolPageContentComponent }; +//# sourceMappingURL=comcol-page-content.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-page-content/comcol-page-content.component.js.map b/src/app/shared/comcol-page-content/comcol-page-content.component.js.map new file mode 100644 index 0000000000..bb6397de6c --- /dev/null +++ b/src/app/shared/comcol-page-content/comcol-page-content.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"comcol-page-content.component.js","sourceRoot":"","sources":["comcol-page-content.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;GAKG;AAMH;IAAA;IAWA,CAAC;IARU;QAAR,KAAK,EAAE;;6DAAe;IAGd;QAAR,KAAK,EAAE;;+DAAiB;IAGhB;QAAR,KAAK,EAAE;;oEAAuB;IATpB,0BAA0B;QALtC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;OACW,0BAA0B,CAWtC;IAAD,iCAAC;CAAA,AAXD,IAWC;SAXY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/comcol-page-header/comcol-page-header.component.js b/src/app/shared/comcol-page-header/comcol-page-header.component.js new file mode 100644 index 0000000000..74246fdc8b --- /dev/null +++ b/src/app/shared/comcol-page-header/comcol-page-header.component.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +var ComcolPageHeaderComponent = /** @class */ (function () { + function ComcolPageHeaderComponent() { + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ComcolPageHeaderComponent.prototype, "name", void 0); + ComcolPageHeaderComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-comcol-page-header', + styleUrls: ['./comcol-page-header.component.scss'], + templateUrl: './comcol-page-header.component.html', + }) + ], ComcolPageHeaderComponent); + return ComcolPageHeaderComponent; +}()); +export { ComcolPageHeaderComponent }; +//# sourceMappingURL=comcol-page-header.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-page-header/comcol-page-header.component.js.map b/src/app/shared/comcol-page-header/comcol-page-header.component.js.map new file mode 100644 index 0000000000..3e306abb66 --- /dev/null +++ b/src/app/shared/comcol-page-header/comcol-page-header.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"comcol-page-header.component.js","sourceRoot":"","sources":["comcol-page-header.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAOjD;IAAA;IAEA,CAAC;IADU;QAAR,KAAK,EAAE;;2DAAc;IADX,yBAAyB;QALrC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,SAAS,EAAE,CAAC,qCAAqC,CAAC;YAClD,WAAW,EAAE,qCAAqC;SACnD,CAAC;OACW,yBAAyB,CAErC;IAAD,gCAAC;CAAA,AAFD,IAEC;SAFY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/comcol-page-logo/comcol-page-logo.component.js b/src/app/shared/comcol-page-logo/comcol-page-logo.component.js new file mode 100644 index 0000000000..ba9e925193 --- /dev/null +++ b/src/app/shared/comcol-page-logo/comcol-page-logo.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Bitstream } from '../../core/shared/bitstream.model'; +var ComcolPageLogoComponent = /** @class */ (function () { + function ComcolPageLogoComponent() { + /** + * The default 'holder.js' image + */ + this.holderSource = 'data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2293%22%20height%3D%22120%22%20viewBox%3D%220%200%2093%20120%22%20preserveAspectRatio%3D%22none%22%3E%3C!--%0ASource%20URL%3A%20holder.js%2F93x120%3Ftext%3DNo%20Thumbnail%0ACreated%20with%20Holder.js%202.8.2.%0ALearn%20more%20at%20http%3A%2F%2Fholderjs.com%0A(c)%202012-2015%20Ivan%20Malopinsky%20-%20http%3A%2F%2Fimsky.co%0A--%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%3C!%5BCDATA%5B%23holder_1543e460b05%20text%20%7B%20fill%3A%23AAAAAA%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A10pt%20%7D%20%5D%5D%3E%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1543e460b05%22%3E%3Crect%20width%3D%2293%22%20height%3D%22120%22%20fill%3D%22%23EEEEEE%22%2F%3E%3Cg%3E%3Ctext%20x%3D%2235.6171875%22%20y%3D%2257%22%3ENo%3C%2Ftext%3E%3Ctext%20x%3D%2210.8125%22%20y%3D%2272%22%3EThumbnail%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E'; + } + ComcolPageLogoComponent.prototype.errorHandler = function (event) { + event.currentTarget.src = this.holderSource; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Bitstream) + ], ComcolPageLogoComponent.prototype, "logo", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ComcolPageLogoComponent.prototype, "alternateText", void 0); + ComcolPageLogoComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-comcol-page-logo', + styleUrls: ['./comcol-page-logo.component.scss'], + templateUrl: './comcol-page-logo.component.html', + }) + ], ComcolPageLogoComponent); + return ComcolPageLogoComponent; +}()); +export { ComcolPageLogoComponent }; +//# sourceMappingURL=comcol-page-logo.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-page-logo/comcol-page-logo.component.js.map b/src/app/shared/comcol-page-logo/comcol-page-logo.component.js.map new file mode 100644 index 0000000000..84c2ea48fa --- /dev/null +++ b/src/app/shared/comcol-page-logo/comcol-page-logo.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"comcol-page-logo.component.js","sourceRoot":"","sources":["comcol-page-logo.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAO9D;IALA;QAUE;;WAEG;QACH,iBAAY,GAAG,++BAA++B,CAAC;IAMjgC,CAAC;IAJC,8CAAY,GAAZ,UAAa,KAAK;QAChB,KAAK,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;IAC9C,CAAC;IAXQ;QAAR,KAAK,EAAE;0CAAO,SAAS;yDAAC;IAEhB;QAAR,KAAK,EAAE;;kEAAuB;IAHpB,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,mCAAmC,CAAC;YAChD,WAAW,EAAE,mCAAmC;SACjD,CAAC;OACW,uBAAuB,CAcnC;IAAD,8BAAC;CAAA,AAdD,IAcC;SAdY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/date.util.js b/src/app/shared/date.util.js new file mode 100644 index 0000000000..1d22e3f7ee --- /dev/null +++ b/src/app/shared/date.util.js @@ -0,0 +1,52 @@ +import { isObject } from 'lodash'; +import * as moment from 'moment'; +/** + * Returns true if the passed value is a NgbDateStruct. + * + * @param value + * The object to check + * @return boolean + * true if the passed value is a NgbDateStruct, false otherwise + */ +export function isNgbDateStruct(value) { + return isObject(value) && value.hasOwnProperty('day') + && value.hasOwnProperty('month') && value.hasOwnProperty('year'); +} +/** + * Returns a date in simplified extended ISO format (YYYY-MM-DDTHH:mm:ssZ). + * The timezone is always zero UTC offset, as denoted by the suffix "Z" + * + * @param date + * The date to format + * @return string + * the formatted date + */ +export function dateToISOFormat(date) { + var dateObj = (date instanceof Date) ? date : ngbDateStructToDate(date); + var year = dateObj.getFullYear().toString(); + var month = (dateObj.getMonth() + 1).toString(); + var day = dateObj.getDate().toString(); + var hour = dateObj.getHours().toString(); + var min = dateObj.getMinutes().toString(); + var sec = dateObj.getSeconds().toString(); + year = (year.length === 1) ? '0' + year : year; + month = (month.length === 1) ? '0' + month : month; + day = (day.length === 1) ? '0' + day : day; + hour = (hour.length === 1) ? '0' + hour : hour; + min = (min.length === 1) ? '0' + min : min; + sec = (sec.length === 1) ? '0' + sec : sec; + var dateStr = "" + year + month + day + hour + min + sec; + return moment.utc(dateStr, 'YYYYMMDDhhmmss').format(); +} +/** + * Returns a Date object started from a NgbDateStruct object + * + * @param date + * The NgbDateStruct to convert + * @return Date + * the Date object + */ +export function ngbDateStructToDate(date) { + return new Date(date.year, (date.month - 1), date.day); +} +//# sourceMappingURL=date.util.js.map \ No newline at end of file diff --git a/src/app/shared/date.util.js.map b/src/app/shared/date.util.js.map new file mode 100644 index 0000000000..a60c703097 --- /dev/null +++ b/src/app/shared/date.util.js.map @@ -0,0 +1 @@ +{"version":3,"file":"date.util.js","sourceRoot":"","sources":["date.util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC;;;;;;;GAOG;AACH,MAAM,0BAA0B,KAAa;IAC3C,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;WAChD,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,IAAK,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,0BAA0B,IAA0B;IACxD,IAAM,OAAO,GAAS,CAAC,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAEhF,IAAI,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC5C,IAAI,KAAK,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAChD,IAAI,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;IACvC,IAAI,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;IACzC,IAAI,GAAG,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC1C,IAAI,GAAG,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;IAE1C,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,KAAK,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IACnD,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,IAAM,OAAO,GAAG,KAAG,IAAI,GAAG,KAAK,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,GAAK,CAAC;IAC3D,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,MAAM,EAAE,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,8BAA8B,IAAmB;IACrD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AACzD,CAAC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/dso-selector/dso-selector.component.js b/src/app/shared/dso-selector/dso-selector/dso-selector.component.js new file mode 100644 index 0000000000..d2751b5c0d --- /dev/null +++ b/src/app/shared/dso-selector/dso-selector/dso-selector.component.js @@ -0,0 +1,84 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output, QueryList, ViewChildren } from '@angular/core'; +import { FormControl } from '@angular/forms'; +import { debounceTime, startWith, switchMap } from 'rxjs/operators'; +import { SearchService } from '../../../+search-page/search-service/search.service'; +import { PaginatedSearchOptions } from '../../../+search-page/paginated-search-options.model'; +import { DSpaceObjectType } from '../../../core/shared/dspace-object-type.model'; +var DSOSelectorComponent = /** @class */ (function () { + function DSOSelectorComponent(searchService) { + this.searchService = searchService; + /** + * Emits the selected Object when a user selects it in the list + */ + this.onSelect = new EventEmitter(); + /** + * Input form control to query the list + */ + this.input = new FormControl(); + /** + * Default pagination for this feature + */ + this.defaultPagination = { id: 'dso-selector', currentPage: 1, pageSize: 5 }; + /** + * Time to wait before sending a search request to the server when a user types something + */ + this.debounceTime = 500; + } + /** + * Fills the listEntries$ variable with search results based on the input field's current value + * The search will always start with the initial currentDSOId value + */ + DSOSelectorComponent.prototype.ngOnInit = function () { + var _this = this; + this.input.setValue(this.currentDSOId); + this.listEntries$ = this.input.valueChanges + .pipe(debounceTime(this.debounceTime), startWith(this.currentDSOId), switchMap(function (query) { + return _this.searchService.search(new PaginatedSearchOptions({ + query: query, + dsoType: _this.type, + pagination: _this.defaultPagination + })); + })); + }; + /** + * Set focus on the first list element when there is only one result + */ + DSOSelectorComponent.prototype.selectSingleResult = function () { + if (this.listElements.length > 0) { + this.listElements.first.nativeElement.click(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], DSOSelectorComponent.prototype, "currentDSOId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], DSOSelectorComponent.prototype, "type", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DSOSelectorComponent.prototype, "onSelect", void 0); + tslib_1.__decorate([ + ViewChildren('listEntryElement'), + tslib_1.__metadata("design:type", QueryList) + ], DSOSelectorComponent.prototype, "listElements", void 0); + DSOSelectorComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dso-selector', + // styleUrls: ['./dso-selector.component.scss'], + templateUrl: './dso-selector.component.html' + }) + /** + * Component to render a list of DSO's of which one can be selected + * The user can search the list by using the input field + */ + , + tslib_1.__metadata("design:paramtypes", [SearchService]) + ], DSOSelectorComponent); + return DSOSelectorComponent; +}()); +export { DSOSelectorComponent }; +//# sourceMappingURL=dso-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/dso-selector/dso-selector.component.js.map b/src/app/shared/dso-selector/dso-selector/dso-selector.component.js.map new file mode 100644 index 0000000000..28afdd82a7 --- /dev/null +++ b/src/app/shared/dso-selector/dso-selector/dso-selector.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dso-selector.component.js","sourceRoot":"","sources":["dso-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EAET,YAAY,EACZ,KAAK,EAEL,MAAM,EACN,SAAS,EACT,YAAY,EACb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAgBjF;IA0CE,8BAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QA9BhD;;WAEG;QACO,aAAQ,GAA+B,IAAI,YAAY,EAAE,CAAC;QAEpE;;WAEG;QACI,UAAK,GAAgB,IAAI,WAAW,EAAE,CAAC;QAE9C;;WAEG;QACK,sBAAiB,GAAG,EAAE,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAS,CAAC;QAYvF;;WAEG;QACH,iBAAY,GAAG,GAAG,CAAC;IAGnB,CAAC;IAED;;;OAGG;IACH,uCAAQ,GAAR;QAAA,iBAiBC;QAhBC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY;aACxC,IAAI,CACH,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAC/B,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAC5B,SAAS,CAAC,UAAC,KAAK;YACZ,OAAO,KAAI,CAAC,aAAa,CAAC,MAAM,CAC9B,IAAI,sBAAsB,CAAC;gBACzB,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,KAAI,CAAC,IAAI;gBAClB,UAAU,EAAE,KAAI,CAAC,iBAAiB;aACnC,CAAC,CACH,CAAA;QACH,CAAC,CACF,CACF,CAAA;IACL,CAAC;IAED;;OAEG;IACH,iDAAkB,GAAlB;QACE,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;SAC/C;IACH,CAAC;IAtEQ;QAAR,KAAK,EAAE;;8DAAsB;IAKrB;QAAR,KAAK,EAAE;;sDAAwB;IAKtB;QAAT,MAAM,EAAE;0CAAW,YAAY;0DAAoC;IAoBlC;QAAjC,YAAY,CAAC,kBAAkB,CAAC;0CAAe,SAAS;8DAAa;IAnC3D,oBAAoB;QAVhC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,gDAAgD;YAChD,WAAW,EAAE,+BAA+B;SAC7C,CAAC;QAEF;;;WAGG;;iDA2CkC,aAAa;OA1CrC,oBAAoB,CA4EhC;IAAD,2BAAC;CAAA,AA5ED,IA4EC;SA5EY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js new file mode 100644 index 0000000000..61f326cb9e --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js @@ -0,0 +1,46 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; +import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; +import { COLLECTION_PARENT_PARAMETER, getCollectionCreatePath } from '../../../../+collection-page/collection-page-routing.module'; +import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; +/** + * Component to wrap a list of existing communities inside a modal + * Used to choose a community from to create a new collection in + */ +var CreateCollectionParentSelectorComponent = /** @class */ (function (_super) { + tslib_1.__extends(CreateCollectionParentSelectorComponent, _super); + function CreateCollectionParentSelectorComponent(activeModal, route, router) { + var _this = _super.call(this, activeModal, route) || this; + _this.activeModal = activeModal; + _this.route = route; + _this.router = router; + _this.objectType = DSpaceObjectType.COLLECTION; + _this.selectorType = DSpaceObjectType.COMMUNITY; + _this.action = SelectorActionType.CREATE; + return _this; + } + /** + * Navigate to the collection create page + */ + CreateCollectionParentSelectorComponent.prototype.navigate = function (dso) { + var _a; + var navigationExtras = { + queryParams: (_a = {}, + _a[COLLECTION_PARENT_PARAMETER] = dso.uuid, + _a) + }; + this.router.navigate([getCollectionCreatePath()], navigationExtras); + }; + CreateCollectionParentSelectorComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-create-collection-parent-selector', + templateUrl: '../dso-selector-modal-wrapper.component.html', + }), + tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) + ], CreateCollectionParentSelectorComponent); + return CreateCollectionParentSelectorComponent; +}(DSOSelectorModalWrapperComponent)); +export { CreateCollectionParentSelectorComponent }; +//# sourceMappingURL=create-collection-parent-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js.map new file mode 100644 index 0000000000..ef8120bf1a --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"create-collection-parent-selector.component.js","sourceRoot":"","sources":["create-collection-parent-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAoB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACxB,MAAM,6DAA6D,CAAC;AACrE,OAAO,EAAE,gCAAgC,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE/G;;;GAGG;AAMH;IAA6D,mEAAgC;IAK3F,iDAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC;QACzC,kBAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC;QAC1C,YAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;;IAInC,CAAC;IAED;;OAEG;IACH,0DAAQ,GAAR,UAAS,GAAiB;;QACxB,IAAM,gBAAgB,GAAqB;YACzC,WAAW;gBACT,GAAC,2BAA2B,IAAG,GAAG,CAAC,IAAI;mBACxC;SACF,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,uBAAuB,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACtE,CAAC;IAnBU,uCAAuC;QAJnD,SAAS,CAAC;YACT,QAAQ,EAAE,sCAAsC;YAChD,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,uCAAuC,CAoBnD;IAAD,8CAAC;CAAA,AApBD,CAA6D,gCAAgC,GAoB5F;SApBY,uCAAuC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js new file mode 100644 index 0000000000..7fb734db6b --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js @@ -0,0 +1,53 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; +import { hasValue } from '../../../empty.util'; +import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; +import { COMMUNITY_PARENT_PARAMETER, getCommunityCreatePath } from '../../../../+community-page/community-page-routing.module'; +import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; +/** + * Component to wrap a button - for top communities - + * and a list of parent communities - for sub communities + * inside a modal + * Used to create a new community + */ +var CreateCommunityParentSelectorComponent = /** @class */ (function (_super) { + tslib_1.__extends(CreateCommunityParentSelectorComponent, _super); + function CreateCommunityParentSelectorComponent(activeModal, route, router) { + var _this = _super.call(this, activeModal, route) || this; + _this.activeModal = activeModal; + _this.route = route; + _this.router = router; + _this.objectType = DSpaceObjectType.COMMUNITY; + _this.selectorType = DSpaceObjectType.COMMUNITY; + _this.action = SelectorActionType.CREATE; + return _this; + } + /** + * Navigate to the community create page + */ + CreateCommunityParentSelectorComponent.prototype.navigate = function (dso) { + var _a; + var navigationExtras = {}; + if (hasValue(dso)) { + navigationExtras = { + queryParams: (_a = {}, + _a[COMMUNITY_PARENT_PARAMETER] = dso.uuid, + _a) + }; + } + this.router.navigate([getCommunityCreatePath()], navigationExtras); + }; + CreateCommunityParentSelectorComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-create-community-parent-selector', + styleUrls: ['./create-community-parent-selector.component.scss'], + templateUrl: './create-community-parent-selector.component.html', + }), + tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) + ], CreateCommunityParentSelectorComponent); + return CreateCommunityParentSelectorComponent; +}(DSOSelectorModalWrapperComponent)); +export { CreateCommunityParentSelectorComponent }; +//# sourceMappingURL=create-community-parent-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js.map new file mode 100644 index 0000000000..2a822302be --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"create-community-parent-selector.component.js","sourceRoot":"","sources":["create-community-parent-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAoB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACvB,MAAM,2DAA2D,CAAC;AACnE,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAEjD;;;;;GAKG;AAOH;IAA4D,kEAAgC;IAK1F,gDAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC;QACxC,kBAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC;QAC1C,YAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;;IAInC,CAAC;IAED;;OAEG;IACH,yDAAQ,GAAR,UAAS,GAAiB;;QACxB,IAAI,gBAAgB,GAAqB,EAAE,CAAC;QAC5C,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE;YACjB,gBAAgB,GAAG;gBACjB,WAAW;oBACT,GAAC,0BAA0B,IAAG,GAAG,CAAC,IAAI;uBACvC;aACF,CAAC;SACH;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,sBAAsB,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACrE,CAAC;IAtBU,sCAAsC;QALlD,SAAS,CAAC;YACT,QAAQ,EAAE,qCAAqC;YAC/C,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,WAAW,EAAE,mDAAmD;SACjE,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,sCAAsC,CAuBlD;IAAD,6CAAC;CAAA,AAvBD,CAA4D,gCAAgC,GAuB3F;SAvBY,sCAAsC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js new file mode 100644 index 0000000000..e46879ef7f --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js @@ -0,0 +1,40 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; +import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; +import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; +/** + * Component to wrap a list of existing collections inside a modal + * Used to choose a collection from to create a new item in + */ +var CreateItemParentSelectorComponent = /** @class */ (function (_super) { + tslib_1.__extends(CreateItemParentSelectorComponent, _super); + function CreateItemParentSelectorComponent(activeModal, route, router) { + var _this = _super.call(this, activeModal, route) || this; + _this.activeModal = activeModal; + _this.route = route; + _this.router = router; + _this.objectType = DSpaceObjectType.ITEM; + _this.selectorType = DSpaceObjectType.COLLECTION; + _this.action = SelectorActionType.CREATE; + return _this; + } + /** + * Navigate to the item create page + */ + CreateItemParentSelectorComponent.prototype.navigate = function (dso) { + // There's no submit path per collection yet... + }; + CreateItemParentSelectorComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-create-item-parent-selector', + // styleUrls: ['./create-item-parent-selector.component.scss'], + templateUrl: '../dso-selector-modal-wrapper.component.html', + }), + tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) + ], CreateItemParentSelectorComponent); + return CreateItemParentSelectorComponent; +}(DSOSelectorModalWrapperComponent)); +export { CreateItemParentSelectorComponent }; +//# sourceMappingURL=create-item-parent-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js.map new file mode 100644 index 0000000000..6fc6098720 --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"create-item-parent-selector.component.js","sourceRoot":"","sources":["create-item-parent-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,gCAAgC,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE/G;;;GAGG;AAOH;IAAuD,6DAAgC;IAKrF,2CAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACnC,kBAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC;QAC3C,YAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;;IAInC,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR,UAAS,GAAiB;QACzB,+CAA+C;IAChD,CAAC;IAdU,iCAAiC;QAL7C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,+DAA+D;YAC/D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,iCAAiC,CAe7C;IAAD,wCAAC;CAAA,AAfD,CAAuD,gCAAgC,GAetF;SAfY,iCAAiC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js b/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js new file mode 100644 index 0000000000..a33a35c459 --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js @@ -0,0 +1,52 @@ +import * as tslib_1 from "tslib"; +import { Injectable, Input } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { Observable } from 'rxjs'; +import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; +import { map } from 'rxjs/operators'; +export var SelectorActionType; +(function (SelectorActionType) { + SelectorActionType["CREATE"] = "create"; + SelectorActionType["EDIT"] = "edit"; +})(SelectorActionType || (SelectorActionType = {})); +/** + * Abstract base class that represents a wrapper for modal content used to select a DSpace Object + */ +var DSOSelectorModalWrapperComponent = /** @class */ (function () { + function DSOSelectorModalWrapperComponent(activeModal, route) { + this.activeModal = activeModal; + this.route = route; + } + /** + * Get de current page's DSO based on the selectorType + */ + DSOSelectorModalWrapperComponent.prototype.ngOnInit = function () { + var typeString = this.selectorType.toString().toLowerCase(); + this.dsoRD$ = this.route.root.firstChild.firstChild.data.pipe(map(function (data) { return data[typeString]; })); + }; + /** + * Method called when an object has been selected + * @param dso The selected DSpaceObject + */ + DSOSelectorModalWrapperComponent.prototype.selectObject = function (dso) { + this.close(); + this.navigate(dso); + }; + /** + * Close the modal + */ + DSOSelectorModalWrapperComponent.prototype.close = function () { + this.activeModal.close(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Observable) + ], DSOSelectorModalWrapperComponent.prototype, "dsoRD$", void 0); + DSOSelectorModalWrapperComponent = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute]) + ], DSOSelectorModalWrapperComponent); + return DSOSelectorModalWrapperComponent; +}()); +export { DSOSelectorModalWrapperComponent }; +//# sourceMappingURL=dso-selector-modal-wrapper.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js.map b/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js.map new file mode 100644 index 0000000000..cca46daeae --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dso-selector-modal-wrapper.component.js","sourceRoot":"","sources":["dso-selector-modal-wrapper.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAGrC,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,uCAAiB,CAAA;IACjB,mCAAa,CAAA;AACf,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED;;GAEG;AAGH;IAqBE,0CAAsB,WAA2B,EAAY,KAAqB;QAA5D,gBAAW,GAAX,WAAW,CAAgB;QAAY,UAAK,GAAL,KAAK,CAAgB;IAClF,CAAC;IAED;;OAEG;IACH,mDAAQ,GAAR;QACE,IAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;QAC9D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,UAAU,CAAC,EAAhB,CAAgB,CAAC,CAAC,CAAC;IACjG,CAAC;IAED;;;OAGG;IACH,uDAAY,GAAZ,UAAa,GAAiB;QAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAQD;;OAEG;IACH,gDAAK,GAAL;QACE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAhDQ;QAAR,KAAK,EAAE;0CAAS,UAAU;oEAA2B;IAJlC,gCAAgC;QADrD,UAAU,EAAE;iDAsBwB,cAAc,EAAmB,cAAc;OArB9D,gCAAgC,CAqDrD;IAAD,uCAAC;CAAA,AArDD,IAqDC;SArDqB,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js new file mode 100644 index 0000000000..c9755f270b --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js @@ -0,0 +1,40 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; +import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; +import { getCollectionEditPath } from '../../../../+collection-page/collection-page-routing.module'; +import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; +/** + * Component to wrap a list of existing collections inside a modal + * Used to choose a collection from to edit + */ +var EditCollectionSelectorComponent = /** @class */ (function (_super) { + tslib_1.__extends(EditCollectionSelectorComponent, _super); + function EditCollectionSelectorComponent(activeModal, route, router) { + var _this = _super.call(this, activeModal, route) || this; + _this.activeModal = activeModal; + _this.route = route; + _this.router = router; + _this.objectType = DSpaceObjectType.COLLECTION; + _this.selectorType = DSpaceObjectType.COLLECTION; + _this.action = SelectorActionType.EDIT; + return _this; + } + /** + * Navigate to the collection edit page + */ + EditCollectionSelectorComponent.prototype.navigate = function (dso) { + this.router.navigate([getCollectionEditPath(dso.uuid)]); + }; + EditCollectionSelectorComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-edit-collection-selector', + templateUrl: '../dso-selector-modal-wrapper.component.html', + }), + tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) + ], EditCollectionSelectorComponent); + return EditCollectionSelectorComponent; +}(DSOSelectorModalWrapperComponent)); +export { EditCollectionSelectorComponent }; +//# sourceMappingURL=edit-collection-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js.map new file mode 100644 index 0000000000..c08b556df3 --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-collection-selector.component.js","sourceRoot":"","sources":["edit-collection-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AACpG,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAEjD;;;GAGG;AAMH;IAAqD,2DAAgC;IAKnF,yCAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC;QACzC,kBAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC;QAC3C,YAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC;;IAIjC,CAAC;IAED;;OAEG;IACH,kDAAQ,GAAR,UAAS,GAAiB;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;IAdU,+BAA+B;QAJ3C,SAAS,CAAC;YACT,QAAQ,EAAE,6BAA6B;YACvC,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,+BAA+B,CAe3C;IAAD,sCAAC;CAAA,AAfD,CAAqD,gCAAgC,GAepF;SAfY,+BAA+B"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js new file mode 100644 index 0000000000..001f8ce81e --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js @@ -0,0 +1,40 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; +import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; +import { getCommunityEditPath } from '../../../../+community-page/community-page-routing.module'; +import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; +/** + * Component to wrap a list of existing communities inside a modal + * Used to choose a community from to edit + */ +var EditCommunitySelectorComponent = /** @class */ (function (_super) { + tslib_1.__extends(EditCommunitySelectorComponent, _super); + function EditCommunitySelectorComponent(activeModal, route, router) { + var _this = _super.call(this, activeModal, route) || this; + _this.activeModal = activeModal; + _this.route = route; + _this.router = router; + _this.objectType = DSpaceObjectType.COMMUNITY; + _this.selectorType = DSpaceObjectType.COMMUNITY; + _this.action = SelectorActionType.EDIT; + return _this; + } + /** + * Navigate to the community edit page + */ + EditCommunitySelectorComponent.prototype.navigate = function (dso) { + this.router.navigate([getCommunityEditPath(dso.uuid)]); + }; + EditCommunitySelectorComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-edit-community-selector', + templateUrl: '../dso-selector-modal-wrapper.component.html', + }), + tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) + ], EditCommunitySelectorComponent); + return EditCommunitySelectorComponent; +}(DSOSelectorModalWrapperComponent)); +export { EditCommunitySelectorComponent }; +//# sourceMappingURL=edit-community-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js.map new file mode 100644 index 0000000000..22f6db836b --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-community-selector.component.js","sourceRoot":"","sources":["edit-community-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2DAA2D,CAAC;AACjG,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAEjD;;;GAGG;AAOH;IAAoD,0DAAgC;IAKlF,wCAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC;QACxC,kBAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC;QAC1C,YAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC;;IAIjC,CAAC;IAED;;OAEG;IACH,iDAAQ,GAAR,UAAS,GAAiB;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAdU,8BAA8B;QAL1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAOmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,8BAA8B,CAe1C;IAAD,qCAAC;CAAA,AAfD,CAAoD,gCAAgC,GAenF;SAfY,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js new file mode 100644 index 0000000000..e0b70e49cd --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js @@ -0,0 +1,40 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; +import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; +import { getItemEditPath } from '../../../../+item-page/item-page-routing.module'; +import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; +/** + * Component to wrap a list of existing items inside a modal + * Used to choose an item from to edit + */ +var EditItemSelectorComponent = /** @class */ (function (_super) { + tslib_1.__extends(EditItemSelectorComponent, _super); + function EditItemSelectorComponent(activeModal, route, router) { + var _this = _super.call(this, activeModal, route) || this; + _this.activeModal = activeModal; + _this.route = route; + _this.router = router; + _this.objectType = DSpaceObjectType.ITEM; + _this.selectorType = DSpaceObjectType.ITEM; + _this.action = SelectorActionType.EDIT; + return _this; + } + /** + * Navigate to the item edit page + */ + EditItemSelectorComponent.prototype.navigate = function (dso) { + this.router.navigate([getItemEditPath(dso.uuid)]); + }; + EditItemSelectorComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-edit-item-selector', + templateUrl: '../dso-selector-modal-wrapper.component.html', + }), + tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) + ], EditItemSelectorComponent); + return EditItemSelectorComponent; +}(DSOSelectorModalWrapperComponent)); +export { EditItemSelectorComponent }; +//# sourceMappingURL=edit-item-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js.map new file mode 100644 index 0000000000..db6649773b --- /dev/null +++ b/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"edit-item-selector.component.js","sourceRoot":"","sources":["edit-item-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,gCAAgC,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE/G;;;GAGG;AAMH;IAA+C,qDAAgC;IAK7E,mCAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACnC,kBAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACrC,YAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC;;IAIjC,CAAC;IAED;;OAEG;IACH,4CAAQ,GAAR,UAAS,GAAiB;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAdU,yBAAyB;QAJrC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,yBAAyB,CAerC;IAAD,gCAAC;CAAA,AAfD,CAA+C,gCAAgC,GAe9E;SAfY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/empty.util.js b/src/app/shared/empty.util.js new file mode 100644 index 0000000000..36de3a2845 --- /dev/null +++ b/src/app/shared/empty.util.js @@ -0,0 +1,168 @@ +import { filter, map } from 'rxjs/operators'; +/** + * Returns true if the passed value is null. + * isNull(); // false + * isNull(null); // true + * isNull(undefined); // false + * isNull(''); // false + * isNull({}); // false + * isNull([]); // false + * isNull(function() {}); // false + */ +export function isNull(obj) { + return obj === null; +} +/** + * Returns true if the passed value is not null. + * isNotNull(); // true + * isNotNull(null); // false + * isNotNull(undefined); // true + * isNotNull(''); // true + * isNotNull({}); // true + * isNotNull([]); // true + * isNotNull(function() {}); // true + */ +export function isNotNull(obj) { + return obj !== null; +} +/** + * Returns true if the passed value is undefined. + * isUndefined(); // true + * isUndefined(null); // false + * isUndefined(undefined); // true + * isUndefined(''); // false + * isUndefined({}); // false + * isUndefined([]); // false + * isUndefined(function() {}); // false + */ +export function isUndefined(obj) { + return obj === undefined; +} +/** + * Returns true if the passed value is not undefined. + * isNotUndefined(); // false + * isNotUndefined(null); // true + * isNotUndefined(undefined); // false + * isNotUndefined(''); // true + * isNotUndefined({}); // true + * isNotUndefined([]); // true + * isNotUndefined(function() {}); // true + */ +export function isNotUndefined(obj) { + return obj !== undefined; +} +/** + * Returns true if the passed value is null or undefined. + * hasNoValue(); // true + * hasNoValue(null); // true + * hasNoValue(undefined); // true + * hasNoValue(''); // false + * hasNoValue({}); // false + * hasNoValue([]); // false + * hasNoValue(function() {}); // false + */ +export function hasNoValue(obj) { + return isUndefined(obj) || isNull(obj); +} +/** + * Returns true if the passed value is not null or undefined. + * hasValue(); // false + * hasValue(null); // false + * hasValue(undefined); // false + * hasValue(''); // true + * hasValue({}); // true + * hasValue([]); // true + * hasValue(function() {}); // true + */ +export function hasValue(obj) { + return isNotUndefined(obj) && isNotNull(obj); +} +/** + * Filter items emitted by the source Observable by only emitting those for + * which hasValue is true + */ +export var hasValueOperator = function () { + return function (source) { + return source.pipe(filter(function (obj) { return hasValue(obj); })); + }; +}; +/** + * Verifies that a value is `null` or an empty string, empty array, + * or empty function. + * isEmpty(); // true + * isEmpty(null); // true + * isEmpty(undefined); // true + * isEmpty(''); // true + * isEmpty([]); // true + * isEmpty({}); // true + * isEmpty('Adam Hawkins'); // false + * isEmpty([0,1,2]); // false + * isEmpty('\n\t'); // false + * isEmpty(' '); // false + */ +export function isEmpty(obj) { + if (hasNoValue(obj)) { + return true; + } + if (typeof obj.size === 'number') { + return !obj.size; + } + var objectType = typeof obj; + if (objectType === 'object') { + var size = obj.size; + if (typeof size === 'number') { + return !size; + } + } + if (typeof obj.length === 'number' && objectType !== 'function') { + return !obj.length; + } + if (objectType === 'object') { + if (Object.keys(obj).length === 0) { + return true; + } + var length_1 = obj.length; + if (typeof length_1 === 'number') { + return !length_1; + } + } + return false; +} +/** + * Verifies that a value is not `null`, an empty string, empty array, + * or empty function. + * isNotEmpty(); // false + * isNotEmpty(null); // false + * isNotEmpty(undefined); // false + * isNotEmpty(''); // false + * isNotEmpty([]); // false + * isNotEmpty({}); // false + * isNotEmpty('Adam Hawkins'); // true + * isNotEmpty([0,1,2]); // true + * isNotEmpty('\n\t'); // true + * isNotEmpty(' '); // true + */ +export function isNotEmpty(obj) { + return !isEmpty(obj); +} +/** + * Filter items emitted by the source Observable by only emitting those for + * which isNotEmpty is true + */ +export var isNotEmptyOperator = function () { + return function (source) { + return source.pipe(filter(function (obj) { return isNotEmpty(obj); })); + }; +}; +/** + * Tests each value emitted by the source Observable, + * let's arrays pass through, turns other values in to + * empty arrays. Used to be able to chain array operators + * on something that may not have a value + */ +export var ensureArrayHasValue = function () { + return function (source) { + return source.pipe(map(function (arr) { return Array.isArray(arr) ? arr : []; })); + }; +}; +//# sourceMappingURL=empty.util.js.map \ No newline at end of file diff --git a/src/app/shared/empty.util.js.map b/src/app/shared/empty.util.js.map new file mode 100644 index 0000000000..c6ce45aee6 --- /dev/null +++ b/src/app/shared/empty.util.js.map @@ -0,0 +1 @@ +{"version":3,"file":"empty.util.js","sourceRoot":"","sources":["empty.util.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/error/error.component.js b/src/app/shared/error/error.component.js new file mode 100644 index 0000000000..3734773afb --- /dev/null +++ b/src/app/shared/error/error.component.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { TranslateService } from '@ngx-translate/core'; +var ErrorComponent = /** @class */ (function () { + function ErrorComponent(translate) { + this.translate = translate; + this.message = 'Error...'; + } + ErrorComponent.prototype.ngOnInit = function () { + var _this = this; + if (this.message === undefined) { + this.subscription = this.translate.get('error.default').subscribe(function (message) { + _this.message = message; + }); + } + }; + ErrorComponent.prototype.ngOnDestroy = function () { + if (this.subscription !== undefined) { + this.subscription.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ErrorComponent.prototype, "message", void 0); + ErrorComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-error', + styleUrls: ['./error.component.scss'], + templateUrl: './error.component.html' + }), + tslib_1.__metadata("design:paramtypes", [TranslateService]) + ], ErrorComponent); + return ErrorComponent; +}()); +export { ErrorComponent }; +//# sourceMappingURL=error.component.js.map \ No newline at end of file diff --git a/src/app/shared/error/error.component.js.map b/src/app/shared/error/error.component.js.map new file mode 100644 index 0000000000..97f842e63a --- /dev/null +++ b/src/app/shared/error/error.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"error.component.js","sourceRoot":"","sources":["error.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AASvD;IAME,wBAAoB,SAA2B;QAA3B,cAAS,GAAT,SAAS,CAAkB;QAJtC,YAAO,GAAG,UAAU,CAAC;IAM9B,CAAC;IAED,iCAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,UAAC,OAAe;gBAChF,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACzB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,oCAAW,GAAX;QACE,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACjC;IACH,CAAC;IApBQ;QAAR,KAAK,EAAE;;mDAAsB;IAFnB,cAAc;QAL1B,SAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,CAAC,wBAAwB,CAAC;YACrC,WAAW,EAAE,wBAAwB;SACtC,CAAC;iDAO+B,gBAAgB;OANpC,cAAc,CAuB1B;IAAD,qBAAC;CAAA,AAvBD,IAuBC;SAvBY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js new file mode 100644 index 0000000000..c28292c919 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js @@ -0,0 +1,202 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component, ComponentFactoryResolver, ContentChildren, EventEmitter, Input, Output, QueryList, ViewChild, ViewContainerRef } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { DYNAMIC_FORM_CONTROL_TYPE_ARRAY, DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX, DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP, DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER, DYNAMIC_FORM_CONTROL_TYPE_GROUP, DYNAMIC_FORM_CONTROL_TYPE_INPUT, DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP, DYNAMIC_FORM_CONTROL_TYPE_SELECT, DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA, DYNAMIC_FORM_CONTROL_TYPE_TIMEPICKER, DynamicFormControlContainerComponent, DynamicFormLayoutService, DynamicFormValidationService, DynamicTemplateDirective, } from '@ng-dynamic-forms/core'; +import { DynamicNGBootstrapCalendarComponent, DynamicNGBootstrapCheckboxComponent, DynamicNGBootstrapCheckboxGroupComponent, DynamicNGBootstrapInputComponent, DynamicNGBootstrapRadioGroupComponent, DynamicNGBootstrapSelectComponent, DynamicNGBootstrapTextAreaComponent, DynamicNGBootstrapTimePickerComponent } from '@ng-dynamic-forms/ui-ng-bootstrap'; +import { TranslateService } from '@ngx-translate/core'; +import { DYNAMIC_FORM_CONTROL_TYPE_TYPEAHEAD } from './models/typeahead/dynamic-typeahead.model'; +import { DYNAMIC_FORM_CONTROL_TYPE_SCROLLABLE_DROPDOWN } from './models/scrollable-dropdown/dynamic-scrollable-dropdown.model'; +import { DYNAMIC_FORM_CONTROL_TYPE_TAG } from './models/tag/dynamic-tag.model'; +import { DYNAMIC_FORM_CONTROL_TYPE_DSDATEPICKER } from './models/date-picker/date-picker.model'; +import { DYNAMIC_FORM_CONTROL_TYPE_LOOKUP } from './models/lookup/dynamic-lookup.model'; +import { DynamicListCheckboxGroupModel } from './models/list/dynamic-list-checkbox-group.model'; +import { DynamicListRadioGroupModel } from './models/list/dynamic-list-radio-group.model'; +import { isNotEmpty, isNotUndefined } from '../../../empty.util'; +import { DYNAMIC_FORM_CONTROL_TYPE_LOOKUP_NAME } from './models/lookup/dynamic-lookup-name.model'; +import { DsDynamicTagComponent } from './models/tag/dynamic-tag.component'; +import { DsDatePickerComponent } from './models/date-picker/date-picker.component'; +import { DsDynamicListComponent } from './models/list/dynamic-list.component'; +import { DsDynamicTypeaheadComponent } from './models/typeahead/dynamic-typeahead.component'; +import { DsDynamicScrollableDropdownComponent } from './models/scrollable-dropdown/dynamic-scrollable-dropdown.component'; +import { DsDynamicLookupComponent } from './models/lookup/dynamic-lookup.component'; +import { DsDynamicFormGroupComponent } from './models/form-group/dynamic-form-group.component'; +import { DsDynamicFormArrayComponent } from './models/array-group/dynamic-form-array.component'; +import { DsDynamicRelationGroupComponent } from './models/relation-group/dynamic-relation-group.components'; +import { DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP } from './models/relation-group/dynamic-relation-group.model'; +import { DsDatePickerInlineComponent } from './models/date-picker-inline/dynamic-date-picker-inline.component'; +export function dsDynamicFormControlMapFn(model) { + switch (model.type) { + case DYNAMIC_FORM_CONTROL_TYPE_ARRAY: + return DsDynamicFormArrayComponent; + case DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX: + return DynamicNGBootstrapCheckboxComponent; + case DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP: + return (model instanceof DynamicListCheckboxGroupModel) ? DsDynamicListComponent : DynamicNGBootstrapCheckboxGroupComponent; + case DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER: + var datepickerModel = model; + return datepickerModel.inline ? DynamicNGBootstrapCalendarComponent : DsDatePickerInlineComponent; + case DYNAMIC_FORM_CONTROL_TYPE_GROUP: + return DsDynamicFormGroupComponent; + case DYNAMIC_FORM_CONTROL_TYPE_INPUT: + return DynamicNGBootstrapInputComponent; + case DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP: + return (model instanceof DynamicListRadioGroupModel) ? DsDynamicListComponent : DynamicNGBootstrapRadioGroupComponent; + case DYNAMIC_FORM_CONTROL_TYPE_SELECT: + return DynamicNGBootstrapSelectComponent; + case DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA: + return DynamicNGBootstrapTextAreaComponent; + case DYNAMIC_FORM_CONTROL_TYPE_TIMEPICKER: + return DynamicNGBootstrapTimePickerComponent; + case DYNAMIC_FORM_CONTROL_TYPE_TYPEAHEAD: + return DsDynamicTypeaheadComponent; + case DYNAMIC_FORM_CONTROL_TYPE_SCROLLABLE_DROPDOWN: + return DsDynamicScrollableDropdownComponent; + case DYNAMIC_FORM_CONTROL_TYPE_TAG: + return DsDynamicTagComponent; + case DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP: + return DsDynamicRelationGroupComponent; + case DYNAMIC_FORM_CONTROL_TYPE_DSDATEPICKER: + return DsDatePickerComponent; + case DYNAMIC_FORM_CONTROL_TYPE_LOOKUP: + return DsDynamicLookupComponent; + case DYNAMIC_FORM_CONTROL_TYPE_LOOKUP_NAME: + return DsDynamicLookupComponent; + default: + return null; + } +} +var DsDynamicFormControlContainerComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicFormControlContainerComponent, _super); + function DsDynamicFormControlContainerComponent(componentFactoryResolver, layoutService, validationService, translateService) { + var _this = _super.call(this, componentFactoryResolver, layoutService, validationService) || this; + _this.componentFactoryResolver = componentFactoryResolver; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.translateService = translateService; + _this.asBootstrapFormGroup = true; + _this.bindId = true; + _this.context = null; + _this.hasErrorMessaging = false; + _this.layout = null; + /* tslint:disable:no-output-rename */ + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.customEvent = new EventEmitter(); + return _this; + } + Object.defineProperty(DsDynamicFormControlContainerComponent.prototype, "componentType", { + get: function () { + return this.layoutService.getCustomComponentType(this.model) || dsDynamicFormControlMapFn(this.model); + }, + enumerable: true, + configurable: true + }); + DsDynamicFormControlContainerComponent.prototype.ngOnChanges = function (changes) { + if (changes) { + _super.prototype.ngOnChanges.call(this, changes); + if (this.model && this.model.placeholder) { + this.model.placeholder = this.translateService.instant(this.model.placeholder); + } + } + }; + DsDynamicFormControlContainerComponent.prototype.ngDoCheck = function () { + if (isNotUndefined(this.showErrorMessagesPreviousStage) && this.showErrorMessagesPreviousStage !== this.showErrorMessages) { + this.showErrorMessagesPreviousStage = this.showErrorMessages; + this.forceShowErrorDetection(); + } + }; + DsDynamicFormControlContainerComponent.prototype.ngAfterViewInit = function () { + this.showErrorMessagesPreviousStage = this.showErrorMessages; + }; + /** + * Since Form Control Components created dynamically have 'OnPush' change detection strategy, + * changes are not propagated. So use this method to force an update + */ + DsDynamicFormControlContainerComponent.prototype.forceShowErrorDetection = function () { + if (this.showErrorMessages) { + this.destroyFormControlComponent(); + this.createFormControlComponent(); + } + }; + DsDynamicFormControlContainerComponent.prototype.onChangeLanguage = function (event) { + if (isNotEmpty(this.model.value)) { + this.onChange(event); + } + }; + tslib_1.__decorate([ + ContentChildren(DynamicTemplateDirective), + tslib_1.__metadata("design:type", QueryList) + ], DsDynamicFormControlContainerComponent.prototype, "contentTemplateList", void 0); + tslib_1.__decorate([ + Input('templates'), + tslib_1.__metadata("design:type", QueryList) + ], DsDynamicFormControlContainerComponent.prototype, "inputTemplateList", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], DsDynamicFormControlContainerComponent.prototype, "formId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormControlContainerComponent.prototype, "asBootstrapFormGroup", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormControlContainerComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormControlContainerComponent.prototype, "context", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicFormControlContainerComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormControlContainerComponent.prototype, "hasErrorMessaging", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormControlContainerComponent.prototype, "layout", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormControlContainerComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output('dfBlur'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormControlContainerComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output('dfChange'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormControlContainerComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output('dfFocus'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormControlContainerComponent.prototype, "focus", void 0); + tslib_1.__decorate([ + Output('ngbEvent'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormControlContainerComponent.prototype, "customEvent", void 0); + tslib_1.__decorate([ + ViewChild('componentViewContainer', { read: ViewContainerRef }), + tslib_1.__metadata("design:type", ViewContainerRef) + ], DsDynamicFormControlContainerComponent.prototype, "componentViewContainerRef", void 0); + DsDynamicFormControlContainerComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-form-control-container', + styleUrls: ['./ds-dynamic-form-control-container.component.scss'], + templateUrl: './ds-dynamic-form-control-container.component.html', + changeDetection: ChangeDetectionStrategy.Default + }), + tslib_1.__metadata("design:paramtypes", [ComponentFactoryResolver, + DynamicFormLayoutService, + DynamicFormValidationService, + TranslateService]) + ], DsDynamicFormControlContainerComponent); + return DsDynamicFormControlContainerComponent; +}(DynamicFormControlContainerComponent)); +export { DsDynamicFormControlContainerComponent }; +//# sourceMappingURL=ds-dynamic-form-control-container.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js.map new file mode 100644 index 0000000000..a7c74cfa18 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ds-dynamic-form-control-container.component.js","sourceRoot":"","sources":["ds-dynamic-form-control-container.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js new file mode 100644 index 0000000000..b1ec2001f7 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js @@ -0,0 +1,71 @@ +import * as tslib_1 from "tslib"; +import { Component, ContentChildren, EventEmitter, Input, Output, QueryList, ViewChildren } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { DynamicFormComponent, DynamicFormLayoutService, DynamicTemplateDirective, } from '@ng-dynamic-forms/core'; +import { DsDynamicFormControlContainerComponent } from './ds-dynamic-form-control-container.component'; +import { FormBuilderService } from '../form-builder.service'; +var DsDynamicFormComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicFormComponent, _super); + function DsDynamicFormComponent(formService, layoutService) { + var _this = _super.call(this, formService, layoutService) || this; + _this.formService = formService; + _this.layoutService = layoutService; + _this.formLayout = null; + /* tslint:disable:no-output-rename */ + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.customEvent = new EventEmitter(); + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], DsDynamicFormComponent.prototype, "formId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicFormComponent.prototype, "formGroup", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], DsDynamicFormComponent.prototype, "formModel", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormComponent.prototype, "formLayout", void 0); + tslib_1.__decorate([ + Output('dfBlur'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output('dfChange'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output('dfFocus'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormComponent.prototype, "focus", void 0); + tslib_1.__decorate([ + Output('ngbEvent'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormComponent.prototype, "customEvent", void 0); + tslib_1.__decorate([ + ContentChildren(DynamicTemplateDirective), + tslib_1.__metadata("design:type", QueryList) + ], DsDynamicFormComponent.prototype, "templates", void 0); + tslib_1.__decorate([ + ViewChildren(DsDynamicFormControlContainerComponent), + tslib_1.__metadata("design:type", QueryList) + ], DsDynamicFormComponent.prototype, "components", void 0); + DsDynamicFormComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-form', + templateUrl: './ds-dynamic-form.component.html' + }), + tslib_1.__metadata("design:paramtypes", [FormBuilderService, DynamicFormLayoutService]) + ], DsDynamicFormComponent); + return DsDynamicFormComponent; +}(DynamicFormComponent)); +export { DsDynamicFormComponent }; +//# sourceMappingURL=ds-dynamic-form.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js.map new file mode 100644 index 0000000000..e2d1e7d8a7 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ds-dynamic-form.component.js","sourceRoot":"","sources":["ds-dynamic-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EACL,oBAAoB,EAKpB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,sCAAsC,EAAE,MAAM,+CAA+C,CAAC;AACvG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAM7D;IAA4C,kDAAoB;IAkB9D,gCAAsB,WAA+B,EAAY,aAAuC;QAAxG,YACE,kBAAM,WAAW,EAAE,aAAa,CAAC,SAClC;QAFqB,iBAAW,GAAX,WAAW,CAAoB;QAAY,mBAAa,GAAb,aAAa,CAA0B;QAb/F,gBAAU,GAAG,IAAyB,CAAC;QAEhD,qCAAqC;QACnB,UAAI,GAA0C,IAAI,YAAY,EAA2B,CAAC;QACxF,YAAM,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC7F,WAAK,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC1F,iBAAW,GAA0C,IAAI,YAAY,EAA2B,CAAC;;IASrH,CAAC;IAlBQ;QAAR,KAAK,EAAE;;0DAAgB;IACf;QAAR,KAAK,EAAE;0CAAY,SAAS;6DAAC;IACrB;QAAR,KAAK,EAAE;;6DAAsC;IACrC;QAAR,KAAK,EAAE;;8DAAwC;IAG9B;QAAjB,MAAM,CAAC,QAAQ,CAAC;0CAAO,YAAY;wDAAwE;IACxF;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAS,YAAY;0DAAwE;IAC7F;QAAlB,MAAM,CAAC,SAAS,CAAC;0CAAQ,YAAY;yDAAwE;IAC1F;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAc,YAAY;+DAAwE;IAG1E;QAA1C,eAAe,CAAC,wBAAwB,CAAC;0CAAY,SAAS;6DAA2B;IAEpC;QAArD,YAAY,CAAC,sCAAsC,CAAC;0CAAa,SAAS;8DAAuC;IAhBvG,sBAAsB;QAJlC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,kCAAkC;SAChD,CAAC;iDAmBmC,kBAAkB,EAA2B,wBAAwB;OAlB7F,sBAAsB,CAsBlC;IAAD,6BAAC;CAAA,AAtBD,CAA4C,oBAAoB,GAsB/D;SAtBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js new file mode 100644 index 0000000000..1667e9808a --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js @@ -0,0 +1,67 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output, QueryList } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { DynamicFormArrayComponent, DynamicFormArrayModel, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +var DsDynamicFormArrayComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicFormArrayComponent, _super); + /* tslint:enable:no-output-rename */ + function DsDynamicFormArrayComponent(layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.bindId = true; + /* tslint:disable:no-output-rename */ + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.customEvent = new EventEmitter(); + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormArrayComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicFormArrayComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormArrayComponent.prototype, "layout", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", DynamicFormArrayModel) + ], DsDynamicFormArrayComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", QueryList) + ], DsDynamicFormArrayComponent.prototype, "templates", void 0); + tslib_1.__decorate([ + Output('dfBlur'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormArrayComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output('dfChange'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormArrayComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output('dfFocus'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormArrayComponent.prototype, "focus", void 0); + tslib_1.__decorate([ + Output('ngbEvent'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormArrayComponent.prototype, "customEvent", void 0); + DsDynamicFormArrayComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-form-array', + templateUrl: './dynamic-form-array.component.html' + }), + tslib_1.__metadata("design:paramtypes", [DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDynamicFormArrayComponent); + return DsDynamicFormArrayComponent; +}(DynamicFormArrayComponent)); +export { DsDynamicFormArrayComponent }; +//# sourceMappingURL=dynamic-form-array.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js.map new file mode 100644 index 0000000000..8e553fbae0 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-form-array.component.js","sourceRoot":"","sources":["dynamic-form-array.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EAGrB,wBAAwB,EACxB,4BAA4B,EAE7B,MAAM,wBAAwB,CAAC;AAMhC;IAAiD,uDAAyB;IAaxE,oCAAoC;IAEpC,qCAAsB,aAAuC,EACvC,iBAA+C;QADrE,YAGE,kBAAM,aAAa,EAAE,iBAAiB,CAAC,SACxC;QAJqB,mBAAa,GAAb,aAAa,CAA0B;QACvC,uBAAiB,GAAjB,iBAAiB,CAA8B;QAd5D,YAAM,GAAG,IAAI,CAAC;QAMvB,qCAAqC;QACnB,UAAI,GAA0C,IAAI,YAAY,EAA2B,CAAC;QACxF,YAAM,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC7F,WAAK,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC1F,iBAAW,GAAgD,IAAI,YAAY,EAAE,CAAC;;IAOlG,CAAC;IAjBQ;QAAR,KAAK,EAAE;;+DAAe;IACd;QAAR,KAAK,EAAE;0CAAQ,SAAS;8DAAC;IACjB;QAAR,KAAK,EAAE;;+DAA2B;IAC1B;QAAR,KAAK,EAAE;0CAAQ,qBAAqB;8DAAC;IAC7B;QAAR,KAAK,EAAE;0CAAY,SAAS;kEAAuC;IAGlD;QAAjB,MAAM,CAAC,QAAQ,CAAC;0CAAO,YAAY;6DAAwE;IACxF;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAS,YAAY;+DAAwE;IAC7F;QAAlB,MAAM,CAAC,SAAS,CAAC;0CAAQ,YAAY;8DAAwE;IAC1F;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAc,YAAY;oEAAqD;IAZvF,2BAA2B;QAJvC,SAAS,CAAC;YACP,QAAQ,EAAE,uBAAuB;YACjC,WAAW,EAAE,qCAAqC;SACrD,CAAC;iDAgBqC,wBAAwB;YACpB,4BAA4B;OAhB1D,2BAA2B,CAqBvC;IAAD,kCAAC;CAAA,AArBD,CAAiD,yBAAyB,GAqBzE;SArBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js new file mode 100644 index 0000000000..c2f9f1d92a --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js @@ -0,0 +1,63 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { NgbDatepicker, NgbDatepickerConfig } from '@ng-bootstrap/ng-bootstrap'; +import { DynamicDatePickerModel, DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +var DsDatePickerInlineComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDatePickerInlineComponent, _super); + function DsDatePickerInlineComponent(layoutService, validationService, config) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.config = config; + _this.bindId = true; + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDatePickerInlineComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDatePickerInlineComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDatePickerInlineComponent.prototype, "layout", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", DynamicDatePickerModel) + ], DsDatePickerInlineComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDatePickerInlineComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDatePickerInlineComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDatePickerInlineComponent.prototype, "focus", void 0); + tslib_1.__decorate([ + ViewChild(NgbDatepicker), + tslib_1.__metadata("design:type", NgbDatepicker) + ], DsDatePickerInlineComponent.prototype, "ngbDatePicker", void 0); + DsDatePickerInlineComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-date-picker-inline', + templateUrl: './dynamic-date-picker-inline.component.html' + }), + tslib_1.__metadata("design:paramtypes", [DynamicFormLayoutService, + DynamicFormValidationService, + NgbDatepickerConfig]) + ], DsDatePickerInlineComponent); + return DsDatePickerInlineComponent; +}(DynamicFormControlComponent)); +export { DsDatePickerInlineComponent }; +//# sourceMappingURL=dynamic-date-picker-inline.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js.map new file mode 100644 index 0000000000..918206c93e --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-date-picker-inline.component.js","sourceRoot":"","sources":["dynamic-date-picker-inline.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAE3B,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,wBAAwB,CAAC;AAMhC;IAAiD,uDAA2B;IAa1E,qCAAsB,aAAuC,EACvC,iBAA+C,EAClD,MAA2B;QAF9C,YAIE,kBAAM,aAAa,EAAE,iBAAiB,CAAC,SACxC;QALqB,mBAAa,GAAb,aAAa,CAA0B;QACvC,uBAAiB,GAAjB,iBAAiB,CAA8B;QAClD,YAAM,GAAN,MAAM,CAAqB;QAbrC,YAAM,GAAG,IAAI,CAAC;QAKb,UAAI,GAAsB,IAAI,YAAY,EAAE,CAAC;QAC7C,YAAM,GAAsB,IAAI,YAAY,EAAE,CAAC;QAC/C,WAAK,GAAsB,IAAI,YAAY,EAAE,CAAC;;IASxD,CAAC;IAhBQ;QAAR,KAAK,EAAE;;+DAAe;IACd;QAAR,KAAK,EAAE;0CAAQ,SAAS;8DAAC;IACjB;QAAR,KAAK,EAAE;;+DAA2B;IAC1B;QAAR,KAAK,EAAE;0CAAQ,sBAAsB;8DAAC;IAE7B;QAAT,MAAM,EAAE;0CAAO,YAAY;6DAA2B;IAC7C;QAAT,MAAM,EAAE;0CAAS,YAAY;+DAA2B;IAC/C;QAAT,MAAM,EAAE;0CAAQ,YAAY;8DAA2B;IAE9B;QAAzB,SAAS,CAAC,aAAa,CAAC;0CAAgB,aAAa;sEAAC;IAX5C,2BAA2B;QAJvC,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,WAAW,EAAE,6CAA6C;SAC3D,CAAC;iDAcqC,wBAAwB;YACpB,4BAA4B;YAC1C,mBAAmB;OAfnC,2BAA2B,CAmBvC;IAAD,kCAAC;CAAA,AAnBD,CAAiD,2BAA2B,GAmB3E;SAnBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js new file mode 100644 index 0000000000..e1a2bf8b40 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js @@ -0,0 +1,191 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { DynamicDsDatePickerModel } from './date-picker.model'; +import { hasValue } from '../../../../../empty.util'; +import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +export var DS_DATE_PICKER_SEPARATOR = '-'; +var DsDatePickerComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDatePickerComponent, _super); + function DsDatePickerComponent(layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.bindId = true; + // @Input() + // minDate; + // @Input() + // maxDate; + _this.selected = new EventEmitter(); + _this.remove = new EventEmitter(); + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.minMonth = 1; + _this.maxMonth = 12; + _this.minDay = 1; + _this.maxDay = 31; + _this.yearPlaceholder = 'year'; + _this.monthPlaceholder = 'month'; + _this.dayPlaceholder = 'day'; + _this.disabledMonth = true; + _this.disabledDay = true; + return _this; + } + DsDatePickerComponent.prototype.ngOnInit = function () { + var now = new Date(); + this.initialYear = now.getFullYear(); + this.initialMonth = now.getMonth() + 1; + this.initialDay = now.getDate(); + if (this.model.value && this.model.value !== null) { + var values = this.model.value.toString().split(DS_DATE_PICKER_SEPARATOR); + if (values.length > 0) { + this.initialYear = parseInt(values[0], 10); + this.year = this.initialYear; + this.disabledMonth = false; + } + if (values.length > 1) { + this.initialMonth = parseInt(values[1], 10); + this.month = this.initialMonth; + this.disabledDay = false; + } + if (values.length > 2) { + this.initialDay = parseInt(values[2], 10); + this.day = this.initialDay; + } + } + this.maxYear = this.initialYear + 100; + }; + DsDatePickerComponent.prototype.onBlur = function (event) { + this.blur.emit(); + }; + DsDatePickerComponent.prototype.onChange = function (event) { + // update year-month-day + switch (event.field) { + case 'year': { + if (event.value !== null) { + this.year = event.value; + } + else { + this.year = undefined; + this.month = undefined; + this.day = undefined; + this.disabledMonth = true; + this.disabledDay = true; + } + break; + } + case 'month': { + if (event.value !== null) { + this.month = event.value; + } + else { + this.month = undefined; + this.day = undefined; + this.disabledDay = true; + } + break; + } + case 'day': { + if (event.value !== null) { + this.day = event.value; + } + else { + this.day = undefined; + } + break; + } + } + // set max for days by month/year + if (!this.disabledDay) { + var month = this.month ? this.month - 1 : 0; + var date = new Date(this.year, month, 1); + this.maxDay = this.getLastDay(date); + if (this.day > this.maxDay) { + this.day = this.maxDay; + } + } + // Manage disable + if (hasValue(this.year) && event.field === 'year') { + this.disabledMonth = false; + } + else if (hasValue(this.month) && event.field === 'month') { + this.disabledDay = false; + } + // update value + var value = null; + if (hasValue(this.year)) { + var yyyy = this.year.toString(); + while (yyyy.length < 4) { + yyyy = '0' + yyyy; + } + value = yyyy; + } + if (hasValue(this.month)) { + var mm = this.month.toString().length === 1 + ? '0' + this.month.toString() + : this.month.toString(); + value += DS_DATE_PICKER_SEPARATOR + mm; + } + if (hasValue(this.day)) { + var dd = this.day.toString().length === 1 + ? '0' + this.day.toString() + : this.day.toString(); + value += DS_DATE_PICKER_SEPARATOR + dd; + } + this.model.valueUpdates.next(value); + this.change.emit(value); + }; + DsDatePickerComponent.prototype.onFocus = function (event) { + this.focus.emit(event); + }; + DsDatePickerComponent.prototype.getLastDay = function (date) { + // Last Day of the same month (+1 month, -1 day) + date.setMonth(date.getMonth() + 1, 0); + return date.getDate(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDatePickerComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDatePickerComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", DynamicDsDatePickerModel) + ], DsDatePickerComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], DsDatePickerComponent.prototype, "selected", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], DsDatePickerComponent.prototype, "remove", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], DsDatePickerComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], DsDatePickerComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], DsDatePickerComponent.prototype, "focus", void 0); + DsDatePickerComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-date-picker', + styleUrls: ['./date-picker.component.scss'], + templateUrl: './date-picker.component.html', + }), + tslib_1.__metadata("design:paramtypes", [DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDatePickerComponent); + return DsDatePickerComponent; +}(DynamicFormControlComponent)); +export { DsDatePickerComponent }; +//# sourceMappingURL=date-picker.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js.map new file mode 100644 index 0000000000..ea9d6873d8 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"date-picker.component.js","sourceRoot":"","sources":["date-picker.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js new file mode 100644 index 0000000000..e545309337 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { DynamicDateControlModel, serializable } from '@ng-dynamic-forms/core'; +export var DYNAMIC_FORM_CONTROL_TYPE_DSDATEPICKER = 'DATE'; +/** + * Dynamic Date Picker Model class + */ +var DynamicDsDatePickerModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicDsDatePickerModel, _super); + function DynamicDsDatePickerModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.type = DYNAMIC_FORM_CONTROL_TYPE_DSDATEPICKER; + _this.hasLanguages = false; + _this.malformedDate = false; + return _this; + } + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicDsDatePickerModel.prototype, "type", void 0); + return DynamicDsDatePickerModel; +}(DynamicDateControlModel)); +export { DynamicDsDatePickerModel }; +//# sourceMappingURL=date-picker.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js.map new file mode 100644 index 0000000000..42d6bfcfd3 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"date-picker.model.js","sourceRoot":"","sources":["date-picker.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAIzG,MAAM,CAAC,IAAM,sCAAsC,GAAG,MAAM,CAAC;AAE7D;;GAEG;AACH;IAA8C,oDAAuB;IAMnE,kCAAY,MAAqC,EAAE,MAAiC;QAApF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAEtB;QARwB,UAAI,GAAW,sCAAsC,CAAC;QAG/E,kBAAY,GAAG,KAAK,CAAC;QAInB,KAAI,CAAC,aAAa,GAAG,KAAK,CAAC;;IAC7B,CAAC;IARe;QAAf,YAAY,EAAE;;0DAAgE;IAUjF,+BAAC;CAAA,AAXD,CAA8C,uBAAuB,GAWpE;SAXY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js new file mode 100644 index 0000000000..0a8197a64b --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js @@ -0,0 +1,67 @@ +import * as tslib_1 from "tslib"; +import { DynamicFormGroupModel, serializable } from '@ng-dynamic-forms/core'; +import { isNotEmpty } from '../../../../empty.util'; +import { FormFieldMetadataValueObject } from '../../models/form-field-metadata-value.model'; +export var CONCAT_GROUP_SUFFIX = '_CONCAT_GROUP'; +export var CONCAT_FIRST_INPUT_SUFFIX = '_CONCAT_FIRST_INPUT'; +export var CONCAT_SECOND_INPUT_SUFFIX = '_CONCAT_SECOND_INPUT'; +var DynamicConcatModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicConcatModel, _super); + function DynamicConcatModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.hasLanguages = false; + _this.isCustomGroup = true; + _this.separator = config.separator + ' '; + return _this; + } + Object.defineProperty(DynamicConcatModel.prototype, "value", { + get: function () { + var firstValue = this.get(0).value; + var secondValue = this.get(1).value; + if (isNotEmpty(firstValue) && isNotEmpty(secondValue)) { + return new FormFieldMetadataValueObject(firstValue + this.separator + secondValue); + } + else if (isNotEmpty(firstValue)) { + return new FormFieldMetadataValueObject(firstValue); + } + else { + return null; + } + }, + set: function (value) { + var values; + var tempValue; + if (typeof value === 'string') { + tempValue = value; + } + else { + tempValue = value.value; + } + if (tempValue.includes(this.separator)) { + values = tempValue.split(this.separator); + } + else { + values = [tempValue, null]; + } + if (values[0]) { + this.get(0).valueUpdates.next(values[0]); + } + if (values[1]) { + this.get(1).valueUpdates.next(values[1]); + } + }, + enumerable: true, + configurable: true + }); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicConcatModel.prototype, "separator", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Object) + ], DynamicConcatModel.prototype, "hasLanguages", void 0); + return DynamicConcatModel; +}(DynamicFormGroupModel)); +export { DynamicConcatModel }; +//# sourceMappingURL=ds-dynamic-concat.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js.map new file mode 100644 index 0000000000..31af370487 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ds-dynamic-concat.model.js","sourceRoot":"","sources":["ds-dynamic-concat.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA4B,qBAAqB,EAA+B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACpI,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAE5F,MAAM,CAAC,IAAM,mBAAmB,GAAG,eAAe,CAAC;AACnD,MAAM,CAAC,IAAM,yBAAyB,GAAG,qBAAqB,CAAC;AAC/D,MAAM,CAAC,IAAM,0BAA0B,GAAG,sBAAsB,CAAC;AAMjE;IAAwC,8CAAqB;IAM3D,4BAAY,MAAgC,EAAE,MAAiC;QAA/E,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAGtB;QARe,kBAAY,GAAG,KAAK,CAAC;QACrC,mBAAa,GAAG,IAAI,CAAC;QAMnB,KAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC;;IAC1C,CAAC;IAED,sBAAI,qCAAK;aAAT;YACE,IAAM,UAAU,GAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,KAAK,CAAC;YAC9D,IAAM,WAAW,GAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,KAAK,CAAC;YAE/D,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE;gBACrD,OAAO,IAAI,4BAA4B,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC;aACpF;iBAAM,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;gBACjC,OAAO,IAAI,4BAA4B,CAAC,UAAU,CAAC,CAAC;aACrD;iBAAM;gBACL,OAAO,IAAI,CAAC;aACb;QACH,CAAC;aAED,UAAU,KAA4C;YACpD,IAAI,MAAM,CAAC;YACX,IAAI,SAAiB,CAAC;YAEtB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC7B,SAAS,GAAI,KAAK,CAAC;aACpB;iBAAM;gBACL,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;aACzB;YAED,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACtC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC1C;iBAAM;gBACL,MAAM,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;aAC5B;YAED,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;gBACZ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACnE;YACD,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;gBACZ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACnE;QACH,CAAC;;;OAxBA;IAtBe;QAAf,YAAY,EAAE;;yDAAmB;IAClB;QAAf,YAAY,EAAE;;4DAAsB;IA+CvC,yBAAC;CAAA,AAlDD,CAAwC,qBAAqB,GAkD5D;SAlDY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js new file mode 100644 index 0000000000..27811034b3 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js @@ -0,0 +1,95 @@ +import * as tslib_1 from "tslib"; +import { DynamicInputModel, serializable } from '@ng-dynamic-forms/core'; +import { Subject } from 'rxjs'; +import { AuthorityOptions } from '../../../../../core/integration/models/authority-options.model'; +import { hasValue } from '../../../../empty.util'; +import { FormFieldMetadataValueObject } from '../../models/form-field-metadata-value.model'; +var DsDynamicInputModel = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicInputModel, _super); + function DsDynamicInputModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.readOnly = config.readOnly; + _this.value = config.value; + _this.language = config.language; + if (!_this.language) { + // TypeAhead + if (config.value instanceof FormFieldMetadataValueObject) { + _this.language = config.value.language; + } + else if (Array.isArray(config.value)) { + // Tag of Authority + if (config.value[0].language) { + _this.language = config.value[0].language; + } + } + } + _this.languageCodes = config.languageCodes; + _this.languageUpdates = new Subject(); + _this.languageUpdates.subscribe(function (lang) { + _this.language = lang; + }); + _this.authorityOptions = config.authorityOptions; + return _this; + } + Object.defineProperty(DsDynamicInputModel.prototype, "hasAuthority", { + get: function () { + return this.authorityOptions && hasValue(this.authorityOptions.name); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DsDynamicInputModel.prototype, "hasLanguages", { + get: function () { + if (this.languageCodes && this.languageCodes.length > 1) { + return true; + } + else { + return false; + } + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DsDynamicInputModel.prototype, "language", { + get: function () { + return this._language; + }, + set: function (language) { + this._language = language; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DsDynamicInputModel.prototype, "languageCodes", { + get: function () { + return this._languageCodes; + }, + set: function (languageCodes) { + this._languageCodes = languageCodes; + if (!this.language || this.language === null || this.language === '') { + this.language = this.languageCodes ? this.languageCodes[0].code : null; + } + }, + enumerable: true, + configurable: true + }); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", AuthorityOptions) + ], DsDynamicInputModel.prototype, "authorityOptions", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Array) + ], DsDynamicInputModel.prototype, "_languageCodes", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DsDynamicInputModel.prototype, "_language", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Subject) + ], DsDynamicInputModel.prototype, "languageUpdates", void 0); + return DsDynamicInputModel; +}(DynamicInputModel)); +export { DsDynamicInputModel }; +//# sourceMappingURL=ds-dynamic-input.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js.map new file mode 100644 index 0000000000..62eca7e177 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ds-dynamic-input.model.js","sourceRoot":"","sources":["ds-dynamic-input.model.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js new file mode 100644 index 0000000000..04a397f3f0 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js @@ -0,0 +1,82 @@ +import * as tslib_1 from "tslib"; +import { DynamicFormGroupModel, serializable } from '@ng-dynamic-forms/core'; +import { Subject } from 'rxjs'; +export var QUALDROP_GROUP_SUFFIX = '_QUALDROP_GROUP'; +export var QUALDROP_METADATA_SUFFIX = '_QUALDROP_METADATA'; +export var QUALDROP_VALUE_SUFFIX = '_QUALDROP_VALUE'; +var DynamicQualdropModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicQualdropModel, _super); + function DynamicQualdropModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.hasLanguages = false; + _this.isCustomGroup = true; + _this.readOnly = config.readOnly; + _this.language = config.language; + _this.languageCodes = config.languageCodes; + _this.languageUpdates = new Subject(); + _this.languageUpdates.subscribe(function (lang) { + _this.language = lang; + }); + return _this; + } + Object.defineProperty(DynamicQualdropModel.prototype, "value", { + get: function () { + return this.get(1).value; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DynamicQualdropModel.prototype, "qualdropId", { + get: function () { + return this.get(0).value.toString(); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DynamicQualdropModel.prototype, "language", { + get: function () { + return this._language; + }, + set: function (language) { + this._language = language; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DynamicQualdropModel.prototype, "languageCodes", { + get: function () { + return this._languageCodes; + }, + set: function (languageCodes) { + this._languageCodes = languageCodes; + if (!this.language || this.language === null || this.language === '') { + this.language = this.languageCodes ? this.languageCodes[0].code : null; + } + }, + enumerable: true, + configurable: true + }); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicQualdropModel.prototype, "_language", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Array) + ], DynamicQualdropModel.prototype, "_languageCodes", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Subject) + ], DynamicQualdropModel.prototype, "languageUpdates", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Object) + ], DynamicQualdropModel.prototype, "hasLanguages", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Boolean) + ], DynamicQualdropModel.prototype, "readOnly", void 0); + return DynamicQualdropModel; +}(DynamicFormGroupModel)); +export { DynamicQualdropModel }; +//# sourceMappingURL=ds-dynamic-qualdrop.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js.map new file mode 100644 index 0000000000..6c6004c128 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ds-dynamic-qualdrop.model.js","sourceRoot":"","sources":["ds-dynamic-qualdrop.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA4B,qBAAqB,EAA2B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEhI,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,MAAM,CAAC,IAAM,qBAAqB,GAAG,iBAAiB,CAAC;AACvD,MAAM,CAAC,IAAM,wBAAwB,GAAG,oBAAoB,CAAC;AAC7D,MAAM,CAAC,IAAM,qBAAqB,GAAG,iBAAiB,CAAC;AAQvD;IAA0C,gDAAqB;IAQ7D,8BAAY,MAAoC,EAAE,MAAiC;QAAnF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAUtB;QAfe,kBAAY,GAAG,KAAK,CAAC;QAErC,mBAAa,GAAG,IAAI,CAAC;QAKnB,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QAE1C,KAAI,CAAC,eAAe,GAAG,IAAI,OAAO,EAAU,CAAC;QAC7C,KAAI,CAAC,eAAe,CAAC,SAAS,CAAC,UAAC,IAAY;YAC1C,KAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,CAAC,CAAC,CAAC;;IACL,CAAC;IAED,sBAAI,uCAAK;aAAT;YACE,OAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,KAAK,CAAC;QACpD,CAAC;;;OAAA;IAED,sBAAI,4CAAU;aAAd;YACE,OAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC/D,CAAC;;;OAAA;IAED,sBAAI,0CAAQ;aAAZ;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aAED,UAAa,QAAgB;YAC3B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC5B,CAAC;;;OAJA;IAMD,sBAAI,+CAAa;aAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;aAED,UAAkB,aAA6B;YAC7C,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,EAAE,EAAE;gBACpE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;aACxE;QACH,CAAC;;;OAPA;IAtCe;QAAf,YAAY,EAAE;;2DAA2B;IAC1B;QAAf,YAAY,EAAE;;gEAAwC;IACvC;QAAf,YAAY,EAAE;0CAAkB,OAAO;iEAAS;IACjC;QAAf,YAAY,EAAE;;8DAAsB;IACrB;QAAf,YAAY,EAAE;;0DAAmB;IA2CpC,2BAAC;CAAA,AAhDD,CAA0C,qBAAqB,GAgD9D;SAhDY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js new file mode 100644 index 0000000000..7f1b031146 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js @@ -0,0 +1,19 @@ +import * as tslib_1 from "tslib"; +import { DynamicFormArrayModel, serializable } from '@ng-dynamic-forms/core'; +var DynamicRowArrayModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicRowArrayModel, _super); + function DynamicRowArrayModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.notRepeatable = false; + _this.isRowArray = true; + _this.notRepeatable = config.notRepeatable; + return _this; + } + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Object) + ], DynamicRowArrayModel.prototype, "notRepeatable", void 0); + return DynamicRowArrayModel; +}(DynamicFormArrayModel)); +export { DynamicRowArrayModel }; +//# sourceMappingURL=ds-dynamic-row-array-model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js.map new file mode 100644 index 0000000000..b5b1a40f2d --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ds-dynamic-row-array-model.js","sourceRoot":"","sources":["ds-dynamic-row-array-model.ts"],"names":[],"mappings":";AAAA,OAAO,EAEL,qBAAqB,EACrB,YAAY,EACb,MAAM,wBAAwB,CAAC;AAOhC;IAA0C,gDAAqB;IAI7D,8BAAY,MAAkC,EAAE,MAAiC;QAAjF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAEtB;QANe,mBAAa,GAAG,KAAK,CAAC;QACtC,gBAAU,GAAG,IAAI,CAAC;QAIhB,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;;IAC5C,CAAC;IANe;QAAf,YAAY,EAAE;;+DAAuB;IAQxC,2BAAC;CAAA,AATD,CAA0C,qBAAqB,GAS9D;SATY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js new file mode 100644 index 0000000000..8faf7630e4 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js @@ -0,0 +1,13 @@ +import * as tslib_1 from "tslib"; +import { DynamicFormGroupModel } from '@ng-dynamic-forms/core'; +var DynamicRowGroupModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicRowGroupModel, _super); + function DynamicRowGroupModel() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.isRowGroup = true; + return _this; + } + return DynamicRowGroupModel; +}(DynamicFormGroupModel)); +export { DynamicRowGroupModel }; +//# sourceMappingURL=ds-dynamic-row-group-model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js.map new file mode 100644 index 0000000000..777982262e --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ds-dynamic-row-group-model.js","sourceRoot":"","sources":["ds-dynamic-row-group-model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;IAA0C,gDAAqB;IAA/D;QAAA,qEAEC;QADC,gBAAU,GAAG,IAAI,CAAC;;IACpB,CAAC;IAAD,2BAAC;AAAD,CAAC,AAFD,CAA0C,qBAAqB,GAE9D"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js new file mode 100644 index 0000000000..e450e49fa8 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA, serializable } from '@ng-dynamic-forms/core'; +import { DsDynamicInputModel } from './ds-dynamic-input.model'; +var DsDynamicTextAreaModel = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicTextAreaModel, _super); + function DsDynamicTextAreaModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.type = DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA; + _this.cols = config.cols; + _this.rows = config.rows; + _this.wrap = config.wrap; + return _this; + } + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Number) + ], DsDynamicTextAreaModel.prototype, "cols", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Number) + ], DsDynamicTextAreaModel.prototype, "rows", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DsDynamicTextAreaModel.prototype, "wrap", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicTextAreaModel.prototype, "type", void 0); + return DsDynamicTextAreaModel; +}(DsDynamicInputModel)); +export { DsDynamicTextAreaModel }; +//# sourceMappingURL=ds-dynamic-textarea.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js.map new file mode 100644 index 0000000000..23c477fb13 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ds-dynamic-textarea.model.js","sourceRoot":"","sources":["ds-dynamic-textarea.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,kCAAkC,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAA6B,MAAM,0BAA0B,CAAC;AAQ1F;IAA4C,kDAAmB;IAM7D,gCAAY,MAAoC,EAAE,MAAiC;QAAnF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAKtB;QARe,UAAI,GAAG,kCAAkC,CAAC;QAKxD,KAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,KAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,KAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;;IAC1B,CAAC;IAXe;QAAf,YAAY,EAAE;;wDAAc;IACb;QAAf,YAAY,EAAE;;wDAAc;IACb;QAAf,YAAY,EAAE;;wDAAc;IACb;QAAf,YAAY,EAAE;;wDAA2C;IAU5D,6BAAC;CAAA,AAdD,CAA4C,mBAAmB,GAc9D;SAdY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js new file mode 100644 index 0000000000..95c9163b73 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js @@ -0,0 +1,68 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { DynamicFormControlComponent, DynamicFormGroupModel, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +var DsDynamicFormGroupComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicFormGroupComponent, _super); + /* tslint:enable:no-output-rename */ + function DsDynamicFormGroupComponent(layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.bindId = true; + /* tslint:disable:no-output-rename */ + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.customEvent = new EventEmitter(); + return _this; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormGroupComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicFormGroupComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormGroupComponent.prototype, "layout", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", DynamicFormGroupModel) + ], DsDynamicFormGroupComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicFormGroupComponent.prototype, "templates", void 0); + tslib_1.__decorate([ + Output('dfBlur'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormGroupComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output('dfChange'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormGroupComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output('dfFocus'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormGroupComponent.prototype, "focus", void 0); + tslib_1.__decorate([ + Output('ngbEvent'), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicFormGroupComponent.prototype, "customEvent", void 0); + DsDynamicFormGroupComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-form-group', + templateUrl: './dynamic-form-group.component.html', + changeDetection: ChangeDetectionStrategy.Default + }), + tslib_1.__metadata("design:paramtypes", [DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDynamicFormGroupComponent); + return DsDynamicFormGroupComponent; +}(DynamicFormControlComponent)); +export { DsDynamicFormGroupComponent }; +//# sourceMappingURL=dynamic-form-group.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js.map new file mode 100644 index 0000000000..61f88fd799 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-form-group.component.js","sourceRoot":"","sources":["dynamic-form-group.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAa,MAAM,eAAe,CAAC;AAC3G,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EACL,2BAA2B,EAG3B,qBAAqB,EAErB,wBAAwB,EACxB,4BAA4B,EAE7B,MAAM,wBAAwB,CAAC;AAOhC;IAAiD,uDAA2B;IAa1E,oCAAoC;IAEpC,qCAAsB,aAAuC,EACvC,iBAA+C;QADrE,YAGE,kBAAM,aAAa,EAAE,iBAAiB,CAAC,SACxC;QAJqB,mBAAa,GAAb,aAAa,CAA0B;QACvC,uBAAiB,GAAjB,iBAAiB,CAA8B;QAd5D,YAAM,GAAG,IAAI,CAAC;QAMvB,qCAAqC;QACnB,UAAI,GAA0C,IAAI,YAAY,EAA2B,CAAC;QACxF,YAAM,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC7F,WAAK,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC1F,iBAAW,GAAgD,IAAI,YAAY,EAAE,CAAC;;IAOlG,CAAC;IAjBQ;QAAR,KAAK,EAAE;;+DAAe;IACd;QAAR,KAAK,EAAE;0CAAQ,SAAS;8DAAC;IACjB;QAAR,KAAK,EAAE;;+DAA2B;IAC1B;QAAR,KAAK,EAAE;0CAAQ,qBAAqB;8DAAC;IAC7B;QAAR,KAAK,EAAE;;kEAAyF;IAG/E;QAAjB,MAAM,CAAC,QAAQ,CAAC;0CAAO,YAAY;6DAAwE;IACxF;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAS,YAAY;+DAAwE;IAC7F;QAAlB,MAAM,CAAC,SAAS,CAAC;0CAAQ,YAAY;8DAAwE;IAC1F;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAc,YAAY;oEAAqD;IAZvF,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,WAAW,EAAE,qCAAqC;YAClD,eAAe,EAAE,uBAAuB,CAAC,OAAO;SACjD,CAAC;iDAgBqC,wBAAwB;YACpB,4BAA4B;OAhB1D,2BAA2B,CAqBvC;IAAD,kCAAC;CAAA,AArBD,CAAiD,2BAA2B,GAqB3E;SArBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js new file mode 100644 index 0000000000..188d90de37 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js @@ -0,0 +1,65 @@ +import * as tslib_1 from "tslib"; +import { Subject } from 'rxjs'; +import { DynamicCheckboxGroupModel, serializable } from '@ng-dynamic-forms/core'; +import { AuthorityOptions } from '../../../../../../core/integration/models/authority-options.model'; +import { hasValue } from '../../../../../empty.util'; +var DynamicListCheckboxGroupModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicListCheckboxGroupModel, _super); + function DynamicListCheckboxGroupModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.isListGroup = true; + _this.authorityOptions = config.authorityOptions; + _this.groupLength = config.groupLength || 5; + _this._value = []; + _this.repeatable = config.repeatable; + _this.valueUpdates = new Subject(); + _this.valueUpdates.subscribe(function (value) { return _this.value = value; }); + _this.valueUpdates.next(config.value); + return _this; + } + Object.defineProperty(DynamicListCheckboxGroupModel.prototype, "hasAuthority", { + get: function () { + return this.authorityOptions && hasValue(this.authorityOptions.name); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(DynamicListCheckboxGroupModel.prototype, "value", { + get: function () { + return this._value; + }, + set: function (value) { + if (value) { + if (Array.isArray(value)) { + this._value = value; + } + else { + // _value is non extendible so assign it a new array + var newValue = this.value.concat([value]); + this._value = newValue; + } + } + }, + enumerable: true, + configurable: true + }); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", AuthorityOptions) + ], DynamicListCheckboxGroupModel.prototype, "authorityOptions", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Boolean) + ], DynamicListCheckboxGroupModel.prototype, "repeatable", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Number) + ], DynamicListCheckboxGroupModel.prototype, "groupLength", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Array) + ], DynamicListCheckboxGroupModel.prototype, "_value", void 0); + return DynamicListCheckboxGroupModel; +}(DynamicCheckboxGroupModel)); +export { DynamicListCheckboxGroupModel }; +//# sourceMappingURL=dynamic-list-checkbox-group.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js.map new file mode 100644 index 0000000000..8f644223b0 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-list-checkbox-group.model.js","sourceRoot":"","sources":["dynamic-list-checkbox-group.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EACL,yBAAyB,EAEzB,YAAY,EACb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mEAAmE,CAAC;AACrG,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AASrD;IAAmD,yDAAyB;IAS1E,uCAAY,MAA2C,EAAE,MAAiC;QAA1F,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAUtB;QAdD,iBAAW,GAAG,IAAI,CAAC;QAMjB,KAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC3C,KAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAEpC,KAAI,CAAC,YAAY,GAAG,IAAI,OAAO,EAAO,CAAC;QACvC,KAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAC,KAAwC,IAAK,OAAA,KAAI,CAAC,KAAK,GAAG,KAAK,EAAlB,CAAkB,CAAC,CAAC;QAC9F,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;IACvC,CAAC;IAED,sBAAI,uDAAY;aAAhB;YACE,OAAO,IAAI,CAAC,gBAAgB,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;;;OAAA;IAED,sBAAI,gDAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aAED,UAAU,KAAwC;YAChD,IAAI,KAAK,EAAE;gBACT,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;iBACrB;qBAAM;oBACL,oDAAoD;oBACpD,IAAM,QAAQ,GAAI,IAAI,CAAC,KAA0B,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAA;iBACvB;aACF;QACH,CAAC;;;OAZA;IA1Be;QAAf,YAAY,EAAE;0CAAmB,gBAAgB;2EAAC;IACnC;QAAf,YAAY,EAAE;;qEAAqB;IACpB;QAAf,YAAY,EAAE;;sEAAqB;IACpB;QAAf,YAAY,EAAE;;iEAA0B;IAoC3C,oCAAC;CAAA,AAzCD,CAAmD,yBAAyB,GAyC3E;SAzCY,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js new file mode 100644 index 0000000000..0f1e97c1ea --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { DynamicRadioGroupModel, serializable } from '@ng-dynamic-forms/core'; +import { AuthorityOptions } from '../../../../../../core/integration/models/authority-options.model'; +import { hasValue } from '../../../../../empty.util'; +var DynamicListRadioGroupModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicListRadioGroupModel, _super); + function DynamicListRadioGroupModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.isListGroup = true; + _this.authorityOptions = config.authorityOptions; + _this.groupLength = config.groupLength || 5; + _this.repeatable = config.repeatable; + _this.valueUpdates.next(config.value); + return _this; + } + Object.defineProperty(DynamicListRadioGroupModel.prototype, "hasAuthority", { + get: function () { + return this.authorityOptions && hasValue(this.authorityOptions.name); + }, + enumerable: true, + configurable: true + }); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", AuthorityOptions) + ], DynamicListRadioGroupModel.prototype, "authorityOptions", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Boolean) + ], DynamicListRadioGroupModel.prototype, "repeatable", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Number) + ], DynamicListRadioGroupModel.prototype, "groupLength", void 0); + return DynamicListRadioGroupModel; +}(DynamicRadioGroupModel)); +export { DynamicListRadioGroupModel }; +//# sourceMappingURL=dynamic-list-radio-group.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js.map new file mode 100644 index 0000000000..885b1e54ca --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-list-radio-group.model.js","sourceRoot":"","sources":["dynamic-list-radio-group.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAEL,sBAAsB,EAEtB,YAAY,EACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mEAAmE,CAAC;AACrG,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AASrD;IAAgD,sDAA2B;IAOzE,oCAAY,MAA8B,EAAE,MAAiC;QAA7E,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAMtB;QATD,iBAAW,GAAG,IAAI,CAAC;QAKjB,KAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC3C,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;IACvC,CAAC;IAED,sBAAI,oDAAY;aAAhB;YACE,OAAO,IAAI,CAAC,gBAAgB,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;;;OAAA;IAhBe;QAAf,YAAY,EAAE;0CAAmB,gBAAgB;wEAAC;IACnC;QAAf,YAAY,EAAE;;kEAAqB;IACpB;QAAf,YAAY,EAAE;;mEAAqB;IAetC,iCAAC;CAAA,AAnBD,CAAgD,sBAAsB,GAmBrE;SAnBY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js new file mode 100644 index 0000000000..9079b03574 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js @@ -0,0 +1,146 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { findKey } from 'lodash'; +import { AuthorityService } from '../../../../../../core/integration/authority.service'; +import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; +import { hasValue, isNotEmpty } from '../../../../../empty.util'; +import { FormBuilderService } from '../../../form-builder.service'; +import { DynamicCheckboxModel, DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +var DsDynamicListComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicListComponent, _super); + function DsDynamicListComponent(authorityService, cdr, formBuilderService, layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.authorityService = authorityService; + _this.cdr = cdr; + _this.formBuilderService = formBuilderService; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.bindId = true; + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.items = []; + return _this; + } + DsDynamicListComponent.prototype.ngOnInit = function () { + if (this.hasAuthorityOptions()) { + // TODO Replace max elements 1000 with a paginated request when pagination bug is resolved + this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata, '', 1000, // Max elements + 1); // Current Page + this.setOptionsFromAuthority(); + } + }; + DsDynamicListComponent.prototype.onBlur = function (event) { + this.blur.emit(event); + }; + DsDynamicListComponent.prototype.onFocus = function (event) { + this.focus.emit(event); + }; + DsDynamicListComponent.prototype.onChange = function (event) { + var target = event.target; + if (this.model.repeatable) { + // Target tabindex coincide with the array index of the value into the authority list + var authorityValue_1 = this.optionsList[target.tabIndex]; + if (target.checked) { + this.model.valueUpdates.next(authorityValue_1); + } + else { + var newValue_1 = []; + this.model.value + .filter(function (item) { return item.value !== authorityValue_1.value; }) + .forEach(function (item) { return newValue_1.push(item); }); + this.model.valueUpdates.next(newValue_1); + } + } + else { + this.model.valueUpdates.next(this.optionsList[target.value]); + } + this.change.emit(event); + }; + DsDynamicListComponent.prototype.setOptionsFromAuthority = function () { + var _this = this; + if (this.model.authorityOptions.name && this.model.authorityOptions.name.length > 0) { + var listGroup_1 = this.group.controls[this.model.id]; + this.authorityService.getEntriesByName(this.searchOptions).subscribe(function (authorities) { + var groupCounter = 0; + var itemsPerGroup = 0; + var tempList = []; + _this.optionsList = authorities.payload; + // Make a list of available options (checkbox/radio) and split in groups of 'model.groupLength' + authorities.payload.forEach(function (option, key) { + var value = option.id || option.value; + var checked = isNotEmpty(findKey(_this.model.value, function (v) { return v.value === option.value; })); + var item = { + id: value, + label: option.display, + value: checked, + index: key + }; + if (_this.model.repeatable) { + _this.formBuilderService.addFormGroupControl(listGroup_1, _this.model, new DynamicCheckboxModel(item)); + } + else { + _this.model.options.push({ + label: item.label, + value: option + }); + } + tempList.push(item); + itemsPerGroup++; + _this.items[groupCounter] = tempList; + if (itemsPerGroup === _this.model.groupLength) { + groupCounter++; + itemsPerGroup = 0; + tempList = []; + } + }); + _this.cdr.markForCheck(); + }); + } + }; + DsDynamicListComponent.prototype.hasAuthorityOptions = function () { + return (hasValue(this.model.authorityOptions.scope) + && hasValue(this.model.authorityOptions.name) + && hasValue(this.model.authorityOptions.metadata)); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicListComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicListComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicListComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicListComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicListComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicListComponent.prototype, "focus", void 0); + DsDynamicListComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-list', + styleUrls: ['./dynamic-list.component.scss'], + templateUrl: './dynamic-list.component.html' + }), + tslib_1.__metadata("design:paramtypes", [AuthorityService, + ChangeDetectorRef, + FormBuilderService, + DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDynamicListComponent); + return DsDynamicListComponent; +}(DynamicFormControlComponent)); +export { DsDynamicListComponent }; +//# sourceMappingURL=dynamic-list.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js.map new file mode 100644 index 0000000000..192083834a --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-list.component.js","sourceRoot":"","sources":["dynamic-list.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js new file mode 100644 index 0000000000..4c1d443f66 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { serializable } from '@ng-dynamic-forms/core'; +import { DynamicLookupModel } from './dynamic-lookup.model'; +export var DYNAMIC_FORM_CONTROL_TYPE_LOOKUP_NAME = 'LOOKUP_NAME'; +var DynamicLookupNameModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicLookupNameModel, _super); + function DynamicLookupNameModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.type = DYNAMIC_FORM_CONTROL_TYPE_LOOKUP_NAME; + _this.separator = config.separator || ','; + _this.placeholder = config.firstPlaceholder || 'form.last-name'; + _this.secondPlaceholder = config.secondPlaceholder || 'form.first-name'; + return _this; + } + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicLookupNameModel.prototype, "separator", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicLookupNameModel.prototype, "secondPlaceholder", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicLookupNameModel.prototype, "type", void 0); + return DynamicLookupNameModel; +}(DynamicLookupModel)); +export { DynamicLookupNameModel }; +//# sourceMappingURL=dynamic-lookup-name.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js.map new file mode 100644 index 0000000000..728d6e91a7 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-lookup-name.model.js","sourceRoot":"","sources":["dynamic-lookup-name.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAA4B,MAAM,wBAAwB,CAAC;AAEtF,MAAM,CAAC,IAAM,qCAAqC,GAAG,aAAa,CAAC;AAQnE;IAA4C,kDAAkB;IAM5D,gCAAY,MAAoC,EAAE,MAAiC;QAAnF,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAKtB;QATwB,UAAI,GAAW,qCAAqC,CAAC;QAM5E,KAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,GAAG,CAAC;QACzC,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC;QAC/D,KAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,iBAAiB,CAAC;;IACzE,CAAC;IAXe;QAAf,YAAY,EAAE;;6DAAmB;IAClB;QAAf,YAAY,EAAE;;qEAA2B;IAC1B;QAAf,YAAY,EAAE;;wDAA+D;IAUhF,6BAAC;CAAA,AAdD,CAA4C,kBAAkB,GAc7D;SAdY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js new file mode 100644 index 0000000000..f7422f200a --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js @@ -0,0 +1,251 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { of as observableOf } from 'rxjs'; +import { catchError, distinctUntilChanged } from 'rxjs/operators'; +import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +import { AuthorityService } from '../../../../../../core/integration/authority.service'; +import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; +import { hasValue, isEmpty, isNotEmpty, isNull, isUndefined } from '../../../../../empty.util'; +import { IntegrationData } from '../../../../../../core/integration/integration-data'; +import { PageInfo } from '../../../../../../core/shared/page-info.model'; +import { FormFieldMetadataValueObject } from '../../../models/form-field-metadata-value.model'; +import { AuthorityValue } from '../../../../../../core/integration/models/authority.value'; +import { DynamicLookupNameModel } from './dynamic-lookup-name.model'; +var DsDynamicLookupComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicLookupComponent, _super); + function DsDynamicLookupComponent(authorityService, cdr, layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.authorityService = authorityService; + _this.cdr = cdr; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.bindId = true; + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.editMode = false; + _this.firstInputValue = ''; + _this.secondInputValue = ''; + _this.loading = false; + _this.subs = []; + _this.inputFormatter = function (x, y) { + return y === 1 ? _this.firstInputValue : _this.secondInputValue; + }; + return _this; + } + DsDynamicLookupComponent.prototype.ngOnInit = function () { + var _this = this; + this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata, '', this.model.maxOptions, 1); + this.setInputsValue(this.model.value); + this.subs.push(this.model.valueUpdates + .subscribe(function (value) { + if (isEmpty(value)) { + _this.resetFields(); + } + else if (!_this.editMode) { + _this.setInputsValue(_this.model.value); + } + })); + }; + DsDynamicLookupComponent.prototype.getCurrentValue = function () { + var result = ''; + if (!this.isLookupName()) { + result = this.firstInputValue; + } + else { + if (isNotEmpty(this.firstInputValue)) { + result = this.firstInputValue; + } + if (isNotEmpty(this.secondInputValue)) { + result = isEmpty(result) + ? this.secondInputValue + : this.firstInputValue + this.model.separator + ' ' + this.secondInputValue; + } + } + return result; + }; + DsDynamicLookupComponent.prototype.resetFields = function () { + this.firstInputValue = ''; + if (this.isLookupName()) { + this.secondInputValue = ''; + } + }; + DsDynamicLookupComponent.prototype.setInputsValue = function (value) { + if (hasValue(value)) { + var displayValue = value; + if (value instanceof FormFieldMetadataValueObject || value instanceof AuthorityValue) { + displayValue = value.display; + } + if (hasValue(displayValue)) { + if (this.isLookupName()) { + var values = displayValue.split(this.model.separator); + this.firstInputValue = (values[0] || '').trim(); + this.secondInputValue = (values[1] || '').trim(); + } + else { + this.firstInputValue = displayValue || ''; + } + } + } + }; + DsDynamicLookupComponent.prototype.formatItemForInput = function (item, field) { + if (isUndefined(item) || isNull(item)) { + return ''; + } + return (typeof item === 'string') ? item : this.inputFormatter(item, field); + }; + DsDynamicLookupComponent.prototype.hasAuthorityValue = function () { + return hasValue(this.model.value) + && this.model.value.hasAuthority(); + }; + DsDynamicLookupComponent.prototype.hasEmptyValue = function () { + return isNotEmpty(this.getCurrentValue()); + }; + DsDynamicLookupComponent.prototype.clearFields = function () { + // Clear inputs whether there is no results and authority is closed + if (this.model.authorityOptions.closed) { + this.resetFields(); + } + }; + DsDynamicLookupComponent.prototype.isEditDisabled = function () { + return !this.hasAuthorityValue(); + }; + DsDynamicLookupComponent.prototype.isInputDisabled = function () { + return (this.model.authorityOptions.closed && this.hasAuthorityValue() && !this.editMode); + }; + DsDynamicLookupComponent.prototype.isLookupName = function () { + return (this.model instanceof DynamicLookupNameModel); + }; + DsDynamicLookupComponent.prototype.isSearchDisabled = function () { + return isEmpty(this.firstInputValue); + }; + DsDynamicLookupComponent.prototype.onBlurEvent = function (event) { + this.blur.emit(event); + }; + DsDynamicLookupComponent.prototype.onFocusEvent = function (event) { + this.focus.emit(event); + }; + DsDynamicLookupComponent.prototype.onInput = function (event) { + if (!this.model.authorityOptions.closed) { + if (isNotEmpty(this.getCurrentValue())) { + var currentValue = new FormFieldMetadataValueObject(this.getCurrentValue()); + if (!this.editMode) { + this.onSelect(currentValue); + } + } + else { + this.remove(); + } + } + }; + DsDynamicLookupComponent.prototype.onScroll = function () { + if (!this.loading && this.pageInfo.currentPage <= this.pageInfo.totalPages) { + this.searchOptions.currentPage++; + this.search(); + } + }; + DsDynamicLookupComponent.prototype.onSelect = function (event) { + this.group.markAsDirty(); + this.model.valueUpdates.next(event); + this.setInputsValue(event); + this.change.emit(event); + this.optionsList = null; + this.pageInfo = null; + }; + DsDynamicLookupComponent.prototype.openChange = function (isOpened) { + if (!isOpened) { + if (this.model.authorityOptions.closed && !this.hasAuthorityValue()) { + this.setInputsValue(''); + } + } + }; + DsDynamicLookupComponent.prototype.remove = function () { + this.group.markAsPristine(); + this.model.valueUpdates.next(null); + this.change.emit(null); + }; + DsDynamicLookupComponent.prototype.saveChanges = function () { + if (isNotEmpty(this.getCurrentValue())) { + var newValue = Object.assign(new AuthorityValue(), this.model.value, { + display: this.getCurrentValue(), + value: this.getCurrentValue() + }); + this.onSelect(newValue); + } + else { + this.remove(); + } + this.switchEditMode(); + }; + DsDynamicLookupComponent.prototype.search = function () { + var _this = this; + this.optionsList = null; + this.pageInfo = null; + // Query + this.searchOptions.query = this.getCurrentValue(); + this.loading = true; + this.subs.push(this.authorityService.getEntriesByName(this.searchOptions).pipe(catchError(function () { + var emptyResult = new IntegrationData(new PageInfo(), []); + return observableOf(emptyResult); + }), distinctUntilChanged()) + .subscribe(function (object) { + _this.optionsList = object.payload; + _this.pageInfo = object.pageInfo; + _this.loading = false; + _this.cdr.detectChanges(); + })); + }; + DsDynamicLookupComponent.prototype.switchEditMode = function () { + this.editMode = !this.editMode; + }; + DsDynamicLookupComponent.prototype.whenClickOnConfidenceNotAccepted = function (sdRef, confidence) { + if (!this.model.readOnly) { + sdRef.open(); + this.search(); + } + }; + DsDynamicLookupComponent.prototype.ngOnDestroy = function () { + this.subs + .filter(function (sub) { return hasValue(sub); }) + .forEach(function (sub) { return sub.unsubscribe(); }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicLookupComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicLookupComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicLookupComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicLookupComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicLookupComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicLookupComponent.prototype, "focus", void 0); + DsDynamicLookupComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-lookup', + styleUrls: ['./dynamic-lookup.component.scss'], + templateUrl: './dynamic-lookup.component.html' + }), + tslib_1.__metadata("design:paramtypes", [AuthorityService, + ChangeDetectorRef, + DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDynamicLookupComponent); + return DsDynamicLookupComponent; +}(DynamicFormControlComponent)); +export { DsDynamicLookupComponent }; +//# sourceMappingURL=dynamic-lookup.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js.map new file mode 100644 index 0000000000..13d1f1d24b --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-lookup.component.js","sourceRoot":"","sources":["dynamic-lookup.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js new file mode 100644 index 0000000000..3107853d13 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { AUTOCOMPLETE_OFF, serializable } from '@ng-dynamic-forms/core'; +import { DsDynamicInputModel } from '../ds-dynamic-input.model'; +export var DYNAMIC_FORM_CONTROL_TYPE_LOOKUP = 'LOOKUP'; +var DynamicLookupModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicLookupModel, _super); + function DynamicLookupModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.type = DYNAMIC_FORM_CONTROL_TYPE_LOOKUP; + _this.autoComplete = AUTOCOMPLETE_OFF; + _this.maxOptions = config.maxOptions || 10; + _this.valueUpdates.next(config.value); + return _this; + } + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Number) + ], DynamicLookupModel.prototype, "maxOptions", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicLookupModel.prototype, "type", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Object) + ], DynamicLookupModel.prototype, "value", void 0); + return DynamicLookupModel; +}(DsDynamicInputModel)); +export { DynamicLookupModel }; +//# sourceMappingURL=dynamic-lookup.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js.map new file mode 100644 index 0000000000..2321f0a4e1 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-lookup.model.js","sourceRoot":"","sources":["dynamic-lookup.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAE3F,MAAM,CAAC,IAAM,gCAAgC,GAAG,QAAQ,CAAC;AAOzD;IAAwC,8CAAmB;IAMzD,4BAAY,MAAgC,EAAE,MAAiC;QAA/E,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAMtB;QAXwB,UAAI,GAAW,gCAAgC,CAAC;QAOvE,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrC,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAE1C,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;IACvC,CAAC;IAZe;QAAf,YAAY,EAAE;;0DAAoB;IACnB;QAAf,YAAY,EAAE;;oDAA0D;IACzD;QAAf,YAAY,EAAE;;qDAAY;IAW7B,yBAAC;CAAA,AAfD,CAAwC,mBAAmB,GAe1D;SAfY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js new file mode 100644 index 0000000000..a039cf82e4 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js @@ -0,0 +1,282 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Inject, Input, Output, ViewChild } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { combineLatest, of as observableOf } from 'rxjs'; +import { filter, flatMap, map, mergeMap, scan } from 'rxjs/operators'; +import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +import { isEqual, isObject } from 'lodash'; +import { DynamicRelationGroupModel, PLACEHOLDER_PARENT_METADATA } from './dynamic-relation-group.model'; +import { FormBuilderService } from '../../../form-builder.service'; +import { FormService } from '../../../../form.service'; +import { FormComponent } from '../../../../form.component'; +import { Chips } from '../../../../../chips/models/chips.model'; +import { hasValue, isEmpty, isNotEmpty, isNotNull } from '../../../../../empty.util'; +import { shrinkInOut } from '../../../../../animations/shrink'; +import { GLOBAL_CONFIG } from '../../../../../../../config'; +import { hasOnlyEmptyProperties } from '../../../../../object.util'; +import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; +import { AuthorityService } from '../../../../../../core/integration/authority.service'; +import { FormFieldMetadataValueObject } from '../../../models/form-field-metadata-value.model'; +var DsDynamicRelationGroupComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicRelationGroupComponent, _super); + function DsDynamicRelationGroupComponent(EnvConfig, authorityService, formBuilderService, formService, cdr, layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.EnvConfig = EnvConfig; + _this.authorityService = authorityService; + _this.formBuilderService = formBuilderService; + _this.formService = formService; + _this.cdr = cdr; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.formCollapsed = observableOf(false); + _this.editMode = false; + _this.subs = []; + return _this; + } + DsDynamicRelationGroupComponent.prototype.ngOnInit = function () { + var _this = this; + var config = { rows: this.model.formConfiguration }; + if (!this.model.isEmpty()) { + this.formCollapsed = observableOf(true); + } + this.model.valueUpdates.subscribe(function (value) { + if ((isNotEmpty(value) && !(value.length === 1 && hasOnlyEmptyProperties(value[0])))) { + _this.collapseForm(); + } + else { + _this.expandForm(); + } + }); + this.formId = this.formService.getUniqueId(this.model.id); + this.formModel = this.formBuilderService.modelFromConfiguration(config, this.model.scopeUUID, {}, this.model.submissionScope, this.model.readOnly); + this.initChipsFromModelValue(); + }; + DsDynamicRelationGroupComponent.prototype.isMandatoryFieldEmpty = function () { + var _this = this; + var res = true; + this.formModel.forEach(function (row) { + var modelRow = row; + modelRow.group.forEach(function (model) { + if (model.name === _this.model.mandatoryField) { + res = model.value == null; + return; + } + }); + }); + return res; + }; + DsDynamicRelationGroupComponent.prototype.onBlur = function (event) { + this.blur.emit(); + }; + DsDynamicRelationGroupComponent.prototype.onChipSelected = function (event) { + var _this = this; + this.expandForm(); + this.selectedChipItem = this.chips.getChipByIndex(event); + this.formModel.forEach(function (row) { + var modelRow = row; + modelRow.group.forEach(function (model) { + var value = (_this.selectedChipItem.item[model.name] === PLACEHOLDER_PARENT_METADATA + || _this.selectedChipItem.item[model.name].value === PLACEHOLDER_PARENT_METADATA) + ? null + : _this.selectedChipItem.item[model.name]; + if (isNotNull(value)) { + model.valueUpdates.next(_this.formBuilderService.isInputModel(model) ? value.value : value); + } + }); + }); + this.editMode = true; + }; + DsDynamicRelationGroupComponent.prototype.onFocus = function (event) { + this.focus.emit(event); + }; + DsDynamicRelationGroupComponent.prototype.collapseForm = function () { + this.formCollapsed = observableOf(true); + this.clear(); + }; + DsDynamicRelationGroupComponent.prototype.expandForm = function () { + this.formCollapsed = observableOf(false); + }; + DsDynamicRelationGroupComponent.prototype.clear = function () { + if (this.editMode) { + this.selectedChipItem.editMode = false; + this.selectedChipItem = null; + this.editMode = false; + } + this.resetForm(); + if (!this.model.isEmpty()) { + this.formCollapsed = observableOf(true); + } + }; + DsDynamicRelationGroupComponent.prototype.save = function () { + if (this.editMode) { + this.modifyChip(); + } + else { + this.addToChips(); + } + }; + DsDynamicRelationGroupComponent.prototype.delete = function () { + this.chips.remove(this.selectedChipItem); + this.clear(); + }; + DsDynamicRelationGroupComponent.prototype.addToChips = function () { + if (!this.formRef.formGroup.valid) { + this.formService.validateAllFormFields(this.formRef.formGroup); + return; + } + // Item to add + if (!this.isMandatoryFieldEmpty()) { + var item = this.buildChipItem(); + this.chips.add(item); + this.resetForm(); + } + }; + DsDynamicRelationGroupComponent.prototype.modifyChip = function () { + if (!this.formRef.formGroup.valid) { + this.formService.validateAllFormFields(this.formRef.formGroup); + return; + } + if (!this.isMandatoryFieldEmpty()) { + var item = this.buildChipItem(); + this.chips.update(this.selectedChipItem.id, item); + this.resetForm(); + this.cdr.detectChanges(); + } + }; + DsDynamicRelationGroupComponent.prototype.buildChipItem = function () { + var item = Object.create({}); + this.formModel.forEach(function (row) { + var modelRow = row; + modelRow.group.forEach(function (control) { + item[control.name] = control.value || PLACEHOLDER_PARENT_METADATA; + }); + }); + return item; + }; + DsDynamicRelationGroupComponent.prototype.initChipsFromModelValue = function () { + var _this = this; + var initChipsValue$; + if (this.model.isEmpty()) { + this.initChips([]); + } + else { + initChipsValue$ = observableOf(this.model.value); + // If authority + this.subs.push(initChipsValue$.pipe(flatMap(function (valueModel) { + var returnList = []; + valueModel.forEach(function (valueObj) { + var returnObj = Object.keys(valueObj).map(function (fieldName) { + var return$; + if (isObject(valueObj[fieldName]) && valueObj[fieldName].hasAuthority() && isNotEmpty(valueObj[fieldName].authority)) { + var fieldId = fieldName.replace(/\./g, '_'); + var model = _this.formBuilderService.findById(fieldId, _this.formModel); + var searchOptions = new IntegrationSearchOptions(model.authorityOptions.scope, model.authorityOptions.name, model.authorityOptions.metadata, valueObj[fieldName].authority, model.maxOptions, 1); + return$ = _this.authorityService.getEntryByValue(searchOptions).pipe(map(function (result) { return Object.assign(new FormFieldMetadataValueObject(), valueObj[fieldName], { + otherInformation: result.payload[0].otherInformation + }); })); + } + else { + return$ = observableOf(valueObj[fieldName]); + } + return return$.pipe(map(function (entry) { + var _a; + return (_a = {}, _a[fieldName] = entry, _a); + })); + }); + returnList.push(combineLatest(returnObj)); + }); + return returnList; + }), mergeMap(function (valueListObj, index) { + return valueListObj.pipe(map(function (valueObj) { return ({ + index: index, value: valueObj.reduce(function (acc, value) { return Object.assign({}, acc, value); }) + }); })); + }), scan(function (acc, valueObj) { + if (acc.length === 0) { + acc.push(valueObj.value); + } + else { + acc.splice(valueObj.index, 0, valueObj.value); + } + return acc; + }, []), filter(function (modelValues) { return _this.model.value.length === modelValues.length; })).subscribe(function (modelValue) { + _this.model.valueUpdates.next(modelValue); + _this.initChips(modelValue); + _this.cdr.markForCheck(); + })); + } + }; + DsDynamicRelationGroupComponent.prototype.initChips = function (initChipsValue) { + var _this = this; + this.chips = new Chips(initChipsValue, 'value', this.model.mandatoryField, this.EnvConfig.submission.icons.metadata); + this.subs.push(this.chips.chipsItems + .subscribe(function () { + var items = _this.chips.getChipsItems(); + // Does not emit change if model value is equal to the current value + if (!isEqual(items, _this.model.value)) { + if (!(isEmpty(items) && _this.model.isEmpty())) { + _this.model.valueUpdates.next(items); + _this.change.emit(); + } + } + })); + }; + DsDynamicRelationGroupComponent.prototype.resetForm = function () { + if (this.formRef) { + this.formService.resetForm(this.formRef.formGroup, this.formModel, this.formId); + } + }; + DsDynamicRelationGroupComponent.prototype.ngOnDestroy = function () { + this.subs + .filter(function (sub) { return hasValue(sub); }) + .forEach(function (sub) { return sub.unsubscribe(); }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], DsDynamicRelationGroupComponent.prototype, "formId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicRelationGroupComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", DynamicRelationGroupModel) + ], DsDynamicRelationGroupComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicRelationGroupComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicRelationGroupComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicRelationGroupComponent.prototype, "focus", void 0); + tslib_1.__decorate([ + ViewChild('formRef'), + tslib_1.__metadata("design:type", FormComponent) + ], DsDynamicRelationGroupComponent.prototype, "formRef", void 0); + DsDynamicRelationGroupComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-relation-group', + styleUrls: ['./dynamic-relation-group.component.scss'], + templateUrl: './dynamic-relation-group.component.html', + animations: [shrinkInOut] + }), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, AuthorityService, + FormBuilderService, + FormService, + ChangeDetectorRef, + DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDynamicRelationGroupComponent); + return DsDynamicRelationGroupComponent; +}(DynamicFormControlComponent)); +export { DsDynamicRelationGroupComponent }; +//# sourceMappingURL=dynamic-relation-group.components.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js.map new file mode 100644 index 0000000000..6cc36a1d47 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-relation-group.components.js","sourceRoot":"","sources":["dynamic-relation-group.components.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js new file mode 100644 index 0000000000..6a25e2c6aa --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js @@ -0,0 +1,84 @@ +import * as tslib_1 from "tslib"; +import { serializable } from '@ng-dynamic-forms/core'; +import { DsDynamicInputModel } from '../ds-dynamic-input.model'; +import { isEmpty, isNull } from '../../../../../empty.util'; +export var DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP = 'RELATION'; +export var PLACEHOLDER_PARENT_METADATA = '#PLACEHOLDER_PARENT_METADATA_VALUE#'; +/** + * Dynamic Group Model class + */ +var DynamicRelationGroupModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicRelationGroupModel, _super); + function DynamicRelationGroupModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.type = DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP; + _this.formConfiguration = config.formConfiguration; + _this.mandatoryField = config.mandatoryField; + _this.relationFields = config.relationFields; + _this.scopeUUID = config.scopeUUID; + _this.submissionScope = config.submissionScope; + var value = config.value || []; + _this.valueUpdates.next(value); + return _this; + } + Object.defineProperty(DynamicRelationGroupModel.prototype, "value", { + get: function () { + return this._value; + }, + set: function (value) { + this._value = (isEmpty(value)) ? null : value; + }, + enumerable: true, + configurable: true + }); + DynamicRelationGroupModel.prototype.isEmpty = function () { + var value = this.getGroupValue(); + return (value.length === 1 && isNull(value[0][this.mandatoryField])); + }; + DynamicRelationGroupModel.prototype.getGroupValue = function () { + if (isEmpty(this._value)) { + // If items is empty, last element has been removed + // so emit an empty value that allows to dispatch + // a remove JSON PATCH operation + var emptyItem_1 = Object.create({}); + emptyItem_1[this.mandatoryField] = null; + this.relationFields + .forEach(function (field) { + emptyItem_1[field] = null; + }); + return [emptyItem_1]; + } + return this._value; + }; + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Array) + ], DynamicRelationGroupModel.prototype, "formConfiguration", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicRelationGroupModel.prototype, "mandatoryField", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Array) + ], DynamicRelationGroupModel.prototype, "relationFields", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicRelationGroupModel.prototype, "scopeUUID", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicRelationGroupModel.prototype, "submissionScope", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Array) + ], DynamicRelationGroupModel.prototype, "_value", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicRelationGroupModel.prototype, "type", void 0); + return DynamicRelationGroupModel; +}(DsDynamicInputModel)); +export { DynamicRelationGroupModel }; +//# sourceMappingURL=dynamic-relation-group.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js.map new file mode 100644 index 0000000000..5055917fbf --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-relation-group.model.js","sourceRoot":"","sources":["dynamic-relation-group.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAE5D,MAAM,CAAC,IAAM,wCAAwC,GAAG,UAAU,CAAC;AACnE,MAAM,CAAC,IAAM,2BAA2B,GAAG,qCAAqC,CAAC;AAajF;;GAEG;AACH;IAA+C,qDAAmB;IAShE,mCAAY,MAAuC,EAAE,MAAiC;QAAtF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAStB;QAZwB,UAAI,GAAW,wCAAwC,CAAC;QAK/E,KAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAClD,KAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAC5C,KAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAC5C,KAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,KAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAC9C,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;IAChC,CAAC;IAED,sBAAI,4CAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAA;QACpB,CAAC;aAED,UAAU,KAAK;YACb,IAAI,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAChD,CAAC;;;OAJA;IAMD,2CAAO,GAAP;QACE,IAAM,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,iDAAa,GAAb;QACE,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,mDAAmD;YACnD,iDAAiD;YACjD,gCAAgC;YAChC,IAAM,WAAS,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACpC,WAAS,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;YACtC,IAAI,CAAC,cAAc;iBAChB,OAAO,CAAC,UAAC,KAAK;gBACb,WAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YAC1B,CAAC,CAAC,CAAC;YACL,OAAO,CAAC,WAAS,CAAC,CAAC;SACpB;QACD,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IA/Ce;QAAf,YAAY,EAAE;;wEAAmC;IAClC;QAAf,YAAY,EAAE;;qEAAwB;IACvB;QAAf,YAAY,EAAE;;qEAA0B;IACzB;QAAf,YAAY,EAAE;;gEAAmB;IAClB;QAAf,YAAY,EAAE;;sEAAyB;IACxB;QAAf,YAAY,EAAE;;6DAAe;IACd;QAAf,YAAY,EAAE;;2DAAkE;IA0CnF,gCAAC;CAAA,AAjDD,CAA+C,mBAAmB,GAiDjE;SAjDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js new file mode 100644 index 0000000000..dcc1690dca --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js @@ -0,0 +1,143 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { of as observableOf } from 'rxjs'; +import { catchError, first, tap } from 'rxjs/operators'; +import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +import { DynamicScrollableDropdownModel } from './dynamic-scrollable-dropdown.model'; +import { PageInfo } from '../../../../../../core/shared/page-info.model'; +import { isNull, isUndefined } from '../../../../../empty.util'; +import { AuthorityService } from '../../../../../../core/integration/authority.service'; +import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; +import { IntegrationData } from '../../../../../../core/integration/integration-data'; +var DsDynamicScrollableDropdownComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicScrollableDropdownComponent, _super); + function DsDynamicScrollableDropdownComponent(authorityService, cdr, layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.authorityService = authorityService; + _this.cdr = cdr; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.bindId = true; + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.loading = false; + _this.inputFormatter = function (x) { return x.display || x.value; }; + return _this; + } + DsDynamicScrollableDropdownComponent.prototype.ngOnInit = function () { + var _this = this; + this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata, '', this.model.maxOptions, 1); + this.authorityService.getEntriesByName(this.searchOptions).pipe(catchError(function () { + var emptyResult = new IntegrationData(new PageInfo(), []); + return observableOf(emptyResult); + }), first()) + .subscribe(function (object) { + _this.optionsList = object.payload; + if (_this.model.value) { + _this.setCurrentValue(_this.model.value); + } + _this.pageInfo = object.pageInfo; + _this.cdr.detectChanges(); + }); + }; + DsDynamicScrollableDropdownComponent.prototype.openDropdown = function (sdRef) { + if (!this.model.readOnly) { + sdRef.open(); + } + }; + DsDynamicScrollableDropdownComponent.prototype.onScroll = function () { + var _this = this; + if (!this.loading && this.pageInfo.currentPage <= this.pageInfo.totalPages) { + this.loading = true; + this.searchOptions.currentPage++; + this.authorityService.getEntriesByName(this.searchOptions).pipe(catchError(function () { + var emptyResult = new IntegrationData(new PageInfo(), []); + return observableOf(emptyResult); + }), tap(function () { return _this.loading = false; })) + .subscribe(function (object) { + _this.optionsList = _this.optionsList.concat(object.payload); + _this.pageInfo = object.pageInfo; + _this.cdr.detectChanges(); + }); + } + }; + DsDynamicScrollableDropdownComponent.prototype.onBlur = function (event) { + this.blur.emit(event); + }; + DsDynamicScrollableDropdownComponent.prototype.onFocus = function (event) { + this.focus.emit(event); + }; + DsDynamicScrollableDropdownComponent.prototype.onSelect = function (event) { + this.group.markAsDirty(); + this.model.valueUpdates.next(event); + this.change.emit(event); + this.setCurrentValue(event); + }; + DsDynamicScrollableDropdownComponent.prototype.onToggle = function (sdRef) { + if (sdRef.isOpen()) { + this.focus.emit(event); + } + else { + this.blur.emit(event); + } + }; + DsDynamicScrollableDropdownComponent.prototype.setCurrentValue = function (value) { + var result; + if (isUndefined(value) || isNull(value)) { + result = ''; + } + else if (typeof value === 'string') { + result = value; + } + else { + for (var _i = 0, _a = this.optionsList; _i < _a.length; _i++) { + var item = _a[_i]; + if (value.value === item.value) { + result = this.inputFormatter(item); + break; + } + } + } + this.currentValue = observableOf(result); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicScrollableDropdownComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicScrollableDropdownComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", DynamicScrollableDropdownModel) + ], DsDynamicScrollableDropdownComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicScrollableDropdownComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicScrollableDropdownComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicScrollableDropdownComponent.prototype, "focus", void 0); + DsDynamicScrollableDropdownComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-scrollable-dropdown', + styleUrls: ['./dynamic-scrollable-dropdown.component.scss'], + templateUrl: './dynamic-scrollable-dropdown.component.html' + }), + tslib_1.__metadata("design:paramtypes", [AuthorityService, + ChangeDetectorRef, + DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDynamicScrollableDropdownComponent); + return DsDynamicScrollableDropdownComponent; +}(DynamicFormControlComponent)); +export { DsDynamicScrollableDropdownComponent }; +//# sourceMappingURL=dynamic-scrollable-dropdown.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js.map new file mode 100644 index 0000000000..6ea73aafda --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-scrollable-dropdown.component.js","sourceRoot":"","sources":["dynamic-scrollable-dropdown.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js new file mode 100644 index 0000000000..410f1c56b4 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { AUTOCOMPLETE_OFF, serializable } from '@ng-dynamic-forms/core'; +import { DsDynamicInputModel } from '../ds-dynamic-input.model'; +export var DYNAMIC_FORM_CONTROL_TYPE_SCROLLABLE_DROPDOWN = 'SCROLLABLE_DROPDOWN'; +var DynamicScrollableDropdownModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicScrollableDropdownModel, _super); + function DynamicScrollableDropdownModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.type = DYNAMIC_FORM_CONTROL_TYPE_SCROLLABLE_DROPDOWN; + _this.autoComplete = AUTOCOMPLETE_OFF; + _this.authorityOptions = config.authorityOptions; + _this.maxOptions = config.maxOptions || 10; + return _this; + } + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Number) + ], DynamicScrollableDropdownModel.prototype, "maxOptions", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicScrollableDropdownModel.prototype, "type", void 0); + return DynamicScrollableDropdownModel; +}(DsDynamicInputModel)); +export { DynamicScrollableDropdownModel }; +//# sourceMappingURL=dynamic-scrollable-dropdown.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js.map new file mode 100644 index 0000000000..1cefa8999e --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-scrollable-dropdown.model.js","sourceRoot":"","sources":["dynamic-scrollable-dropdown.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAG3F,MAAM,CAAC,IAAM,6CAA6C,GAAG,qBAAqB,CAAC;AAQnF;IAAoD,0DAAmB;IAKrE,wCAAY,MAA4C,EAAE,MAAiC;QAA3F,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAKtB;QATwB,UAAI,GAAW,6CAA6C,CAAC;QAMpF,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrC,KAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;;IAC5C,CAAC;IAVe;QAAf,YAAY,EAAE;;sEAAoB;IACnB;QAAf,YAAY,EAAE;;gEAAuE;IAWxF,qCAAC;CAAA,AAdD,CAAoD,mBAAmB,GActE;SAdY,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js new file mode 100644 index 0000000000..334a6a8860 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js @@ -0,0 +1,188 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Inject, Input, Output, ViewChild } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +import { of as observableOf, Observable } from 'rxjs'; +import { catchError, debounceTime, distinctUntilChanged, tap, switchMap, map, merge } from 'rxjs/operators'; +import { NgbTypeahead } from '@ng-bootstrap/ng-bootstrap'; +import { isEqual } from 'lodash'; +import { AuthorityService } from '../../../../../../core/integration/authority.service'; +import { DynamicTagModel } from './dynamic-tag.model'; +import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; +import { Chips } from '../../../../../chips/models/chips.model'; +import { hasValue, isNotEmpty } from '../../../../../empty.util'; +import { GLOBAL_CONFIG } from '../../../../../../../config'; +var DsDynamicTagComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicTagComponent, _super); + function DsDynamicTagComponent(EnvConfig, authorityService, cdr, layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.EnvConfig = EnvConfig; + _this.authorityService = authorityService; + _this.cdr = cdr; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.bindId = true; + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.searching = false; + _this.searchFailed = false; + _this.hideSearchingWhenUnsubscribed = new Observable(function () { return function () { return _this.changeSearchingStatus(false); }; }); + _this.formatter = function (x) { return x.display; }; + _this.search = function (text$) { + return text$.pipe(debounceTime(300), distinctUntilChanged(), tap(function () { return _this.changeSearchingStatus(true); }), switchMap(function (term) { + if (term === '' || term.length < _this.model.minChars) { + return observableOf({ list: [] }); + } + else { + _this.searchOptions.query = term; + return _this.authorityService.getEntriesByName(_this.searchOptions).pipe(map(function (authorities) { + // @TODO Pagination for authority is not working, to refactor when it will be fixed + return { + list: authorities.payload, + pageInfo: authorities.pageInfo + }; + }), tap(function () { return _this.searchFailed = false; }), catchError(function () { + _this.searchFailed = true; + return observableOf({ list: [] }); + })); + } + }), map(function (results) { return results.list; }), tap(function () { return _this.changeSearchingStatus(false); }), merge(_this.hideSearchingWhenUnsubscribed)); + }; + return _this; + } + DsDynamicTagComponent.prototype.ngOnInit = function () { + var _this = this; + this.hasAuthority = this.model.authorityOptions && hasValue(this.model.authorityOptions.name); + if (this.hasAuthority) { + this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata); + } + this.chips = new Chips(this.model.value, 'display', null, this.EnvConfig.submission.icons.metadata); + this.chips.chipsItems + .subscribe(function (subItems) { + var items = _this.chips.getChipsItems(); + // Does not emit change if model value is equal to the current value + if (!isEqual(items, _this.model.value)) { + _this.model.valueUpdates.next(items); + _this.change.emit(event); + } + }); + }; + DsDynamicTagComponent.prototype.changeSearchingStatus = function (status) { + this.searching = status; + this.cdr.detectChanges(); + }; + DsDynamicTagComponent.prototype.onInput = function (event) { + if (event.data) { + this.group.markAsDirty(); + } + this.cdr.detectChanges(); + }; + DsDynamicTagComponent.prototype.onBlur = function (event) { + if (isNotEmpty(this.currentValue) && !this.instance.isPopupOpen()) { + this.addTagsToChips(); + } + this.blur.emit(event); + }; + DsDynamicTagComponent.prototype.onFocus = function (event) { + this.focus.emit(event); + }; + DsDynamicTagComponent.prototype.onSelectItem = function (event) { + var _this = this; + this.chips.add(event.item); + // this.group.controls[this.model.id].setValue(this.model.value); + this.updateModel(event); + setTimeout(function () { + // Reset the input text after x ms, mandatory or the formatter overwrite it + _this.currentValue = null; + _this.cdr.detectChanges(); + }, 50); + }; + DsDynamicTagComponent.prototype.updateModel = function (event) { + this.model.valueUpdates.next(this.chips.getChipsItems()); + this.change.emit(event); + }; + DsDynamicTagComponent.prototype.onKeyUp = function (event) { + if (event.keyCode === 13 || event.keyCode === 188) { + event.preventDefault(); + // Key: Enter or ',' or ';' + this.addTagsToChips(); + event.stopPropagation(); + } + }; + DsDynamicTagComponent.prototype.preventEventsPropagation = function (event) { + event.stopPropagation(); + if (event.keyCode === 13) { + event.preventDefault(); + } + }; + DsDynamicTagComponent.prototype.addTagsToChips = function () { + var _this = this; + if (hasValue(this.currentValue) && (!this.hasAuthority || !this.model.authorityOptions.closed)) { + var res = []; + res = this.currentValue.split(','); + var res1_1 = []; + res.forEach(function (item) { + item.split(';').forEach(function (i) { + res1_1.push(i); + }); + }); + res1_1.forEach(function (c) { + c = c.trim(); + if (c.length > 0) { + _this.chips.add(c); + } + }); + // this.currentValue = ''; + setTimeout(function () { + // Reset the input text after x ms, mandatory or the formatter overwrite it + _this.currentValue = null; + _this.cdr.detectChanges(); + }, 50); + this.updateModel(event); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicTagComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicTagComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", DynamicTagModel) + ], DsDynamicTagComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicTagComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicTagComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicTagComponent.prototype, "focus", void 0); + tslib_1.__decorate([ + ViewChild('instance'), + tslib_1.__metadata("design:type", NgbTypeahead) + ], DsDynamicTagComponent.prototype, "instance", void 0); + DsDynamicTagComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-tag', + styleUrls: ['./dynamic-tag.component.scss'], + templateUrl: './dynamic-tag.component.html' + }), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, AuthorityService, + ChangeDetectorRef, + DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDynamicTagComponent); + return DsDynamicTagComponent; +}(DynamicFormControlComponent)); +export { DsDynamicTagComponent }; +//# sourceMappingURL=dynamic-tag.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js.map new file mode 100644 index 0000000000..25270e634a --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-tag.component.js","sourceRoot":"","sources":["dynamic-tag.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js new file mode 100644 index 0000000000..3a22414e4f --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js @@ -0,0 +1,31 @@ +import * as tslib_1 from "tslib"; +import { AUTOCOMPLETE_OFF, serializable } from '@ng-dynamic-forms/core'; +import { DsDynamicInputModel } from '../ds-dynamic-input.model'; +export var DYNAMIC_FORM_CONTROL_TYPE_TAG = 'TAG'; +var DynamicTagModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicTagModel, _super); + function DynamicTagModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.type = DYNAMIC_FORM_CONTROL_TYPE_TAG; + _this.autoComplete = AUTOCOMPLETE_OFF; + _this.minChars = config.minChars || 3; + var value = config.value || []; + _this.valueUpdates.next(value); + return _this; + } + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Number) + ], DynamicTagModel.prototype, "minChars", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Array) + ], DynamicTagModel.prototype, "value", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicTagModel.prototype, "type", void 0); + return DynamicTagModel; +}(DsDynamicInputModel)); +export { DynamicTagModel }; +//# sourceMappingURL=dynamic-tag.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js.map new file mode 100644 index 0000000000..fe7928678d --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-tag.model.js","sourceRoot":"","sources":["dynamic-tag.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAG3F,MAAM,CAAC,IAAM,6BAA6B,GAAG,KAAK,CAAC;AAOnD;IAAqC,2CAAmB;IAMtD,yBAAY,MAA6B,EAAE,MAAiC;QAA5E,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAMtB;QAVwB,UAAI,GAAW,6BAA6B,CAAC;QAMpE,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrC,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;QACrC,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;;IAC/B,CAAC;IAZe;QAAf,YAAY,EAAE;;qDAAkB;IACjB;QAAf,YAAY,EAAE;;kDAAc;IACb;QAAf,YAAY,EAAE;;iDAAuD;IAYxE,sBAAC;CAAA,AAhBD,CAAqC,mBAAmB,GAgBvD;SAhBY,eAAe"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js new file mode 100644 index 0000000000..8d4df0ab2b --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js @@ -0,0 +1,138 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; +import { catchError, debounceTime, distinctUntilChanged, filter, map, merge, switchMap, tap } from 'rxjs/operators'; +import { Observable, of as observableOf, Subject } from 'rxjs'; +import { AuthorityService } from '../../../../../../core/integration/authority.service'; +import { DynamicTypeaheadModel } from './dynamic-typeahead.model'; +import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; +import { isEmpty, isNotEmpty } from '../../../../../empty.util'; +import { FormFieldMetadataValueObject } from '../../../models/form-field-metadata-value.model'; +var DsDynamicTypeaheadComponent = /** @class */ (function (_super) { + tslib_1.__extends(DsDynamicTypeaheadComponent, _super); + function DsDynamicTypeaheadComponent(authorityService, cdr, layoutService, validationService) { + var _this = _super.call(this, layoutService, validationService) || this; + _this.authorityService = authorityService; + _this.cdr = cdr; + _this.layoutService = layoutService; + _this.validationService = validationService; + _this.bindId = true; + _this.blur = new EventEmitter(); + _this.change = new EventEmitter(); + _this.focus = new EventEmitter(); + _this.searching = false; + _this.searchFailed = false; + _this.hideSearchingWhenUnsubscribed$ = new Observable(function () { return function () { return _this.changeSearchingStatus(false); }; }); + _this.click$ = new Subject(); + _this.formatter = function (x) { + return (typeof x === 'object') ? x.display : x; + }; + _this.search = function (text$) { + return text$.pipe(merge(_this.click$), debounceTime(300), distinctUntilChanged(), tap(function () { return _this.changeSearchingStatus(true); }), switchMap(function (term) { + if (term === '' || term.length < _this.model.minChars) { + return observableOf({ list: [] }); + } + else { + _this.searchOptions.query = term; + return _this.authorityService.getEntriesByName(_this.searchOptions).pipe(map(function (authorities) { + // @TODO Pagination for authority is not working, to refactor when it will be fixed + return { + list: authorities.payload, + pageInfo: authorities.pageInfo + }; + }), tap(function () { return _this.searchFailed = false; }), catchError(function () { + _this.searchFailed = true; + return observableOf({ list: [] }); + })); + } + }), map(function (results) { return results.list; }), tap(function () { return _this.changeSearchingStatus(false); }), merge(_this.hideSearchingWhenUnsubscribed$)); + }; + return _this; + } + DsDynamicTypeaheadComponent.prototype.ngOnInit = function () { + var _this = this; + this.currentValue = this.model.value; + this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata); + this.group.get(this.model.id).valueChanges.pipe(filter(function (value) { return _this.currentValue !== value; })) + .subscribe(function (value) { + _this.currentValue = value; + }); + }; + DsDynamicTypeaheadComponent.prototype.changeSearchingStatus = function (status) { + this.searching = status; + this.cdr.detectChanges(); + }; + DsDynamicTypeaheadComponent.prototype.onInput = function (event) { + if (!this.model.authorityOptions.closed && isNotEmpty(event.target.value)) { + this.inputValue = new FormFieldMetadataValueObject(event.target.value); + this.model.valueUpdates.next(this.inputValue); + } + }; + DsDynamicTypeaheadComponent.prototype.onBlur = function (event) { + if (!this.model.authorityOptions.closed && isNotEmpty(this.inputValue)) { + this.change.emit(this.inputValue); + this.inputValue = null; + } + this.blur.emit(event); + }; + DsDynamicTypeaheadComponent.prototype.onChange = function (event) { + event.stopPropagation(); + if (isEmpty(this.currentValue)) { + this.model.valueUpdates.next(null); + this.change.emit(null); + } + }; + DsDynamicTypeaheadComponent.prototype.onFocus = function (event) { + this.focus.emit(event); + }; + DsDynamicTypeaheadComponent.prototype.onSelectItem = function (event) { + this.inputValue = null; + this.currentValue = event.item; + this.model.valueUpdates.next(event.item); + this.change.emit(event.item); + }; + DsDynamicTypeaheadComponent.prototype.whenClickOnConfidenceNotAccepted = function (confidence) { + if (!this.model.readOnly) { + this.click$.next(this.formatter(this.currentValue)); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DsDynamicTypeaheadComponent.prototype, "bindId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], DsDynamicTypeaheadComponent.prototype, "group", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", DynamicTypeaheadModel) + ], DsDynamicTypeaheadComponent.prototype, "model", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicTypeaheadComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicTypeaheadComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], DsDynamicTypeaheadComponent.prototype, "focus", void 0); + DsDynamicTypeaheadComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-dynamic-typeahead', + styleUrls: ['./dynamic-typeahead.component.scss'], + templateUrl: './dynamic-typeahead.component.html' + }), + tslib_1.__metadata("design:paramtypes", [AuthorityService, + ChangeDetectorRef, + DynamicFormLayoutService, + DynamicFormValidationService]) + ], DsDynamicTypeaheadComponent); + return DsDynamicTypeaheadComponent; +}(DynamicFormControlComponent)); +export { DsDynamicTypeaheadComponent }; +//# sourceMappingURL=dynamic-typeahead.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js.map new file mode 100644 index 0000000000..5204b6ced2 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-typeahead.component.js","sourceRoot":"","sources":["dynamic-typeahead.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js new file mode 100644 index 0000000000..d30197cde3 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { AUTOCOMPLETE_OFF, serializable } from '@ng-dynamic-forms/core'; +import { DsDynamicInputModel } from '../ds-dynamic-input.model'; +export var DYNAMIC_FORM_CONTROL_TYPE_TYPEAHEAD = 'TYPEAHEAD'; +var DynamicTypeaheadModel = /** @class */ (function (_super) { + tslib_1.__extends(DynamicTypeaheadModel, _super); + function DynamicTypeaheadModel(config, layout) { + var _this = _super.call(this, config, layout) || this; + _this.type = DYNAMIC_FORM_CONTROL_TYPE_TYPEAHEAD; + _this.autoComplete = AUTOCOMPLETE_OFF; + _this.minChars = config.minChars || 3; + return _this; + } + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", Number) + ], DynamicTypeaheadModel.prototype, "minChars", void 0); + tslib_1.__decorate([ + serializable(), + tslib_1.__metadata("design:type", String) + ], DynamicTypeaheadModel.prototype, "type", void 0); + return DynamicTypeaheadModel; +}(DsDynamicInputModel)); +export { DynamicTypeaheadModel }; +//# sourceMappingURL=dynamic-typeahead.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js.map new file mode 100644 index 0000000000..3fe4e6e562 --- /dev/null +++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dynamic-typeahead.model.js","sourceRoot":"","sources":["dynamic-typeahead.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAE3F,MAAM,CAAC,IAAM,mCAAmC,GAAG,WAAW,CAAC;AAO/D;IAA2C,iDAAmB;IAK5D,+BAAY,MAAqC,EAAE,MAAiC;QAApF,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAItB;QARwB,UAAI,GAAW,mCAAmC,CAAC;QAM1E,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrC,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;;IACvC,CAAC;IATe;QAAf,YAAY,EAAE;;2DAAkB;IACjB;QAAf,YAAY,EAAE;;uDAA6D;IAU9E,4BAAC;CAAA,AAbD,CAA2C,mBAAmB,GAa7D;SAbY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/form-builder.service.js b/src/app/shared/form/builder/form-builder.service.js new file mode 100644 index 0000000000..e2b831b729 --- /dev/null +++ b/src/app/shared/form/builder/form-builder.service.js @@ -0,0 +1,256 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { DYNAMIC_FORM_CONTROL_TYPE_ARRAY, DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP, DYNAMIC_FORM_CONTROL_TYPE_GROUP, DYNAMIC_FORM_CONTROL_TYPE_INPUT, DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP, DynamicFormService, JSONUtils, } from '@ng-dynamic-forms/core'; +import { isObject, isString, mergeWith } from 'lodash'; +import { hasValue, isEmpty, isNotEmpty, isNotNull, isNotUndefined, isNull } from '../../empty.util'; +import { DYNAMIC_FORM_CONTROL_TYPE_TAG } from './ds-dynamic-form-ui/models/tag/dynamic-tag.model'; +import { RowParser } from './parsers/row-parser'; +import { DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP } from './ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; +import { FormFieldMetadataValueObject } from './models/form-field-metadata-value.model'; +import { isNgbDateStruct } from '../../date.util'; +var FormBuilderService = /** @class */ (function (_super) { + tslib_1.__extends(FormBuilderService, _super); + function FormBuilderService() { + return _super !== null && _super.apply(this, arguments) || this; + } + FormBuilderService.prototype.findById = function (id, groupModel, arrayIndex) { + var _this = this; + if (arrayIndex === void 0) { arrayIndex = null; } + var result = null; + var findByIdFn = function (findId, findGroupModel, findArrayIndex) { + for (var _i = 0, findGroupModel_1 = findGroupModel; _i < findGroupModel_1.length; _i++) { + var controlModel = findGroupModel_1[_i]; + if (controlModel.id === findId) { + if (_this.isArrayGroup(controlModel) && isNotNull(findArrayIndex)) { + result = controlModel.get(findArrayIndex); + } + else { + result = controlModel; + } + break; + } + if (_this.isGroup(controlModel)) { + findByIdFn(findId, controlModel.group, findArrayIndex); + } + if (_this.isArrayGroup(controlModel) + && (isNull(findArrayIndex) || controlModel.size > (findArrayIndex))) { + var index = (isNull(findArrayIndex)) ? 0 : findArrayIndex; + findByIdFn(findId, controlModel.get(index).group, index); + } + } + }; + findByIdFn(id, groupModel, arrayIndex); + return result; + }; + FormBuilderService.prototype.clearAllModelsValue = function (groupModel) { + var _this = this; + var iterateControlModels = function (findGroupModel) { + for (var _i = 0, findGroupModel_2 = findGroupModel; _i < findGroupModel_2.length; _i++) { + var controlModel = findGroupModel_2[_i]; + if (_this.isGroup(controlModel)) { + iterateControlModels(controlModel.group); + continue; + } + if (_this.isArrayGroup(controlModel)) { + iterateControlModels(controlModel.groupFactory()); + continue; + } + if (controlModel.hasOwnProperty('valueUpdates')) { + controlModel.valueUpdates.next(undefined); + } + } + }; + iterateControlModels(groupModel); + }; + FormBuilderService.prototype.getValueFromModel = function (groupModel) { + var _this = this; + var result = Object.create({}); + var customizer = function (objValue, srcValue) { + if (Array.isArray(objValue)) { + return objValue.concat(srcValue); + } + }; + var normalizeValue = function (controlModel, controlValue, controlModelIndex) { + var controlLanguage = controlModel.hasLanguages ? controlModel.language : null; + if (isString(controlValue)) { + return new FormFieldMetadataValueObject(controlValue, controlLanguage, null, null, controlModelIndex); + } + else if (isObject(controlValue)) { + var authority = controlValue.authority || controlValue.id || null; + var place = controlModelIndex || controlValue.place; + if (isNgbDateStruct(controlValue)) { + return new FormFieldMetadataValueObject(controlValue, controlLanguage, authority, controlValue, place); + } + else { + return new FormFieldMetadataValueObject(controlValue.value, controlLanguage, authority, controlValue.display, place, controlValue.confidence); + } + } + }; + var iterateControlModels = function (findGroupModel, controlModelIndex) { + if (controlModelIndex === void 0) { controlModelIndex = 0; } + var iterateResult = Object.create({}); + var _loop_1 = function (controlModel) { + if (_this.isRowGroup(controlModel) && !_this.isCustomOrListGroup(controlModel)) { + iterateResult = mergeWith(iterateResult, iterateControlModels(controlModel.group), customizer); + return "continue"; + } + if (_this.isGroup(controlModel) && !_this.isCustomOrListGroup(controlModel)) { + iterateResult[controlModel.name] = iterateControlModels(controlModel.group); + return "continue"; + } + if (_this.isRowArrayGroup(controlModel)) { + for (var _i = 0, _a = controlModel.groups; _i < _a.length; _i++) { + var arrayItemModel = _a[_i]; + iterateResult = mergeWith(iterateResult, iterateControlModels(arrayItemModel.group, arrayItemModel.index), customizer); + } + return "continue"; + } + if (_this.isArrayGroup(controlModel)) { + iterateResult[controlModel.name] = []; + for (var _b = 0, _c = controlModel.groups; _b < _c.length; _b++) { + var arrayItemModel = _c[_b]; + iterateResult[controlModel.name].push(iterateControlModels(arrayItemModel.group, arrayItemModel.index)); + } + return "continue"; + } + var controlId = void 0; + // Get the field's name + if (_this.isQualdropGroup(controlModel)) { + // If is instance of DynamicQualdropModel take the qualdrop id as field's name + controlId = controlModel.qualdropId; + } + else { + controlId = controlModel.name; + } + if (_this.isRelationGroup(controlModel)) { + var values = controlModel.getGroupValue(); + values.forEach(function (groupValue, groupIndex) { + var newGroupValue = Object.create({}); + Object.keys(groupValue) + .forEach(function (key) { + var normValue = normalizeValue(controlModel, groupValue[key], groupIndex); + if (isNotEmpty(normValue) && normValue.hasValue()) { + if (iterateResult.hasOwnProperty(key)) { + iterateResult[key].push(normValue); + } + else { + iterateResult[key] = [normValue]; + } + } + }); + }); + } + else if (isNotUndefined(controlModel.value) && isNotEmpty(controlModel.value)) { + var controlArrayValue_1 = []; + // Normalize control value as an array of FormFieldMetadataValueObject + var values = Array.isArray(controlModel.value) ? controlModel.value : [controlModel.value]; + values.forEach(function (controlValue) { + controlArrayValue_1.push(normalizeValue(controlModel, controlValue, controlModelIndex)); + }); + if (controlId && iterateResult.hasOwnProperty(controlId) && isNotNull(iterateResult[controlId])) { + iterateResult[controlId] = iterateResult[controlId].concat(controlArrayValue_1); + } + else { + iterateResult[controlId] = isNotEmpty(controlArrayValue_1) ? controlArrayValue_1 : null; + } + } + }; + // Iterate over all group's controls + for (var _i = 0, findGroupModel_3 = findGroupModel; _i < findGroupModel_3.length; _i++) { + var controlModel = findGroupModel_3[_i]; + _loop_1(controlModel); + } + return iterateResult; + }; + result = iterateControlModels(groupModel); + return result; + }; + FormBuilderService.prototype.modelFromConfiguration = function (json, scopeUUID, initFormValues, submissionScope, readOnly) { + if (initFormValues === void 0) { initFormValues = {}; } + if (readOnly === void 0) { readOnly = false; } + var rows = []; + var rawData = typeof json === 'string' ? JSON.parse(json, JSONUtils.parseReviver) : json; + if (rawData.rows && !isEmpty(rawData.rows)) { + rawData.rows.forEach(function (currentRow) { + var rowParsed = new RowParser(currentRow, scopeUUID, initFormValues, submissionScope, readOnly).parse(); + if (isNotNull(rowParsed)) { + if (Array.isArray(rowParsed)) { + rows = rows.concat(rowParsed); + } + else { + rows.push(rowParsed); + } + } + }); + } + return rows; + }; + FormBuilderService.prototype.isModelInCustomGroup = function (model) { + return this.isCustomGroup(model.parent); + }; + FormBuilderService.prototype.hasArrayGroupValue = function (model) { + return model && (this.isListGroup(model) || model.type === DYNAMIC_FORM_CONTROL_TYPE_TAG); + }; + FormBuilderService.prototype.hasMappedGroupValue = function (model) { + return (this.isQualdropGroup(model.parent) + || this.isRelationGroup(model.parent)); + }; + FormBuilderService.prototype.isGroup = function (model) { + return model && (model.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP || model.type === DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP); + }; + FormBuilderService.prototype.isQualdropGroup = function (model) { + return (model && model.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP && hasValue(model.qualdropId)); + }; + FormBuilderService.prototype.isCustomGroup = function (model) { + return model && (model.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP && model.isCustomGroup === true); + }; + FormBuilderService.prototype.isRowGroup = function (model) { + return model && (model.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP && model.isRowGroup === true); + }; + FormBuilderService.prototype.isCustomOrListGroup = function (model) { + return model && + (this.isCustomGroup(model) + || this.isListGroup(model)); + }; + FormBuilderService.prototype.isListGroup = function (model) { + return model && + ((model.type === DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP && model.isListGroup === true) + || (model.type === DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP && model.isListGroup === true)); + }; + FormBuilderService.prototype.isRelationGroup = function (model) { + return model && model.type === DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP; + }; + FormBuilderService.prototype.isRowArrayGroup = function (model) { + return model.type === DYNAMIC_FORM_CONTROL_TYPE_ARRAY && model.isRowArray === true; + }; + FormBuilderService.prototype.isArrayGroup = function (model) { + return model.type === DYNAMIC_FORM_CONTROL_TYPE_ARRAY; + }; + FormBuilderService.prototype.isInputModel = function (model) { + return model.type === DYNAMIC_FORM_CONTROL_TYPE_INPUT; + }; + FormBuilderService.prototype.getFormControlById = function (id, formGroup, groupModel, index) { + if (index === void 0) { index = 0; } + var fieldModel = this.findById(id, groupModel, index); + return isNotEmpty(fieldModel) ? formGroup.get(this.getPath(fieldModel)) : null; + }; + FormBuilderService.prototype.getId = function (model) { + var tempModel; + if (this.isArrayGroup(model)) { + return model.index.toString(); + } + else if (this.isModelInCustomGroup(model)) { + tempModel = model.parent; + } + else { + tempModel = model; + } + return (tempModel.id !== tempModel.name) ? tempModel.name : tempModel.id; + }; + FormBuilderService = tslib_1.__decorate([ + Injectable() + ], FormBuilderService); + return FormBuilderService; +}(DynamicFormService)); +export { FormBuilderService }; +//# sourceMappingURL=form-builder.service.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/form-builder.service.js.map b/src/app/shared/form/builder/form-builder.service.js.map new file mode 100644 index 0000000000..7af33e3ea8 --- /dev/null +++ b/src/app/shared/form/builder/form-builder.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form-builder.service.js","sourceRoot":"","sources":["form-builder.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-language-value.model.js b/src/app/shared/form/builder/models/form-field-language-value.model.js new file mode 100644 index 0000000000..656b17b100 --- /dev/null +++ b/src/app/shared/form/builder/models/form-field-language-value.model.js @@ -0,0 +1,9 @@ +var FormFieldLanguageValueObject = /** @class */ (function () { + function FormFieldLanguageValueObject(value, language) { + this.value = value; + this.language = language; + } + return FormFieldLanguageValueObject; +}()); +export { FormFieldLanguageValueObject }; +//# sourceMappingURL=form-field-language-value.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-language-value.model.js.map b/src/app/shared/form/builder/models/form-field-language-value.model.js.map new file mode 100644 index 0000000000..eb3f43b6b9 --- /dev/null +++ b/src/app/shared/form/builder/models/form-field-language-value.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form-field-language-value.model.js","sourceRoot":"","sources":["form-field-language-value.model.ts"],"names":[],"mappings":"AAAA;IAIE,sCAAY,KAAa,EAAE,QAAgB;QACzC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IACH,mCAAC;AAAD,CAAC,AARD,IAQC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-metadata-value.model.js b/src/app/shared/form/builder/models/form-field-metadata-value.model.js new file mode 100644 index 0000000000..9bb2c30162 --- /dev/null +++ b/src/app/shared/form/builder/models/form-field-metadata-value.model.js @@ -0,0 +1,49 @@ +import { isEmpty, isNotEmpty, isNotNull } from '../../../empty.util'; +import { ConfidenceType } from '../../../../core/integration/models/confidence-type'; +import { PLACEHOLDER_PARENT_METADATA } from '../ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; +var FormFieldMetadataValueObject = /** @class */ (function () { + function FormFieldMetadataValueObject(value, language, authority, display, place, confidence, otherInformation, metadata) { + if (value === void 0) { value = null; } + if (language === void 0) { language = null; } + if (authority === void 0) { authority = null; } + if (display === void 0) { display = null; } + if (place === void 0) { place = 0; } + if (confidence === void 0) { confidence = null; } + if (otherInformation === void 0) { otherInformation = null; } + if (metadata === void 0) { metadata = null; } + this.value = isNotNull(value) ? ((typeof value === 'string') ? value.trim() : value) : null; + this.language = language; + this.authority = authority; + this.display = display || value; + this.confidence = confidence; + if (authority != null && isEmpty(confidence)) { + this.confidence = ConfidenceType.CF_ACCEPTED; + } + else if (isNotEmpty(confidence)) { + this.confidence = confidence; + } + else { + this.confidence = ConfidenceType.CF_UNSET; + } + this.place = place; + if (isNotEmpty(metadata)) { + this.metadata = metadata; + } + this.otherInformation = otherInformation; + } + FormFieldMetadataValueObject.prototype.hasAuthority = function () { + return isNotEmpty(this.authority); + }; + FormFieldMetadataValueObject.prototype.hasValue = function () { + return isNotEmpty(this.value); + }; + FormFieldMetadataValueObject.prototype.hasOtherInformation = function () { + return isNotEmpty(this.otherInformation); + }; + FormFieldMetadataValueObject.prototype.hasPlaceholder = function () { + return this.hasValue() && this.value === PLACEHOLDER_PARENT_METADATA; + }; + return FormFieldMetadataValueObject; +}()); +export { FormFieldMetadataValueObject }; +//# sourceMappingURL=form-field-metadata-value.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-metadata-value.model.js.map b/src/app/shared/form/builder/models/form-field-metadata-value.model.js.map new file mode 100644 index 0000000000..66e2488629 --- /dev/null +++ b/src/app/shared/form/builder/models/form-field-metadata-value.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form-field-metadata-value.model.js","sourceRoot":"","sources":["form-field-metadata-value.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,2BAA2B,EAAE,MAAM,0EAA0E,CAAC;AAOvH;IAYE,sCAAY,KAAiB,EACjB,QAAoB,EACpB,SAAwB,EACxB,OAAsB,EACtB,KAAiB,EACjB,UAAyB,EACzB,gBAA4B,EAC5B,QAAuB;QAPvB,sBAAA,EAAA,YAAiB;QACjB,yBAAA,EAAA,eAAoB;QACpB,0BAAA,EAAA,gBAAwB;QACxB,wBAAA,EAAA,cAAsB;QACtB,sBAAA,EAAA,SAAiB;QACjB,2BAAA,EAAA,iBAAyB;QACzB,iCAAA,EAAA,uBAA4B;QAC5B,yBAAA,EAAA,eAAuB;QACjC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5F,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,KAAK,CAAC;QAEhC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;YAC5C,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,WAAW,CAAC;SAC9C;aAAM,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;YACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC;SAC3C;QAED,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;YACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC1B;QAED,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED,mDAAY,GAAZ;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,+CAAQ,GAAR;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,0DAAmB,GAAnB;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC;IAED,qDAAc,GAAd;QACE,OAAO,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,2BAA2B,CAAC;IACvE,CAAC;IACH,mCAAC;AAAD,CAAC,AAzDD,IAyDC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-previous-value-object.js b/src/app/shared/form/builder/models/form-field-previous-value-object.js new file mode 100644 index 0000000000..60721ae1c3 --- /dev/null +++ b/src/app/shared/form/builder/models/form-field-previous-value-object.js @@ -0,0 +1,39 @@ +import { isEqual } from 'lodash'; +var FormFieldPreviousValueObject = /** @class */ (function () { + function FormFieldPreviousValueObject(path, value) { + if (path === void 0) { path = null; } + if (value === void 0) { value = null; } + this._path = path; + this._value = value; + } + Object.defineProperty(FormFieldPreviousValueObject.prototype, "path", { + get: function () { + return this._path; + }, + set: function (path) { + this._path = path; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(FormFieldPreviousValueObject.prototype, "value", { + get: function () { + return this._value; + }, + set: function (value) { + this._value = value; + }, + enumerable: true, + configurable: true + }); + FormFieldPreviousValueObject.prototype.delete = function () { + this._value = null; + this._path = null; + }; + FormFieldPreviousValueObject.prototype.isPathEqual = function (path) { + return this._path && isEqual(this._path, path); + }; + return FormFieldPreviousValueObject; +}()); +export { FormFieldPreviousValueObject }; +//# sourceMappingURL=form-field-previous-value-object.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-previous-value-object.js.map b/src/app/shared/form/builder/models/form-field-previous-value-object.js.map new file mode 100644 index 0000000000..0921d50355 --- /dev/null +++ b/src/app/shared/form/builder/models/form-field-previous-value-object.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form-field-previous-value-object.js","sourceRoot":"","sources":["form-field-previous-value-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC;IAKE,sCAAY,IAAkB,EAAE,KAAiB;QAArC,qBAAA,EAAA,WAAkB;QAAE,sBAAA,EAAA,YAAiB;QAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,sBAAI,8CAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aAED,UAAS,IAAW;YAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,CAAC;;;OAJA;IAMD,sBAAI,+CAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aAED,UAAU,KAAU;YAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;;;OAJA;IAMM,6CAAM,GAAb;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAEM,kDAAW,GAAlB,UAAmB,IAAI;QACrB,OAAO,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IACH,mCAAC;AAAD,CAAC,AAlCD,IAkCC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field.model.js b/src/app/shared/form/builder/models/form-field.model.js new file mode 100644 index 0000000000..55f7a7b4fb --- /dev/null +++ b/src/app/shared/form/builder/models/form-field.model.js @@ -0,0 +1,57 @@ +import * as tslib_1 from "tslib"; +import { autoserialize } from 'cerialize'; +var FormFieldModel = /** @class */ (function () { + function FormFieldModel() { + } + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], FormFieldModel.prototype, "hints", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], FormFieldModel.prototype, "label", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Array) + ], FormFieldModel.prototype, "languageCodes", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], FormFieldModel.prototype, "mandatoryMessage", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], FormFieldModel.prototype, "mandatory", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Boolean) + ], FormFieldModel.prototype, "repeatable", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], FormFieldModel.prototype, "input", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Array) + ], FormFieldModel.prototype, "selectableMetadata", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Array) + ], FormFieldModel.prototype, "rows", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], FormFieldModel.prototype, "scope", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", String) + ], FormFieldModel.prototype, "style", void 0); + tslib_1.__decorate([ + autoserialize, + tslib_1.__metadata("design:type", Object) + ], FormFieldModel.prototype, "value", void 0); + return FormFieldModel; +}()); +export { FormFieldModel }; +//# sourceMappingURL=form-field.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field.model.js.map b/src/app/shared/form/builder/models/form-field.model.js.map new file mode 100644 index 0000000000..dfd52a63e5 --- /dev/null +++ b/src/app/shared/form/builder/models/form-field.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form-field.model.js","sourceRoot":"","sources":["form-field.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAK1C;IAAA;IAwCA,CAAC;IArCC;QADC,aAAa;;iDACA;IAGd;QADC,aAAa;;iDACA;IAGd;QADC,aAAa;;yDACgB;IAG9B;QADC,aAAa;;4DACW;IAGzB;QADC,aAAa;;qDACI;IAGlB;QADC,aAAa;;sDACM;IAGpB;QADC,aAAa;;iDAIZ;IAGF;QADC,aAAa;;8DACqC;IAGnD;QADC,aAAa;;gDACO;IAGrB;QADC,aAAa;;iDACA;IAGd;QADC,aAAa;;iDACA;IAGd;QADC,aAAa;;iDACH;IACb,qBAAC;CAAA,AAxCD,IAwCC;SAxCY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/concat-field-parser.js b/src/app/shared/form/builder/parsers/concat-field-parser.js new file mode 100644 index 0000000000..baaee1a473 --- /dev/null +++ b/src/app/shared/form/builder/parsers/concat-field-parser.js @@ -0,0 +1,73 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { DynamicInputModel } from '@ng-dynamic-forms/core'; +import { CONCAT_FIRST_INPUT_SUFFIX, CONCAT_GROUP_SUFFIX, CONCAT_SECOND_INPUT_SUFFIX, DynamicConcatModel } from '../ds-dynamic-form-ui/models/ds-dynamic-concat.model'; +import { isNotEmpty } from '../../../empty.util'; +var ConcatFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(ConcatFieldParser, _super); + function ConcatFieldParser(configData, initFormValues, parserOptions, separator, firstPlaceholder, secondPlaceholder) { + if (firstPlaceholder === void 0) { firstPlaceholder = null; } + if (secondPlaceholder === void 0) { secondPlaceholder = null; } + var _this = _super.call(this, configData, initFormValues, parserOptions) || this; + _this.configData = configData; + _this.initFormValues = initFormValues; + _this.parserOptions = parserOptions; + _this.separator = separator; + _this.firstPlaceholder = firstPlaceholder; + _this.secondPlaceholder = secondPlaceholder; + _this.separator = separator; + _this.firstPlaceholder = firstPlaceholder; + _this.secondPlaceholder = secondPlaceholder; + return _this; + } + ConcatFieldParser.prototype.modelFactory = function (fieldValue, label) { + var clsGroup; + var clsInput; + var id = this.configData.selectableMetadata[0].metadata; + clsInput = { + grid: { + host: 'col-sm-6' + } + }; + var groupId = id.replace(/\./g, '_') + CONCAT_GROUP_SUFFIX; + var concatGroup = this.initModel(groupId, false, false); + concatGroup.group = []; + concatGroup.separator = this.separator; + var input1ModelConfig = this.initModel(id + CONCAT_FIRST_INPUT_SUFFIX, label, false, false); + var input2ModelConfig = this.initModel(id + CONCAT_SECOND_INPUT_SUFFIX, label, true, false); + if (this.configData.mandatory) { + input1ModelConfig.required = true; + } + if (isNotEmpty(this.firstPlaceholder)) { + input1ModelConfig.placeholder = this.firstPlaceholder; + } + if (isNotEmpty(this.secondPlaceholder)) { + input2ModelConfig.placeholder = this.secondPlaceholder; + } + // Split placeholder if is like 'placeholder1/placeholder2' + var placeholder = this.configData.label.split('/'); + if (placeholder.length === 2) { + input1ModelConfig.placeholder = placeholder[0]; + input2ModelConfig.placeholder = placeholder[1]; + } + var model1 = new DynamicInputModel(input1ModelConfig, clsInput); + var model2 = new DynamicInputModel(input2ModelConfig, clsInput); + concatGroup.group.push(model1); + concatGroup.group.push(model2); + clsGroup = { + element: { + control: 'form-row', + } + }; + var concatModel = new DynamicConcatModel(concatGroup, clsGroup); + concatModel.name = this.getFieldId(); + // Init values + if (isNotEmpty(fieldValue)) { + concatModel.value = fieldValue; + } + return concatModel; + }; + return ConcatFieldParser; +}(FieldParser)); +export { ConcatFieldParser }; +//# sourceMappingURL=concat-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/concat-field-parser.js.map b/src/app/shared/form/builder/parsers/concat-field-parser.js.map new file mode 100644 index 0000000000..3f98ac35a8 --- /dev/null +++ b/src/app/shared/form/builder/parsers/concat-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"concat-field-parser.js","sourceRoot":"","sources":["concat-field-parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/date-field-parser.js b/src/app/shared/form/builder/parsers/date-field-parser.js new file mode 100644 index 0000000000..a2129acdc1 --- /dev/null +++ b/src/app/shared/form/builder/parsers/date-field-parser.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { DynamicDsDatePickerModel } from '../ds-dynamic-form-ui/models/date-picker/date-picker.model'; +import { isNotEmpty } from '../../../empty.util'; +import { DS_DATE_PICKER_SEPARATOR } from '../ds-dynamic-form-ui/models/date-picker/date-picker.component'; +var DateFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(DateFieldParser, _super); + function DateFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + DateFieldParser.prototype.modelFactory = function (fieldValue, label) { + var malformedDate = false; + var inputDateModelConfig = this.initModel(null, label); + inputDateModelConfig.toggleIcon = 'fas fa-calendar'; + this.setValues(inputDateModelConfig, fieldValue); + // Init Data and validity check + if (isNotEmpty(inputDateModelConfig.value)) { + var value = inputDateModelConfig.value.toString(); + if (value.length >= 4) { + var valuesArray = value.split(DS_DATE_PICKER_SEPARATOR); + if (valuesArray.length < 4) { + for (var i = 0; i < valuesArray.length; i++) { + var len = i === 0 ? 4 : 2; + if (valuesArray[i].length !== len) { + malformedDate = true; + } + } + } + } + } + var dateModel = new DynamicDsDatePickerModel(inputDateModelConfig); + dateModel.malformedDate = malformedDate; + return dateModel; + }; + return DateFieldParser; +}(FieldParser)); +export { DateFieldParser }; +//# sourceMappingURL=date-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/date-field-parser.js.map b/src/app/shared/form/builder/parsers/date-field-parser.js.map new file mode 100644 index 0000000000..6a2320fdbe --- /dev/null +++ b/src/app/shared/form/builder/parsers/date-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"date-field-parser.js","sourceRoot":"","sources":["date-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gEAAgE,CAAC;AAG1G;IAAqC,2CAAW;IAAhD;;IA4BA,CAAC;IA1BQ,sCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAM,oBAAoB,GAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEvF,oBAAoB,CAAC,UAAU,GAAG,iBAAiB,CAAC;QACpD,IAAI,CAAC,SAAS,CAAC,oBAA2B,EAAE,UAAU,CAAC,CAAC;QACxD,+BAA+B;QAC/B,IAAI,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE;YAC1C,IAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;gBACrB,IAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBAC1D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC3C,IAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC5B,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE;4BACjC,aAAa,GAAG,IAAI,CAAC;yBACtB;qBACF;iBACF;aACF;SAEF;QACD,IAAM,SAAS,GAAG,IAAI,wBAAwB,CAAC,oBAAoB,CAAC,CAAC;QACrE,SAAS,CAAC,aAAa,GAAG,aAAa,CAAC;QACxC,OAAO,SAAS,CAAC;IACnB,CAAC;IACH,sBAAC;AAAD,CAAC,AA5BD,CAAqC,WAAW,GA4B/C"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/dropdown-field-parser.js b/src/app/shared/form/builder/parsers/dropdown-field-parser.js new file mode 100644 index 0000000000..4656b8dd58 --- /dev/null +++ b/src/app/shared/form/builder/parsers/dropdown-field-parser.js @@ -0,0 +1,36 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { DynamicScrollableDropdownModel } from '../ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model'; +import { isNotEmpty } from '../../../empty.util'; +var DropdownFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(DropdownFieldParser, _super); + function DropdownFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + DropdownFieldParser.prototype.modelFactory = function (fieldValue, label) { + var dropdownModelConfig = this.initModel(null, label); + var layout; + if (isNotEmpty(this.configData.selectableMetadata[0].authority)) { + this.setAuthorityOptions(dropdownModelConfig, this.parserOptions.authorityUuid); + if (isNotEmpty(fieldValue)) { + dropdownModelConfig.value = fieldValue; + } + layout = { + element: { + control: 'col' + }, + grid: { + host: 'col' + } + }; + var dropdownModel = new DynamicScrollableDropdownModel(dropdownModelConfig, layout); + return dropdownModel; + } + else { + throw Error("Authority name is not available. Please checks form configuration file."); + } + }; + return DropdownFieldParser; +}(FieldParser)); +export { DropdownFieldParser }; +//# sourceMappingURL=dropdown-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/dropdown-field-parser.js.map b/src/app/shared/form/builder/parsers/dropdown-field-parser.js.map new file mode 100644 index 0000000000..d10061ed10 --- /dev/null +++ b/src/app/shared/form/builder/parsers/dropdown-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dropdown-field-parser.js","sourceRoot":"","sources":["dropdown-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EACL,8BAA8B,EAE/B,MAAM,oFAAoF,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD;IAAyC,+CAAW;IAApD;;IAyBA,CAAC;IAvBQ,0CAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAM,mBAAmB,GAAyC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9F,IAAI,MAAgC,CAAC;QAErC,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;YAC/D,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YAChF,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;gBAC1B,mBAAmB,CAAC,KAAK,GAAG,UAAU,CAAC;aACxC;YACD,MAAM,GAAG;gBACP,OAAO,EAAE;oBACP,OAAO,EAAE,KAAK;iBACf;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,KAAK;iBACZ;aACF,CAAC;YACF,IAAM,aAAa,GAAG,IAAI,8BAA8B,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;YACtF,OAAO,aAAa,CAAC;SACtB;aAAM;YACL,MAAO,KAAK,CAAC,yEAAyE,CAAC,CAAC;SACzF;IACH,CAAC;IACH,0BAAC;AAAD,CAAC,AAzBD,CAAyC,WAAW,GAyBnD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/field-parser.js b/src/app/shared/form/builder/parsers/field-parser.js new file mode 100644 index 0000000000..45547f8f0d --- /dev/null +++ b/src/app/shared/form/builder/parsers/field-parser.js @@ -0,0 +1,276 @@ +import { hasValue, isNotEmpty, isNotNull, isNotUndefined } from '../../../empty.util'; +import { uniqueId } from 'lodash'; +import { FormFieldMetadataValueObject } from '../models/form-field-metadata-value.model'; +import { DynamicRowArrayModel } from '../ds-dynamic-form-ui/models/ds-dynamic-row-array-model'; +import { setLayout } from './parser.utils'; +import { AuthorityOptions } from '../../../../core/integration/models/authority-options.model'; +var FieldParser = /** @class */ (function () { + function FieldParser(configData, initFormValues, parserOptions) { + this.configData = configData; + this.initFormValues = initFormValues; + this.parserOptions = parserOptions; + } + FieldParser.prototype.parse = function () { + var _this = this; + if (((this.getInitValueCount() > 1 && !this.configData.repeatable) || (this.configData.repeatable)) + && (this.configData.input.type !== 'list') + && (this.configData.input.type !== 'tag') + && (this.configData.input.type !== 'group')) { + var arrayCounter_1 = 0; + var fieldArrayCounter_1 = 0; + var config = { + id: uniqueId() + '_array', + label: this.configData.label, + initialCount: this.getInitArrayIndex(), + notRepeatable: !this.configData.repeatable, + groupFactory: function () { + var model; + if ((arrayCounter_1 === 0)) { + model = _this.modelFactory(); + arrayCounter_1++; + } + else { + var fieldArrayOfValueLenght = _this.getInitValueCount(arrayCounter_1 - 1); + var fieldValue = null; + if (fieldArrayOfValueLenght > 0) { + fieldValue = _this.getInitFieldValue(arrayCounter_1 - 1, fieldArrayCounter_1++); + if (fieldArrayCounter_1 === fieldArrayOfValueLenght) { + fieldArrayCounter_1 = 0; + arrayCounter_1++; + } + } + model = _this.modelFactory(fieldValue, false); + } + setLayout(model, 'element', 'host', 'col'); + if (model.hasLanguages) { + setLayout(model, 'grid', 'control', 'col'); + } + return [model]; + } + }; + var layout = { + grid: { + group: 'form-row' + } + }; + return new DynamicRowArrayModel(config, layout); + } + else { + var model = this.modelFactory(this.getInitFieldValue()); + if (model.hasLanguages) { + setLayout(model, 'grid', 'control', 'col'); + } + return model; + } + }; + FieldParser.prototype.getInitValueCount = function (index, fieldId) { + var _this = this; + if (index === void 0) { index = 0; } + var fieldIds = fieldId || this.getAllFieldIds(); + if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length === 1 && this.initFormValues.hasOwnProperty(fieldIds[0])) { + return this.initFormValues[fieldIds[0]].length; + } + else if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length > 1) { + var values_1 = []; + fieldIds.forEach(function (id) { + if (_this.initFormValues.hasOwnProperty(id)) { + values_1.push(_this.initFormValues[id].length); + } + }); + return values_1[index]; + } + else { + return 0; + } + }; + FieldParser.prototype.getInitGroupValues = function () { + var fieldIds = this.getAllFieldIds(); + if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length === 1 && this.initFormValues.hasOwnProperty(fieldIds[0])) { + return this.initFormValues[fieldIds[0]]; + } + }; + FieldParser.prototype.getInitFieldValues = function (fieldId) { + if (isNotEmpty(this.initFormValues) && isNotNull(fieldId) && this.initFormValues.hasOwnProperty(fieldId)) { + return this.initFormValues[fieldId]; + } + }; + FieldParser.prototype.getInitFieldValue = function (outerIndex, innerIndex, fieldId) { + var _this = this; + if (outerIndex === void 0) { outerIndex = 0; } + if (innerIndex === void 0) { innerIndex = 0; } + var fieldIds = fieldId || this.getAllFieldIds(); + if (isNotEmpty(this.initFormValues) + && isNotNull(fieldIds) + && fieldIds.length === 1 + && this.initFormValues.hasOwnProperty(fieldIds[outerIndex]) + && this.initFormValues[fieldIds[outerIndex]].length > innerIndex) { + return this.initFormValues[fieldIds[outerIndex]][innerIndex]; + } + else if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length > 1) { + var values_2 = []; + fieldIds.forEach(function (id) { + if (_this.initFormValues.hasOwnProperty(id)) { + var valueObj = Object.assign(new FormFieldMetadataValueObject(), _this.initFormValues[id][innerIndex]); + valueObj.metadata = id; + // valueObj.value = this.initFormValues[id][innerIndex]; + values_2.push(valueObj); + } + }); + return values_2[outerIndex]; + } + else { + return null; + } + }; + FieldParser.prototype.getInitArrayIndex = function () { + var _this = this; + var fieldIds = this.getAllFieldIds(); + if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length === 1 && this.initFormValues.hasOwnProperty(fieldIds)) { + return this.initFormValues[fieldIds].length; + } + else if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length > 1) { + var counter_1 = 0; + fieldIds.forEach(function (id) { + if (_this.initFormValues.hasOwnProperty(id)) { + counter_1 = counter_1 + _this.initFormValues[id].length; + } + }); + return (counter_1 === 0) ? 1 : counter_1; + } + else { + return 1; + } + }; + FieldParser.prototype.getFieldId = function () { + var ids = this.getAllFieldIds(); + return isNotNull(ids) ? ids[0] : null; + }; + FieldParser.prototype.getAllFieldIds = function () { + if (Array.isArray(this.configData.selectableMetadata)) { + if (this.configData.selectableMetadata.length === 1) { + return [this.configData.selectableMetadata[0].metadata]; + } + else { + var ids_1 = []; + this.configData.selectableMetadata.forEach(function (entry) { return ids_1.push(entry.metadata); }); + return ids_1; + } + } + else { + return null; + } + }; + FieldParser.prototype.initModel = function (id, label, labelEmpty, setErrors) { + if (label === void 0) { label = true; } + if (labelEmpty === void 0) { labelEmpty = false; } + if (setErrors === void 0) { setErrors = true; } + var controlModel = Object.create(null); + // Sets input ID + this.fieldId = id ? id : this.getFieldId(); + // Sets input name (with the original field's id value) + controlModel.name = this.fieldId; + // input ID doesn't allow dots, so replace them + controlModel.id = (this.fieldId).replace(/\./g, '_'); + // Set read only option + controlModel.readOnly = this.parserOptions.readOnly; + controlModel.disabled = this.parserOptions.readOnly; + // Set label + this.setLabel(controlModel, label, labelEmpty); + controlModel.placeholder = this.configData.label; + if (this.configData.mandatory && setErrors) { + this.markAsRequired(controlModel); + } + if (this.hasRegex()) { + this.addPatternValidator(controlModel); + } + // Available Languages + if (this.configData.languageCodes && this.configData.languageCodes.length > 0) { + controlModel.languageCodes = this.configData.languageCodes; + } + /* (controlModel as DsDynamicInputModel).languageCodes = [{ + display: 'English', + code: 'en_US' + }, + { + display: 'Italian', + code: 'it_IT' + }];*/ + return controlModel; + }; + FieldParser.prototype.hasRegex = function () { + return hasValue(this.configData.input.regex); + }; + FieldParser.prototype.addPatternValidator = function (controlModel) { + var regex = new RegExp(this.configData.input.regex); + controlModel.validators = Object.assign({}, controlModel.validators, { pattern: regex }); + controlModel.errorMessages = Object.assign({}, controlModel.errorMessages, { pattern: 'error.validation.pattern' }); + }; + FieldParser.prototype.markAsRequired = function (controlModel) { + controlModel.required = true; + controlModel.validators = Object.assign({}, controlModel.validators, { required: null }); + controlModel.errorMessages = Object.assign({}, controlModel.errorMessages, { required: this.configData.mandatoryMessage }); + }; + FieldParser.prototype.setLabel = function (controlModel, label, labelEmpty) { + if (label === void 0) { label = true; } + if (labelEmpty === void 0) { labelEmpty = false; } + if (label) { + controlModel.label = (labelEmpty) ? ' ' : this.configData.label; + } + }; + FieldParser.prototype.setOptions = function (controlModel) { + // Checks if field has multiple values and sets options available + if (isNotUndefined(this.configData.selectableMetadata) && this.configData.selectableMetadata.length > 1) { + controlModel.options = []; + this.configData.selectableMetadata.forEach(function (option, key) { + if (key === 0) { + controlModel.value = option.metadata; + } + controlModel.options.push({ label: option.label, value: option.metadata }); + }); + } + }; + FieldParser.prototype.setAuthorityOptions = function (controlModel, authorityUuid) { + if (isNotEmpty(this.configData.selectableMetadata[0].authority)) { + controlModel.authorityOptions = new AuthorityOptions(this.configData.selectableMetadata[0].authority, this.configData.selectableMetadata[0].metadata, authorityUuid, this.configData.selectableMetadata[0].closed); + } + }; + FieldParser.prototype.setValues = function (modelConfig, fieldValue, forceValueAsObj, groupModel) { + if (forceValueAsObj === void 0) { forceValueAsObj = false; } + if (isNotEmpty(fieldValue)) { + if (groupModel) { + // Array, values is an array + modelConfig.value = this.getInitGroupValues(); + if (Array.isArray(modelConfig.value) && modelConfig.value.length > 0 && modelConfig.value[0].language) { + // Array Item has language, ex. AuthorityModel + modelConfig.language = modelConfig.value[0].language; + } + return; + } + if (typeof fieldValue === 'object') { + modelConfig.language = fieldValue.language; + if (forceValueAsObj) { + modelConfig.value = fieldValue; + } + else { + modelConfig.value = fieldValue.value; + } + } + else { + if (forceValueAsObj) { + // If value isn't an instance of FormFieldMetadataValueObject instantiate it + modelConfig.value = new FormFieldMetadataValueObject(fieldValue); + } + else { + if (typeof fieldValue === 'string') { + // Case only string + modelConfig.value = fieldValue; + } + } + } + } + return modelConfig; + }; + return FieldParser; +}()); +export { FieldParser }; +//# sourceMappingURL=field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/field-parser.js.map b/src/app/shared/form/builder/parsers/field-parser.js.map new file mode 100644 index 0000000000..d0f0f51727 --- /dev/null +++ b/src/app/shared/form/builder/parsers/field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"field-parser.js","sourceRoot":"","sources":["field-parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/list-field-parser.js b/src/app/shared/form/builder/parsers/list-field-parser.js new file mode 100644 index 0000000000..7a37316ad5 --- /dev/null +++ b/src/app/shared/form/builder/parsers/list-field-parser.js @@ -0,0 +1,45 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { isNotEmpty } from '../../../empty.util'; +import { FormFieldMetadataValueObject } from '../models/form-field-metadata-value.model'; +import { DynamicListCheckboxGroupModel } from '../ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model'; +import { DynamicListRadioGroupModel } from '../ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model'; +var ListFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(ListFieldParser, _super); + function ListFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + ListFieldParser.prototype.modelFactory = function (fieldValue, label) { + var listModelConfig = this.initModel(null, label); + listModelConfig.repeatable = this.configData.repeatable; + if (this.configData.selectableMetadata[0].authority + && this.configData.selectableMetadata[0].authority.length > 0) { + if (isNotEmpty(this.getInitGroupValues())) { + listModelConfig.value = []; + this.getInitGroupValues().forEach(function (value) { + if (value instanceof FormFieldMetadataValueObject) { + listModelConfig.value.push(value); + } + else { + var valueObj = new FormFieldMetadataValueObject(value); + listModelConfig.value.push(valueObj); + } + }); + } + this.setAuthorityOptions(listModelConfig, this.parserOptions.authorityUuid); + } + var listModel; + if (listModelConfig.repeatable) { + listModelConfig.group = []; + listModel = new DynamicListCheckboxGroupModel(listModelConfig); + } + else { + listModelConfig.options = []; + listModel = new DynamicListRadioGroupModel(listModelConfig); + } + return listModel; + }; + return ListFieldParser; +}(FieldParser)); +export { ListFieldParser }; +//# sourceMappingURL=list-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/list-field-parser.js.map b/src/app/shared/form/builder/parsers/list-field-parser.js.map new file mode 100644 index 0000000000..429e04c9f3 --- /dev/null +++ b/src/app/shared/form/builder/parsers/list-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"list-field-parser.js","sourceRoot":"","sources":["list-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,6BAA6B,EAAE,MAAM,qEAAqE,CAAC;AACpH,OAAO,EAAE,0BAA0B,EAAE,MAAM,kEAAkE,CAAC;AAE9G;IAAqC,2CAAW;IAAhD;;IAoCA,CAAC;IAjCQ,sCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpD,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAExD,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS;eAC9C,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAE/D,IAAI,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE;gBACzC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,UAAC,KAAU;oBAC3C,IAAI,KAAK,YAAY,4BAA4B,EAAE;wBACjD,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;qBACnC;yBAAM;wBACL,IAAM,QAAQ,GAAG,IAAI,4BAA4B,CAAC,KAAK,CAAC,CAAC;wBACzD,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBACtC;gBACH,CAAC,CAAC,CAAC;aACJ;YACD,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;SAC7E;QAED,IAAI,SAAS,CAAC;QACd,IAAI,eAAe,CAAC,UAAU,EAAE;YAC9B,eAAe,CAAC,KAAK,GAAG,EAAE,CAAC;YAC3B,SAAS,GAAG,IAAI,6BAA6B,CAAC,eAAe,CAAC,CAAC;SAChE;aAAM;YACL,eAAe,CAAC,OAAO,GAAG,EAAE,CAAC;YAC7B,SAAS,GAAG,IAAI,0BAA0B,CAAC,eAAe,CAAC,CAAC;SAC7D;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEH,sBAAC;AAAD,CAAC,AApCD,CAAqC,WAAW,GAoC/C"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/lookup-field-parser.js b/src/app/shared/form/builder/parsers/lookup-field-parser.js new file mode 100644 index 0000000000..6bb2c29779 --- /dev/null +++ b/src/app/shared/form/builder/parsers/lookup-field-parser.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { DynamicLookupModel } from '../ds-dynamic-form-ui/models/lookup/dynamic-lookup.model'; +var LookupFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(LookupFieldParser, _super); + function LookupFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + LookupFieldParser.prototype.modelFactory = function (fieldValue, label) { + if (this.configData.selectableMetadata[0].authority) { + var lookupModelConfig = this.initModel(null, label); + this.setAuthorityOptions(lookupModelConfig, this.parserOptions.authorityUuid); + this.setValues(lookupModelConfig, fieldValue, true); + return new DynamicLookupModel(lookupModelConfig); + } + }; + return LookupFieldParser; +}(FieldParser)); +export { LookupFieldParser }; +//# sourceMappingURL=lookup-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/lookup-field-parser.js.map b/src/app/shared/form/builder/parsers/lookup-field-parser.js.map new file mode 100644 index 0000000000..75ac9c0c66 --- /dev/null +++ b/src/app/shared/form/builder/parsers/lookup-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"lookup-field-parser.js","sourceRoot":"","sources":["lookup-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAA4B,MAAM,0DAA0D,CAAC;AAGxH;IAAuC,6CAAW;IAAlD;;IAcA,CAAC;IAZQ,wCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;YACnD,IAAM,iBAAiB,GAA6B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEhF,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YAE9E,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YAEpD,OAAO,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;SAElD;IACH,CAAC;IACH,wBAAC;AAAD,CAAC,AAdD,CAAuC,WAAW,GAcjD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/lookup-name-field-parser.js b/src/app/shared/form/builder/parsers/lookup-name-field-parser.js new file mode 100644 index 0000000000..4006f73cc7 --- /dev/null +++ b/src/app/shared/form/builder/parsers/lookup-name-field-parser.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { DynamicLookupNameModel } from '../ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model'; +var LookupNameFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(LookupNameFieldParser, _super); + function LookupNameFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + LookupNameFieldParser.prototype.modelFactory = function (fieldValue, label) { + if (this.configData.selectableMetadata[0].authority) { + var lookupModelConfig = this.initModel(null, label); + this.setAuthorityOptions(lookupModelConfig, this.parserOptions.authorityUuid); + this.setValues(lookupModelConfig, fieldValue, true); + return new DynamicLookupNameModel(lookupModelConfig); + } + }; + return LookupNameFieldParser; +}(FieldParser)); +export { LookupNameFieldParser }; +//# sourceMappingURL=lookup-name-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/lookup-name-field-parser.js.map b/src/app/shared/form/builder/parsers/lookup-name-field-parser.js.map new file mode 100644 index 0000000000..9b353db1c7 --- /dev/null +++ b/src/app/shared/form/builder/parsers/lookup-name-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"lookup-name-field-parser.js","sourceRoot":"","sources":["lookup-name-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,sBAAsB,EAEvB,MAAM,+DAA+D,CAAC;AAGvE;IAA2C,iDAAW;IAAtD;;IAcA,CAAC;IAZQ,4CAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;YACnD,IAAM,iBAAiB,GAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEpF,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YAE9E,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YAEpD,OAAO,IAAI,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;SACtD;IACH,CAAC;IAEH,4BAAC;AAAD,CAAC,AAdD,CAA2C,WAAW,GAcrD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/name-field-parser.js b/src/app/shared/form/builder/parsers/name-field-parser.js new file mode 100644 index 0000000000..c0939765cc --- /dev/null +++ b/src/app/shared/form/builder/parsers/name-field-parser.js @@ -0,0 +1,15 @@ +import * as tslib_1 from "tslib"; +import { ConcatFieldParser } from './concat-field-parser'; +var NameFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(NameFieldParser, _super); + function NameFieldParser(configData, initFormValues, parserOptions) { + var _this = _super.call(this, configData, initFormValues, parserOptions, ',', 'form.last-name', 'form.first-name') || this; + _this.configData = configData; + _this.initFormValues = initFormValues; + _this.parserOptions = parserOptions; + return _this; + } + return NameFieldParser; +}(ConcatFieldParser)); +export { NameFieldParser }; +//# sourceMappingURL=name-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/name-field-parser.js.map b/src/app/shared/form/builder/parsers/name-field-parser.js.map new file mode 100644 index 0000000000..29d7e602fc --- /dev/null +++ b/src/app/shared/form/builder/parsers/name-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"name-field-parser.js","sourceRoot":"","sources":["name-field-parser.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D;IAAqC,2CAAiB;IAEpD,yBAAsB,UAA0B,EAAY,cAAc,EAAY,aAA4B;QAAlH,YACE,kBAAM,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,SAC3F;QAFqB,gBAAU,GAAV,UAAU,CAAgB;QAAY,oBAAc,GAAd,cAAc,CAAA;QAAY,mBAAa,GAAb,aAAa,CAAe;;IAElH,CAAC;IACH,sBAAC;AAAD,CAAC,AALD,CAAqC,iBAAiB,GAKrD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/onebox-field-parser.js b/src/app/shared/form/builder/parsers/onebox-field-parser.js new file mode 100644 index 0000000000..07a6fefb00 --- /dev/null +++ b/src/app/shared/form/builder/parsers/onebox-field-parser.js @@ -0,0 +1,72 @@ +import * as tslib_1 from "tslib"; +import { DynamicSelectModel } from '@ng-dynamic-forms/core'; +import { FieldParser } from './field-parser'; +import { DynamicQualdropModel, QUALDROP_GROUP_SUFFIX, QUALDROP_METADATA_SUFFIX, QUALDROP_VALUE_SUFFIX } from '../ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model'; +import { isNotEmpty } from '../../../empty.util'; +import { DsDynamicInputModel } from '../ds-dynamic-form-ui/models/ds-dynamic-input.model'; +import { DynamicTypeaheadModel } from '../ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model'; +var OneboxFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(OneboxFieldParser, _super); + function OneboxFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + OneboxFieldParser.prototype.modelFactory = function (fieldValue, label) { + if (this.configData.selectableMetadata.length > 1) { + // Case Qualdrop Model + var clsGroup = { + element: { + control: 'form-row', + } + }; + var clsSelect = { + element: { + control: 'ds-form-input-addon custom-select', + }, + grid: { + host: 'col-sm-4 pr-0' + } + }; + var clsInput = { + element: { + control: 'ds-form-input-value', + }, + grid: { + host: 'col-sm-8 pl-0' + } + }; + var newId = this.configData.selectableMetadata[0].metadata + .split('.') + .slice(0, this.configData.selectableMetadata[0].metadata.split('.').length - 1) + .join('.'); + var inputSelectGroup = Object.create(null); + inputSelectGroup.id = newId.replace(/\./g, '_') + QUALDROP_GROUP_SUFFIX; + inputSelectGroup.group = []; + inputSelectGroup.legend = this.configData.label; + var selectModelConfig = this.initModel(newId + QUALDROP_METADATA_SUFFIX, label); + this.setOptions(selectModelConfig); + if (isNotEmpty(fieldValue)) { + selectModelConfig.value = fieldValue.metadata; + } + inputSelectGroup.group.push(new DynamicSelectModel(selectModelConfig, clsSelect)); + var inputModelConfig = this.initModel(newId + QUALDROP_VALUE_SUFFIX, label, true); + this.setValues(inputModelConfig, fieldValue); + inputSelectGroup.readOnly = selectModelConfig.disabled && inputModelConfig.readOnly; + inputSelectGroup.group.push(new DsDynamicInputModel(inputModelConfig, clsInput)); + return new DynamicQualdropModel(inputSelectGroup, clsGroup); + } + else if (this.configData.selectableMetadata[0].authority) { + var typeaheadModelConfig = this.initModel(null, label); + this.setAuthorityOptions(typeaheadModelConfig, this.parserOptions.authorityUuid); + this.setValues(typeaheadModelConfig, fieldValue, true); + return new DynamicTypeaheadModel(typeaheadModelConfig); + } + else { + var inputModelConfig = this.initModel(null, label); + this.setValues(inputModelConfig, fieldValue); + return new DsDynamicInputModel(inputModelConfig); + } + }; + return OneboxFieldParser; +}(FieldParser)); +export { OneboxFieldParser }; +//# sourceMappingURL=onebox-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/onebox-field-parser.js.map b/src/app/shared/form/builder/parsers/onebox-field-parser.js.map new file mode 100644 index 0000000000..a80a68ebff --- /dev/null +++ b/src/app/shared/form/builder/parsers/onebox-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"onebox-field-parser.js","sourceRoot":"","sources":["onebox-field-parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-factory.js b/src/app/shared/form/builder/parsers/parser-factory.js new file mode 100644 index 0000000000..8a243b8d80 --- /dev/null +++ b/src/app/shared/form/builder/parsers/parser-factory.js @@ -0,0 +1,59 @@ +import { ParserType } from './parser-type'; +import { DateFieldParser } from './date-field-parser'; +import { DropdownFieldParser } from './dropdown-field-parser'; +import { RelationGroupFieldParser } from './relation-group-field-parser'; +import { ListFieldParser } from './list-field-parser'; +import { LookupFieldParser } from './lookup-field-parser'; +import { LookupNameFieldParser } from './lookup-name-field-parser'; +import { OneboxFieldParser } from './onebox-field-parser'; +import { NameFieldParser } from './name-field-parser'; +import { SeriesFieldParser } from './series-field-parser'; +import { TagFieldParser } from './tag-field-parser'; +import { TextareaFieldParser } from './textarea-field-parser'; +var ParserFactory = /** @class */ (function () { + function ParserFactory() { + } + ParserFactory.getConstructor = function (type) { + switch (type) { + case ParserType.Date: { + return DateFieldParser; + } + case ParserType.Dropdown: { + return DropdownFieldParser; + } + case ParserType.RelationGroup: { + return RelationGroupFieldParser; + } + case ParserType.List: { + return ListFieldParser; + } + case ParserType.Lookup: { + return LookupFieldParser; + } + case ParserType.LookupName: { + return LookupNameFieldParser; + } + case ParserType.Onebox: { + return OneboxFieldParser; + } + case ParserType.Name: { + return NameFieldParser; + } + case ParserType.Series: { + return SeriesFieldParser; + } + case ParserType.Tag: { + return TagFieldParser; + } + case ParserType.Textarea: { + return TextareaFieldParser; + } + default: { + return undefined; + } + } + }; + return ParserFactory; +}()); +export { ParserFactory }; +//# sourceMappingURL=parser-factory.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-factory.js.map b/src/app/shared/form/builder/parsers/parser-factory.js.map new file mode 100644 index 0000000000..74652805ac --- /dev/null +++ b/src/app/shared/form/builder/parsers/parser-factory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"parser-factory.js","sourceRoot":"","sources":["parser-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D;IAAA;IA0CA,CAAC;IAzCe,4BAAc,GAA5B,UAA6B,IAAgB;QAC3C,QAAQ,IAAI,EAAE;YACZ,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpB,OAAO,eAAe,CAAA;aACvB;YACD,KAAK,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACxB,OAAO,mBAAmB,CAAA;aAC3B;YACD,KAAK,UAAU,CAAC,aAAa,CAAC,CAAC;gBAC7B,OAAO,wBAAwB,CAAA;aAChC;YACD,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpB,OAAO,eAAe,CAAA;aACvB;YACD,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;gBACtB,OAAO,iBAAiB,CAAA;aACzB;YACD,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC1B,OAAO,qBAAqB,CAAA;aAC7B;YACD,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;gBACtB,OAAO,iBAAiB,CAAA;aACzB;YACD,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpB,OAAO,eAAe,CAAA;aACvB;YACD,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;gBACtB,OAAO,iBAAiB,CAAA;aACzB;YACD,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC;gBACnB,OAAO,cAAc,CAAA;aACtB;YACD,KAAK,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACxB,OAAO,mBAAmB,CAAA;aAC3B;YAED,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,oBAAC;AAAD,CAAC,AA1CD,IA0CC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-options.js b/src/app/shared/form/builder/parsers/parser-options.js new file mode 100644 index 0000000000..5c14668214 --- /dev/null +++ b/src/app/shared/form/builder/parsers/parser-options.js @@ -0,0 +1 @@ +//# sourceMappingURL=parser-options.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-options.js.map b/src/app/shared/form/builder/parsers/parser-options.js.map new file mode 100644 index 0000000000..7835ce30a8 --- /dev/null +++ b/src/app/shared/form/builder/parsers/parser-options.js.map @@ -0,0 +1 @@ +{"version":3,"file":"parser-options.js","sourceRoot":"","sources":["parser-options.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-type.js b/src/app/shared/form/builder/parsers/parser-type.js new file mode 100644 index 0000000000..ac4701a070 --- /dev/null +++ b/src/app/shared/form/builder/parsers/parser-type.js @@ -0,0 +1,15 @@ +export var ParserType; +(function (ParserType) { + ParserType["Date"] = "date"; + ParserType["Dropdown"] = "dropdown"; + ParserType["RelationGroup"] = "group"; + ParserType["List"] = "list"; + ParserType["Lookup"] = "lookup"; + ParserType["LookupName"] = "lookup-name"; + ParserType["Onebox"] = "onebox"; + ParserType["Name"] = "name"; + ParserType["Series"] = "series"; + ParserType["Tag"] = "tag"; + ParserType["Textarea"] = "textarea"; +})(ParserType || (ParserType = {})); +//# sourceMappingURL=parser-type.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-type.js.map b/src/app/shared/form/builder/parsers/parser-type.js.map new file mode 100644 index 0000000000..f3a9eb625e --- /dev/null +++ b/src/app/shared/form/builder/parsers/parser-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"parser-type.js","sourceRoot":"","sources":["parser-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,UAYX;AAZD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,mCAAqB,CAAA;IACrB,qCAAuB,CAAA;IACvB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,wCAA0B,CAAA;IAC1B,+BAAiB,CAAA;IACjB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,yBAAW,CAAA;IACX,mCAAqB,CAAA;AACvB,CAAC,EAZW,UAAU,KAAV,UAAU,QAYrB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser.utils.js b/src/app/shared/form/builder/parsers/parser.utils.js new file mode 100644 index 0000000000..9709020bfa --- /dev/null +++ b/src/app/shared/form/builder/parsers/parser.utils.js @@ -0,0 +1,19 @@ +import { isNull, isUndefined } from '../../../empty.util'; +export function setLayout(model, controlLayout, controlLayoutConfig, style) { + if (isNull(model.layout)) { + model.layout = {}; + model.layout[controlLayout] = {}; + model.layout[controlLayout][controlLayoutConfig] = style; + } + else if (isUndefined(model.layout[controlLayout])) { + model.layout[controlLayout] = {}; + model.layout[controlLayout][controlLayoutConfig] = style; + } + else if (isUndefined(model.layout[controlLayout][controlLayoutConfig])) { + model.layout[controlLayout][controlLayoutConfig] = style; + } + else { + model.layout[controlLayout][controlLayoutConfig] = model.layout[controlLayout][controlLayoutConfig].concat(" " + style); + } +} +//# sourceMappingURL=parser.utils.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser.utils.js.map b/src/app/shared/form/builder/parsers/parser.utils.js.map new file mode 100644 index 0000000000..6bc744beff --- /dev/null +++ b/src/app/shared/form/builder/parsers/parser.utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"parser.utils.js","sourceRoot":"","sources":["parser.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAG1D,MAAM,oBAAoB,KAAU,EAAE,aAAqB,EAAE,mBAA2B,EAAE,KAAa;IACrG,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;QACxB,KAAK,CAAC,MAAM,GAAG,EAA8B,CAAC;QAC9C,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAoC,CAAC;QACnE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC;KAC1D;SAAM,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE;QACnD,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAoC,CAAC;QACnE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC;KAC1D;SAAM,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE;QACxE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC;KAC1D;SAAM;QACL,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,MAAI,KAAO,CAAC,CAAC;KACzH;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/relation-group-field-parser.js b/src/app/shared/form/builder/parsers/relation-group-field-parser.js new file mode 100644 index 0000000000..578857343f --- /dev/null +++ b/src/app/shared/form/builder/parsers/relation-group-field-parser.js @@ -0,0 +1,60 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { isNotEmpty } from '../../../empty.util'; +import { DynamicRelationGroupModel, PLACEHOLDER_PARENT_METADATA } from '../ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; +var RelationGroupFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(RelationGroupFieldParser, _super); + function RelationGroupFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + RelationGroupFieldParser.prototype.modelFactory = function (fieldValue, label) { + var _this = this; + var modelConfiguration = this.initModel(null, label); + modelConfiguration.scopeUUID = this.parserOptions.authorityUuid; + modelConfiguration.submissionScope = this.parserOptions.submissionScope; + if (this.configData && this.configData.rows && this.configData.rows.length > 0) { + modelConfiguration.formConfiguration = this.configData.rows; + modelConfiguration.relationFields = []; + this.configData.rows.forEach(function (row) { + row.fields.forEach(function (field) { + if (field.selectableMetadata[0].metadata === _this.configData.selectableMetadata[0].metadata) { + if (!field.mandatory) { + // throw new Error(`Configuration not valid: Main field ${this.configData.selectableMetadata[0].metadata} may be mandatory`); + } + modelConfiguration.mandatoryField = _this.configData.selectableMetadata[0].metadata; + } + else { + modelConfiguration.relationFields.push(field.selectableMetadata[0].metadata); + } + }); + }); + } + else { + throw new Error("Configuration not valid: " + modelConfiguration.name); + } + if (isNotEmpty(this.getInitGroupValues())) { + modelConfiguration.value = []; + var mandatoryFieldEntries = this.getInitFieldValues(modelConfiguration.mandatoryField); + mandatoryFieldEntries.forEach(function (entry, index) { + var item = Object.create(null); + var listFields = [modelConfiguration.mandatoryField].concat(modelConfiguration.relationFields); + listFields.forEach(function (fieldId) { + var value = _this.getInitFieldValue(0, index, [fieldId]); + item[fieldId] = isNotEmpty(value) ? value : PLACEHOLDER_PARENT_METADATA; + }); + modelConfiguration.value.push(item); + }); + } + var cls = { + element: { + container: 'mb-3' + } + }; + var model = new DynamicRelationGroupModel(modelConfiguration, cls); + model.name = this.getFieldId(); + return model; + }; + return RelationGroupFieldParser; +}(FieldParser)); +export { RelationGroupFieldParser }; +//# sourceMappingURL=relation-group-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/relation-group-field-parser.js.map b/src/app/shared/form/builder/parsers/relation-group-field-parser.js.map new file mode 100644 index 0000000000..6782b02ba2 --- /dev/null +++ b/src/app/shared/form/builder/parsers/relation-group-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"relation-group-field-parser.js","sourceRoot":"","sources":["relation-group-field-parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/row-parser.js b/src/app/shared/form/builder/parsers/row-parser.js new file mode 100644 index 0000000000..ff6d6f2035 --- /dev/null +++ b/src/app/shared/form/builder/parsers/row-parser.js @@ -0,0 +1,108 @@ +import { DYNAMIC_FORM_CONTROL_TYPE_ARRAY } from '@ng-dynamic-forms/core'; +import { uniqueId } from 'lodash'; +import { IntegrationSearchOptions } from '../../../../core/integration/models/integration-options.model'; +import { DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP } from '../ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; +import { DynamicRowGroupModel } from '../ds-dynamic-form-ui/models/ds-dynamic-row-group-model'; +import { isEmpty } from '../../../empty.util'; +import { setLayout } from './parser.utils'; +import { ParserFactory } from './parser-factory'; +export var ROW_ID_PREFIX = 'df-row-group-config-'; +var RowParser = /** @class */ (function () { + function RowParser(rowData, scopeUUID, initFormValues, submissionScope, readOnly) { + this.rowData = rowData; + this.scopeUUID = scopeUUID; + this.initFormValues = initFormValues; + this.submissionScope = submissionScope; + this.readOnly = readOnly; + this.authorityOptions = new IntegrationSearchOptions(scopeUUID); + } + RowParser.prototype.parse = function () { + var _this = this; + var fieldModel = null; + var parsedResult = null; + var config = { + id: uniqueId(ROW_ID_PREFIX), + group: [], + }; + var scopedFields = this.filterScopedFields(this.rowData.fields); + var layoutDefaultGridClass = ' col-sm-' + Math.trunc(12 / scopedFields.length); + var layoutClass = ' d-flex flex-column justify-content-start'; + var parserOptions = { + readOnly: this.readOnly, + submissionScope: this.submissionScope, + authorityUuid: this.authorityOptions.uuid + }; + // Iterate over row's fields + scopedFields.forEach(function (fieldData) { + var layoutFieldClass = (fieldData.style || layoutDefaultGridClass) + layoutClass; + var parserCo = ParserFactory.getConstructor(fieldData.input.type); + if (parserCo) { + fieldModel = new parserCo(fieldData, _this.initFormValues, parserOptions).parse(); + } + else { + throw new Error("unknown form control model type \"" + fieldData.input.type + "\" defined for Input field with label \"" + fieldData.label + "\"."); + } + if (fieldModel) { + if (fieldModel.type === DYNAMIC_FORM_CONTROL_TYPE_ARRAY || fieldModel.type === DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP) { + if (_this.rowData.fields.length > 1) { + setLayout(fieldModel, 'grid', 'host', layoutFieldClass); + config.group.push(fieldModel); + // if (isEmpty(parsedResult)) { + // parsedResult = []; + // } + // parsedResult.push(fieldModel); + } + else { + parsedResult = fieldModel; + } + return; + } + else { + if (Array.isArray(fieldModel)) { + fieldModel.forEach(function (model) { + parsedResult = model; + return; + }); + } + else { + setLayout(fieldModel, 'grid', 'host', layoutFieldClass); + config.group.push(fieldModel); + } + } + fieldModel = null; + } + }); + if (config && !isEmpty(config.group)) { + var clsGroup = { + element: { + control: 'form-row', + } + }; + var groupModel = new DynamicRowGroupModel(config, clsGroup); + if (Array.isArray(parsedResult)) { + parsedResult.push(groupModel); + } + else { + parsedResult = groupModel; + } + } + return parsedResult; + }; + RowParser.prototype.checksFieldScope = function (fieldScope) { + return (isEmpty(fieldScope) || isEmpty(this.submissionScope) || fieldScope === this.submissionScope); + }; + RowParser.prototype.filterScopedFields = function (fields) { + var _this = this; + var filteredFields = []; + fields.forEach(function (field) { + // Whether field scope doesn't match the submission scope, skip it + if (_this.checksFieldScope(field.scope)) { + filteredFields.push(field); + } + }); + return filteredFields; + }; + return RowParser; +}()); +export { RowParser }; +//# sourceMappingURL=row-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/row-parser.js.map b/src/app/shared/form/builder/parsers/row-parser.js.map new file mode 100644 index 0000000000..e5b6c30411 --- /dev/null +++ b/src/app/shared/form/builder/parsers/row-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"row-parser.js","sourceRoot":"","sources":["row-parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/series-field-parser.js b/src/app/shared/form/builder/parsers/series-field-parser.js new file mode 100644 index 0000000000..4a3bf9c635 --- /dev/null +++ b/src/app/shared/form/builder/parsers/series-field-parser.js @@ -0,0 +1,15 @@ +import * as tslib_1 from "tslib"; +import { ConcatFieldParser } from './concat-field-parser'; +var SeriesFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(SeriesFieldParser, _super); + function SeriesFieldParser(configData, initFormValues, parserOptions) { + var _this = _super.call(this, configData, initFormValues, parserOptions, ';') || this; + _this.configData = configData; + _this.initFormValues = initFormValues; + _this.parserOptions = parserOptions; + return _this; + } + return SeriesFieldParser; +}(ConcatFieldParser)); +export { SeriesFieldParser }; +//# sourceMappingURL=series-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/series-field-parser.js.map b/src/app/shared/form/builder/parsers/series-field-parser.js.map new file mode 100644 index 0000000000..16338e0c57 --- /dev/null +++ b/src/app/shared/form/builder/parsers/series-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"series-field-parser.js","sourceRoot":"","sources":["series-field-parser.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D;IAAuC,6CAAiB;IAEtD,2BAAsB,UAA0B,EAAY,cAAc,EAAY,aAA4B;QAAlH,YACE,kBAAM,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,CAAC,SACtD;QAFqB,gBAAU,GAAV,UAAU,CAAgB;QAAY,oBAAc,GAAd,cAAc,CAAA;QAAY,mBAAa,GAAb,aAAa,CAAe;;IAElH,CAAC;IACH,wBAAC;AAAD,CAAC,AALD,CAAuC,iBAAiB,GAKvD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/tag-field-parser.js b/src/app/shared/form/builder/parsers/tag-field-parser.js new file mode 100644 index 0000000000..bb07e41a81 --- /dev/null +++ b/src/app/shared/form/builder/parsers/tag-field-parser.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { DynamicTagModel } from '../ds-dynamic-form-ui/models/tag/dynamic-tag.model'; +var TagFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(TagFieldParser, _super); + function TagFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + TagFieldParser.prototype.modelFactory = function (fieldValue, label) { + var tagModelConfig = this.initModel(null, label); + if (this.configData.selectableMetadata[0].authority + && this.configData.selectableMetadata[0].authority.length > 0) { + this.setAuthorityOptions(tagModelConfig, this.parserOptions.authorityUuid); + } + this.setValues(tagModelConfig, fieldValue, null, true); + var tagModel = new DynamicTagModel(tagModelConfig); + return tagModel; + }; + return TagFieldParser; +}(FieldParser)); +export { TagFieldParser }; +//# sourceMappingURL=tag-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/tag-field-parser.js.map b/src/app/shared/form/builder/parsers/tag-field-parser.js.map new file mode 100644 index 0000000000..7aaf79cf79 --- /dev/null +++ b/src/app/shared/form/builder/parsers/tag-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"tag-field-parser.js","sourceRoot":"","sources":["tag-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAyB,MAAM,oDAAoD,CAAC;AAE5G;IAAoC,0CAAW;IAA/C;;IAgBA,CAAC;IAdQ,qCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAM,cAAc,GAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS;eAC9C,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/D,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;SAC5E;QAED,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAEvD,IAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,cAAc,CAAC,CAAC;QAErD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEH,qBAAC;AAAD,CAAC,AAhBD,CAAoC,WAAW,GAgB9C"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/textarea-field-parser.js b/src/app/shared/form/builder/parsers/textarea-field-parser.js new file mode 100644 index 0000000000..efd8e5a56a --- /dev/null +++ b/src/app/shared/form/builder/parsers/textarea-field-parser.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { FieldParser } from './field-parser'; +import { DsDynamicTextAreaModel } from '../ds-dynamic-form-ui/models/ds-dynamic-textarea.model'; +var TextareaFieldParser = /** @class */ (function (_super) { + tslib_1.__extends(TextareaFieldParser, _super); + function TextareaFieldParser() { + return _super !== null && _super.apply(this, arguments) || this; + } + TextareaFieldParser.prototype.modelFactory = function (fieldValue, label) { + var textAreaModelConfig = this.initModel(null, label); + var layout; + layout = { + element: { + label: 'col-form-label' + } + }; + textAreaModelConfig.rows = 10; + this.setValues(textAreaModelConfig, fieldValue); + var textAreaModel = new DsDynamicTextAreaModel(textAreaModelConfig, layout); + return textAreaModel; + }; + return TextareaFieldParser; +}(FieldParser)); +export { TextareaFieldParser }; +//# sourceMappingURL=textarea-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/textarea-field-parser.js.map b/src/app/shared/form/builder/parsers/textarea-field-parser.js.map new file mode 100644 index 0000000000..b99c32763f --- /dev/null +++ b/src/app/shared/form/builder/parsers/textarea-field-parser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"textarea-field-parser.js","sourceRoot":"","sources":["textarea-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EACL,sBAAsB,EAEvB,MAAM,wDAAwD,CAAC;AAEhE;IAAyC,+CAAW;IAApD;;IAmBA,CAAC;IAjBQ,0CAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAM,mBAAmB,GAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEtF,IAAI,MAAgC,CAAC;QAErC,MAAM,GAAG;YACP,OAAO,EAAE;gBACP,KAAK,EAAE,gBAAgB;aACxB;SACF,CAAC;QAEF,mBAAmB,CAAC,IAAI,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;QAChD,IAAM,aAAa,GAAG,IAAI,sBAAsB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;QAE9E,OAAO,aAAa,CAAC;IACvB,CAAC;IACH,0BAAC;AAAD,CAAC,AAnBD,CAAyC,WAAW,GAmBnD"} \ No newline at end of file diff --git a/src/app/shared/form/form.actions.js b/src/app/shared/form/form.actions.js new file mode 100644 index 0000000000..be2fd2eab1 --- /dev/null +++ b/src/app/shared/form/form.actions.js @@ -0,0 +1,108 @@ +import { type } from '../ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var FormActionTypes = { + FORM_INIT: type('dspace/form/FORM_INIT'), + FORM_CHANGE: type('dspace/form/FORM_CHANGE'), + FORM_REMOVE: type('dspace/form/FORM_REMOVE'), + FORM_STATUS_CHANGE: type('dspace/form/FORM_STATUS_CHANGE'), + FORM_ADD_ERROR: type('dspace/form/FORM_ADD_ERROR'), + FORM_REMOVE_ERROR: type('dspace/form/FORM_REMOVE_ERROR'), + FORM_CLEAR_ERRORS: type('dspace/form/FORM_CLEAR_ERRORS'), +}; +/* tslint:disable:max-classes-per-file */ +var FormInitAction = /** @class */ (function () { + /** + * Create a new FormInitAction + * + * @param formId + * the Form's ID + * @param formData + * the FormGroup Object + * @param valid + * the Form validation status + */ + function FormInitAction(formId, formData, valid) { + this.type = FormActionTypes.FORM_INIT; + this.payload = { formId: formId, formData: formData, valid: valid }; + } + return FormInitAction; +}()); +export { FormInitAction }; +var FormChangeAction = /** @class */ (function () { + /** + * Create a new FormInitAction + * + * @param formId + * the Form's ID + * @param formData + * the FormGroup Object + */ + function FormChangeAction(formId, formData) { + this.type = FormActionTypes.FORM_CHANGE; + this.payload = { formId: formId, formData: formData }; + } + return FormChangeAction; +}()); +export { FormChangeAction }; +var FormRemoveAction = /** @class */ (function () { + /** + * Create a new FormRemoveAction + * + * @param formId + * the Form's ID + */ + function FormRemoveAction(formId) { + this.type = FormActionTypes.FORM_REMOVE; + this.payload = { formId: formId }; + } + return FormRemoveAction; +}()); +export { FormRemoveAction }; +var FormStatusChangeAction = /** @class */ (function () { + /** + * Create a new FormInitAction + * + * @param formId + * the Form's ID + * @param valid + * the Form validation status + */ + function FormStatusChangeAction(formId, valid) { + this.type = FormActionTypes.FORM_STATUS_CHANGE; + this.payload = { formId: formId, valid: valid }; + } + return FormStatusChangeAction; +}()); +export { FormStatusChangeAction }; +var FormAddError = /** @class */ (function () { + function FormAddError(formId, fieldId, fieldIndex, errorMessage) { + this.type = FormActionTypes.FORM_ADD_ERROR; + this.payload = { formId: formId, fieldId: fieldId, fieldIndex: fieldIndex, errorMessage: errorMessage }; + } + return FormAddError; +}()); +export { FormAddError }; +var FormRemoveErrorAction = /** @class */ (function () { + function FormRemoveErrorAction(formId, fieldId, fieldIndex) { + this.type = FormActionTypes.FORM_REMOVE_ERROR; + this.payload = { formId: formId, fieldId: fieldId, fieldIndex: fieldIndex }; + } + return FormRemoveErrorAction; +}()); +export { FormRemoveErrorAction }; +var FormClearErrorsAction = /** @class */ (function () { + function FormClearErrorsAction(formId) { + this.type = FormActionTypes.FORM_CLEAR_ERRORS; + this.payload = { formId: formId }; + } + return FormClearErrorsAction; +}()); +export { FormClearErrorsAction }; +//# sourceMappingURL=form.actions.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.actions.js.map b/src/app/shared/form/form.actions.js.map new file mode 100644 index 0000000000..d5d03508f6 --- /dev/null +++ b/src/app/shared/form/form.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form.actions.js","sourceRoot":"","sources":["form.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,eAAe,GAAG;IAC7B,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC;IACxC,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC;IAC5C,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC;IAC5C,kBAAkB,EAAE,IAAI,CAAC,gCAAgC,CAAC;IAC1D,cAAc,EAAE,IAAI,CAAC,4BAA4B,CAAC;IAClD,iBAAiB,EAAE,IAAI,CAAC,+BAA+B,CAAC;IACxD,iBAAiB,EAAE,IAAI,CAAC,+BAA+B,CAAC;CACzD,CAAC;AAEF,yCAAyC;AACzC;IAQE;;;;;;;;;OASG;IACH,wBAAY,MAAc,EAAE,QAAa,EAAE,KAAc;QAjBzD,SAAI,GAAG,eAAe,CAAC,SAAS,CAAC;QAkB/B,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAC,CAAC;IAC3C,CAAC;IACH,qBAAC;AAAD,CAAC,AArBD,IAqBC;;AAED;IAOE;;;;;;;OAOG;IACH,0BAAY,MAAc,EAAE,QAAa;QAdzC,SAAI,GAAG,eAAe,CAAC,WAAW,CAAC;QAejC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,QAAQ,UAAA,EAAC,CAAC;IACpC,CAAC;IACH,uBAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED;IAME;;;;;OAKG;IACH,0BAAY,MAAc;QAX1B,SAAI,GAAG,eAAe,CAAC,WAAW,CAAC;QAYjC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAC,CAAC;IAC1B,CAAC;IACH,uBAAC;AAAD,CAAC,AAfD,IAeC;;AAED;IAOE;;;;;;;OAOG;IACH,gCAAY,MAAc,EAAE,KAAc;QAd1C,SAAI,GAAG,eAAe,CAAC,kBAAkB,CAAC;QAexC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,KAAK,OAAA,EAAC,CAAC;IACjC,CAAC;IACH,6BAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED;IASE,sBAAY,MAAc,EAAE,OAAe,EAAE,UAAkB,EAAE,YAAoB;QARrF,SAAI,GAAG,eAAe,CAAC,cAAc,CAAC;QASpC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,OAAO,SAAA,EAAE,UAAU,YAAA,EAAE,YAAY,cAAA,EAAC,CAAC;IAC7D,CAAC;IACH,mBAAC;AAAD,CAAC,AAZD,IAYC;;AAED;IAQE,+BAAY,MAAc,EAAE,OAAe,EAAE,UAAkB;QAP/D,SAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC;QAQvC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,OAAO,SAAA,EAAE,UAAU,YAAA,EAAC,CAAC;IAC/C,CAAC;IACH,4BAAC;AAAD,CAAC,AAXD,IAWC;;AAED;IAME,+BAAY,MAAc;QAL1B,SAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC;QAMvC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAC,CAAC;IAC1B,CAAC;IACH,4BAAC;AAAD,CAAC,AATD,IASC"} \ No newline at end of file diff --git a/src/app/shared/form/form.component.js b/src/app/shared/form/form.component.js new file mode 100644 index 0000000000..3e0017be2a --- /dev/null +++ b/src/app/shared/form/form.component.js @@ -0,0 +1,320 @@ +import * as tslib_1 from "tslib"; +import { distinctUntilChanged, filter, map } from 'rxjs/operators'; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormGroup } from '@angular/forms'; +import { findIndex } from 'lodash'; +import { FormBuilderService } from './builder/form-builder.service'; +import { hasValue, isNotEmpty, isNotNull, isNull } from '../empty.util'; +import { FormService } from './form.service'; +/** + * The default form component. + */ +var FormComponent = /** @class */ (function () { + function FormComponent(formService, changeDetectorRef, formBuilderService) { + this.formService = formService; + this.changeDetectorRef = changeDetectorRef; + this.formBuilderService = formBuilderService; + this.formErrors = []; + /** + * A boolean that indicate if to display form's submit and cancel buttons + */ + this.displaySubmit = true; + /** + * A boolean that indicate if to emit a form change event + */ + this.emitChange = true; + this.formLayout = null; + /* tslint:disable:no-output-rename */ + this.blur = new EventEmitter(); + this.change = new EventEmitter(); + this.focus = new EventEmitter(); + /* tslint:enable:no-output-rename */ + this.addArrayItem = new EventEmitter(); + this.removeArrayItem = new EventEmitter(); + /** + * An event fired when form is valid and submitted . + * Event's payload equals to the form content. + */ + this.cancel = new EventEmitter(); + /** + * An event fired when form is valid and submitted . + * Event's payload equals to the form content. + */ + this.submitForm = new EventEmitter(); + /** + * An object of FormGroup type + */ + // public formGroup: FormGroup; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subs = []; + } + /** + * Method provided by Angular. Invoked after the view has been initialized. + */ + /*ngAfterViewChecked(): void { + this.subs.push(this.formGroup.valueChanges + .filter((formGroup) => this.formGroup.dirty) + .subscribe(() => { + // Dispatch a FormChangeAction if the user has changed the value in the UI + this.store.dispatch(new FormChangeAction(this.formId, this.formGroup.value)); + this.formGroup.markAsPristine(); + })); + }*/ + FormComponent.prototype.getFormGroup = function () { + if (!!this.parentFormModel) { + return this.formGroup.parent; + } + return this.formGroup; + }; + FormComponent.prototype.getFormGroupValue = function () { + return this.getFormGroup().value; + }; + FormComponent.prototype.getFormGroupValidStatus = function () { + return this.getFormGroup().valid; + }; + /** + * Method provided by Angular. Invoked after the constructor + */ + FormComponent.prototype.ngOnInit = function () { + var _this = this; + if (!this.formGroup) { + this.formGroup = this.formBuilderService.createFormGroup(this.formModel); + } + else { + this.formModel.forEach(function (model) { + if (_this.parentFormModel) { + _this.formBuilderService.addFormGroupControl(_this.formGroup, _this.parentFormModel, model); + } + }); + } + this.formService.initForm(this.formId, this.formModel, this.getFormGroupValidStatus()); + // TODO: take a look to the following method: + // this.keepSync(); + this.formValid = this.getFormGroupValidStatus(); + this.subs.push(this.formGroup.statusChanges.pipe(filter(function (currentStatus) { return _this.formValid !== _this.getFormGroupValidStatus(); })) + .subscribe(function (currentStatus) { + _this.formService.setStatusChanged(_this.formId, _this.getFormGroupValidStatus()); + _this.formValid = _this.getFormGroupValidStatus(); + })); + this.subs.push(this.formService.getForm(this.formId).pipe(filter(function (formState) { return !!formState && (isNotEmpty(formState.errors) || isNotEmpty(_this.formErrors)); }), map(function (formState) { return formState.errors; }), distinctUntilChanged()) + // .delay(100) // this terrible delay is here to prevent the detection change error + .subscribe(function (errors) { + var _a = _this, formGroup = _a.formGroup, formModel = _a.formModel; + errors + .filter(function (error) { return findIndex(_this.formErrors, { + fieldId: error.fieldId, + fieldIndex: error.fieldIndex + }) === -1; }) + .forEach(function (error) { + var fieldId = error.fieldId; + var fieldIndex = error.fieldIndex; + var field; + if (!!_this.parentFormModel) { + field = _this.formBuilderService.getFormControlById(fieldId, formGroup.parent, formModel, fieldIndex); + } + else { + field = _this.formBuilderService.getFormControlById(fieldId, formGroup, formModel, fieldIndex); + } + if (field) { + var model = _this.formBuilderService.findById(fieldId, formModel); + _this.formService.addErrorToField(field, model, error.message); + // this.formService.validateAllFormFields(formGroup); + _this.changeDetectorRef.detectChanges(); + } + }); + _this.formErrors + .filter(function (error) { return findIndex(errors, { + fieldId: error.fieldId, + fieldIndex: error.fieldIndex + }) === -1; }) + .forEach(function (error) { + var fieldId = error.fieldId; + var fieldIndex = error.fieldIndex; + var field; + if (!!_this.parentFormModel) { + field = _this.formBuilderService.getFormControlById(fieldId, formGroup.parent, formModel, fieldIndex); + } + else { + field = _this.formBuilderService.getFormControlById(fieldId, formGroup, formModel, fieldIndex); + } + if (field) { + var model = _this.formBuilderService.findById(fieldId, formModel); + _this.formService.removeErrorFromField(field, model, error.message); + } + }); + _this.formErrors = errors; + _this.changeDetectorRef.detectChanges(); + })); + }; + /** + * Method provided by Angular. Invoked when the instance is destroyed + */ + FormComponent.prototype.ngOnDestroy = function () { + this.subs + .filter(function (sub) { return hasValue(sub); }) + .forEach(function (sub) { return sub.unsubscribe(); }); + this.formService.removeForm(this.formId); + }; + /** + * Method to check if the form status is valid or not + */ + FormComponent.prototype.isValid = function () { + return this.formService.isValid(this.formId); + }; + /** + * Method to keep synchronized form controls values with form state + */ + FormComponent.prototype.keepSync = function () { + var _this = this; + this.subs.push(this.formService.getFormData(this.formId) + .subscribe(function (stateFormData) { + if (!Object.is(stateFormData, _this.formGroup.value) && _this.formGroup) { + _this.formGroup.setValue(stateFormData); + } + })); + }; + FormComponent.prototype.onBlur = function (event) { + this.blur.emit(event); + }; + FormComponent.prototype.onFocus = function (event) { + this.focus.emit(event); + }; + FormComponent.prototype.onChange = function (event) { + this.formService.changeForm(this.formId, this.formModel); + this.formGroup.markAsPristine(); + if (this.emitChange) { + this.change.emit(event); + } + var control = event.control; + var fieldIndex = (event.context && event.context.index) ? event.context.index : 0; + if (control.valid) { + this.formService.removeError(this.formId, event.model.id, fieldIndex); + } + }; + /** + * Method called on submit. + * Emit a new submit Event whether the form is valid, mark fields with error otherwise + */ + FormComponent.prototype.onSubmit = function () { + if (this.getFormGroupValidStatus()) { + this.submitForm.emit(this.formService.getFormData(this.formId)); + } + else { + this.formService.validateAllFormFields(this.formGroup); + } + }; + /** + * Method to reset form fields + */ + FormComponent.prototype.reset = function () { + this.formGroup.reset(); + this.cancel.emit(); + }; + FormComponent.prototype.isItemReadOnly = function (arrayContext, index) { + var context = arrayContext.groups[index]; + var model = context.group[0]; + return model.readOnly; + }; + FormComponent.prototype.removeItem = function ($event, arrayContext, index) { + var formArrayControl = this.formGroup.get(this.formBuilderService.getPath(arrayContext)); + this.removeArrayItem.emit(this.getEvent($event, arrayContext, index, 'remove')); + this.formBuilderService.removeFormArrayGroup(index, formArrayControl, arrayContext); + this.formService.changeForm(this.formId, this.formModel); + }; + FormComponent.prototype.insertItem = function ($event, arrayContext, index) { + var formArrayControl = this.formGroup.get(this.formBuilderService.getPath(arrayContext)); + this.formBuilderService.insertFormArrayGroup(index, formArrayControl, arrayContext); + this.addArrayItem.emit(this.getEvent($event, arrayContext, index, 'add')); + this.formService.changeForm(this.formId, this.formModel); + }; + FormComponent.prototype.getEvent = function ($event, arrayContext, index, type) { + var context = arrayContext.groups[index]; + var itemGroupModel = context.context; + var group = this.formGroup.get(itemGroupModel.id); + if (isNull(group)) { + for (var _i = 0, _a = Object.keys(this.formGroup.controls); _i < _a.length; _i++) { + var key = _a[_i]; + group = this.formGroup.controls[key].get(itemGroupModel.id); + if (isNotNull(group)) { + break; + } + } + } + var model = context.group[0]; + var control = group.controls[index]; + return { $event: $event, context: context, control: control, group: group, model: model, type: type }; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], FormComponent.prototype, "displaySubmit", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], FormComponent.prototype, "emitChange", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], FormComponent.prototype, "formId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], FormComponent.prototype, "formModel", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], FormComponent.prototype, "parentFormModel", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", FormGroup) + ], FormComponent.prototype, "formGroup", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], FormComponent.prototype, "formLayout", void 0); + tslib_1.__decorate([ + Output('dfBlur'), + tslib_1.__metadata("design:type", EventEmitter) + ], FormComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output('dfChange'), + tslib_1.__metadata("design:type", EventEmitter) + ], FormComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output('dfFocus'), + tslib_1.__metadata("design:type", EventEmitter) + ], FormComponent.prototype, "focus", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], FormComponent.prototype, "addArrayItem", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], FormComponent.prototype, "removeArrayItem", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], FormComponent.prototype, "cancel", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], FormComponent.prototype, "submitForm", void 0); + FormComponent = tslib_1.__decorate([ + Component({ + exportAs: 'formComponent', + selector: 'ds-form', + styleUrls: ['form.component.scss'], + templateUrl: 'form.component.html' + }), + tslib_1.__metadata("design:paramtypes", [FormService, + ChangeDetectorRef, + FormBuilderService]) + ], FormComponent); + return FormComponent; +}()); +export { FormComponent }; +//# sourceMappingURL=form.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.component.js.map b/src/app/shared/form/form.component.js.map new file mode 100644 index 0000000000..1731cf57b7 --- /dev/null +++ b/src/app/shared/form/form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form.component.js","sourceRoot":"","sources":["form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/form.effects.js b/src/app/shared/form/form.effects.js new file mode 100644 index 0000000000..a6451788b8 --- /dev/null +++ b/src/app/shared/form/form.effects.js @@ -0,0 +1,15 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Actions } from '@ngrx/effects'; +var FormEffects = /** @class */ (function () { + function FormEffects(actions$) { + this.actions$ = actions$; + } + FormEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions]) + ], FormEffects); + return FormEffects; +}()); +export { FormEffects }; +//# sourceMappingURL=form.effects.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.effects.js.map b/src/app/shared/form/form.effects.js.map new file mode 100644 index 0000000000..7836d15c6b --- /dev/null +++ b/src/app/shared/form/form.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form.effects.js","sourceRoot":"","sources":["form.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAU,MAAM,eAAe,CAAC;AAGhD;IAEE,qBAAoB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;IAErC,CAAC;IAJU,WAAW;QADvB,UAAU,EAAE;iDAGmB,OAAO;OAF1B,WAAW,CAMvB;IAAD,kBAAC;CAAA,AAND,IAMC;SANY,WAAW"} \ No newline at end of file diff --git a/src/app/shared/form/form.reducer.js b/src/app/shared/form/form.reducer.js new file mode 100644 index 0000000000..2fd09dbb3e --- /dev/null +++ b/src/app/shared/form/form.reducer.js @@ -0,0 +1,181 @@ +import { FormActionTypes } from './form.actions'; +import { hasValue } from '../empty.util'; +import { isEqual, uniqWith } from 'lodash'; +var initialState = Object.create(null); +export function formReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case FormActionTypes.FORM_INIT: { + return initForm(state, action); + } + case FormActionTypes.FORM_CHANGE: { + return changeDataForm(state, action); + } + case FormActionTypes.FORM_REMOVE: { + return removeForm(state, action); + } + case FormActionTypes.FORM_STATUS_CHANGE: { + return changeStatusForm(state, action); + } + case FormActionTypes.FORM_ADD_ERROR: { + return addFormErrors(state, action); + } + case FormActionTypes.FORM_REMOVE_ERROR: { + return removeFormError(state, action); + } + case FormActionTypes.FORM_CLEAR_ERRORS: { + return clearsFormErrors(state, action); + } + default: { + return state; + } + } +} +function addFormErrors(state, action) { + var _a; + var formId = action.payload.formId; + if (hasValue(state[formId])) { + var error = { + fieldId: action.payload.fieldId, + fieldIndex: action.payload.fieldIndex, + message: action.payload.errorMessage + }; + return Object.assign({}, state, (_a = {}, + _a[formId] = { + data: state[formId].data, + valid: state[formId].valid, + errors: state[formId].errors ? uniqWith(state[formId].errors.concat(error), isEqual) : [].concat(error), + }, + _a)); + } + else { + return state; + } +} +function removeFormError(state, action) { + var formId = action.payload.formId; + var fieldId = action.payload.fieldId; + var fieldIndex = action.payload.fieldIndex; + if (hasValue(state[formId])) { + var errors = state[formId].errors.filter(function (error) { return error.fieldId !== fieldId || error.fieldIndex !== fieldIndex; }); + var newState = Object.assign({}, state); + newState[formId] = Object.assign({}, state[formId], { errors: errors }); + return newState; + } + else { + return state; + } +} +function clearsFormErrors(state, action) { + var formId = action.payload.formId; + if (hasValue(state[formId])) { + var errors = []; + var newState = Object.assign({}, state); + newState[formId] = Object.assign({}, state[formId], { errors: errors }); + return newState; + } + else { + return state; + } +} +/** + * Init form state. + * + * @param state + * the current state + * @param action + * an FormInitAction + * @return FormState + * the new state, with the form initialized. + */ +function initForm(state, action) { + var _a; + var formState = { + data: action.payload.formData, + valid: action.payload.valid, + errors: [] + }; + if (!hasValue(state[action.payload.formId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.formId] = formState, + _a)); + } + else { + var newState = Object.assign({}, state); + newState[action.payload.formId] = Object.assign({}, newState[action.payload.formId], formState); + return newState; + } +} +/** + * Set form data. + * + * @param state + * the current state + * @param action + * an FormChangeAction + * @return FormState + * the new state, with the data changed. + */ +function changeDataForm(state, action) { + if (hasValue(state[action.payload.formId])) { + var newState = Object.assign({}, state); + newState[action.payload.formId] = Object.assign({}, newState[action.payload.formId], { + data: action.payload.formData, + valid: state[action.payload.formId].valid + }); + return newState; + } + else { + return state; + } +} +/** + * Set form status. + * + * @param state + * the current state + * @param action + * an FormStatusChangeAction + * @return FormState + * the new state, with the status changed. + */ +function changeStatusForm(state, action) { + var _a; + if (!hasValue(state[action.payload.formId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.formId] = { + data: state[action.payload.formId].data, + valid: action.payload.valid + }, + _a)); + } + else { + var newState = Object.assign({}, state); + newState[action.payload.formId] = Object.assign({}, newState[action.payload.formId], { + data: state[action.payload.formId].data, + valid: action.payload.valid + }); + return newState; + } +} +/** + * Remove form state. + * + * @param state + * the current state + * @param action + * an FormRemoveAction + * @return FormState + * the new state, with the form initialized. + */ +function removeForm(state, action) { + if (hasValue(state[action.payload.formId])) { + var newState = Object.assign({}, state); + delete newState[action.payload.formId]; + return newState; + } + else { + return state; + } +} +//# sourceMappingURL=form.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.reducer.js.map b/src/app/shared/form/form.reducer.js.map new file mode 100644 index 0000000000..39fc68d8d2 --- /dev/null +++ b/src/app/shared/form/form.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form.reducer.js","sourceRoot":"","sources":["form.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/form.service.js b/src/app/shared/form/form.service.js new file mode 100644 index 0000000000..79238ce7fd --- /dev/null +++ b/src/app/shared/form/form.service.js @@ -0,0 +1,135 @@ +import * as tslib_1 from "tslib"; +import { map, distinctUntilChanged, filter } from 'rxjs/operators'; +import { Inject, Injectable } from '@angular/core'; +import { FormArray, FormControl, FormGroup } from '@angular/forms'; +import { select, Store } from '@ngrx/store'; +import { formObjectFromIdSelector } from './selectors'; +import { FormBuilderService } from './builder/form-builder.service'; +import { isEmpty, isNotUndefined } from '../empty.util'; +import { uniqueId } from 'lodash'; +import { FormChangeAction, FormInitAction, FormRemoveAction, FormRemoveErrorAction, FormStatusChangeAction } from './form.actions'; +import { GLOBAL_CONFIG } from '../../../config'; +var FormService = /** @class */ (function () { + function FormService(config, formBuilderService, store) { + this.config = config; + this.formBuilderService = formBuilderService; + this.store = store; + } + /** + * Method to retrieve form's status from state + */ + FormService.prototype.isValid = function (formId) { + return this.store.pipe(select(formObjectFromIdSelector(formId)), filter(function (state) { return isNotUndefined(state); }), map(function (state) { return state.valid; }), distinctUntilChanged()); + }; + /** + * Method to retrieve form's data from state + */ + FormService.prototype.getFormData = function (formId) { + return this.store.pipe(select(formObjectFromIdSelector(formId)), filter(function (state) { return isNotUndefined(state); }), map(function (state) { return state.data; }), distinctUntilChanged()); + }; + /** + * Method to retrieve form's errors from state + */ + FormService.prototype.getFormErrors = function (formId) { + return this.store.pipe(select(formObjectFromIdSelector(formId)), filter(function (state) { return isNotUndefined(state); }), map(function (state) { return state.errors; }), distinctUntilChanged()); + }; + /** + * Method to retrieve form's data from state + */ + FormService.prototype.isFormInitialized = function (formId) { + return this.store.pipe(select(formObjectFromIdSelector(formId)), distinctUntilChanged(), map(function (state) { return isNotUndefined(state); })); + }; + FormService.prototype.getUniqueId = function (formId) { + return uniqueId() + '_' + formId; + }; + /** + * Method to validate form's fields + */ + FormService.prototype.validateAllFormFields = function (formGroup) { + var _this = this; + Object.keys(formGroup.controls).forEach(function (field) { + var control = formGroup.get(field); + if (control instanceof FormControl) { + control.markAsTouched({ onlySelf: true }); + control.markAsDirty({ onlySelf: true }); + } + else if (control instanceof FormGroup || control instanceof FormArray) { + _this.validateAllFormFields(control); + } + }); + }; + FormService.prototype.addErrorToField = function (field, model, message) { + var error = {}; // create the error object + var errorKey = this.getValidatorNameFromMap(message); + var errorMsg = message; + // if form control model has no errorMessages object, create it + if (!model.errorMessages) { + model.errorMessages = {}; + } + // check if error code is already present in the set of model's validators + if (isEmpty(model.errorMessages[errorKey])) { + // put the error message in the form control model + model.errorMessages[errorKey] = message; + } + else { + // Use correct error messages from the model + errorMsg = model.errorMessages[errorKey]; + } + if (!field.hasError(errorKey)) { + error[errorKey] = true; + // add the error in the form control + field.setErrors(error); + } + field.markAsTouched(); + }; + FormService.prototype.removeErrorFromField = function (field, model, messageKey) { + var error = {}; + var errorKey = this.getValidatorNameFromMap(messageKey); + if (field.hasError(errorKey)) { + error[errorKey] = null; + field.setErrors(error); + } + field.markAsUntouched(); + }; + FormService.prototype.resetForm = function (formGroup, groupModel, formId) { + this.formBuilderService.clearAllModelsValue(groupModel); + formGroup.reset(); + this.store.dispatch(new FormChangeAction(formId, formGroup.value)); + }; + FormService.prototype.getValidatorNameFromMap = function (validator) { + if (validator.includes('.')) { + var splitArray = validator.split('.'); + if (splitArray && splitArray.length > 0) { + validator = this.getValidatorNameFromMap(splitArray[splitArray.length - 1]); + } + } + return (this.config.form.validatorMap.hasOwnProperty(validator)) ? this.config.form.validatorMap[validator] : validator; + }; + FormService.prototype.initForm = function (formId, model, valid) { + this.store.dispatch(new FormInitAction(formId, this.formBuilderService.getValueFromModel(model), valid)); + }; + FormService.prototype.setStatusChanged = function (formId, valid) { + this.store.dispatch(new FormStatusChangeAction(formId, valid)); + }; + FormService.prototype.getForm = function (formId) { + return this.store.pipe(select(formObjectFromIdSelector(formId))); + }; + FormService.prototype.removeForm = function (formId) { + this.store.dispatch(new FormRemoveAction(formId)); + }; + FormService.prototype.changeForm = function (formId, model) { + this.store.dispatch(new FormChangeAction(formId, this.formBuilderService.getValueFromModel(model))); + }; + FormService.prototype.removeError = function (formId, eventModelId, fieldIndex) { + this.store.dispatch(new FormRemoveErrorAction(formId, eventModelId, fieldIndex)); + }; + FormService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, FormBuilderService, + Store]) + ], FormService); + return FormService; +}()); +export { FormService }; +//# sourceMappingURL=form.service.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.service.js.map b/src/app/shared/form/form.service.js.map new file mode 100644 index 0000000000..dac99427c3 --- /dev/null +++ b/src/app/shared/form/form.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form.service.js","sourceRoot":"","sources":["form.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/selectors.js b/src/app/shared/form/selectors.js new file mode 100644 index 0000000000..e883320ea8 --- /dev/null +++ b/src/app/shared/form/selectors.js @@ -0,0 +1,6 @@ +import { createSelector } from '@ngrx/store'; +export var formStateSelector = function (state) { return state.forms; }; +export function formObjectFromIdSelector(formId) { + return createSelector(formStateSelector, function (forms) { return forms[formId]; }); +} +//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/shared/form/selectors.js.map b/src/app/shared/form/selectors.js.map new file mode 100644 index 0000000000..94208b4c4c --- /dev/null +++ b/src/app/shared/form/selectors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAoB,MAAM,aAAa,CAAC;AAK/D,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,KAAK,EAAX,CAAW,CAAC;AAElE,MAAM,mCAAmC,MAAc;IACrD,OAAO,cAAc,CAAC,iBAAiB,EAAE,UAAC,KAAgB,IAAK,OAAA,KAAK,CAAC,MAAM,CAAC,EAAb,CAAa,CAAC,CAAC;AAChF,CAAC"} \ No newline at end of file diff --git a/src/app/shared/history/history.actions.js b/src/app/shared/history/history.actions.js new file mode 100644 index 0000000000..7458ae1f94 --- /dev/null +++ b/src/app/shared/history/history.actions.js @@ -0,0 +1,15 @@ +import { type } from '../ngrx/type'; +export var HistoryActionTypes = { + ADD_TO_HISTORY: type('dspace/history/ADD_TO_HISTORY'), + GET_HISTORY: type('dspace/history/GET_HISTORY') +}; +/* tslint:disable:max-classes-per-file */ +var AddUrlToHistoryAction = /** @class */ (function () { + function AddUrlToHistoryAction(url) { + this.type = HistoryActionTypes.ADD_TO_HISTORY; + this.payload = { url: url }; + } + return AddUrlToHistoryAction; +}()); +export { AddUrlToHistoryAction }; +//# sourceMappingURL=history.actions.js.map \ No newline at end of file diff --git a/src/app/shared/history/history.actions.js.map b/src/app/shared/history/history.actions.js.map new file mode 100644 index 0000000000..14685e8a25 --- /dev/null +++ b/src/app/shared/history/history.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"history.actions.js","sourceRoot":"","sources":["history.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,MAAM,CAAC,IAAM,kBAAkB,GAAG;IAChC,cAAc,EAAE,IAAI,CAAC,+BAA+B,CAAC;IACrD,WAAW,EAAE,IAAI,CAAC,4BAA4B,CAAC;CAChD,CAAC;AAEF,yCAAyC;AAEzC;IAME,+BAAY,GAAW;QALvB,SAAI,GAAG,kBAAkB,CAAC,cAAc,CAAC;QAMvC,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,KAAA,EAAE,CAAA;IACxB,CAAC;IACH,4BAAC;AAAD,CAAC,AATD,IASC"} \ No newline at end of file diff --git a/src/app/shared/history/history.reducer.js b/src/app/shared/history/history.reducer.js new file mode 100644 index 0000000000..f2874b22e0 --- /dev/null +++ b/src/app/shared/history/history.reducer.js @@ -0,0 +1,17 @@ +import { HistoryActionTypes } from './history.actions'; +/** + * The initial state. + */ +var initialState = []; +export function historyReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case HistoryActionTypes.ADD_TO_HISTORY: { + return state.concat([action.payload.url]); + } + default: { + return state; + } + } +} +//# sourceMappingURL=history.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/history/history.reducer.js.map b/src/app/shared/history/history.reducer.js.map new file mode 100644 index 0000000000..22c021e453 --- /dev/null +++ b/src/app/shared/history/history.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"history.reducer.js","sourceRoot":"","sources":["history.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwC,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAS7F;;GAEG;AACH,IAAM,YAAY,GAAiB,EAAE,CAAC;AAEtC,MAAM,yBAAyB,KAAoB,EAAE,MAAqB;IAA3C,sBAAA,EAAA,oBAAoB;IACjD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,kBAAkB,CAAC,cAAc,CAAC,CAAC;YACtC,OAAW,KAAK,SAAG,MAAgC,CAAC,OAAO,CAAC,GAAG,GAAE;SAClE;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/history/selectors.js b/src/app/shared/history/selectors.js new file mode 100644 index 0000000000..7dc14f1f21 --- /dev/null +++ b/src/app/shared/history/selectors.js @@ -0,0 +1,2 @@ +export var historySelector = function (state) { return state.history; }; +//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/shared/history/selectors.js.map b/src/app/shared/history/selectors.js.map new file mode 100644 index 0000000000..3956ddac81 --- /dev/null +++ b/src/app/shared/history/selectors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,eAAe,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,OAAO,EAAb,CAAa,CAAC"} \ No newline at end of file diff --git a/src/app/shared/host-window.actions.js b/src/app/shared/host-window.actions.js new file mode 100644 index 0000000000..528c07beab --- /dev/null +++ b/src/app/shared/host-window.actions.js @@ -0,0 +1,13 @@ +import { type } from './ngrx/type'; +export var HostWindowActionTypes = { + RESIZE: type('dspace/host-window/RESIZE') +}; +var HostWindowResizeAction = /** @class */ (function () { + function HostWindowResizeAction(width, height) { + this.type = HostWindowActionTypes.RESIZE; + this.payload = { width: width, height: height }; + } + return HostWindowResizeAction; +}()); +export { HostWindowResizeAction }; +//# sourceMappingURL=host-window.actions.js.map \ No newline at end of file diff --git a/src/app/shared/host-window.actions.js.map b/src/app/shared/host-window.actions.js.map new file mode 100644 index 0000000000..8002acca50 --- /dev/null +++ b/src/app/shared/host-window.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"host-window.actions.js","sourceRoot":"","sources":["host-window.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,MAAM,CAAC,IAAM,qBAAqB,GAAG;IACnC,MAAM,EAAE,IAAI,CAAC,2BAA2B,CAAC;CAC1C,CAAC;AAEF;IAOE,gCAAY,KAAa,EAAE,MAAc;QANzC,SAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC;QAOlC,IAAI,CAAC,OAAO,GAAG,EAAE,KAAK,OAAA,EAAE,MAAM,QAAA,EAAE,CAAA;IAClC,CAAC;IACH,6BAAC;AAAD,CAAC,AAVD,IAUC"} \ No newline at end of file diff --git a/src/app/shared/host-window.reducer.js b/src/app/shared/host-window.reducer.js new file mode 100644 index 0000000000..befcc6156d --- /dev/null +++ b/src/app/shared/host-window.reducer.js @@ -0,0 +1,17 @@ +import { HostWindowActionTypes } from './host-window.actions'; +var initialState = { + width: null, + height: null +}; +export function hostWindowReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case HostWindowActionTypes.RESIZE: { + return Object.assign({}, state, action.payload); + } + default: { + return state; + } + } +} +//# sourceMappingURL=host-window.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/host-window.reducer.js.map b/src/app/shared/host-window.reducer.js.map new file mode 100644 index 0000000000..d58d4bf2c8 --- /dev/null +++ b/src/app/shared/host-window.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"host-window.reducer.js","sourceRoot":"","sources":["host-window.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAOhF,IAAM,YAAY,GAAoB;IACpC,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;CACb,CAAC;AAEF,MAAM,4BAA4B,KAAoB,EAAE,MAAwB;IAA9C,sBAAA,EAAA,oBAAoB;IACpD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,qBAAqB,CAAC,MAAM,CAAC,CAAC;YACjC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;SACjD;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/host-window.service.js b/src/app/shared/host-window.service.js new file mode 100644 index 0000000000..9e8f935b28 --- /dev/null +++ b/src/app/shared/host-window.service.js @@ -0,0 +1,89 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest } from 'rxjs'; +import { filter, distinctUntilChanged, map } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { createSelector, select, Store } from '@ngrx/store'; +import { hasValue } from './empty.util'; +import { CSSVariableService } from './sass-helper/sass-helper.service'; +export var WidthCategory; +(function (WidthCategory) { + WidthCategory[WidthCategory["XS"] = 0] = "XS"; + WidthCategory[WidthCategory["SM"] = 1] = "SM"; + WidthCategory[WidthCategory["MD"] = 2] = "MD"; + WidthCategory[WidthCategory["LG"] = 3] = "LG"; + WidthCategory[WidthCategory["XL"] = 4] = "XL"; +})(WidthCategory || (WidthCategory = {})); +var hostWindowStateSelector = function (state) { return state.hostWindow; }; +var widthSelector = createSelector(hostWindowStateSelector, function (hostWindow) { return hostWindow.width; }); +var HostWindowService = /** @class */ (function () { + function HostWindowService(store, variableService) { + var _this = this; + this.store = store; + this.variableService = variableService; + this.breakPoints = {}; + /* See _exposed_variables.scss */ + variableService.getAllVariables() + .subscribe(function (variables) { + _this.breakPoints.XL_MIN = parseInt(variables.xlMin, 10); + _this.breakPoints.LG_MIN = parseInt(variables.lgMin, 10); + _this.breakPoints.MD_MIN = parseInt(variables.mdMin, 10); + _this.breakPoints.SM_MIN = parseInt(variables.smMin, 10); + }); + } + HostWindowService.prototype.getWidthObs = function () { + return this.store.pipe(select(widthSelector), filter(function (width) { return hasValue(width); })); + }; + Object.defineProperty(HostWindowService.prototype, "widthCategory", { + get: function () { + var _this = this; + return this.getWidthObs().pipe(map(function (width) { + if (width < _this.breakPoints.SM_MIN) { + return WidthCategory.XS; + } + else if (width >= _this.breakPoints.SM_MIN && width < _this.breakPoints.MD_MIN) { + return WidthCategory.SM; + } + else if (width >= _this.breakPoints.MD_MIN && width < _this.breakPoints.LG_MIN) { + return WidthCategory.MD; + } + else if (width >= _this.breakPoints.LG_MIN && width < _this.breakPoints.XL_MIN) { + return WidthCategory.LG; + } + else { + return WidthCategory.XL; + } + }), distinctUntilChanged()); + }, + enumerable: true, + configurable: true + }); + HostWindowService.prototype.isXs = function () { + return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.XS; }), distinctUntilChanged()); + }; + HostWindowService.prototype.isSm = function () { + return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.SM; }), distinctUntilChanged()); + }; + HostWindowService.prototype.isMd = function () { + return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.MD; }), distinctUntilChanged()); + }; + HostWindowService.prototype.isLg = function () { + return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.LG; }), distinctUntilChanged()); + }; + HostWindowService.prototype.isXl = function () { + return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.XL; }), distinctUntilChanged()); + }; + HostWindowService.prototype.isXsOrSm = function () { + return observableCombineLatest(this.isXs(), this.isSm()).pipe(map(function (_a) { + var isXs = _a[0], isSm = _a[1]; + return isXs || isSm; + }), distinctUntilChanged()); + }; + HostWindowService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store, + CSSVariableService]) + ], HostWindowService); + return HostWindowService; +}()); +export { HostWindowService }; +//# sourceMappingURL=host-window.service.js.map \ No newline at end of file diff --git a/src/app/shared/host-window.service.js.map b/src/app/shared/host-window.service.js.map new file mode 100644 index 0000000000..7d1fc9e91a --- /dev/null +++ b/src/app/shared/host-window.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"host-window.service.js","sourceRoot":"","sources":["host-window.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/input-suggestions/input-suggestions.component.js b/src/app/shared/input-suggestions/input-suggestions.component.js new file mode 100644 index 0000000000..6f5e95d720 --- /dev/null +++ b/src/app/shared/input-suggestions/input-suggestions.component.js @@ -0,0 +1,255 @@ +import * as tslib_1 from "tslib"; +import { Component, ElementRef, EventEmitter, forwardRef, Input, Output, QueryList, ViewChild, ViewChildren } from '@angular/core'; +import { BehaviorSubject } from 'rxjs'; +import { hasValue, isNotEmpty } from '../empty.util'; +import { NG_VALUE_ACCESSOR } from '@angular/forms'; +var InputSuggestionsComponent = /** @class */ (function () { + function InputSuggestionsComponent() { + /** + * The suggestions that should be shown + */ + this.suggestions = []; + /** + * The time waited to detect if any other input will follow before requesting the suggestions + */ + this.debounceTime = 500; + /** + * Placeholder attribute for the input field + */ + this.placeholder = ''; + /** + * Whether or not the current input is valid + */ + this.valid = true; + /** + * Output for when the form is submitted + */ + this.submitSuggestion = new EventEmitter(); + /** + * Output for when a suggestion is clicked + */ + this.clickSuggestion = new EventEmitter(); + /** + * Output for when something is typed in the input field + */ + this.typeSuggestion = new EventEmitter(); + /** + * Output for when new suggestions should be requested + */ + this.findSuggestions = new EventEmitter(); + /** + * Emits true when the list of suggestions should be shown + */ + this.show = new BehaviorSubject(false); + /** + * Index of the currently selected suggestion + */ + this.selectedIndex = -1; + /** + * True when the dropdown should not reopen + */ + this.blockReopen = false; + /** Fields needed to add ngModel */ + this.disabled = false; + this.propagateChange = function (_) { + /* Empty implementation */ + }; + this.propagateTouch = function (_) { + /* Empty implementation */ + }; + /* END - Method's needed to add ngModel to a component */ + } + InputSuggestionsComponent_1 = InputSuggestionsComponent; + /** + * When any of the inputs change, check if we should still show the suggestions + */ + InputSuggestionsComponent.prototype.ngOnChanges = function (changes) { + if (hasValue(changes.suggestions)) { + this.show.next(isNotEmpty(changes.suggestions.currentValue) && !changes.suggestions.firstChange); + } + }; + /** + * Move the focus on one of the suggestions up to the previous suggestion + * When no suggestion is currently in focus OR the first suggestion is in focus: shift to the last suggestion + */ + InputSuggestionsComponent.prototype.shiftFocusUp = function (event) { + event.preventDefault(); + if (this.selectedIndex > 0) { + this.selectedIndex--; + this.selectedIndex = (this.selectedIndex + this.resultViews.length) % this.resultViews.length; // Prevent negative modulo outcome + } + else { + this.selectedIndex = this.resultViews.length - 1; + } + this.changeFocus(); + }; + /** + * Move the focus on one of the suggestions up to the next suggestion + * When no suggestion is currently in focus OR the last suggestion is in focus: shift to the first suggestion + */ + InputSuggestionsComponent.prototype.shiftFocusDown = function (event) { + event.preventDefault(); + if (this.selectedIndex >= 0) { + this.selectedIndex++; + this.selectedIndex %= this.resultViews.length; + } + else { + this.selectedIndex = 0; + } + this.changeFocus(); + }; + /** + * Perform the change of focus to the current selectedIndex + */ + InputSuggestionsComponent.prototype.changeFocus = function () { + if (this.resultViews.length > 0) { + this.resultViews.toArray()[this.selectedIndex].nativeElement.focus(); + } + }; + /** + * When any key is pressed (except for the Enter button) the query input should move to the input field + * @param {KeyboardEvent} event The keyboard event + */ + InputSuggestionsComponent.prototype.onKeydown = function (event) { + if (event.key !== 'Enter') { + this.queryInput.nativeElement.focus(); + } + }; + /** + * Changes the show variable so the suggestion dropdown closes + */ + InputSuggestionsComponent.prototype.close = function () { + this.show.next(false); + }; + /** + * For usage of the isNotEmpty function in the template + */ + InputSuggestionsComponent.prototype.isNotEmpty = function (data) { + return isNotEmpty(data); + }; + /** + * Make sure that if a suggestion is clicked, the suggestions dropdown closes, does not reopen and the focus moves to the input field + */ + InputSuggestionsComponent.prototype.onClickSuggestion = function (data) { + this.value = data; + this.clickSuggestion.emit(data); + this.close(); + this.blockReopen = true; + this.queryInput.nativeElement.focus(); + return false; + }; + /** + * Finds new suggestions when necessary + * @param data The query value to emit + */ + InputSuggestionsComponent.prototype.find = function (data) { + if (!this.blockReopen) { + this.findSuggestions.emit(data); + this.typeSuggestion.emit(data); + } + this.blockReopen = false; + }; + InputSuggestionsComponent.prototype.onSubmit = function (data) { + this.value = data; + this.submitSuggestion.emit(data); + }; + /* START - Method's needed to add ngModel (ControlValueAccessor) to a component */ + InputSuggestionsComponent.prototype.registerOnChange = function (fn) { + this.propagateChange = fn; + }; + InputSuggestionsComponent.prototype.registerOnTouched = function (fn) { + this.propagateTouch = fn; + }; + InputSuggestionsComponent.prototype.setDisabledState = function (isDisabled) { + this.disabled = isDisabled; + }; + InputSuggestionsComponent.prototype.writeValue = function (value) { + this.value = value; + }; + Object.defineProperty(InputSuggestionsComponent.prototype, "value", { + get: function () { + return this._value; + }, + set: function (val) { + this._value = val; + this.propagateChange(this._value); + }, + enumerable: true, + configurable: true + }); + var InputSuggestionsComponent_1; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], InputSuggestionsComponent.prototype, "suggestions", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "debounceTime", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "placeholder", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "action", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "name", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "valid", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "submitSuggestion", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "clickSuggestion", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "typeSuggestion", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "findSuggestions", void 0); + tslib_1.__decorate([ + ViewChild('inputField'), + tslib_1.__metadata("design:type", ElementRef) + ], InputSuggestionsComponent.prototype, "queryInput", void 0); + tslib_1.__decorate([ + ViewChildren('suggestion'), + tslib_1.__metadata("design:type", QueryList) + ], InputSuggestionsComponent.prototype, "resultViews", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], InputSuggestionsComponent.prototype, "disabled", void 0); + InputSuggestionsComponent = InputSuggestionsComponent_1 = tslib_1.__decorate([ + Component({ + selector: 'ds-input-suggestions', + styleUrls: ['./input-suggestions.component.scss'], + templateUrl: './input-suggestions.component.html', + providers: [ + { + provide: NG_VALUE_ACCESSOR, + // Usage of forwardRef necessary https://github.com/angular/angular.io/issues/1151 + // tslint:disable-next-line:no-forward-ref + useExisting: forwardRef(function () { return InputSuggestionsComponent_1; }), + multi: true + } + ] + }) + /** + * Component representing a form with a autocomplete functionality + */ + ], InputSuggestionsComponent); + return InputSuggestionsComponent; +}()); +export { InputSuggestionsComponent }; +//# sourceMappingURL=input-suggestions.component.js.map \ No newline at end of file diff --git a/src/app/shared/input-suggestions/input-suggestions.component.js.map b/src/app/shared/input-suggestions/input-suggestions.component.js.map new file mode 100644 index 0000000000..2a6f8351c7 --- /dev/null +++ b/src/app/shared/input-suggestions/input-suggestions.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"input-suggestions.component.js","sourceRoot":"","sources":["input-suggestions.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/input-suggestions/input-suggestions.model.js b/src/app/shared/input-suggestions/input-suggestions.model.js new file mode 100644 index 0000000000..064373be13 --- /dev/null +++ b/src/app/shared/input-suggestions/input-suggestions.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=input-suggestions.model.js.map \ No newline at end of file diff --git a/src/app/shared/input-suggestions/input-suggestions.model.js.map b/src/app/shared/input-suggestions/input-suggestions.model.js.map new file mode 100644 index 0000000000..f70e778309 --- /dev/null +++ b/src/app/shared/input-suggestions/input-suggestions.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"input-suggestions.model.js","sourceRoot":"","sources":["input-suggestions.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/items/item-type-decorator.js b/src/app/shared/items/item-type-decorator.js new file mode 100644 index 0000000000..22a3ede845 --- /dev/null +++ b/src/app/shared/items/item-type-decorator.js @@ -0,0 +1,62 @@ +import { hasNoValue, hasValue } from '../empty.util'; +import { MetadataRepresentationType } from '../../core/shared/metadata-representation/metadata-representation.model'; +export var ItemViewMode; +(function (ItemViewMode) { + ItemViewMode["Element"] = "element"; + ItemViewMode["Full"] = "full"; + ItemViewMode["Metadata"] = "metadata"; +})(ItemViewMode || (ItemViewMode = {})); +export var DEFAULT_ITEM_TYPE = 'Default'; +export var DEFAULT_VIEW_MODE = ItemViewMode.Element; +export var NO_REPRESENTATION_TYPE = MetadataRepresentationType.None; +export var DEFAULT_REPRESENTATION_TYPE = MetadataRepresentationType.PlainText; +var map = new Map(); +/** + * Decorator used for rendering simple item pages by type and viewMode (and optionally a representationType) + * @param type + * @param viewMode + * @param representationType + */ +export function rendersItemType(type, viewMode, representationType) { + return function decorator(component) { + if (hasNoValue(map.get(viewMode))) { + map.set(viewMode, new Map()); + } + if (hasNoValue(map.get(viewMode).get(type))) { + map.get(viewMode).set(type, new Map()); + } + if (hasNoValue(representationType)) { + representationType = NO_REPRESENTATION_TYPE; + } + if (hasValue(map.get(viewMode).get(type).get(representationType))) { + throw new Error("There can't be more than one component to render Metadata of type \"" + type + "\" in view mode \"" + viewMode + "\" with representation type \"" + representationType + "\""); + } + map.get(viewMode).get(type).set(representationType, component); + }; +} +/** + * Get the component used for rendering an item by type and viewMode (and optionally a representationType) + * @param type + * @param viewMode + * @param representationType + */ +export function getComponentByItemType(type, viewMode, representationType) { + if (hasNoValue(representationType)) { + representationType = NO_REPRESENTATION_TYPE; + } + if (hasNoValue(map.get(viewMode))) { + viewMode = DEFAULT_VIEW_MODE; + } + if (hasNoValue(map.get(viewMode).get(type))) { + type = DEFAULT_ITEM_TYPE; + } + var representationComponent = map.get(viewMode).get(type).get(representationType); + if (hasNoValue(representationComponent)) { + representationComponent = map.get(viewMode).get(type).get(DEFAULT_REPRESENTATION_TYPE); + } + if (hasNoValue(representationComponent)) { + representationComponent = map.get(viewMode).get(type).get(NO_REPRESENTATION_TYPE); + } + return representationComponent; +} +//# sourceMappingURL=item-type-decorator.js.map \ No newline at end of file diff --git a/src/app/shared/items/item-type-decorator.js.map b/src/app/shared/items/item-type-decorator.js.map new file mode 100644 index 0000000000..7f674e0c34 --- /dev/null +++ b/src/app/shared/items/item-type-decorator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-type-decorator.js","sourceRoot":"","sources":["item-type-decorator.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/items/switcher/item-type-switcher.component.js b/src/app/shared/items/switcher/item-type-switcher.component.js new file mode 100644 index 0000000000..78345f7c37 --- /dev/null +++ b/src/app/shared/items/switcher/item-type-switcher.component.js @@ -0,0 +1,60 @@ +import * as tslib_1 from "tslib"; +import { Component, InjectionToken, Injector, Input } from '@angular/core'; +import { hasValue } from '../../empty.util'; +import { getComponentByItemType } from '../item-type-decorator'; +export var ITEM = new InjectionToken('item'); +var ItemTypeSwitcherComponent = /** @class */ (function () { + function ItemTypeSwitcherComponent(injector) { + this.injector = injector; + } + ItemTypeSwitcherComponent.prototype.ngOnInit = function () { + var _this = this; + this.objectInjector = Injector.create({ + providers: [{ provide: ITEM, useFactory: function () { return _this.object; }, deps: [] }], + parent: this.injector + }); + }; + /** + * Fetch the component depending on the item's relationship type + * @returns {string} + */ + ItemTypeSwitcherComponent.prototype.getComponent = function () { + if (hasValue(this.object.representationType)) { + var metadataRepresentation = this.object; + return getComponentByItemType(metadataRepresentation.itemType, this.viewMode, metadataRepresentation.representationType); + } + var item; + if (hasValue(this.object.indexableObject)) { + var searchResult = this.object; + item = searchResult.indexableObject; + } + else { + item = this.object; + } + var type = item.firstMetadataValue('relationship.type'); + return getComponentByItemType(type, this.viewMode); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ItemTypeSwitcherComponent.prototype, "object", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ItemTypeSwitcherComponent.prototype, "viewMode", void 0); + ItemTypeSwitcherComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-type-switcher', + styleUrls: ['./item-type-switcher.component.scss'], + templateUrl: './item-type-switcher.component.html' + }) + /** + * Component for determining what component to use depending on the item's relationship type (relationship.type) + */ + , + tslib_1.__metadata("design:paramtypes", [Injector]) + ], ItemTypeSwitcherComponent); + return ItemTypeSwitcherComponent; +}()); +export { ItemTypeSwitcherComponent }; +//# sourceMappingURL=item-type-switcher.component.js.map \ No newline at end of file diff --git a/src/app/shared/items/switcher/item-type-switcher.component.js.map b/src/app/shared/items/switcher/item-type-switcher.component.js.map new file mode 100644 index 0000000000..37c973e36a --- /dev/null +++ b/src/app/shared/items/switcher/item-type-switcher.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-type-switcher.component.js","sourceRoot":"","sources":["item-type-switcher.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGnF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAGhE,MAAM,CAAC,IAAM,IAAI,GAA2B,IAAI,cAAc,CAAS,MAAM,CAAC,CAAC;AAU/E;IAgBE,mCAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtC,CAAC;IAED,4CAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,cAAM,OAAA,KAAI,CAAC,MAAM,EAAX,CAAW,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC;YACtE,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IAEL,CAAC;IAED;;;OAGG;IACH,gDAAY,GAAZ;QACE,IAAI,QAAQ,CAAE,IAAI,CAAC,MAAc,CAAC,kBAAkB,CAAC,EAAE;YACrD,IAAM,sBAAsB,GAAG,IAAI,CAAC,MAAgC,CAAC;YACrE,OAAO,sBAAsB,CAAC,sBAAsB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;SAC1H;QAED,IAAI,IAAU,CAAC;QACf,IAAI,QAAQ,CAAE,IAAI,CAAC,MAAc,CAAC,eAAe,CAAC,EAAE;YAClD,IAAM,YAAY,GAAG,IAAI,CAAC,MAA0B,CAAC;YACrD,IAAI,GAAG,YAAY,CAAC,eAAe,CAAC;SACrC;aAAM;YACL,IAAI,GAAG,IAAI,CAAC,MAAc,CAAC;SAC5B;QAED,IAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;QAC1D,OAAO,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IA3CQ;QAAR,KAAK,EAAE;;6DAA4D;IAK3D;QAAR,KAAK,EAAE;;+DAAkB;IATf,yBAAyB;QARrC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,SAAS,EAAE,CAAC,qCAAqC,CAAC;YAClD,WAAW,EAAE,qCAAqC;SACnD,CAAC;QACF;;WAEG;;iDAiB6B,QAAQ;OAhB3B,yBAAyB,CAgDrC;IAAD,gCAAC;CAAA,AAhDD,IAgDC;SAhDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/lang-switch/lang-switch.component.js b/src/app/shared/lang-switch/lang-switch.component.js new file mode 100644 index 0000000000..cc3576585e --- /dev/null +++ b/src/app/shared/lang-switch/lang-switch.component.js @@ -0,0 +1,44 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { GLOBAL_CONFIG } from '../../../config'; +import { TranslateService } from '@ngx-translate/core'; +var LangSwitchComponent = /** @class */ (function () { + function LangSwitchComponent(config, translate) { + this.config = config; + this.translate = translate; + } + LangSwitchComponent.prototype.ngOnInit = function () { + this.activeLangs = this.config.languages.filter(function (MyLangConfig) { return MyLangConfig.active === true; }); + this.moreThanOneLanguage = (this.activeLangs.length > 1); + }; + /** + * Returns the label for the current language + */ + LangSwitchComponent.prototype.currentLangLabel = function () { + var _this = this; + return this.activeLangs.find(function (MyLangConfig) { return MyLangConfig.code === _this.translate.currentLang; }).label; + }; + /** + * Returns the label for a specific language code + */ + LangSwitchComponent.prototype.langLabel = function (langcode) { + return this.activeLangs.find(function (MyLangConfig) { return MyLangConfig.code === langcode; }).label; + }; + LangSwitchComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-lang-switch', + styleUrls: ['lang-switch.component.scss'], + templateUrl: 'lang-switch.component.html', + }) + /** + * Component representing a switch for changing the interface language throughout the application + * If only one language is active, the component will disappear as there are no languages to switch to. + */ + , + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, TranslateService]) + ], LangSwitchComponent); + return LangSwitchComponent; +}()); +export { LangSwitchComponent }; +//# sourceMappingURL=lang-switch.component.js.map \ No newline at end of file diff --git a/src/app/shared/lang-switch/lang-switch.component.js.map b/src/app/shared/lang-switch/lang-switch.component.js.map new file mode 100644 index 0000000000..c6d0bac160 --- /dev/null +++ b/src/app/shared/lang-switch/lang-switch.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"lang-switch.component.js","sourceRoot":"","sources":["lang-switch.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,SAAS,EAAE,MAAM,EAAS,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,aAAa,EAAgB,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAarD;IAQE,6BACgC,MAAoB,EAC3C,SAA2B;QADJ,WAAM,GAAN,MAAM,CAAc;QAC3C,cAAS,GAAT,SAAS,CAAkB;IAEpC,CAAC;IAED,sCAAQ,GAAR;QACE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,MAAM,KAAK,IAAI,EAA5B,CAA4B,CAAC,CAAC;QAChG,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,8CAAgB,GAAhB;QAAA,iBAEC;QADC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,IAAI,KAAK,KAAI,CAAC,SAAS,CAAC,WAAW,EAAhD,CAAgD,CAAC,CAAC,KAAK,CAAC;IACzG,CAAC;IAED;;OAEG;IACH,uCAAS,GAAT,UAAU,QAAgB;QACxB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,IAAI,KAAK,QAAQ,EAA9B,CAA8B,CAAC,CAAC,KAAK,CAAC;IACvF,CAAC;IA/BU,mBAAmB;QAV/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;SAC1C,CAAC;QAEF;;;WAGG;;QAUE,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACJ,gBAAgB;OAVzB,mBAAmB,CAiC/B;IAAD,0BAAC;CAAA,AAjCD,IAiCC;SAjCY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/loading/loading.component.js b/src/app/shared/loading/loading.component.js new file mode 100644 index 0000000000..9f72d4cb01 --- /dev/null +++ b/src/app/shared/loading/loading.component.js @@ -0,0 +1,42 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { TranslateService } from '@ngx-translate/core'; +import { hasValue } from '../empty.util'; +var LoadingComponent = /** @class */ (function () { + function LoadingComponent(translate) { + this.translate = translate; + this.showMessage = true; + } + LoadingComponent.prototype.ngOnInit = function () { + var _this = this; + if (this.message === undefined) { + this.subscription = this.translate.get('loading.default').subscribe(function (message) { + _this.message = message; + }); + } + }; + LoadingComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.subscription)) { + this.subscription.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], LoadingComponent.prototype, "message", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], LoadingComponent.prototype, "showMessage", void 0); + LoadingComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-loading', + styleUrls: ['./loading.component.scss'], + templateUrl: './loading.component.html' + }), + tslib_1.__metadata("design:paramtypes", [TranslateService]) + ], LoadingComponent); + return LoadingComponent; +}()); +export { LoadingComponent }; +//# sourceMappingURL=loading.component.js.map \ No newline at end of file diff --git a/src/app/shared/loading/loading.component.js.map b/src/app/shared/loading/loading.component.js.map new file mode 100644 index 0000000000..f4aa2dcb59 --- /dev/null +++ b/src/app/shared/loading/loading.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"loading.component.js","sourceRoot":"","sources":["loading.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzC;IAOE,0BAAoB,SAA2B;QAA3B,cAAS,GAAT,SAAS,CAAkB;QAJtC,gBAAW,GAAG,IAAI,CAAC;IAM5B,CAAC;IAED,mCAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,UAAC,OAAe;gBAClF,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACzB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,sCAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC/B,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACjC;IACH,CAAC;IArBQ;QAAR,KAAK,EAAE;;qDAAiB;IAChB;QAAR,KAAK,EAAE;;yDAAoB;IAHjB,gBAAgB;QAL5B,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,WAAW,EAAE,0BAA0B;SACxC,CAAC;iDAQ+B,gBAAgB;OAPpC,gBAAgB,CAyB5B;IAAD,uBAAC;CAAA,AAzBD,IAyBC;SAzBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/shared/log-in/log-in.component.js b/src/app/shared/log-in/log-in.component.js new file mode 100644 index 0000000000..c1140b5967 --- /dev/null +++ b/src/app/shared/log-in/log-in.component.js @@ -0,0 +1,129 @@ +import * as tslib_1 from "tslib"; +import { filter, map, takeWhile } from 'rxjs/operators'; +import { Component } from '@angular/core'; +import { FormBuilder, Validators } from '@angular/forms'; +import { select, Store } from '@ngrx/store'; +import { AuthenticateAction, ResetAuthenticationMessagesAction } from '../../core/auth/auth.actions'; +import { getAuthenticationError, getAuthenticationInfo, isAuthenticated, isAuthenticationLoading, } from '../../core/auth/selectors'; +import { isNotEmpty } from '../empty.util'; +import { fadeOut } from '../animations/fade'; +import { AuthService } from '../../core/auth/auth.service'; +/** + * /users/sign-in + * @class LogInComponent + */ +var LogInComponent = /** @class */ (function () { + /** + * @constructor + * @param {AuthService} authService + * @param {FormBuilder} formBuilder + * @param {Store} store + */ + function LogInComponent(authService, formBuilder, store) { + this.authService = authService; + this.formBuilder = formBuilder; + this.store = store; + /** + * Has authentication error. + * @type {boolean} + */ + this.hasError = false; + /** + * Has authentication message. + * @type {boolean} + */ + this.hasMessage = false; + /** + * Component state. + * @type {boolean} + */ + this.alive = true; + } + /** + * Lifecycle hook that is called after data-bound properties of a directive are initialized. + * @method ngOnInit + */ + LogInComponent.prototype.ngOnInit = function () { + var _this = this; + // set isAuthenticated + this.isAuthenticated = this.store.pipe(select(isAuthenticated)); + // set formGroup + this.form = this.formBuilder.group({ + email: ['', Validators.required], + password: ['', Validators.required] + }); + // set error + this.error = this.store.pipe(select(getAuthenticationError), map(function (error) { + _this.hasError = (isNotEmpty(error)); + return error; + })); + // set error + this.message = this.store.pipe(select(getAuthenticationInfo), map(function (message) { + _this.hasMessage = (isNotEmpty(message)); + return message; + })); + // set loading + this.loading = this.store.pipe(select(isAuthenticationLoading)); + // subscribe to success + this.store.pipe(select(isAuthenticated), takeWhile(function () { return _this.alive; }), filter(function (authenticated) { return authenticated; })) + .subscribe(function () { + _this.authService.redirectToPreviousUrl(); + }); + }; + /** + * Lifecycle hook that is called when a directive, pipe or service is destroyed. + * @method ngOnDestroy + */ + LogInComponent.prototype.ngOnDestroy = function () { + this.alive = false; + }; + /** + * Reset error or message. + */ + LogInComponent.prototype.resetErrorOrMessage = function () { + if (this.hasError || this.hasMessage) { + this.store.dispatch(new ResetAuthenticationMessagesAction()); + this.hasError = false; + this.hasMessage = false; + } + }; + /** + * To the registration page. + * @method register + */ + LogInComponent.prototype.register = function () { + // TODO enable after registration process is done + // this.router.navigate(['/register']); + }; + /** + * Submit the authentication form. + * @method submit + */ + LogInComponent.prototype.submit = function () { + this.resetErrorOrMessage(); + // get email and password values + var email = this.form.get('email').value; + var password = this.form.get('password').value; + // trim values + email.trim(); + password.trim(); + // dispatch AuthenticationAction + this.store.dispatch(new AuthenticateAction(email, password)); + // clear form + this.form.reset(); + }; + LogInComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-log-in', + templateUrl: './log-in.component.html', + styleUrls: ['./log-in.component.scss'], + animations: [fadeOut] + }), + tslib_1.__metadata("design:paramtypes", [AuthService, + FormBuilder, + Store]) + ], LogInComponent); + return LogInComponent; +}()); +export { LogInComponent }; +//# sourceMappingURL=log-in.component.js.map \ No newline at end of file diff --git a/src/app/shared/log-in/log-in.component.js.map b/src/app/shared/log-in/log-in.component.js.map new file mode 100644 index 0000000000..292c21cf2d --- /dev/null +++ b/src/app/shared/log-in/log-in.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"log-in.component.js","sourceRoot":"","sources":["log-in.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/log-out/log-out.component.js b/src/app/shared/log-out/log-out.component.js new file mode 100644 index 0000000000..1df625e1b2 --- /dev/null +++ b/src/app/shared/log-out/log-out.component.js @@ -0,0 +1,47 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Router } from '@angular/router'; +import { select, Store } from '@ngrx/store'; +import { LogOutAction } from '../../core/auth/auth.actions'; +import { getLogOutError, } from '../../core/auth/selectors'; +import { fadeOut } from '../animations/fade'; +var LogOutComponent = /** @class */ (function () { + /** + * @constructor + * @param {Store} store + * @param {Router} router + */ + function LogOutComponent(router, store) { + this.router = router; + this.store = store; + } + /** + * Lifecycle hook that is called after data-bound properties of a directive are initialized. + */ + LogOutComponent.prototype.ngOnInit = function () { + // set error + this.error = this.store.pipe(select(getLogOutError)); + }; + /** + * Go to the home page. + */ + LogOutComponent.prototype.home = function () { + this.router.navigate(['/home']); + }; + LogOutComponent.prototype.logOut = function () { + this.store.dispatch(new LogOutAction()); + }; + LogOutComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-log-out', + templateUrl: './log-out.component.html', + styleUrls: ['./log-out.component.scss'], + animations: [fadeOut] + }), + tslib_1.__metadata("design:paramtypes", [Router, + Store]) + ], LogOutComponent); + return LogOutComponent; +}()); +export { LogOutComponent }; +//# sourceMappingURL=log-out.component.js.map \ No newline at end of file diff --git a/src/app/shared/log-out/log-out.component.js.map b/src/app/shared/log-out/log-out.component.js.map new file mode 100644 index 0000000000..f359683f89 --- /dev/null +++ b/src/app/shared/log-out/log-out.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"log-out.component.js","sourceRoot":"","sources":["log-out.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,cAAc,GAAG,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAQ7C;IAOE;;;;OAIG;IACH,yBAAoB,MAAc,EACd,KAAsB;QADtB,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAiB;IAC1C,CAAC;IAED;;OAEG;IACH,kCAAQ,GAAR;QACE,YAAY;QACZ,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,8BAAI,GAAX;QACE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAClC,CAAC;IAEM,gCAAM,GAAb;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;IAC1C,CAAC;IAjCU,eAAe;QAN3B,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,WAAW,EAAE,0BAA0B;YACvC,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,UAAU,EAAE,CAAC,OAAO,CAAC;SACtB,CAAC;iDAa4B,MAAM;YACP,KAAK;OAbrB,eAAe,CAmC3B;IAAD,sBAAC;CAAA,AAnCD,IAmCC;SAnCY,eAAe"} \ No newline at end of file diff --git a/src/app/shared/menu/initial-menus-state.js b/src/app/shared/menu/initial-menus-state.js new file mode 100644 index 0000000000..a1df50135d --- /dev/null +++ b/src/app/shared/menu/initial-menus-state.js @@ -0,0 +1,42 @@ +var _a; +/** + * Availavle Menu IDs + */ +export var MenuID; +(function (MenuID) { + MenuID["ADMIN"] = "admin-sidebar"; + MenuID["PUBLIC"] = "public"; +})(MenuID || (MenuID = {})); +/** + * List of possible MenuItemTypes + */ +export var MenuItemType; +(function (MenuItemType) { + MenuItemType[MenuItemType["TEXT"] = 0] = "TEXT"; + MenuItemType[MenuItemType["LINK"] = 1] = "LINK"; + MenuItemType[MenuItemType["ALTMETRIC"] = 2] = "ALTMETRIC"; + MenuItemType[MenuItemType["SEARCH"] = 3] = "SEARCH"; + MenuItemType[MenuItemType["ONCLICK"] = 4] = "ONCLICK"; +})(MenuItemType || (MenuItemType = {})); +/** + * The initial state of the menus + */ +export var initialMenusState = (_a = {}, + _a[MenuID.ADMIN] = { + id: MenuID.ADMIN, + collapsed: true, + previewCollapsed: true, + visible: false, + sections: {}, + sectionToSubsectionIndex: {} + }, + _a[MenuID.PUBLIC] = { + id: MenuID.PUBLIC, + collapsed: true, + previewCollapsed: true, + visible: true, + sections: {}, + sectionToSubsectionIndex: {} + }, + _a); +//# sourceMappingURL=initial-menus-state.js.map \ No newline at end of file diff --git a/src/app/shared/menu/initial-menus-state.js.map b/src/app/shared/menu/initial-menus-state.js.map new file mode 100644 index 0000000000..8489a45d64 --- /dev/null +++ b/src/app/shared/menu/initial-menus-state.js.map @@ -0,0 +1 @@ +{"version":3,"file":"initial-menus-state.js","sourceRoot":"","sources":["initial-menus-state.ts"],"names":[],"mappings":";AAEA;;GAEG;AACH,MAAM,CAAN,IAAY,MAGX;AAHD,WAAY,MAAM;IAChB,iCAAuB,CAAA;IACvB,2BAAiB,CAAA;AACnB,CAAC,EAHW,MAAM,KAAN,MAAM,QAGjB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,YAEX;AAFD,WAAY,YAAY;IACtB,+CAAI,CAAA;IAAE,+CAAI,CAAA;IAAE,yDAAS,CAAA;IAAE,mDAAM,CAAA;IAAE,qDAAO,CAAA;AACxC,CAAC,EAFW,YAAY,KAAZ,YAAY,QAEvB;AAED;;GAEG;AACH,MAAM,CAAC,IAAM,iBAAiB;IAC5B,GAAC,MAAM,CAAC,KAAK,IACX;QACE,EAAE,EAAE,MAAM,CAAC,KAAK;QAChB,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,IAAI;QACtB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,EAAE;QACZ,wBAAwB,EAAE,EAAE;KAC7B;IACH,GAAC,MAAM,CAAC,MAAM,IACZ;QACE,EAAE,EAAE,MAAM,CAAC,MAAM;QACjB,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,IAAI;QACtB,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,EAAE;QACZ,wBAAwB,EAAE,EAAE;KAC7B;OACJ,CAAC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item.decorator.js b/src/app/shared/menu/menu-item.decorator.js new file mode 100644 index 0000000000..3e6584ced7 --- /dev/null +++ b/src/app/shared/menu/menu-item.decorator.js @@ -0,0 +1,23 @@ +var menuMenuItemComponentMap = new Map(); +/** + * Decorator function to link a MenuItemType to a Component + * @param {MenuItemType} type The MenuItemType of the MenuSection's model + * @returns {(sectionComponent: GenericContructor) => void} + */ +export function rendersMenuItemForType(type) { + return function decorator(sectionComponent) { + if (!sectionComponent) { + return; + } + menuMenuItemComponentMap.set(type, sectionComponent); + }; +} +/** + * Retrieves the Component matching a given MenuItemType + * @param {MenuItemType} type The given MenuItemType + * @returns {GenericConstructor} The constructor of the Component that matches the MenuItemType + */ +export function getComponentForMenuItemType(type) { + return menuMenuItemComponentMap.get(type); +} +//# sourceMappingURL=menu-item.decorator.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item.decorator.js.map b/src/app/shared/menu/menu-item.decorator.js.map new file mode 100644 index 0000000000..7b8722a87b --- /dev/null +++ b/src/app/shared/menu/menu-item.decorator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu-item.decorator.js","sourceRoot":"","sources":["menu-item.decorator.ts"],"names":[],"mappings":"AAEA,IAAM,wBAAwB,GAAG,IAAI,GAAG,EAAE,CAAC;AAE3C;;;;GAIG;AACH,MAAM,iCAAiC,IAAkB;IACvD,OAAO,mBAAmB,gBAAqB;QAC7C,IAAI,CAAC,gBAAgB,EAAE;YACrB,OAAO;SACR;QACD,wBAAwB,CAAC,GAAG,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACvD,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,sCAAsC,IAAkB;IAC5D,OAAO,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/link-menu-item.component.js b/src/app/shared/menu/menu-item/link-menu-item.component.js new file mode 100644 index 0000000000..3f5af87f61 --- /dev/null +++ b/src/app/shared/menu/menu-item/link-menu-item.component.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { LinkMenuItemModel } from './models/link.model'; +import { MenuItemType } from '../initial-menus-state'; +import { rendersMenuItemForType } from '../menu-item.decorator'; +import { GLOBAL_CONFIG } from '../../../../config'; +import { isNotEmpty } from '../../empty.util'; +/** + * Component that renders a menu section of type LINK + */ +var LinkMenuItemComponent = /** @class */ (function () { + function LinkMenuItemComponent(item, EnvConfig) { + this.EnvConfig = EnvConfig; + this.item = item; + } + LinkMenuItemComponent.prototype.ngOnInit = function () { + this.hasLink = isNotEmpty(this.item.link); + }; + LinkMenuItemComponent.prototype.getRouterLink = function () { + if (this.hasLink) { + return this.EnvConfig.ui.nameSpace + this.item.link; + } + return undefined; + }; + LinkMenuItemComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-link-menu-item', + templateUrl: './link-menu-item.component.html' + }), + rendersMenuItemForType(MenuItemType.LINK), + tslib_1.__param(0, Inject('itemModelProvider')), tslib_1.__param(1, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [LinkMenuItemModel, Object]) + ], LinkMenuItemComponent); + return LinkMenuItemComponent; +}()); +export { LinkMenuItemComponent }; +//# sourceMappingURL=link-menu-item.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/link-menu-item.component.js.map b/src/app/shared/menu/menu-item/link-menu-item.component.js.map new file mode 100644 index 0000000000..4c12ee42e4 --- /dev/null +++ b/src/app/shared/menu/menu-item/link-menu-item.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"link-menu-item.component.js","sourceRoot":"","sources":["link-menu-item.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAiB,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAgB,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AAMH;IAGE,+BAAyC,IAAuB,EAAiC,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;QACtH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,wCAAQ,GAAR;QACE,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,6CAAa,GAAb;QACE,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;SACrD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAhBU,qBAAqB;QALjC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACD,sBAAsB,CAAC,YAAY,CAAC,IAAI,CAAC;QAI3B,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA,EAA2B,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;iDAAzC,iBAAiB;OAHrD,qBAAqB,CAkBjC;IAAD,4BAAC;CAAA,AAlBD,IAkBC;SAlBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/altmetric.model.js b/src/app/shared/menu/menu-item/models/altmetric.model.js new file mode 100644 index 0000000000..1cac0f5573 --- /dev/null +++ b/src/app/shared/menu/menu-item/models/altmetric.model.js @@ -0,0 +1,12 @@ +import { MenuItemType } from '../../initial-menus-state'; +/** + * Model representing an Altmetric Menu Section + */ +var AltmetricMenuItemModel = /** @class */ (function () { + function AltmetricMenuItemModel() { + this.type = MenuItemType.ALTMETRIC; + } + return AltmetricMenuItemModel; +}()); +export { AltmetricMenuItemModel }; +//# sourceMappingURL=altmetric.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/altmetric.model.js.map b/src/app/shared/menu/menu-item/models/altmetric.model.js.map new file mode 100644 index 0000000000..73415c2848 --- /dev/null +++ b/src/app/shared/menu/menu-item/models/altmetric.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"altmetric.model.js","sourceRoot":"","sources":["altmetric.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,SAAS,CAAC;IAEhC,CAAC;IAAD,6BAAC;AAAD,CAAC,AAHD,IAGC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/link.model.js b/src/app/shared/menu/menu-item/models/link.model.js new file mode 100644 index 0000000000..5e9c7e136e --- /dev/null +++ b/src/app/shared/menu/menu-item/models/link.model.js @@ -0,0 +1,12 @@ +import { MenuItemType } from '../../initial-menus-state'; +/** + * Model representing an Link Menu Section + */ +var LinkMenuItemModel = /** @class */ (function () { + function LinkMenuItemModel() { + this.type = MenuItemType.LINK; + } + return LinkMenuItemModel; +}()); +export { LinkMenuItemModel }; +//# sourceMappingURL=link.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/link.model.js.map b/src/app/shared/menu/menu-item/models/link.model.js.map new file mode 100644 index 0000000000..636a9341bd --- /dev/null +++ b/src/app/shared/menu/menu-item/models/link.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"link.model.js","sourceRoot":"","sources":["link.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,IAAI,CAAC;IAG3B,CAAC;IAAD,wBAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/menu-item.model.js b/src/app/shared/menu/menu-item/models/menu-item.model.js new file mode 100644 index 0000000000..89b0604ff6 --- /dev/null +++ b/src/app/shared/menu/menu-item/models/menu-item.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=menu-item.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/menu-item.model.js.map b/src/app/shared/menu/menu-item/models/menu-item.model.js.map new file mode 100644 index 0000000000..8da54788a1 --- /dev/null +++ b/src/app/shared/menu/menu-item/models/menu-item.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu-item.model.js","sourceRoot":"","sources":["menu-item.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/onclick.model.js b/src/app/shared/menu/menu-item/models/onclick.model.js new file mode 100644 index 0000000000..d10d394350 --- /dev/null +++ b/src/app/shared/menu/menu-item/models/onclick.model.js @@ -0,0 +1,12 @@ +import { MenuItemType } from '../../initial-menus-state'; +/** + * Model representing an OnClick Menu Section + */ +var OnClickMenuItemModel = /** @class */ (function () { + function OnClickMenuItemModel() { + this.type = MenuItemType.ONCLICK; + } + return OnClickMenuItemModel; +}()); +export { OnClickMenuItemModel }; +//# sourceMappingURL=onclick.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/onclick.model.js.map b/src/app/shared/menu/menu-item/models/onclick.model.js.map new file mode 100644 index 0000000000..59a643d0fb --- /dev/null +++ b/src/app/shared/menu/menu-item/models/onclick.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"onclick.model.js","sourceRoot":"","sources":["onclick.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,OAAO,CAAC;IAG9B,CAAC;IAAD,2BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/search.model.js b/src/app/shared/menu/menu-item/models/search.model.js new file mode 100644 index 0000000000..d44f7691dc --- /dev/null +++ b/src/app/shared/menu/menu-item/models/search.model.js @@ -0,0 +1,12 @@ +import { MenuItemType } from '../../initial-menus-state'; +/** + * Model representing an Search Bar Menu Section + */ +var SearchMenuItemModel = /** @class */ (function () { + function SearchMenuItemModel() { + this.type = MenuItemType.SEARCH; + } + return SearchMenuItemModel; +}()); +export { SearchMenuItemModel }; +//# sourceMappingURL=search.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/search.model.js.map b/src/app/shared/menu/menu-item/models/search.model.js.map new file mode 100644 index 0000000000..e6e39f74d4 --- /dev/null +++ b/src/app/shared/menu/menu-item/models/search.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search.model.js","sourceRoot":"","sources":["search.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,MAAM,CAAC;IAG7B,CAAC;IAAD,0BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/text.model.js b/src/app/shared/menu/menu-item/models/text.model.js new file mode 100644 index 0000000000..1eb4302f75 --- /dev/null +++ b/src/app/shared/menu/menu-item/models/text.model.js @@ -0,0 +1,12 @@ +import { MenuItemType } from '../../initial-menus-state'; +/** + * Model representing an Text Menu Section + */ +var TextMenuItemModel = /** @class */ (function () { + function TextMenuItemModel() { + this.type = MenuItemType.TEXT; + } + return TextMenuItemModel; +}()); +export { TextMenuItemModel }; +//# sourceMappingURL=text.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/text.model.js.map b/src/app/shared/menu/menu-item/models/text.model.js.map new file mode 100644 index 0000000000..48869ed6bf --- /dev/null +++ b/src/app/shared/menu/menu-item/models/text.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"text.model.js","sourceRoot":"","sources":["text.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,IAAI,CAAC;IAE3B,CAAC;IAAD,wBAAC;AAAD,CAAC,AAHD,IAGC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/onclick-menu-item.component.js b/src/app/shared/menu/menu-item/onclick-menu-item.component.js new file mode 100644 index 0000000000..18540a54f5 --- /dev/null +++ b/src/app/shared/menu/menu-item/onclick-menu-item.component.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { MenuItemType } from '../initial-menus-state'; +import { rendersMenuItemForType } from '../menu-item.decorator'; +import { OnClickMenuItemModel } from './models/onclick.model'; +/** + * Component that renders a menu section of type ONCLICK + */ +var OnClickMenuItemComponent = /** @class */ (function () { + function OnClickMenuItemComponent(item) { + this.item = item; + } + OnClickMenuItemComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-onclick-menu-item', + styleUrls: ['./onclick-menu-item.component.scss'], + templateUrl: './onclick-menu-item.component.html' + }), + rendersMenuItemForType(MenuItemType.ONCLICK), + tslib_1.__param(0, Inject('itemModelProvider')), + tslib_1.__metadata("design:paramtypes", [OnClickMenuItemModel]) + ], OnClickMenuItemComponent); + return OnClickMenuItemComponent; +}()); +export { OnClickMenuItemComponent }; +//# sourceMappingURL=onclick-menu-item.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/onclick-menu-item.component.js.map b/src/app/shared/menu/menu-item/onclick-menu-item.component.js.map new file mode 100644 index 0000000000..ea5c67a88f --- /dev/null +++ b/src/app/shared/menu/menu-item/onclick-menu-item.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"onclick-menu-item.component.js","sourceRoot":"","sources":["onclick-menu-item.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;GAEG;AAOH;IAEE,kCAAyC,IAA0B;QACjE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAJU,wBAAwB;QANpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;QACD,sBAAsB,CAAC,YAAY,CAAC,OAAO,CAAC;QAG9B,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA;iDAAO,oBAAoB;OAFxD,wBAAwB,CAKpC;IAAD,+BAAC;CAAA,AALD,IAKC;SALY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/text-menu-item.component.js b/src/app/shared/menu/menu-item/text-menu-item.component.js new file mode 100644 index 0000000000..c685907d6d --- /dev/null +++ b/src/app/shared/menu/menu-item/text-menu-item.component.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { TextMenuItemModel } from './models/text.model'; +import { MenuItemType } from '../initial-menus-state'; +import { rendersMenuItemForType } from '../menu-item.decorator'; +/** + * Component that renders a menu section of type TEXT + */ +var TextMenuItemComponent = /** @class */ (function () { + function TextMenuItemComponent(item) { + this.item = item; + } + TextMenuItemComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-text-menu-item', + templateUrl: './text-menu-item.component.html', + }), + rendersMenuItemForType(MenuItemType.TEXT), + tslib_1.__param(0, Inject('itemModelProvider')), + tslib_1.__metadata("design:paramtypes", [TextMenuItemModel]) + ], TextMenuItemComponent); + return TextMenuItemComponent; +}()); +export { TextMenuItemComponent }; +//# sourceMappingURL=text-menu-item.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/text-menu-item.component.js.map b/src/app/shared/menu/menu-item/text-menu-item.component.js.map new file mode 100644 index 0000000000..cc2e7848db --- /dev/null +++ b/src/app/shared/menu/menu-item/text-menu-item.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"text-menu-item.component.js","sourceRoot":"","sources":["text-menu-item.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAS,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE;;GAEG;AAMH;IAEE,+BAAyC,IAAuB;QAC9D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAJU,qBAAqB;QALjC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACD,sBAAsB,CAAC,YAAY,CAAC,IAAI,CAAC;QAG3B,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA;iDAAO,iBAAiB;OAFrD,qBAAqB,CAKjC;IAAD,4BAAC;CAAA,AALD,IAKC;SALY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-section.decorator.js b/src/app/shared/menu/menu-section.decorator.js new file mode 100644 index 0000000000..72121ea7ba --- /dev/null +++ b/src/app/shared/menu/menu-section.decorator.js @@ -0,0 +1,28 @@ +var menuComponentMap = new Map(); +/** + * Decorator function to render a MenuSection for a menu + * @param {MenuID} menuID The ID of the Menu in which the section is rendered + * @param {boolean} expandable True when the section should be expandable, false when if should not + * @returns {(menuSectionWrapperComponent: GenericConstructor) => void} + */ +export function rendersSectionForMenu(menuID, expandable) { + return function decorator(menuSectionWrapperComponent) { + if (!menuSectionWrapperComponent) { + return; + } + if (!menuComponentMap.get(menuID)) { + menuComponentMap.set(menuID, new Map()); + } + menuComponentMap.get(menuID).set(expandable, menuSectionWrapperComponent); + }; +} +/** + * Retrieves the component matching the given MenuID and whether or not it should be expandable + * @param {MenuID} menuID The ID of the Menu in which the section is rendered + * @param {boolean} expandable True when the section should be expandable, false when if should not + * @returns {GenericConstructor} The constructor of the matching Component + */ +export function getComponentForMenu(menuID, expandable) { + return menuComponentMap.get(menuID).get(expandable); +} +//# sourceMappingURL=menu-section.decorator.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-section.decorator.js.map b/src/app/shared/menu/menu-section.decorator.js.map new file mode 100644 index 0000000000..136adbee5a --- /dev/null +++ b/src/app/shared/menu/menu-section.decorator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu-section.decorator.js","sourceRoot":"","sources":["menu-section.decorator.ts"],"names":[],"mappings":"AAEA,IAAM,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,gCAAgC,MAAc,EAAE,UAAmB;IACvE,OAAO,mBAAmB,2BAAgC;QACxD,IAAI,CAAC,2BAA2B,EAAE;YAChC,OAAO;SACR;QACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YACjC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;SACzC;QACD,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAC5E,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,8BAA8B,MAAc,EAAE,UAAmB;IACrE,OAAO,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AACtD,CAAC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-section/menu-section.component.js b/src/app/shared/menu/menu-section/menu-section.component.js new file mode 100644 index 0000000000..ddfeae5ca7 --- /dev/null +++ b/src/app/shared/menu/menu-section/menu-section.component.js @@ -0,0 +1,107 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector } from '@angular/core'; +import { MenuService } from '../menu.service'; +import { MenuSection } from '../menu.reducer'; +import { getComponentForMenuItemType } from '../menu-item.decorator'; +import { hasNoValue } from '../../empty.util'; +import { distinctUntilChanged } from 'rxjs/operators'; +/** + * A basic implementation of a menu section's component + */ +var MenuSectionComponent = /** @class */ (function () { + function MenuSectionComponent(section, menuService, injector) { + this.section = section; + this.menuService = menuService; + this.injector = injector; + /** + * List of Injectors for each dynamically rendered menu item of this section + */ + this.itemInjectors = new Map(); + /** + * List of child Components for each dynamically rendered menu item of this section + */ + this.itemComponents = new Map(); + } + /** + * Set initial values for instance variables + */ + MenuSectionComponent.prototype.ngOnInit = function () { + this.active = this.menuService.isSectionActive(this.menuID, this.section.id).pipe(distinctUntilChanged()); + this.initializeInjectorData(); + }; + /** + * Activate this section if it's currently inactive, deactivate it when it's currently active + * @param {Event} event The user event that triggered this method + */ + MenuSectionComponent.prototype.toggleSection = function (event) { + event.preventDefault(); + this.menuService.toggleActiveSection(this.menuID, this.section.id); + }; + /** + * Activate this section + * @param {Event} event The user event that triggered this method + */ + MenuSectionComponent.prototype.activateSection = function (event) { + event.preventDefault(); + this.menuService.activateSection(this.menuID, this.section.id); + }; + /** + * Deactivate this section + * @param {Event} event The user event that triggered this method + */ + MenuSectionComponent.prototype.deactivateSection = function (event) { + event.preventDefault(); + this.menuService.deactivateSection(this.menuID, this.section.id); + }; + /** + * Method for initializing all injectors and component constructors for the menu items in this section + */ + MenuSectionComponent.prototype.initializeInjectorData = function () { + var _this = this; + this.itemInjectors.set(this.section.id, this.getItemModelInjector(this.section.model)); + this.itemComponents.set(this.section.id, this.getMenuItemComponent(this.section.model)); + this.subSections = this.menuService.getSubSectionsByParentID(this.menuID, this.section.id); + this.subSections.subscribe(function (sections) { + sections.forEach(function (section) { + _this.itemInjectors.set(section.id, _this.getItemModelInjector(section.model)); + _this.itemComponents.set(section.id, _this.getMenuItemComponent(section.model)); + }); + }); + }; + /** + * Retrieve the component for a given MenuItemModel object + * @param {MenuItemModel} itemModel The given MenuItemModel + * @returns {GenericConstructor} Emits the constructor of the Component that should be used to render this menu item model + */ + MenuSectionComponent.prototype.getMenuItemComponent = function (itemModel) { + if (hasNoValue(itemModel)) { + itemModel = this.section.model; + } + var type = itemModel.type; + return getComponentForMenuItemType(type); + }; + /** + * Retrieve the Injector for a given MenuItemModel object + * @param {MenuItemModel} itemModel The given MenuItemModel + * @returns {Injector} The Injector that injects the data for this menu item into the item's component + */ + MenuSectionComponent.prototype.getItemModelInjector = function (itemModel) { + if (hasNoValue(itemModel)) { + itemModel = this.section.model; + } + return Injector.create({ + providers: [{ provide: 'itemModelProvider', useFactory: function () { return (itemModel); }, deps: [] }], + parent: this.injector + }); + }; + MenuSectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-menu-section', + template: '' + }), + tslib_1.__metadata("design:paramtypes", [MenuSection, MenuService, Injector]) + ], MenuSectionComponent); + return MenuSectionComponent; +}()); +export { MenuSectionComponent }; +//# sourceMappingURL=menu-section.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-section/menu-section.component.js.map b/src/app/shared/menu/menu-section/menu-section.component.js.map new file mode 100644 index 0000000000..b3058584da --- /dev/null +++ b/src/app/shared/menu/menu-section/menu-section.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu-section.component.js","sourceRoot":"","sources":["menu-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD;;GAEG;AAKH;IA2BE,8BAAmB,OAAoB,EAAY,WAAwB,EAAY,QAAkB;QAAtF,YAAO,GAAP,OAAO,CAAa;QAAY,gBAAW,GAAX,WAAW,CAAa;QAAY,aAAQ,GAAR,QAAQ,CAAU;QAfzG;;WAEG;QACH,kBAAa,GAA0B,IAAI,GAAG,EAAoB,CAAC;QAEnE;;WAEG;QACH,mBAAc,GAA0D,IAAI,GAAG,EAAoD,CAAC;IAQpI,CAAC;IAED;;OAEG;IACH,uCAAQ,GAAR;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAC1G,IAAI,CAAC,sBAAsB,EAAE,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,4CAAa,GAAb,UAAc,KAAY;QACxB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;;OAGG;IACH,8CAAe,GAAf,UAAgB,KAAY;QAC1B,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;;OAGG;IACH,gDAAiB,GAAjB,UAAkB,KAAY;QAC5B,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACK,qDAAsB,GAA9B;QAAA,iBAUC;QATC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACvF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACxF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAC,QAAuB;YACjD,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAoB;gBACpC,KAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC7E,KAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAChF,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;OAIG;IACK,mDAAoB,GAA5B,UAA6B,SAAyB;QACpD,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE;YACzB,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;SAChC;QACD,IAAM,IAAI,GAAiB,SAAS,CAAC,IAAI,CAAC;QAC1C,OAAO,2BAA2B,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACK,mDAAoB,GAA5B,UAA6B,SAAyB;QACpD,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE;YACzB,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;SAChC;QACD,OAAO,QAAQ,CAAC,MAAM,CAAC;YACrB,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,SAAS,CAAC,EAAX,CAAW,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACtF,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IACL,CAAC;IA1GU,oBAAoB;QAJhC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,QAAQ,EAAE,EAAE;SACb,CAAC;iDA4B4B,WAAW,EAAyB,WAAW,EAAsB,QAAQ;OA3B9F,oBAAoB,CA4GhC;IAAD,2BAAC;CAAA,AA5GD,IA4GC;SA5GY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.actions.js b/src/app/shared/menu/menu.actions.js new file mode 100644 index 0000000000..f8995ca1a8 --- /dev/null +++ b/src/app/shared/menu/menu.actions.js @@ -0,0 +1,211 @@ +import * as tslib_1 from "tslib"; +import { type } from '../ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var MenuActionTypes = { + COLLAPSE_MENU: type('dspace/menu/COLLAPSE_MENU'), + TOGGLE_MENU: type('dspace/menu/TOGGLE_MENU'), + EXPAND_MENU: type('dspace/menu/EXPAND_MENU'), + SHOW_MENU: type('dspace/menu/SHOW_MENU'), + HIDE_MENU: type('dspace/menu/HIDE_MENU'), + COLLAPSE_MENU_PREVIEW: type('dspace/menu/COLLAPSE_MENU_PREVIEW'), + EXPAND_MENU_PREVIEW: type('dspace/menu/EXPAND_MENU_PREVIEW'), + ADD_SECTION: type('dspace/menu-section/ADD_SECTION'), + REMOVE_SECTION: type('dspace/menu-section/REMOVE_SECTION'), + SHOW_SECTION: type('dspace/menu-section/SHOW_SECTION'), + HIDE_SECTION: type('dspace/menu-section/HIDE_SECTION'), + ACTIVATE_SECTION: type('dspace/menu-section/ACTIVATE_SECTION'), + DEACTIVATE_SECTION: type('dspace/menu-section/DEACTIVATE_SECTION'), + TOGGLE_ACTIVE_SECTION: type('dspace/menu-section/TOGGLE_ACTIVE_SECTION'), +}; +/* tslint:disable:max-classes-per-file */ +// MENU STATE ACTIONS +/** + * Action used to collapse a single menu + */ +var CollapseMenuAction = /** @class */ (function () { + function CollapseMenuAction(menuID) { + this.type = MenuActionTypes.COLLAPSE_MENU; + this.menuID = menuID; + } + return CollapseMenuAction; +}()); +export { CollapseMenuAction }; +/** + * Action used to expand a single menu + */ +var ExpandMenuAction = /** @class */ (function () { + function ExpandMenuAction(menuID) { + this.type = MenuActionTypes.EXPAND_MENU; + this.menuID = menuID; + } + return ExpandMenuAction; +}()); +export { ExpandMenuAction }; +/** + * Action used to collapse a single menu when it's expanded and expanded it when it's collapse + */ +var ToggleMenuAction = /** @class */ (function () { + function ToggleMenuAction(menuID) { + this.type = MenuActionTypes.TOGGLE_MENU; + this.menuID = menuID; + } + return ToggleMenuAction; +}()); +export { ToggleMenuAction }; +/** + * Action used to show a single menu + */ +var ShowMenuAction = /** @class */ (function () { + function ShowMenuAction(menuID) { + this.type = MenuActionTypes.SHOW_MENU; + this.menuID = menuID; + } + return ShowMenuAction; +}()); +export { ShowMenuAction }; +/** + * Action used to hide a single menu + */ +var HideMenuAction = /** @class */ (function () { + function HideMenuAction(menuID) { + this.type = MenuActionTypes.HIDE_MENU; + this.menuID = menuID; + } + return HideMenuAction; +}()); +export { HideMenuAction }; +/** + * Action used to collapse a single menu's preview + */ +var CollapseMenuPreviewAction = /** @class */ (function () { + function CollapseMenuPreviewAction(menuID) { + this.type = MenuActionTypes.COLLAPSE_MENU_PREVIEW; + this.menuID = menuID; + } + return CollapseMenuPreviewAction; +}()); +export { CollapseMenuPreviewAction }; +/** + * Action used to expand a single menu's preview + */ +var ExpandMenuPreviewAction = /** @class */ (function () { + function ExpandMenuPreviewAction(menuID) { + this.type = MenuActionTypes.EXPAND_MENU_PREVIEW; + this.menuID = menuID; + } + return ExpandMenuPreviewAction; +}()); +export { ExpandMenuPreviewAction }; +// MENU SECTION ACTIONS +/** + * Action used to perform state changes for a section of a certain menu + */ +var MenuSectionAction = /** @class */ (function () { + function MenuSectionAction(menuID, id) { + this.menuID = menuID; + this.id = id; + } + return MenuSectionAction; +}()); +export { MenuSectionAction }; +/** + * Action used to add a section to a certain menu + */ +var AddMenuSectionAction = /** @class */ (function (_super) { + tslib_1.__extends(AddMenuSectionAction, _super); + function AddMenuSectionAction(menuID, section) { + var _this = _super.call(this, menuID, section.id) || this; + _this.type = MenuActionTypes.ADD_SECTION; + _this.section = section; + return _this; + } + return AddMenuSectionAction; +}(MenuSectionAction)); +export { AddMenuSectionAction }; +/** + * Action used to remove a section from a certain menu + */ +var RemoveMenuSectionAction = /** @class */ (function (_super) { + tslib_1.__extends(RemoveMenuSectionAction, _super); + function RemoveMenuSectionAction(menuID, id) { + var _this = _super.call(this, menuID, id) || this; + _this.type = MenuActionTypes.REMOVE_SECTION; + return _this; + } + return RemoveMenuSectionAction; +}(MenuSectionAction)); +export { RemoveMenuSectionAction }; +/** + * Action used to hide a section of a certain menu + */ +var HideMenuSectionAction = /** @class */ (function (_super) { + tslib_1.__extends(HideMenuSectionAction, _super); + function HideMenuSectionAction(menuID, id) { + var _this = _super.call(this, menuID, id) || this; + _this.type = MenuActionTypes.HIDE_SECTION; + return _this; + } + return HideMenuSectionAction; +}(MenuSectionAction)); +export { HideMenuSectionAction }; +/** + * Action used to show a section of a certain menu + */ +var ShowMenuSectionAction = /** @class */ (function (_super) { + tslib_1.__extends(ShowMenuSectionAction, _super); + function ShowMenuSectionAction(menuID, id) { + var _this = _super.call(this, menuID, id) || this; + _this.type = MenuActionTypes.SHOW_SECTION; + return _this; + } + return ShowMenuSectionAction; +}(MenuSectionAction)); +export { ShowMenuSectionAction }; +/** + * Action used to make a section of a certain menu active + */ +var ActivateMenuSectionAction = /** @class */ (function (_super) { + tslib_1.__extends(ActivateMenuSectionAction, _super); + function ActivateMenuSectionAction(menuID, id) { + var _this = _super.call(this, menuID, id) || this; + _this.type = MenuActionTypes.ACTIVATE_SECTION; + return _this; + } + return ActivateMenuSectionAction; +}(MenuSectionAction)); +export { ActivateMenuSectionAction }; +/** + * Action used to make a section of a certain menu inactive + */ +var DeactivateMenuSectionAction = /** @class */ (function (_super) { + tslib_1.__extends(DeactivateMenuSectionAction, _super); + function DeactivateMenuSectionAction(menuID, id) { + var _this = _super.call(this, menuID, id) || this; + _this.type = MenuActionTypes.DEACTIVATE_SECTION; + return _this; + } + return DeactivateMenuSectionAction; +}(MenuSectionAction)); +export { DeactivateMenuSectionAction }; +/** + * Action used to make an active section of a certain menu inactive or an inactive section of a certain menu active + */ +var ToggleActiveMenuSectionAction = /** @class */ (function (_super) { + tslib_1.__extends(ToggleActiveMenuSectionAction, _super); + function ToggleActiveMenuSectionAction(menuID, id) { + var _this = _super.call(this, menuID, id) || this; + _this.type = MenuActionTypes.TOGGLE_ACTIVE_SECTION; + return _this; + } + return ToggleActiveMenuSectionAction; +}(MenuSectionAction)); +export { ToggleActiveMenuSectionAction }; +/* tslint:enable:max-classes-per-file */ +//# sourceMappingURL=menu.actions.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.actions.js.map b/src/app/shared/menu/menu.actions.js.map new file mode 100644 index 0000000000..a035b03cbe --- /dev/null +++ b/src/app/shared/menu/menu.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu.actions.js","sourceRoot":"","sources":["menu.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.component.js b/src/app/shared/menu/menu.component.js new file mode 100644 index 0000000000..72ce74e22a --- /dev/null +++ b/src/app/shared/menu/menu.component.js @@ -0,0 +1,125 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector } from '@angular/core'; +import { MenuService } from '../../shared/menu/menu.service'; +import { first, map } from 'rxjs/operators'; +import { hasValue } from '../empty.util'; +import { getComponentForMenu } from './menu-section.decorator'; +/** + * A basic implementation of a MenuComponent + */ +var MenuComponent = /** @class */ (function () { + function MenuComponent(menuService, injector) { + this.menuService = menuService; + this.injector = injector; + /** + * List of Injectors for each dynamically rendered menu section + */ + this.sectionInjectors = new Map(); + /** + * List of child Components for each dynamically rendered menu section + */ + this.sectionComponents = new Map(); + } + /** + * Sets all instance variables to their initial values + */ + MenuComponent.prototype.ngOnInit = function () { + var _this = this; + this.menuCollapsed = this.menuService.isMenuCollapsed(this.menuID); + this.menuPreviewCollapsed = this.menuService.isMenuPreviewCollapsed(this.menuID); + this.menuVisible = this.menuService.isMenuVisible(this.menuID); + this.sections = this.menuService.getMenuTopSections(this.menuID).pipe(first()); + this.sections.subscribe(function (sections) { + sections.forEach(function (section) { + _this.sectionInjectors.set(section.id, _this.getSectionDataInjector(section)); + _this.getSectionComponent(section).pipe(first()).subscribe(function (constr) { return _this.sectionComponents.set(section.id, constr); }); + }); + }); + }; + /** + * Collapse this menu when it's currently expanded, expand it when its currently collapsed + * @param {Event} event The user event that triggered this method + */ + MenuComponent.prototype.toggle = function (event) { + event.preventDefault(); + this.menuService.toggleMenu(this.menuID); + }; + /** + * Expand this menu + * @param {Event} event The user event that triggered this method + */ + MenuComponent.prototype.expand = function (event) { + event.preventDefault(); + this.menuService.expandMenu(this.menuID); + }; + /** + * Collapse this menu + * @param {Event} event The user event that triggered this method + */ + MenuComponent.prototype.collapse = function (event) { + event.preventDefault(); + this.menuService.collapseMenu(this.menuID); + }; + /** + * Expand this menu's preview + * @param {Event} event The user event that triggered this method + */ + MenuComponent.prototype.expandPreview = function (event) { + var _this = this; + event.preventDefault(); + this.previewToggleDebounce(function () { return _this.menuService.expandMenuPreview(_this.menuID); }, 100); + }; + /** + * Collapse this menu's preview + * @param {Event} event The user event that triggered this method + */ + MenuComponent.prototype.collapsePreview = function (event) { + var _this = this; + event.preventDefault(); + this.previewToggleDebounce(function () { return _this.menuService.collapseMenuPreview(_this.menuID); }, 400); + }; + /** + * delay the handler function by the given amount of time + * + * @param {Function} handler The function to delay + * @param {number} ms The amount of ms to delay the handler function by + */ + MenuComponent.prototype.previewToggleDebounce = function (handler, ms) { + if (hasValue(this.previewTimer)) { + clearTimeout(this.previewTimer); + } + this.previewTimer = setTimeout(handler, ms); + }; + /** + * Retrieve the component for a given MenuSection object + * @param {MenuSection} section The given MenuSection + * @returns {Observable>} Emits the constructor of the Component that should be used to render this object + */ + MenuComponent.prototype.getSectionComponent = function (section) { + var _this = this; + return this.menuService.hasSubSections(this.menuID, section.id).pipe(map(function (expandable) { + return getComponentForMenu(_this.menuID, expandable); + })); + }; + /** + * Retrieve the Injector for a given MenuSection object + * @param {MenuSection} section The given MenuSection + * @returns {Injector} The Injector that injects the data for this menu section into the section's component + */ + MenuComponent.prototype.getSectionDataInjector = function (section) { + return Injector.create({ + providers: [{ provide: 'sectionDataProvider', useFactory: function () { return (section); }, deps: [] }], + parent: this.injector + }); + }; + MenuComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-menu', + template: '' + }), + tslib_1.__metadata("design:paramtypes", [MenuService, Injector]) + ], MenuComponent); + return MenuComponent; +}()); +export { MenuComponent }; +//# sourceMappingURL=menu.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.component.js.map b/src/app/shared/menu/menu.component.js.map new file mode 100644 index 0000000000..2624327dcc --- /dev/null +++ b/src/app/shared/menu/menu.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu.component.js","sourceRoot":"","sources":["menu.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.module.js b/src/app/shared/menu/menu.module.js new file mode 100644 index 0000000000..eb759260c3 --- /dev/null +++ b/src/app/shared/menu/menu.module.js @@ -0,0 +1,50 @@ +import * as tslib_1 from "tslib"; +import { MenuSectionComponent } from './menu-section/menu-section.component'; +import { MenuComponent } from './menu.component'; +import { NgModule } from '@angular/core'; +import { TranslateModule } from '@ngx-translate/core'; +import { RouterModule } from '@angular/router'; +import { LinkMenuItemComponent } from './menu-item/link-menu-item.component'; +import { TextMenuItemComponent } from './menu-item/text-menu-item.component'; +import { OnClickMenuItemComponent } from './menu-item/onclick-menu-item.component'; +import { CommonModule } from '@angular/common'; +var COMPONENTS = [ + MenuSectionComponent, + MenuComponent, + LinkMenuItemComponent, + TextMenuItemComponent, + OnClickMenuItemComponent +]; +var ENTRY_COMPONENTS = [ + LinkMenuItemComponent, + TextMenuItemComponent, + OnClickMenuItemComponent +]; +var MODULES = [ + TranslateModule, + RouterModule, + CommonModule +]; +var PROVIDERS = []; +var MenuModule = /** @class */ (function () { + /** + * This module handles all components, providers and modules that are needed for the menu + */ + function MenuModule() { + } + MenuModule = tslib_1.__decorate([ + NgModule({ + imports: MODULES.slice(), + declarations: COMPONENTS.concat(ENTRY_COMPONENTS), + providers: PROVIDERS.slice(), + exports: COMPONENTS.concat(MODULES), + entryComponents: ENTRY_COMPONENTS.slice() + }) + /** + * This module handles all components, providers and modules that are needed for the menu + */ + ], MenuModule); + return MenuModule; +}()); +export { MenuModule }; +//# sourceMappingURL=menu.module.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.module.js.map b/src/app/shared/menu/menu.module.js.map new file mode 100644 index 0000000000..c6f79a40d6 --- /dev/null +++ b/src/app/shared/menu/menu.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu.module.js","sourceRoot":"","sources":["menu.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,IAAM,UAAU,GAAG;IACjB,oBAAoB;IACpB,aAAa;IACb,qBAAqB;IACrB,qBAAqB;IACrB,wBAAwB;CACzB,CAAC;AAEF,IAAM,gBAAgB,GAAG;IACvB,qBAAqB;IACrB,qBAAqB;IACrB,wBAAwB;CACzB,CAAC;AAEF,IAAM,OAAO,GAAG;IACd,eAAe;IACf,YAAY;IACZ,YAAY;CACb,CAAC;AACF,IAAM,SAAS,GAAG,EAEjB,CAAC;AAyBF;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,UAAU;QAvBtB,QAAQ,CAAC;YACR,OAAO,EACF,OAAO,QACX;YACD,YAAY,EACP,UAAU,QACV,gBAAgB,CACpB;YACD,SAAS,EACJ,SAAS,QACb;YACD,OAAO,EACF,UAAU,QACV,OAAO,CACX;YACD,eAAe,EACV,gBAAgB,QACpB;SACF,CAAC;QAEF;;WAEG;OACU,UAAU,CAEtB;IAAD,iBAAC;CAAA,AAFD,IAEC;SAFY,UAAU"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.reducer.js b/src/app/shared/menu/menu.reducer.js new file mode 100644 index 0000000000..52424558c9 --- /dev/null +++ b/src/app/shared/menu/menu.reducer.js @@ -0,0 +1,242 @@ +import { MenuActionTypes } from './menu.actions'; +import { initialMenusState } from './initial-menus-state'; +import { hasValue } from '../empty.util'; +/** + * Represents the state of a single menu section in the store + */ +var MenuSection = /** @class */ (function () { + function MenuSection() { + } + return MenuSection; +}()); +export { MenuSection }; +/** + * Reducer that handles MenuActions to update the MenusState + * @param {MenusState} state The initial MenusState + * @param {MenuAction} action The Action to be performed on the state + * @returns {MenusState} The new, reducer MenusState + */ +export function menusReducer(state, action) { + if (state === void 0) { state = initialMenusState; } + var _a, _b, _c, _d, _e, _f, _g; + var menuState = state[action.menuID]; + switch (action.type) { + case MenuActionTypes.COLLAPSE_MENU: { + var newMenuState = Object.assign({}, menuState, { collapsed: true }); + return Object.assign({}, state, (_a = {}, _a[action.menuID] = newMenuState, _a)); + } + case MenuActionTypes.EXPAND_MENU: { + var newMenuState = Object.assign({}, menuState, { collapsed: false }); + return Object.assign({}, state, (_b = {}, _b[action.menuID] = newMenuState, _b)); + } + case MenuActionTypes.COLLAPSE_MENU_PREVIEW: { + var newMenuState = Object.assign({}, menuState, { previewCollapsed: true }); + return Object.assign({}, state, (_c = {}, _c[action.menuID] = newMenuState, _c)); + } + case MenuActionTypes.EXPAND_MENU_PREVIEW: { + var newMenuState = Object.assign({}, menuState, { previewCollapsed: false }); + return Object.assign({}, state, (_d = {}, _d[action.menuID] = newMenuState, _d)); + } + case MenuActionTypes.TOGGLE_MENU: { + var newMenuState = Object.assign({}, menuState, { collapsed: !menuState.collapsed }); + return Object.assign({}, state, (_e = {}, _e[action.menuID] = newMenuState, _e)); + } + case MenuActionTypes.SHOW_MENU: { + var newMenuState = Object.assign({}, menuState, { visible: true }); + return Object.assign({}, state, (_f = {}, _f[action.menuID] = newMenuState, _f)); + } + case MenuActionTypes.HIDE_MENU: { + var newMenuState = Object.assign({}, menuState, { visible: false }); + return Object.assign({}, state, (_g = {}, _g[action.menuID] = newMenuState, _g)); + } + case MenuActionTypes.ADD_SECTION: { + return addSection(state, action); + } + case MenuActionTypes.REMOVE_SECTION: { + return removeSection(state, action); + } + case MenuActionTypes.ACTIVATE_SECTION: { + return activateSection(state, action); + } + case MenuActionTypes.DEACTIVATE_SECTION: { + return deactivateSection(state, action); + } + case MenuActionTypes.TOGGLE_ACTIVE_SECTION: { + return toggleActiveSection(state, action); + } + case MenuActionTypes.HIDE_SECTION: { + return hideSection(state, action); + } + case MenuActionTypes.SHOW_SECTION: { + return showSection(state, action); + } + default: { + return state; + } + } +} +/** + * Add a section the a certain menu + * @param {MenusState} state The initial state + * @param {AddMenuSectionAction} action Action containing the new section and the menu's ID + * @returns {MenusState} The new reduced state + */ +function addSection(state, action) { + // let newState = addToIndex(state, action.section, action.menuID); + var newState = putSectionState(state, action, action.section); + return reorderSections(newState, action); +} +/** + * Reorder all sections based on their index field + * @param {MenusState} state The initial state + * @param {MenuSectionAction} action Action containing the menu ID of the menu that is to be reordered + * @returns {MenusState} The new reduced state + */ +function reorderSections(state, action) { + var _a; + var menuState = state[action.menuID]; + var newSectionState = {}; + var newSectionIndexState = {}; + Object.values(menuState.sections).sort(function (sectionA, sectionB) { + var indexA = sectionA.index || 0; + var indexB = sectionB.index || 0; + return indexA - indexB; + }).forEach(function (section) { + newSectionState[section.id] = section; + if (hasValue(section.parentID)) { + var parentIndex = hasValue(newSectionIndexState[section.parentID]) ? newSectionIndexState[section.parentID] : []; + newSectionIndexState[section.parentID] = parentIndex.concat([section.id]); + } + }); + var newMenuState = Object.assign({}, menuState, { + sections: newSectionState, + sectionToSubsectionIndex: newSectionIndexState + }); + return Object.assign({}, state, (_a = {}, _a[action.menuID] = newMenuState, _a)); +} +/** + * Remove a section from a certain menu + * @param {MenusState} state The initial state + * @param {RemoveMenuSectionAction} action Action containing the section ID and menu ID of the section that should be removed + * @returns {MenusState} The new reduced state + */ +function removeSection(state, action) { + var _a; + var menuState = state[action.menuID]; + var id = action.id; + var newState = removeFromIndex(state, menuState.sections[action.id], action.menuID); + var newMenuState = Object.assign({}, newState[action.menuID]); + delete newMenuState.sections[id]; + return Object.assign({}, newState, (_a = {}, _a[action.menuID] = newMenuState, _a)); +} +/** + * Remove a section from the index of a certain menu + * @param {MenusState} state The initial state + * @param {MenuSection} action The MenuSection of which the ID should be removed from the index + * @param {MenuID} action The Menu ID to which the section belonged + * @returns {MenusState} The new reduced state + */ +function removeFromIndex(state, section, menuID) { + var _a, _b; + var sectionID = section.id; + var parentID = section.parentID; + if (hasValue(parentID)) { + var menuState = state[menuID]; + var index = menuState.sectionToSubsectionIndex; + var parentIndex = hasValue(index[parentID]) ? index[parentID] : []; + var newIndex = Object.assign({}, index, (_a = {}, _a[parentID] = parentIndex.filter(function (id) { return id !== sectionID; }), _a)); + var newMenuState = Object.assign({}, menuState, { sectionToSubsectionIndex: newIndex }); + return Object.assign({}, state, (_b = {}, _b[menuID] = newMenuState, _b)); + } + return state; +} +/** + * Hide a certain section + * @param {MenusState} state The initial state + * @param {HideMenuSectionAction} action Action containing data to identify the section to be updated + * @returns {MenusState} The new reduced state + */ +function hideSection(state, action) { + return updateSectionState(state, action, { visible: false }); +} +/** + * Show a certain section + * @param {MenusState} state The initial state + * @param {ShowMenuSectionAction} action Action containing data to identify the section to be updated + * @returns {MenusState} The new reduced state + */ +function showSection(state, action) { + return updateSectionState(state, action, { visible: true }); +} +/** + * Deactivate a certain section + * @param {MenusState} state The initial state + * @param {DeactivateMenuSectionAction} action Action containing data to identify the section to be updated + * @returns {MenusState} The new reduced state + */ +function deactivateSection(state, action) { + var sectionState = state[action.menuID].sections[action.id]; + if (hasValue(sectionState)) { + return updateSectionState(state, action, { active: false }); + } +} +/** + * Activate a certain section + * @param {MenusState} state The initial state + * @param {DeactivateMenuSectionAction} action Action containing data to identify the section to be updated + * @returns {MenusState} The new reduced state + */ +function activateSection(state, action) { + var sectionState = state[action.menuID].sections[action.id]; + if (hasValue(sectionState)) { + return updateSectionState(state, action, { active: true }); + } +} +/** + * Deactivate a certain section when it's currently active, activate a certain section when it's currently inactive + * @param {MenusState} state The initial state + * @param {DeactivateMenuSectionAction} action Action containing data to identify the section to be updated + * @returns {MenusState} The new reduced state + */ +function toggleActiveSection(state, action) { + var sectionState = state[action.menuID].sections[action.id]; + if (hasValue(sectionState)) { + return updateSectionState(state, action, { active: !sectionState.active }); + } + return state; +} +/** + * Add or replace a section in the state + * @param {MenusState} state The initial state + * @param {MenuAction} action The action which contains the menu ID of the menu of which the state is to be updated + * @param {MenuSection} section The section that will be added or replaced in the state + * @returns {MenusState} The new reduced state + */ +function putSectionState(state, action, section) { + var _a, _b; + var menuState = state[action.menuID]; + var newSections = Object.assign({}, menuState.sections, (_a = {}, + _a[section.id] = section, + _a)); + var newMenuState = Object.assign({}, menuState, { + sections: newSections + }); + return Object.assign({}, state, (_b = {}, _b[action.menuID] = newMenuState, _b)); +} +/** + * Update a section + * @param {MenusState} state The initial state + * @param {MenuSectionAction} action The action containing the menu ID and section ID + * @param {any} update A partial section that represents the part that should be updated in an existing section + * @returns {MenusState} The new reduced state + */ +function updateSectionState(state, action, update) { + var menuState = state[action.menuID]; + var sectionState = menuState.sections[action.id]; + if (hasValue(sectionState)) { + var newTopSection = Object.assign({}, sectionState, update); + return putSectionState(state, action, newTopSection); + } + return state; +} +//# sourceMappingURL=menu.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.reducer.js.map b/src/app/shared/menu/menu.reducer.js.map new file mode 100644 index 0000000000..39429faa19 --- /dev/null +++ b/src/app/shared/menu/menu.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu.reducer.js","sourceRoot":"","sources":["menu.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.service.js b/src/app/shared/menu/menu.service.js new file mode 100644 index 0000000000..d8cc4f52ed --- /dev/null +++ b/src/app/shared/menu/menu.service.js @@ -0,0 +1,217 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { select, Store } from '@ngrx/store'; +import { keySelector } from '../../app.reducer'; +import { map, switchMap } from 'rxjs/operators'; +import { ActivateMenuSectionAction, AddMenuSectionAction, CollapseMenuAction, CollapseMenuPreviewAction, DeactivateMenuSectionAction, ExpandMenuAction, ExpandMenuPreviewAction, HideMenuAction, RemoveMenuSectionAction, ShowMenuAction, ToggleActiveMenuSectionAction, ToggleMenuAction, } from './menu.actions'; +import { hasNoValue, isNotEmpty } from '../empty.util'; +import { combineLatest as observableCombineLatest } from 'rxjs'; +var menusStateSelector = function (state) { return state.menus; }; +var menuByIDSelector = function (menuID) { + return keySelector(menuID, menusStateSelector); +}; +var menuSectionStateSelector = function (state) { return state.sections; }; +var menuSectionByIDSelector = function (id) { + return keySelector(id, menuSectionStateSelector); +}; +var menuSectionIndexStateSelector = function (state) { return state.sectionToSubsectionIndex; }; +var getSubSectionsFromSectionSelector = function (id) { + return keySelector(id, menuSectionIndexStateSelector); +}; +var MenuService = /** @class */ (function () { + function MenuService(store) { + this.store = store; + } + /** + * Retrieve a menu's state by its ID + * @param {MenuID} id ID of the requested Menu + * @returns {Observable} Observable that emits the current state of the requested Menu + */ + MenuService.prototype.getMenu = function (id) { + return this.store.pipe(select(menuByIDSelector(id))); + }; + /** + * Retrieve all top level sections of a certain menu + * @param {MenuID} menuID ID of the Menu + * @param {boolean} mustBeVisible True if you only want to request visible sections, false if you want to request all top level sections + * @returns {Observable} Observable that emits a list of MenuSections that are top sections of the given menu + */ + MenuService.prototype.getMenuTopSections = function (menuID, mustBeVisible) { + if (mustBeVisible === void 0) { mustBeVisible = true; } + return this.store.pipe(select(menuByIDSelector(menuID)), select(menuSectionStateSelector), map(function (sections) { + return Object.values(sections) + .filter(function (section) { return hasNoValue(section.parentID); }) + .filter(function (section) { return !mustBeVisible || section.visible; }); + })); + }; + /** + * Retrieve all sub level sections of a certain top section in a given menu + * @param {MenuID} menuID The ID of the menu + * @param {string} parentID The ID of the parent section + * @param {boolean} mustBeVisible True if you only want to request visible sections, false if you want to request all sections + * @returns {Observable} Observable that emits a list of MenuSections that are sub sections of the given menu and parent section + */ + MenuService.prototype.getSubSectionsByParentID = function (menuID, parentID, mustBeVisible) { + var _this = this; + if (mustBeVisible === void 0) { mustBeVisible = true; } + return this.store.pipe(select(menuByIDSelector(menuID)), select(getSubSectionsFromSectionSelector(parentID)), map(function (ids) { return isNotEmpty(ids) ? ids : []; }), switchMap(function (ids) { + return observableCombineLatest(ids.map(function (id) { return _this.getMenuSection(menuID, id); })); + }), map(function (sections) { return sections.filter(function (section) { return !mustBeVisible || section.visible; }); })); + }; + /** + * Check if the a menu's top level section has subsections + * @param {MenuID} menuID The ID of the Menu + * @param {string} parentID The ID of the top level parent section + * @returns {Observable} Observable that emits true when the given parent section has sub sections, false if the given parent section does not have any sub sections + */ + MenuService.prototype.hasSubSections = function (menuID, parentID) { + return this.store.pipe(select(menuByIDSelector(menuID)), select(getSubSectionsFromSectionSelector(parentID)), map(function (ids) { return isNotEmpty(ids); })); + }; + /** + * Retrieve a specific menu section by its menu ID and section ID + * @param {MenuID} menuID The ID of the menu the section resides in + * @param {string} sectionId The ID of the requested section + * @returns {Observable} Observable that emits the found MenuSection + */ + MenuService.prototype.getMenuSection = function (menuID, sectionId) { + return this.store.pipe(select(menuByIDSelector(menuID)), select(menuSectionByIDSelector(sectionId))); + }; + /** + * Add a new section to the store + * @param {MenuID} menuID The menu to which the new section is to be added + * @param {MenuSection} section The section to be added + */ + MenuService.prototype.addSection = function (menuID, section) { + this.store.dispatch(new AddMenuSectionAction(menuID, section)); + }; + /** + * Remove a section from the store + * @param {MenuID} menuID The menu from which the section is to be removed + * @param {string} sectionID The ID of the section that should be removed + */ + MenuService.prototype.removeSection = function (menuID, sectionID) { + this.store.dispatch(new RemoveMenuSectionAction(menuID, sectionID)); + }; + /** + * Check if a given menu is collapsed + * @param {MenuID} menuID The ID of the menu that is to be checked + * @returns {Observable} Emits true if the given menu is collapsed, emits falls when it's expanded + */ + MenuService.prototype.isMenuCollapsed = function (menuID) { + return this.getMenu(menuID).pipe(map(function (state) { return state.collapsed; })); + }; + /** + * Check if a given menu's preview is collapsed + * @param {MenuID} menuID The ID of the menu that is to be checked + * @returns {Observable} Emits true if the given menu's preview is collapsed, emits falls when it's expanded + */ + MenuService.prototype.isMenuPreviewCollapsed = function (menuID) { + return this.getMenu(menuID).pipe(map(function (state) { return state.previewCollapsed; })); + }; + /** + * Check if a given menu is visible + * @param {MenuID} menuID The ID of the menu that is to be checked + * @returns {Observable} Emits true if the given menu is visible, emits falls when it's hidden + */ + MenuService.prototype.isMenuVisible = function (menuID) { + return this.getMenu(menuID).pipe(map(function (state) { return state.visible; })); + }; + /** + * Expands a given menu + * @param {MenuID} menuID The ID of the menu + */ + MenuService.prototype.expandMenu = function (menuID) { + this.store.dispatch(new ExpandMenuAction(menuID)); + }; + /** + * Collapses a given menu + * @param {MenuID} menuID The ID of the menu + */ + MenuService.prototype.collapseMenu = function (menuID) { + this.store.dispatch(new CollapseMenuAction(menuID)); + }; + /** + * Expands a given menu's preview + * @param {MenuID} menuID The ID of the menu + */ + MenuService.prototype.expandMenuPreview = function (menuID) { + this.store.dispatch(new ExpandMenuPreviewAction(menuID)); + }; + /** + * Collapses a given menu's preview + * @param {MenuID} menuID The ID of the menu + */ + MenuService.prototype.collapseMenuPreview = function (menuID) { + this.store.dispatch(new CollapseMenuPreviewAction(menuID)); + }; + /** + * Collapse a given menu when it's currently expanded or expand it when it's currently collapsed + * @param {MenuID} menuID The ID of the menu + */ + MenuService.prototype.toggleMenu = function (menuID) { + this.store.dispatch(new ToggleMenuAction(menuID)); + }; + /** + * Show a given menu + * @param {MenuID} menuID The ID of the menu + */ + MenuService.prototype.showMenu = function (menuID) { + this.store.dispatch(new ShowMenuAction(menuID)); + }; + /** + * Hide a given menu + * @param {MenuID} menuID The ID of the menu + */ + MenuService.prototype.hideMenu = function (menuID) { + this.store.dispatch(new HideMenuAction(menuID)); + }; + /** + * Activate a given menu section when it's currently inactive or deactivate it when it's currently active + * @param {MenuID} menuID The ID of the menu + * @param {string} id The ID of the section + */ + MenuService.prototype.toggleActiveSection = function (menuID, id) { + this.store.dispatch(new ToggleActiveMenuSectionAction(menuID, id)); + }; + /** + * Activate a given menu section + * @param {MenuID} menuID The ID of the menu + * @param {string} id The ID of the section + */ + MenuService.prototype.activateSection = function (menuID, id) { + this.store.dispatch(new ActivateMenuSectionAction(menuID, id)); + }; + /** + * Deactivate a given menu section + * @param {MenuID} menuID The ID of the menu + * @param {string} id The ID of the section + */ + MenuService.prototype.deactivateSection = function (menuID, id) { + this.store.dispatch(new DeactivateMenuSectionAction(menuID, id)); + }; + /** + * Check whether a given section is currently active or not + * @param {MenuID} menuID The ID of the Menu the section resides in + * @param {string} id The ID of the menu section to check + * @returns {Observable} Emits true when the given section is currently active, false when the given section is currently inactive + */ + MenuService.prototype.isSectionActive = function (menuID, id) { + return this.getMenuSection(menuID, id).pipe(map(function (section) { return section.active; })); + }; + /** + * Check whether a given section is currently visible or not + * @param {MenuID} menuID The ID of the Menu the section resides in + * @param {string} id The ID of the menu section to check + * @returns {Observable} Emits true when the given section is currently visible, false when the given section is currently hidden + */ + MenuService.prototype.isSectionVisible = function (menuID, id) { + return this.getMenuSection(menuID, id).pipe(map(function (section) { return section.visible; })); + }; + MenuService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store]) + ], MenuService); + return MenuService; +}()); +export { MenuService }; +//# sourceMappingURL=menu.service.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.service.js.map b/src/app/shared/menu/menu.service.js.map new file mode 100644 index 0000000000..71167a6b77 --- /dev/null +++ b/src/app/shared/menu/menu.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu.service.js","sourceRoot":"","sources":["menu.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-action.js b/src/app/shared/mocks/mock-action.js new file mode 100644 index 0000000000..eb52581277 --- /dev/null +++ b/src/app/shared/mocks/mock-action.js @@ -0,0 +1,8 @@ +var MockAction = /** @class */ (function () { + function MockAction() { + this.type = null; + } + return MockAction; +}()); +export { MockAction }; +//# sourceMappingURL=mock-action.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-action.js.map b/src/app/shared/mocks/mock-action.js.map new file mode 100644 index 0000000000..def2870f4d --- /dev/null +++ b/src/app/shared/mocks/mock-action.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-action.js","sourceRoot":"","sources":["mock-action.ts"],"names":[],"mappings":"AAEA;IAAA;QACE,SAAI,GAAG,IAAI,CAAC;IAEd,CAAC;IAAD,iBAAC;AAAD,CAAC,AAHD,IAGC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-active-router.js b/src/app/shared/mocks/mock-active-router.js new file mode 100644 index 0000000000..6ec4d22b63 --- /dev/null +++ b/src/app/shared/mocks/mock-active-router.js @@ -0,0 +1,36 @@ +import { BehaviorSubject } from 'rxjs'; +var MockActivatedRoute = /** @class */ (function () { + function MockActivatedRoute(params) { + // ActivatedRoute.params is Observable + this.subject = new BehaviorSubject(this.testParams); + this.params = this.subject.asObservable(); + this.queryParams = this.subject.asObservable(); + if (params) { + this.testParams = params; + } + else { + this.testParams = {}; + } + } + Object.defineProperty(MockActivatedRoute.prototype, "testParams", { + // Test parameters + get: function () { return this._testParams; }, + set: function (params) { + this._testParams = params; + this.subject.next(params); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(MockActivatedRoute.prototype, "snapshot", { + // ActivatedRoute.snapshot.params + get: function () { + return { params: this.testParams, queryParams: this.testParams }; + }, + enumerable: true, + configurable: true + }); + return MockActivatedRoute; +}()); +export { MockActivatedRoute }; +//# sourceMappingURL=mock-active-router.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-active-router.js.map b/src/app/shared/mocks/mock-active-router.js.map new file mode 100644 index 0000000000..dcade68f39 --- /dev/null +++ b/src/app/shared/mocks/mock-active-router.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-active-router.js","sourceRoot":"","sources":["mock-active-router.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEvC;IAUE,4BAAY,MAAe;QAN3B,sCAAsC;QAC9B,YAAO,GAA0B,IAAI,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE9E,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACrC,gBAAW,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAGxC,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;SACtB;IACH,CAAC;IAGD,sBAAI,0CAAU;QADd,kBAAkB;aAClB,cAAmB,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;aAC7C,UAAe,MAAU;YACvB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;;;OAJ4C;IAO7C,sBAAI,wCAAQ;QADZ,iCAAiC;aACjC;YACE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QACnE,CAAC;;;OAAA;IACH,yBAAC;AAAD,CAAC,AA7BD,IA6BC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-admin-guard.service.js b/src/app/shared/mocks/mock-admin-guard.service.js new file mode 100644 index 0000000000..ac9b4e8e2e --- /dev/null +++ b/src/app/shared/mocks/mock-admin-guard.service.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { hasValue } from '../empty.util'; +var MockAdminGuard = /** @class */ (function () { + function MockAdminGuard() { + } + MockAdminGuard.prototype.canActivate = function (route, state) { + // if being run in browser, enforce 'isAdmin' requirement + if (typeof window === 'object' && hasValue(window.localStorage)) { + if (window.localStorage.getItem('isAdmin') === 'true') { + return true; + } + return false; + } + return true; + }; + MockAdminGuard.prototype.canActivateChild = function (route, state) { + return this.canActivate(route, state); + }; + MockAdminGuard = tslib_1.__decorate([ + Injectable() + ], MockAdminGuard); + return MockAdminGuard; +}()); +export { MockAdminGuard }; +//# sourceMappingURL=mock-admin-guard.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-admin-guard.service.js.map b/src/app/shared/mocks/mock-admin-guard.service.js.map new file mode 100644 index 0000000000..1f381483c8 --- /dev/null +++ b/src/app/shared/mocks/mock-admin-guard.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-admin-guard.service.js","sourceRoot":"","sources":["mock-admin-guard.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC;IAAA;IAgBA,CAAC;IAdC,oCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QACnE,yDAAyD;QACzD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;YAC/D,IAAI,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,MAAM,EAAE;gBACrD,OAAO,IAAI,CAAC;aACb;YACD,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yCAAgB,GAAhB,UAAiB,KAA6B,EAAE,KAA0B;QACxE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAfU,cAAc;QAD1B,UAAU,EAAE;OACA,cAAc,CAgB1B;IAAD,qBAAC;CAAA,AAhBD,IAgBC;SAhBY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-angulartics.service.js b/src/app/shared/mocks/mock-angulartics.service.js new file mode 100644 index 0000000000..2a1ccc0d22 --- /dev/null +++ b/src/app/shared/mocks/mock-angulartics.service.js @@ -0,0 +1,9 @@ +/* tslint:disable:no-empty */ +var AngularticsMock = /** @class */ (function () { + function AngularticsMock() { + } + AngularticsMock.prototype.eventTrack = function (action, properties) { }; + return AngularticsMock; +}()); +export { AngularticsMock }; +//# sourceMappingURL=mock-angulartics.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-angulartics.service.js.map b/src/app/shared/mocks/mock-angulartics.service.js.map new file mode 100644 index 0000000000..a82f9a412d --- /dev/null +++ b/src/app/shared/mocks/mock-angulartics.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-angulartics.service.js","sourceRoot":"","sources":["mock-angulartics.service.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;IAAA;IAEA,CAAC;IADQ,oCAAU,GAAjB,UAAkB,MAAM,EAAE,UAAU,IAAI,CAAC;IAC3C,sBAAC;AAAD,CAAC,AAFD,IAEC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-auth.service.js b/src/app/shared/mocks/mock-auth.service.js new file mode 100644 index 0000000000..dcb1a72ae2 --- /dev/null +++ b/src/app/shared/mocks/mock-auth.service.js @@ -0,0 +1,11 @@ +/* tslint:disable:no-empty */ +var AuthServiceMock = /** @class */ (function () { + function AuthServiceMock() { + } + AuthServiceMock.prototype.checksAuthenticationToken = function () { + return; + }; + return AuthServiceMock; +}()); +export { AuthServiceMock }; +//# sourceMappingURL=mock-auth.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-auth.service.js.map b/src/app/shared/mocks/mock-auth.service.js.map new file mode 100644 index 0000000000..26ffb1b43e --- /dev/null +++ b/src/app/shared/mocks/mock-auth.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-auth.service.js","sourceRoot":"","sources":["mock-auth.service.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;IAAA;IAIA,CAAC;IAHQ,mDAAyB,GAAhC;QACE,OAAM;IACR,CAAC;IACH,sBAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-builder-service.js b/src/app/shared/mocks/mock-form-builder-service.js new file mode 100644 index 0000000000..3ddfb9cad8 --- /dev/null +++ b/src/app/shared/mocks/mock-form-builder-service.js @@ -0,0 +1,21 @@ +import { FormControl, FormGroup } from '@angular/forms'; +export function getMockFormBuilderService() { + return jasmine.createSpyObj('FormBuilderService', { + modelFromConfiguration: [], + createFormGroup: new FormGroup({}), + getValueFromModel: {}, + getFormControlById: new FormControl(), + hasMappedGroupValue: false, + findById: {}, + getPath: ['test', 'path'], + getId: 'path', + clearAllModelsValue: {}, + insertFormArrayGroup: {}, + isQualdrop: false, + isQualdropGroup: false, + isModelInCustomGroup: true, + isRelationGroup: true, + hasArrayGroupValue: true + }); +} +//# sourceMappingURL=mock-form-builder-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-builder-service.js.map b/src/app/shared/mocks/mock-form-builder-service.js.map new file mode 100644 index 0000000000..4422604f8e --- /dev/null +++ b/src/app/shared/mocks/mock-form-builder-service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-form-builder-service.js","sourceRoot":"","sources":["mock-form-builder-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,oBAAoB,EAAE;QAChD,sBAAsB,EAAE,EAAE;QAC1B,eAAe,EAAE,IAAI,SAAS,CAAC,EAAE,CAAC;QAClC,iBAAiB,EAAE,EAAE;QACrB,kBAAkB,EAAE,IAAI,WAAW,EAAE;QACrC,mBAAmB,EAAE,KAAK;QAC1B,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QACzB,KAAK,EAAE,MAAM;QACb,mBAAmB,EAAG,EAAE;QACxB,oBAAoB,EAAE,EAAE;QACxB,UAAU,EAAE,KAAK;QACjB,eAAe,EAAE,KAAK;QACtB,oBAAoB,EAAE,IAAI;QAC1B,eAAe,EAAE,IAAI;QACrB,kBAAkB,EAAE,IAAI;KAEzB,CAAC,CAAC;AAEL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-models.js b/src/app/shared/mocks/mock-form-models.js new file mode 100644 index 0000000000..7dee9624e3 --- /dev/null +++ b/src/app/shared/mocks/mock-form-models.js @@ -0,0 +1,228 @@ +import { DsDynamicInputModel } from '../form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model'; +import { DynamicQualdropModel } from '../form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model'; +import { DynamicRowArrayModel } from '../form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model'; +import { DynamicSelectModel } from '@ng-dynamic-forms/core'; +import { SubmissionScopeType } from '../../core/submission/submission-scope-type'; +import { DynamicRelationGroupModel } from '../form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; +import { AuthorityOptions } from '../../core/integration/models/authority-options.model'; +import { AuthorityValue } from '../../core/integration/models/authority.value'; +import { FormFieldMetadataValueObject } from '../form/builder/models/form-field-metadata-value.model'; +import { DynamicRowGroupModel } from '../form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model'; +export var qualdropSelectConfig = { + name: 'dc.identifier_QUALDROP_METADATA', + id: 'dc_identifier_QUALDROP_METADATA', + readOnly: false, + disabled: false, + label: 'Identifiers', + placeholder: 'Identifiers', + options: [ + { + label: 'ISSN', + value: 'dc.identifier.issn' + }, + { + label: 'Other', + value: 'dc.identifier.other' + }, + { + label: 'ISMN', + value: 'dc.identifier.ismn' + }, + { + label: 'Gov\'t Doc #', + value: 'dc.identifier.govdoc' + }, + { + label: 'URI', + value: 'dc.identifier.uri' + }, + { + label: 'ISBN', + value: 'dc.identifier.isbn' + } + ], + value: 'dc.identifier.issn' +}; +export var qualdropInputConfig = { + name: 'dc.identifier_QUALDROP_VALUE', + id: 'dc_identifier_QUALDROP_VALUE', + readOnly: false, + disabled: false, + value: 'test' +}; +export var mockQualdropSelectModel = new DynamicSelectModel(qualdropSelectConfig); +export var mockQualdropInputModel = new DsDynamicInputModel(qualdropInputConfig); +export var qualdropConfig = { + id: 'dc_identifier_QUALDROP_GROUP', + legend: 'Identifiers', + readOnly: false, + group: [mockQualdropSelectModel, mockQualdropInputModel] +}; +export var MockQualdropModel = new DynamicQualdropModel(qualdropConfig); +var rowArrayQualdropConfig = { + id: 'row_QUALDROP_GROUP', + initialCount: 1, + notRepeatable: true, + groupFactory: function () { + return [MockQualdropModel]; + } +}; +export var MockRowArrayQualdropModel = new DynamicRowArrayModel(rowArrayQualdropConfig); +var mockFormRowModel = { + fields: [ + { + input: { type: 'lookup' }, + label: 'Journal', + mandatory: 'false', + repeatable: false, + hints: 'Enter the name of the journal where the item has been\n\t\t\t\t\tpublished, if any.', + selectableMetadata: [ + { + metadata: 'journal', + authority: 'JOURNALAuthority', + closed: false + } + ], + languageCodes: [] + }, + { + input: { type: 'onebox' }, + label: 'Issue', + mandatory: 'false', + repeatable: false, + hints: ' Enter issue number.', + selectableMetadata: [ + { + metadata: 'issue' + } + ], + languageCodes: [] + } + ] +}; +var relationGroupConfig = { + id: 'relationGroup', + formConfiguration: [mockFormRowModel], + mandatoryField: 'false', + relationFields: ['journal', 'issue'], + scopeUUID: 'scope', + submissionScope: SubmissionScopeType.WorkspaceItem, + value: { + journal: [ + 'journal test 1', + 'journal test 2' + ], + issue: [ + 'issue test 1', + 'issue test 2' + ], + } +}; +export var MockRelationModel = new DynamicRelationGroupModel(relationGroupConfig); +export var inputWithLanguageAndAuthorityConfig = { + authorityOptions: new AuthorityOptions('testAuthority', 'testWithAuthority', 'scope'), + languageCodes: [ + { + display: 'English', + code: 'en_US' + }, + { + display: 'Italian', + code: 'it_IT' + } + ], + language: 'en_US', + name: 'testWithAuthority', + id: 'testWithAuthority', + readOnly: false, + disabled: false, + value: { + value: 'testWithLanguageAndAuthority', + display: 'testWithLanguageAndAuthority', + id: 'testWithLanguageAndAuthority', + } +}; +export var mockInputWithLanguageAndAuthorityModel = new DsDynamicInputModel(inputWithLanguageAndAuthorityConfig); +export var inputWithLanguageConfig = { + languageCodes: [ + { + display: 'English', + code: 'en_US' + }, + { + display: 'Italian', + code: 'it_IT' + } + ], + language: 'en_US', + name: 'testWithLanguage', + id: 'testWithLanguage', + readOnly: false, + disabled: false, + value: 'testWithLanguage' +}; +export var mockInputWithLanguageModel = new DsDynamicInputModel(inputWithLanguageConfig); +export var inputWithLanguageAndAuthorityArrayConfig = { + authorityOptions: new AuthorityOptions('testAuthority', 'testWithAuthority', 'scope'), + languageCodes: [ + { + display: 'English', + code: 'en_US' + }, + { + display: 'Italian', + code: 'it_IT' + } + ], + language: 'en_US', + name: 'testWithLanguageAndAuthorityArray', + id: 'testWithLanguageAndAuthorityArray', + readOnly: false, + disabled: false, + value: [{ + value: 'testLanguageAndAuthorityArray', + display: 'testLanguageAndAuthorityArray', + id: 'testLanguageAndAuthorityArray', + }] +}; +export var mockInputWithLanguageAndAuthorityArrayModel = new DsDynamicInputModel(inputWithLanguageAndAuthorityArrayConfig); +export var inputWithFormFieldValueConfig = { + name: 'testWithFormField', + id: 'testWithFormField', + readOnly: false, + disabled: false, + value: new FormFieldMetadataValueObject('testWithFormFieldValue') +}; +export var mockInputWithFormFieldValueModel = new DsDynamicInputModel(inputWithFormFieldValueConfig); +export var inputWithAuthorityValueConfig = { + name: 'testWithAuthorityField', + id: 'testWithAuthorityField', + readOnly: false, + disabled: false, + value: Object.assign({}, new AuthorityValue(), { value: 'testWithAuthorityValue', id: 'testWithAuthorityValue', display: 'testWithAuthorityValue' }) +}; +export var mockInputWithAuthorityValueModel = new DsDynamicInputModel(inputWithAuthorityValueConfig); +export var inputWithObjectValueConfig = { + name: 'testWithObjectValue', + id: 'testWithObjectValue', + readOnly: false, + disabled: false, + value: { value: 'testWithObjectValue', id: 'testWithObjectValue', display: 'testWithObjectValue' } +}; +export var mockInputWithObjectValueModel = new DsDynamicInputModel(inputWithObjectValueConfig); +export var mockRowGroupModel = new DynamicRowGroupModel({ + id: 'mockRowGroupModel', + group: [mockInputWithFormFieldValueModel], +}); +export var fileFormEditInputConfig = { + name: 'dc.title', + id: 'dc_title', + readOnly: false, + disabled: false, +}; +export var mockFileFormEditInputModel = new DsDynamicInputModel(fileFormEditInputConfig); +export var mockFileFormEditRowGroupModel = new DynamicRowGroupModel({ + id: 'mockRowGroupModel', + group: [mockFileFormEditInputModel] +}); +//# sourceMappingURL=mock-form-models.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-models.js.map b/src/app/shared/mocks/mock-form-models.js.map new file mode 100644 index 0000000000..93accdb7a9 --- /dev/null +++ b/src/app/shared/mocks/mock-form-models.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-form-models.js","sourceRoot":"","sources":["mock-form-models.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-operations-service.js b/src/app/shared/mocks/mock-form-operations-service.js new file mode 100644 index 0000000000..020a8d3388 --- /dev/null +++ b/src/app/shared/mocks/mock-form-operations-service.js @@ -0,0 +1,17 @@ +/** + * Mock for [[FormOperationsService]] + */ +export function getMockFormOperationsService() { + return jasmine.createSpyObj('SectionFormOperationsService', { + dispatchOperationsFromEvent: jasmine.createSpy('dispatchOperationsFromEvent'), + getArrayIndexFromEvent: jasmine.createSpy('getArrayIndexFromEvent'), + isPartOfArrayOfGroup: jasmine.createSpy('isPartOfArrayOfGroup'), + getQualdropValueMap: jasmine.createSpy('getQualdropValueMap'), + getFieldPathFromEvent: jasmine.createSpy('getFieldPathFromEvent'), + getQualdropItemPathFromEvent: jasmine.createSpy('getQualdropItemPathFromEvent'), + getFieldPathSegmentedFromChangeEvent: jasmine.createSpy('getFieldPathSegmentedFromChangeEvent'), + getFieldValueFromChangeEvent: jasmine.createSpy('getFieldValueFromChangeEvent'), + getValueMap: jasmine.createSpy('getValueMap'), + }); +} +//# sourceMappingURL=mock-form-operations-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-operations-service.js.map b/src/app/shared/mocks/mock-form-operations-service.js.map new file mode 100644 index 0000000000..3bcd675829 --- /dev/null +++ b/src/app/shared/mocks/mock-form-operations-service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-form-operations-service.js","sourceRoot":"","sources":["mock-form-operations-service.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,8BAA8B,EAAE;QAC1D,2BAA2B,EAAE,OAAO,CAAC,SAAS,CAAC,6BAA6B,CAAC;QAC7E,sBAAsB,EAAE,OAAO,CAAC,SAAS,CAAC,wBAAwB,CAAC;QACnE,oBAAoB,EAAE,OAAO,CAAC,SAAS,CAAC,sBAAsB,CAAC;QAC/D,mBAAmB,EAAE,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;QAC7D,qBAAqB,EAAE,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC;QACjE,4BAA4B,EAAE,OAAO,CAAC,SAAS,CAAC,8BAA8B,CAAC;QAC/E,oCAAoC,EAAE,OAAO,CAAC,SAAS,CAAC,sCAAsC,CAAC;QAC/F,4BAA4B,EAAE,OAAO,CAAC,SAAS,CAAC,8BAA8B,CAAC;QAC/E,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;KAE9C,CAAC,CAAC;AAEL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-service.js b/src/app/shared/mocks/mock-form-service.js new file mode 100644 index 0000000000..4c2bc3043b --- /dev/null +++ b/src/app/shared/mocks/mock-form-service.js @@ -0,0 +1,19 @@ +import { of as observableOf } from 'rxjs'; +/** + * Mock for [[FormService]] + */ +export function getMockFormService(id$) { + if (id$ === void 0) { id$ = 'random_id'; } + return jasmine.createSpyObj('FormService', { + getFormData: jasmine.createSpy('getFormData'), + initForm: jasmine.createSpy('initForm'), + removeForm: jasmine.createSpy('removeForm'), + getForm: observableOf({}), + getUniqueId: id$, + resetForm: {}, + validateAllFormFields: jasmine.createSpy('validateAllFormFields'), + isValid: jasmine.createSpy('isValid'), + isFormInitialized: observableOf(true) + }); +} +//# sourceMappingURL=mock-form-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-service.js.map b/src/app/shared/mocks/mock-form-service.js.map new file mode 100644 index 0000000000..d83dc3e898 --- /dev/null +++ b/src/app/shared/mocks/mock-form-service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-form-service.js","sourceRoot":"","sources":["mock-form-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAI1C;;GAEG;AACH,MAAM,6BACJ,GAAyB;IAAzB,oBAAA,EAAA,iBAAyB;IAEzB,OAAO,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE;QACzC,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;QAC7C,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC;QACvC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC;QAC3C,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC;QACzB,WAAW,EAAE,GAAG;QAChB,SAAS,EAAE,EAAE;QACb,qBAAqB,EAAE,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC;QACjE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;QACrC,iBAAiB,EAAE,YAAY,CAAC,IAAI,CAAC;KACtC,CAAC,CAAC;AAEL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-host-window-service.js b/src/app/shared/mocks/mock-host-window-service.js new file mode 100644 index 0000000000..dda698699b --- /dev/null +++ b/src/app/shared/mocks/mock-host-window-service.js @@ -0,0 +1,19 @@ +import { of as observableOf } from 'rxjs'; +// declare a stub service +var MockHostWindowService = /** @class */ (function () { + function MockHostWindowService(width) { + this.setWidth(width); + } + MockHostWindowService.prototype.setWidth = function (width) { + this.width = width; + }; + MockHostWindowService.prototype.isXs = function () { + return observableOf(this.width < 576); + }; + MockHostWindowService.prototype.isSm = function () { + return observableOf(this.width < 768); + }; + return MockHostWindowService; +}()); +export { MockHostWindowService }; +//# sourceMappingURL=mock-host-window-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-host-window-service.js.map b/src/app/shared/mocks/mock-host-window-service.js.map new file mode 100644 index 0000000000..7a338fa8b9 --- /dev/null +++ b/src/app/shared/mocks/mock-host-window-service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-host-window-service.js","sourceRoot":"","sources":["mock-host-window-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtD,yBAAyB;AACzB;IAIE,+BAAY,KAAK;QACf,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,wCAAQ,GAAR,UAAS,KAAK;QACZ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,oCAAI,GAAJ;QACE,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,oCAAI,GAAJ;QACE,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IACxC,CAAC;IACH,4BAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-item.js b/src/app/shared/mocks/mock-item.js new file mode 100644 index 0000000000..890fa5fb0e --- /dev/null +++ b/src/app/shared/mocks/mock-item.js @@ -0,0 +1,215 @@ +import { of as observableOf } from 'rxjs'; +import { Item } from '../../core/shared/item.model'; +/* tslint:disable:no-shadowed-variable */ +export var MockItem = Object.assign(new Item(), { + handle: '10673/6', + lastModified: '2017-04-24T19:44:08.178+0000', + isArchived: true, + isDiscoverable: true, + isWithdrawn: false, + bitstreams: observableOf({ + self: 'dspace-angular://aggregated/object/1507836003548', + requestPending: false, + responsePending: false, + isSuccessful: true, + errorMessage: '', + statusCode: '202', + pageInfo: {}, + payload: { + pageInfo: { + elementsPerPage: 20, + totalElements: 3, + totalPages: 1, + currentPage: 2 + }, + page: [ + { + sizeBytes: 10201, + content: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreams/cf9b0c8e-a1eb-4b65-afd0-567366448713/content', + format: observableOf({ + self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreamformats/10', + requestPending: false, + responsePending: false, + isSuccessful: true, + errorMessage: '', + statusCode: '202', + pageInfo: {}, + payload: { + shortDescription: 'Microsoft Word XML', + description: 'Microsoft Word XML', + mimetype: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', + supportLevel: 0, + internal: false, + extensions: null, + self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreamformats/10' + } + }), + bundleName: 'ORIGINAL', + self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreams/cf9b0c8e-a1eb-4b65-afd0-567366448713', + id: 'cf9b0c8e-a1eb-4b65-afd0-567366448713', + uuid: 'cf9b0c8e-a1eb-4b65-afd0-567366448713', + type: 'bitstream', + metadata: { + 'dc.title': [ + { + language: null, + value: 'test_word.docx' + } + ] + } + }, + { + sizeBytes: 31302, + content: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreams/99b00f3c-1cc6-4689-8158-91965bee6b28/content', + format: observableOf({ + self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreamformats/4', + requestPending: false, + responsePending: false, + isSuccessful: true, + errorMessage: '', + statusCode: '202', + pageInfo: {}, + payload: { + shortDescription: 'Adobe PDF', + description: 'Adobe Portable Document Format', + mimetype: 'application/pdf', + supportLevel: 0, + internal: false, + extensions: null, + self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreamformats/4' + } + }), + bundleName: 'ORIGINAL', + self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreams/99b00f3c-1cc6-4689-8158-91965bee6b28', + id: '99b00f3c-1cc6-4689-8158-91965bee6b28', + uuid: '99b00f3c-1cc6-4689-8158-91965bee6b28', + type: 'bitstream', + metadata: { + 'dc.title': [ + { + language: null, + value: 'test_pdf.pdf' + } + ] + } + } + ] + } + }), + self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/items/0ec7ff22-f211-40ab-a69e-c819b0b1f357', + id: '0ec7ff22-f211-40ab-a69e-c819b0b1f357', + uuid: '0ec7ff22-f211-40ab-a69e-c819b0b1f357', + type: 'item', + metadata: { + 'dc.creator': [ + { + language: 'en_US', + value: 'Doe, Jane' + } + ], + 'dc.date.accessioned': [ + { + language: null, + value: '1650-06-26T19:58:25Z' + } + ], + 'dc.date.available': [ + { + language: null, + value: '1650-06-26T19:58:25Z' + } + ], + 'dc.date.issued': [ + { + language: null, + value: '1650-06-26' + } + ], + 'dc.identifier.issn': [ + { + language: 'en_US', + value: '123456789' + } + ], + 'dc.identifier.uri': [ + { + language: null, + value: 'http://dspace7.4science.it/xmlui/handle/10673/6' + } + ], + 'dc.description.abstract': [ + { + language: 'en_US', + value: 'This is really just a sample abstract. If it was a real abstract it would contain useful information about this test document. Sorry though, nothing useful in this paragraph. You probably shouldn\'t have even bothered to read it!' + } + ], + 'dc.description.provenance': [ + { + language: 'en', + value: 'Made available in DSpace on 2012-06-26T19:58:25Z (GMT). No. of bitstreams: 2\r\ntest_ppt.ppt: 12707328 bytes, checksum: a353fc7d29b3c558c986f7463a41efd3 (MD5)\r\ntest_ppt.pptx: 12468572 bytes, checksum: 599305edb4ebee329667f2c35b14d1d6 (MD5)' + }, + { + language: 'en', + value: 'Restored into DSpace on 2013-06-13T09:17:34Z (GMT).' + }, + { + language: 'en', + value: 'Restored into DSpace on 2013-06-13T11:04:16Z (GMT).' + }, + { + language: 'en', + value: 'Restored into DSpace on 2017-04-24T19:44:08Z (GMT).' + } + ], + 'dc.language': [ + { + language: 'en_US', + value: 'en' + } + ], + 'dc.rights': [ + { + language: 'en_US', + value: '© Jane Doe' + } + ], + 'dc.subject': [ + { + language: 'en_US', + value: 'keyword1' + }, + { + language: 'en_US', + value: 'keyword2' + }, + { + language: 'en_US', + value: 'keyword3' + } + ], + 'dc.title': [ + { + language: 'en_US', + value: 'Test PowerPoint Document' + } + ], + 'dc.type': [ + { + language: 'en_US', + value: 'text' + } + ] + }, + owningCollection: observableOf({ + self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', + requestPending: false, + responsePending: false, + isSuccessful: true, + errorMessage: '', + statusCode: '202', + pageInfo: {}, + payload: [] + }) +}); +/* tslint:enable:no-shadowed-variable */ +//# sourceMappingURL=mock-item.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-item.js.map b/src/app/shared/mocks/mock-item.js.map new file mode 100644 index 0000000000..ae8ac4d016 --- /dev/null +++ b/src/app/shared/mocks/mock-item.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-item.js","sourceRoot":"","sources":["mock-item.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-metadata-service.js b/src/app/shared/mocks/mock-metadata-service.js new file mode 100644 index 0000000000..6621acfaf7 --- /dev/null +++ b/src/app/shared/mocks/mock-metadata-service.js @@ -0,0 +1,10 @@ +var MockMetadataService = /** @class */ (function () { + function MockMetadataService() { + } + // tslint:disable-next-line:no-empty + MockMetadataService.prototype.listenForRouteChange = function () { + }; + return MockMetadataService; +}()); +export { MockMetadataService }; +//# sourceMappingURL=mock-metadata-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-metadata-service.js.map b/src/app/shared/mocks/mock-metadata-service.js.map new file mode 100644 index 0000000000..31eaafd020 --- /dev/null +++ b/src/app/shared/mocks/mock-metadata-service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-metadata-service.js","sourceRoot":"","sources":["mock-metadata-service.ts"],"names":[],"mappings":"AACA;IAAA;IAOA,CAAC;IALC,oCAAoC;IAC7B,kDAAoB,GAA3B;IAEA,CAAC;IAEH,0BAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-object-cache.service.js b/src/app/shared/mocks/mock-object-cache.service.js new file mode 100644 index 0000000000..bf63406fb9 --- /dev/null +++ b/src/app/shared/mocks/mock-object-cache.service.js @@ -0,0 +1,14 @@ +export function getMockObjectCacheService() { + return jasmine.createSpyObj('objectCacheService', [ + 'add', + 'remove', + 'getByUUID', + 'getBySelfLink', + 'getRequestHrefBySelfLink', + 'getRequestHrefByUUID', + 'getList', + 'hasByUUID', + 'hasBySelfLink' + ]); +} +//# sourceMappingURL=mock-object-cache.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-object-cache.service.js.map b/src/app/shared/mocks/mock-object-cache.service.js.map new file mode 100644 index 0000000000..e0d73dc26a --- /dev/null +++ b/src/app/shared/mocks/mock-object-cache.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-object-cache.service.js","sourceRoot":"","sources":["mock-object-cache.service.ts"],"names":[],"mappings":"AAEA,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,oBAAoB,EAAE;QAChD,KAAK;QACL,QAAQ;QACR,WAAW;QACX,eAAe;QACf,0BAA0B;QAC1B,sBAAsB;QACtB,SAAS;QACT,WAAW;QACX,eAAe;KAChB,CAAC,CAAC;AAEL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-remote-data-build.service.js b/src/app/shared/mocks/mock-remote-data-build.service.js new file mode 100644 index 0000000000..d2f84f9d33 --- /dev/null +++ b/src/app/shared/mocks/mock-remote-data-build.service.js @@ -0,0 +1,21 @@ +import { of as observableOf } from 'rxjs'; +import { map } from 'rxjs/operators'; +import { RemoteData } from '../../core/data/remote-data'; +import { hasValue } from '../empty.util'; +export function getMockRemoteDataBuildService(toRemoteDataObservable$) { + return { + toRemoteDataObservable: function (requestEntry$, payload$) { + if (hasValue(toRemoteDataObservable$)) { + return toRemoteDataObservable$; + } + else { + return payload$.pipe(map(function (payload) { return ({ + payload: payload + }); })); + } + }, + buildSingle: function (href$) { return observableOf(new RemoteData(false, false, true, undefined, {})); }, + build: function (normalized) { return Object.create({}); } + }; +} +//# sourceMappingURL=mock-remote-data-build.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-remote-data-build.service.js.map b/src/app/shared/mocks/mock-remote-data-build.service.js.map new file mode 100644 index 0000000000..2add06cc91 --- /dev/null +++ b/src/app/shared/mocks/mock-remote-data-build.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-remote-data-build.service.js","sourceRoot":"","sources":["mock-remote-data-build.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,MAAM,wCAAwC,uBAAqD;IACjG,OAAO;QACL,sBAAsB,EAAE,UAAC,aAAuC,EAAE,QAAyB;YAEzF,IAAI,QAAQ,CAAC,uBAAuB,CAAC,EAAE;gBACrC,OAAO,uBAAuB,CAAC;aAChC;iBAAM;gBACL,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,OAAO,IAAK,OAAA,CAAC;oBACrC,OAAO,SAAA;iBACY,CAAA,EAFiB,CAEjB,CAAC,CAAC,CAAA;aACxB;QACH,CAAC;QACD,WAAW,EAAE,UAAC,KAAkC,IAAK,OAAA,YAAY,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,EAA/D,CAA+D;QACpH,KAAK,EAAE,UAAC,UAAiC,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAjB,CAAiB;KACtC,CAAC;AAE9B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-request.service.js b/src/app/shared/mocks/mock-request.service.js new file mode 100644 index 0000000000..265bbb6eea --- /dev/null +++ b/src/app/shared/mocks/mock-request.service.js @@ -0,0 +1,16 @@ +import { of as observableOf } from 'rxjs'; +import { RequestEntry } from '../../core/data/request.reducer'; +export function getMockRequestService(requestEntry$) { + if (requestEntry$ === void 0) { requestEntry$ = observableOf(new RequestEntry()); } + return jasmine.createSpyObj('requestService', { + configure: false, + generateRequestId: 'clients/b186e8ce-e99c-4183-bc9a-42b4821bdb78', + getByHref: requestEntry$, + getByUUID: requestEntry$, + uriEncodeBody: jasmine.createSpy('uriEncodeBody'), + /* tslint:disable:no-empty */ + removeByHrefSubstring: function () { } + /* tslint:enable:no-empty */ + }); +} +//# sourceMappingURL=mock-request.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-request.service.js.map b/src/app/shared/mocks/mock-request.service.js.map new file mode 100644 index 0000000000..6575346d02 --- /dev/null +++ b/src/app/shared/mocks/mock-request.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-request.service.js","sourceRoot":"","sources":["mock-request.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,MAAM,gCAAgC,aAA0E;IAA1E,8BAAA,EAAA,gBAA0C,YAAY,CAAC,IAAI,YAAY,EAAE,CAAC;IAC9G,OAAO,OAAO,CAAC,YAAY,CAAC,gBAAgB,EAAE;QAC5C,SAAS,EAAE,KAAK;QAChB,iBAAiB,EAAE,8CAA8C;QACjE,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,aAAa;QACxB,aAAa,EAAE,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;QACjD,6BAA6B;QAC7B,qBAAqB,EAAE,cAAO,CAAC;QAC/B,4BAA4B;KAC7B,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-role-service.js b/src/app/shared/mocks/mock-role-service.js new file mode 100644 index 0000000000..038d84e14b --- /dev/null +++ b/src/app/shared/mocks/mock-role-service.js @@ -0,0 +1,45 @@ +import { RoleType } from '../../core/roles/role-types'; +import { BehaviorSubject } from 'rxjs/internal/BehaviorSubject'; +var MockRoleService = /** @class */ (function () { + function MockRoleService() { + this._isSubmitter = new BehaviorSubject(true); + this._isController = new BehaviorSubject(true); + this._isAdmin = new BehaviorSubject(true); + } + MockRoleService.prototype.setSubmitter = function (isSubmitter) { + this._isSubmitter.next(isSubmitter); + }; + MockRoleService.prototype.setController = function (isController) { + this._isController.next(isController); + }; + MockRoleService.prototype.setAdmin = function (isAdmin) { + this._isAdmin.next(isAdmin); + }; + MockRoleService.prototype.isSubmitter = function () { + return this._isSubmitter; + }; + MockRoleService.prototype.isController = function () { + return this._isController; + }; + MockRoleService.prototype.isAdmin = function () { + return this._isAdmin; + }; + MockRoleService.prototype.checkRole = function (role) { + var check; + switch (role) { + case RoleType.Submitter: + check = this.isSubmitter(); + break; + case RoleType.Controller: + check = this.isController(); + break; + case RoleType.Admin: + check = this.isAdmin(); + break; + } + return check; + }; + return MockRoleService; +}()); +export { MockRoleService }; +//# sourceMappingURL=mock-role-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-role-service.js.map b/src/app/shared/mocks/mock-role-service.js.map new file mode 100644 index 0000000000..2d5f52000f --- /dev/null +++ b/src/app/shared/mocks/mock-role-service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-role-service.js","sourceRoot":"","sources":["mock-role-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE;IAAA;QAEE,iBAAY,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QACzC,kBAAa,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1C,aAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;IA0CvC,CAAC;IAxCC,sCAAY,GAAZ,UAAa,WAAoB;QAC/B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAED,uCAAa,GAAb,UAAc,YAAqB;QACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;IAED,kCAAQ,GAAR,UAAS,OAAgB;QACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,qCAAW,GAAX;QACE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,sCAAY,GAAZ;QACE,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,iCAAO,GAAP;QACE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,mCAAS,GAAT,UAAU,IAAc;QACtB,IAAI,KAA0B,CAAC;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,QAAQ,CAAC,SAAS;gBACrB,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,QAAQ,CAAC,UAAU;gBACtB,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5B,MAAM;YACR,KAAK,QAAQ,CAAC,KAAK;gBACjB,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM;SACT;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IACH,sBAAC;AAAD,CAAC,AA9CD,IA8CC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-router.js b/src/app/shared/mocks/mock-router.js new file mode 100644 index 0000000000..b9eaf52248 --- /dev/null +++ b/src/app/shared/mocks/mock-router.js @@ -0,0 +1,33 @@ +import { of as observableOf } from 'rxjs'; +/** + * Mock for [[RouterService]] + */ +var MockRouter = /** @class */ (function () { + function MockRouter() { + this.events = observableOf({}); + this.routerState = { + snapshot: { + url: '', + root: { + queryParamMap: null + } + } + }; + // noinspection TypeScriptUnresolvedFunction + this.navigate = jasmine.createSpy('navigate'); + this.navigateByUrl = jasmine.createSpy('navigateByUrl'); + } + MockRouter.prototype.setRoute = function (route) { + this.routerState.snapshot.url = route; + }; + MockRouter.prototype.setParams = function (paramsMap) { + this.routerState.snapshot.root.queryParamMap = paramsMap; + }; + MockRouter.prototype.createUrlTree = function (commands, navExtras) { + if (navExtras === void 0) { navExtras = {}; } + return {}; + }; + return MockRouter; +}()); +export { MockRouter }; +//# sourceMappingURL=mock-router.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-router.js.map b/src/app/shared/mocks/mock-router.js.map new file mode 100644 index 0000000000..1f1ab2f029 --- /dev/null +++ b/src/app/shared/mocks/mock-router.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-router.js","sourceRoot":"","sources":["mock-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAE1C;;GAEG;AACH;IAAA;QACS,WAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;QAC1B,gBAAW,GAAG;YACnB,QAAQ,EAAE;gBACR,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE;oBACJ,aAAa,EAAE,IAAI;iBACpB;aACF;SACF,CAAC;QAEF,4CAA4C;QAC5C,aAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACzC,kBAAa,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAarD,CAAC;IAXC,6BAAQ,GAAR,UAAS,KAAK;QACZ,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,GAAG,KAAK,CAAC;IACxC,CAAC;IAED,8BAAS,GAAT,UAAU,SAAS;QACjB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;IAC3D,CAAC;IAED,kCAAa,GAAb,UAAc,QAAQ,EAAE,SAAc;QAAd,0BAAA,EAAA,cAAc;QACpC,OAAO,EAAE,CAAC;IACZ,CAAC;IACH,iBAAC;AAAD,CAAC,AA1BD,IA0BC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-scroll-to-service.js b/src/app/shared/mocks/mock-scroll-to-service.js new file mode 100644 index 0000000000..68af1820a3 --- /dev/null +++ b/src/app/shared/mocks/mock-scroll-to-service.js @@ -0,0 +1,9 @@ +/** + * Mock for [[ScrollToService]] + */ +export function getMockScrollToService() { + return jasmine.createSpyObj('scrollToService', { + scrollTo: jasmine.createSpy('scrollTo') + }); +} +//# sourceMappingURL=mock-scroll-to-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-scroll-to-service.js.map b/src/app/shared/mocks/mock-scroll-to-service.js.map new file mode 100644 index 0000000000..6daebe7139 --- /dev/null +++ b/src/app/shared/mocks/mock-scroll-to-service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-scroll-to-service.js","sourceRoot":"","sources":["mock-scroll-to-service.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,iBAAiB,EAAE;QAC7C,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC;KACxC,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-section-upload.service.js b/src/app/shared/mocks/mock-section-upload.service.js new file mode 100644 index 0000000000..37024713f5 --- /dev/null +++ b/src/app/shared/mocks/mock-section-upload.service.js @@ -0,0 +1,14 @@ +/** + * Mock for [[SubmissionFormsConfigService]] + */ +export function getMockSectionUploadService() { + return jasmine.createSpyObj('SectionUploadService', { + getUploadedFileList: jasmine.createSpy('getUploadedFileList'), + getFileData: jasmine.createSpy('getFileData'), + getDefaultPolicies: jasmine.createSpy('getDefaultPolicies'), + addUploadedFile: jasmine.createSpy('addUploadedFile'), + updateFileData: jasmine.createSpy('updateFileData'), + removeUploadedFile: jasmine.createSpy('removeUploadedFile') + }); +} +//# sourceMappingURL=mock-section-upload.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-section-upload.service.js.map b/src/app/shared/mocks/mock-section-upload.service.js.map new file mode 100644 index 0000000000..e898a23121 --- /dev/null +++ b/src/app/shared/mocks/mock-section-upload.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-section-upload.service.js","sourceRoot":"","sources":["mock-section-upload.service.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,sBAAsB,EAAE;QAClD,mBAAmB,EAAE,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;QAC7D,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;QAC7C,kBAAkB,EAAE,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;QAC3D,eAAe,EAAE,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC;QACrD,cAAc,EAAE,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;QACnD,kBAAkB,EAAE,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;KAC5D,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-store.js b/src/app/shared/mocks/mock-store.js new file mode 100644 index 0000000000..80ee9c68ab --- /dev/null +++ b/src/app/shared/mocks/mock-store.js @@ -0,0 +1 @@ +//# sourceMappingURL=mock-store.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-store.js.map b/src/app/shared/mocks/mock-store.js.map new file mode 100644 index 0000000000..14ff0dd608 --- /dev/null +++ b/src/app/shared/mocks/mock-store.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-store.js","sourceRoot":"","sources":["mock-store.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-submission.js b/src/app/shared/mocks/mock-submission.js new file mode 100644 index 0000000000..3d6c75f976 --- /dev/null +++ b/src/app/shared/mocks/mock-submission.js @@ -0,0 +1,1572 @@ +import { PaginatedList } from '../../core/data/paginated-list'; +import { PageInfo } from '../../core/shared/page-info.model'; +import { FormFieldMetadataValueObject } from '../form/builder/models/form-field-metadata-value.model'; +import { Group } from '../../core/eperson/models/group.model'; +export var mockSectionsData = { + traditionalpageone: { + 'dc.title': [ + new FormFieldMetadataValueObject('test', null, null, 'test') + ] + }, + license: { + url: null, + acceptanceDate: null, + granted: false + }, + upload: { + files: [] + } +}; +export var mockSectionsDataTwo = { + traditionalpageone: { + 'dc.title': [ + new FormFieldMetadataValueObject('test', null, null, 'test') + ] + }, + traditionalpagetwo: { + 'dc.relation': [ + new FormFieldMetadataValueObject('test', null, null, 'test') + ] + }, + license: { + url: null, + acceptanceDate: null, + granted: false + }, + upload: { + files: [] + } +}; +export var mockSectionsErrors = [ + { + message: 'error.validation.required', + paths: [ + '/sections/traditionalpageone/dc.contributor.author', + '/sections/traditionalpageone/dc.title', + '/sections/traditionalpageone/dc.date.issued' + ] + }, + { + message: 'error.validation.license.notgranted', + paths: [ + '/sections/license' + ] + } +]; +export var mockUploadResponse1Errors = { + errors: [ + { + message: 'error.validation.required', + paths: [ + '/sections/traditionalpageone/dc.title', + '/sections/traditionalpageone/dc.date.issued' + ] + } + ] +}; +export var mockUploadResponse1ParsedErrors = { + traditionalpageone: [ + { path: '/sections/traditionalpageone/dc.title', message: 'error.validation.required' }, + { path: '/sections/traditionalpageone/dc.date.issued', message: 'error.validation.required' } + ] +}; +export var mockLicenseParsedErrors = { + license: [ + { path: '/sections/license', message: 'error.validation.license.notgranted' } + ] +}; +export var mockUploadResponse2Errors = { + errors: [ + { + message: 'error.validation.required', + paths: [ + '/sections/traditionalpageone/dc.title', + '/sections/traditionalpageone/dc.date.issued' + ] + }, + { + message: 'error.upload', + paths: [ + '/sections/upload' + ] + } + ] +}; +export var mockUploadResponse2ParsedErrors = { + traditionalpageone: [ + { path: '/sections/traditionalpageone/dc.title', message: 'error.validation.required' }, + { path: '/sections/traditionalpageone/dc.date.issued', message: 'error.validation.required' } + ], + upload: [ + { path: '/sections/upload', message: 'error.upload' } + ] +}; +export var mockSubmissionRestResponse = [ + { + id: 826, + lastModified: '2018-08-03T12:49:45.268+0000', + collection: [ + { + handle: '10673/2', + license: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', + defaultAccessConditions: [], + logo: [ + { + sizeBytes: 7451, + content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', + format: [], + bundleName: null, + self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425', + id: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', + uuid: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', + type: 'bitstream', + name: null, + metadata: [], + _links: { + content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', + format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', + self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425' + } + } + ], + self: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', + id: '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', + uuid: '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', + type: 'collection', + name: 'Collection of Sample Items', + metadata: [ + { + key: 'dc.provenance', + language: null, + value: 'This field is for private provenance information. It is only visible to Administrative users and is not displayed in the user interface by default.' + }, + { + key: 'dc.rights.license', + language: null, + value: '' + }, + { + key: 'dc.description', + language: null, + value: '

This is a DSpace Collection which contains sample DSpace Items.

\r\n

Collections in DSpace may only contain Items.

\r\n

This particular Collection has its own logo (the Open Source Initiative logo).

\r\n

This introductory text is editable by System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection).

' + }, + { + key: 'dc.description.abstract', + language: null, + value: 'This collection contains sample items.' + }, + { + key: 'dc.description.tableofcontents', + language: null, + value: '

This is the news section for this Collection. System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection) can edit this News field.

' + }, + { + key: 'dc.rights', + language: null, + value: '

If this collection had a specific copyright statement, it would be placed here.

' + }, + { + key: 'dc.title', + language: null, + value: 'Collection of Sample Items' + } + ], + _links: { + license: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', + defaultAccessConditions: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/defaultAccessConditions', + logo: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/logo', + self: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb' + } + } + ], + item: [ + { + handle: null, + lastModified: '2018-07-25T14:08:28.750+0000', + isArchived: false, + isDiscoverable: true, + isWithdrawn: false, + bitstreams: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5/bitstreams', + self: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5', + id: '6f344222-6980-4738-8192-b808d79af8a5', + uuid: '6f344222-6980-4738-8192-b808d79af8a5', + type: 'item', + name: null, + metadata: [], + _links: { + bitstreams: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5/bitstreams', + owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5/owningCollection', + templateItemOf: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5/templateItemOf', + self: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5' + } + } + ], + sections: {}, + submissionDefinition: [ + { + isDefault: true, + sections: [ + { + mandatory: true, + sectionType: 'utils', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' + }, + { + mandatory: true, + sectionType: 'collection', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + { + header: 'submit.progressbar.describe.stepone', + mandatory: true, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' + }, + { + header: 'submit.progressbar.describe.steptwo', + mandatory: false, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' + }, + { + header: 'submit.progressbar.upload', + mandatory: true, + sectionType: 'upload', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' + }, + { + header: 'submit.progressbar.license', + mandatory: true, + sectionType: 'license', + visibility: { + main: null, + other: 'READONLY' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + } + ], + name: 'traditional', + type: 'submissiondefinition', + _links: { + collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', + sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' + } + ], + submitter: [], + errors: [], + self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826', + type: 'workspaceitem', + _links: { + collection: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/collection', + item: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/item', + submissionDefinition: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submissionDefinition', + submitter: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submitter', + self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826' + } + } +]; +export var mockSubmissionObject = { + collection: { + handle: '10673/2', + license: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', + defaultAccessConditions: { + pageInfo: { + elementsPerPage: 1, + totalElements: 1, + totalPages: 1, + currentPage: 1 + }, + page: [ + { + name: null, + groupUUID: '11cc35e5-a11d-4b64-b5b9-0052a5d15509', + id: 20, + uuid: 'resource-policy-20', + self: 'https://rest.api/dspace-spring-rest/api/authz/resourcePolicies/20', + type: 'resourcePolicy', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/authz/resourcePolicies/20' + } + } + ] + }, + logo: { + sizeBytes: 7451, + content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', + format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', + bundleName: null, + self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425', + id: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', + uuid: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', + type: 'bitstream', + name: null, + metadata: [], + _links: { + content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', + format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', + self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425' + } + }, + self: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', + id: '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', + uuid: '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', + type: 'collection', + name: 'Collection of Sample Items', + metadata: [ + { + key: 'dc.provenance', + language: null, + value: 'This field is for private provenance information. It is only visible to Administrative users and is not displayed in the user interface by default.' + }, + { + key: 'dc.rights.license', + language: null, + value: '' + }, + { + key: 'dc.description', + language: null, + value: '

This is a DSpace Collection which contains sample DSpace Items.

\r\n

Collections in DSpace may only contain Items.

\r\n

This particular Collection has its own logo (the Open Source Initiative logo).

\r\n

This introductory text is editable by System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection).

' + }, + { + key: 'dc.description.abstract', + language: null, + value: 'This collection contains sample items.' + }, + { + key: 'dc.description.tableofcontents', + language: null, + value: '

This is the news section for this Collection. System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection) can edit this News field.

' + }, + { + key: 'dc.rights', + language: null, + value: '

If this collection had a specific copyright statement, it would be placed here.

' + }, + { + key: 'dc.title', + language: null, + value: 'Collection of Sample Items' + } + ], + _links: { + license: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', + defaultAccessConditions: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/defaultAccessConditions', + logo: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/logo', + self: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb' + } + }, + item: { + handle: null, + lastModified: '2019-01-09T10:17:33.722+0000', + isArchived: false, + isDiscoverable: true, + isWithdrawn: false, + owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/owningCollection', + bitstreams: { + pageInfo: { + elementsPerPage: 0, + totalElements: 0, + totalPages: 1, + currentPage: 1 + }, + page: [] + }, + self: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270', + id: 'cae8af78-c874-4468-af79-e6c996aa8270', + uuid: 'cae8af78-c874-4468-af79-e6c996aa8270', + type: 'item', + name: null, + metadata: [], + _links: { + bitstreams: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/bitstreams', + owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/owningCollection', + templateItemOf: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/templateItemOf', + self: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270' + } + }, + submissionDefinition: { + isDefault: true, + sections: { + pageInfo: { + elementsPerPage: 5, + totalElements: 5, + totalPages: 1, + currentPage: 1 + }, + page: [ + { + mandatory: true, + sectionType: 'collection', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + { + header: 'submit.progressbar.describe.stepone', + mandatory: true, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' + }, + { + header: 'submit.progressbar.describe.steptwo', + mandatory: true, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' + }, + { + header: 'submit.progressbar.upload', + mandatory: true, + sectionType: 'upload', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' + }, + { + header: 'submit.progressbar.license', + mandatory: true, + sectionType: 'license', + visibility: { + main: null, + other: 'READONLY' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + } + ] + }, + name: 'traditional', + type: 'submissiondefinition', + _links: { + collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', + sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional', + collections: { + pageInfo: { + elementsPerPage: 0, + totalElements: 0, + totalPages: 1, + currentPage: 1 + }, + page: [] + } + }, + submitter: { + handle: null, + groups: [], + netid: null, + lastActive: '2019-01-09T10:17:33.047+0000', + canLogIn: true, + email: 'dspacedemo+submit@gmail.com', + requireCertificate: false, + selfRegistered: false, + self: 'https://rest.api/dspace-spring-rest/api/eperson/epersons/99423c27-b642-5tg6-a9cd-6d910e68dca5', + id: '99423c27-b642-5tg6-a9cd-6d910e68dca5', + uuid: '99423c27-b642-5tg6-a9cd-6d910e68dca5', + type: 'eperson', + name: 'dspacedemo+submit@gmail.com', + metadata: [ + { + key: 'eperson.firstname', + language: null, + value: 'Demo' + }, + { + key: 'eperson.lastname', + language: null, + value: 'Submitter' + } + ], + _links: { + self: 'https://rest.api/dspace-spring-rest/api/eperson/epersons/99423c27-b642-5tg6-a9cd-6d910e68dca5' + } + }, + id: 826, + lastModified: '2019-01-09T10:17:33.738+0000', + sections: { + license: { + url: null, + acceptanceDate: null, + granted: false + }, + upload: { + files: [] + } + }, + errors: [ + { + message: 'error.validation.required', + paths: [ + '/sections/traditionalpageone/dc.title', + '/sections/traditionalpageone/dc.date.issued' + ] + } + ], + self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826', + type: 'workspaceitem', + _links: { + collection: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/collection', + item: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/item', + submissionDefinition: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submissionDefinition', + submitter: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submitter', + self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826' + } +}; +export var mockSubmissionObjectNew = { + collection: { + handle: '10673/2', + license: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', + defaultAccessConditions: { + pageInfo: { + elementsPerPage: 1, + totalElements: 1, + totalPages: 1, + currentPage: 1 + }, + page: [ + { + name: null, + groupUUID: '11cc35e5-a11d-4b64-b5b9-0052a5d15509', + id: 20, + uuid: 'resource-policy-20', + self: 'https://rest.api/dspace-spring-rest/api/authz/resourcePolicies/20', + type: 'resourcePolicy', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/authz/resourcePolicies/20' + } + } + ] + }, + logo: { + sizeBytes: 7451, + content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', + format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', + bundleName: null, + self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425', + id: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', + uuid: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', + type: 'bitstream', + name: null, + metadata: [], + _links: { + content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', + format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', + self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425' + } + }, + self: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb', + id: '45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb', + uuid: '45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb', + type: 'collection', + name: 'Another Collection of Sample Items', + metadata: [ + { + key: 'dc.provenance', + language: null, + value: 'This field is for private provenance information. It is only visible to Administrative users and is not displayed in the user interface by default.' + }, + { + key: 'dc.rights.license', + language: null, + value: '' + }, + { + key: 'dc.description', + language: null, + value: '

This is a DSpace Collection which contains sample DSpace Items.

\r\n

Collections in DSpace may only contain Items.

\r\n

This particular Collection has its own logo (the Open Source Initiative logo).

\r\n

This introductory text is editable by System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection).

' + }, + { + key: 'dc.description.abstract', + language: null, + value: 'This collection contains sample items.' + }, + { + key: 'dc.description.tableofcontents', + language: null, + value: '

This is the news section for this Collection. System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection) can edit this News field.

' + }, + { + key: 'dc.rights', + language: null, + value: '

If this collection had a specific copyright statement, it would be placed here.

' + }, + { + key: 'dc.title', + language: null, + value: 'Collection of Sample Items' + } + ], + _links: { + license: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', + defaultAccessConditions: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb/defaultAccessConditions', + logo: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb/logo', + self: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb' + } + }, + item: { + handle: null, + lastModified: '2019-01-09T10:17:33.722+0000', + isArchived: false, + isDiscoverable: true, + isWithdrawn: false, + owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/owningCollection', + bitstreams: { + pageInfo: { + elementsPerPage: 0, + totalElements: 0, + totalPages: 1, + currentPage: 1 + }, + page: [] + }, + self: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270', + id: 'cae8af78-c874-4468-af79-e6c996aa8270', + uuid: 'cae8af78-c874-4468-af79-e6c996aa8270', + type: 'item', + name: null, + metadata: [], + _links: { + bitstreams: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/bitstreams', + owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/owningCollection', + templateItemOf: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/templateItemOf', + self: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270' + } + }, + submissionDefinition: { + isDefault: true, + sections: { + pageInfo: { + elementsPerPage: 5, + totalElements: 5, + totalPages: 1, + currentPage: 1 + }, + page: [ + { + mandatory: true, + sectionType: 'collection', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + { + header: 'submit.progressbar.describe.stepone', + mandatory: true, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' + }, + { + header: 'submit.progressbar.describe.steptwo', + mandatory: true, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' + }, + { + header: 'submit.progressbar.upload', + mandatory: true, + sectionType: 'upload', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' + }, + { + header: 'submit.progressbar.license', + mandatory: true, + sectionType: 'license', + visibility: { + main: null, + other: 'READONLY' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + } + ] + }, + name: 'traditionaltwo', + type: 'submissiondefinition', + _links: { + collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', + sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional', + collections: { + pageInfo: { + elementsPerPage: 0, + totalElements: 0, + totalPages: 1, + currentPage: 1 + }, + page: [] + } + }, + submitter: { + handle: null, + groups: [], + netid: null, + lastActive: '2019-01-09T10:17:33.047+0000', + canLogIn: true, + email: 'dspacedemo+submit@gmail.com', + requireCertificate: false, + selfRegistered: false, + self: 'https://rest.api/dspace-spring-rest/api/eperson/epersons/99423c27-b642-4bb9-a9cd-45gh23e68dca5', + id: '99423c27-b642-4bb9-a9cd-45gh23e68dca5', + uuid: '99423c27-b642-4bb9-a9cd-45gh23e68dca5', + type: 'eperson', + name: 'dspacedemo+submit@gmail.com', + metadata: [ + { + key: 'eperson.firstname', + language: null, + value: 'Demo' + }, + { + key: 'eperson.lastname', + language: null, + value: 'Submitter' + } + ], + _links: { + self: 'https://rest.api/dspace-spring-rest/api/eperson/epersons/99423c27-b642-4bb9-a9cd-45gh23e68dca5' + } + }, + id: 826, + lastModified: '2019-01-09T10:17:33.738+0000', + sections: {}, + errors: [], + self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826', + type: 'workspaceitem', + _links: { + collection: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/collection', + item: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/item', + submissionDefinition: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submissionDefinition', + submitter: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submitter', + self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826' + } +}; +export var mockSubmissionCollectionId = '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb'; +export var mockSubmissionId = '826'; +export var mockSubmissionSelfUrl = 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826'; +export var mockSubmissionDefinitionResponse = { + isDefault: true, + sections: [ + { + mandatory: true, + sectionType: 'utils', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' + }, + { + mandatory: true, + sectionType: 'collection', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + { + header: 'submit.progressbar.describe.stepone', + mandatory: true, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' + }, + { + header: 'submit.progressbar.describe.steptwo', + mandatory: false, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' + }, + { + header: 'submit.progressbar.upload', + mandatory: true, + sectionType: 'upload', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' + }, + { + header: 'submit.progressbar.license', + mandatory: true, + sectionType: 'license', + visibility: { + main: null, + other: 'READONLY' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + } + ], + name: 'traditional', + type: 'submissiondefinition', + _links: { + collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', + sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' +}; +export var mockSubmissionDefinition = { + isDefault: true, + sections: new PaginatedList(new PageInfo(), [ + { + mandatory: true, + sectionType: 'utils', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' + }, + { + mandatory: true, + sectionType: 'collection', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' + }, + { + header: 'submit.progressbar.describe.stepone', + mandatory: true, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' + }, + { + header: 'submit.progressbar.describe.steptwo', + mandatory: false, + sectionType: 'submission-form', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' + }, + { + header: 'submit.progressbar.upload', + mandatory: true, + sectionType: 'upload', + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' + }, + { + header: 'submit.progressbar.license', + mandatory: true, + sectionType: 'license', + visibility: { + main: null, + other: 'READONLY' + }, + type: 'submissionsection', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' + } + ]), + name: 'traditional', + type: 'submissiondefinition', + _links: { + collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', + sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' +}; +export var mockSubmissionState = Object.assign({}, { + 826: { + collection: mockSubmissionCollectionId, + definition: 'traditional', + selfUrl: mockSubmissionSelfUrl, + activeSection: null, + sections: { + extraction: { + config: '', + mandatory: true, + sectionType: 'utils', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + collection: { + config: '', + mandatory: true, + sectionType: 'collection', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + traditionalpageone: { + header: 'submit.progressbar.describe.stepone', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone', + mandatory: true, + sectionType: 'submission-form', + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + traditionalpagetwo: { + header: 'submit.progressbar.describe.steptwo', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo', + mandatory: false, + sectionType: 'submission-form', + collapsed: false, + enabled: false, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + upload: { + header: 'submit.progressbar.upload', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload', + mandatory: true, + sectionType: 'upload', + collapsed: false, + enabled: true, + data: { + files: [] + }, + errors: [], + isLoading: false, + isValid: false + }, + license: { + header: 'submit.progressbar.license', + config: '', + mandatory: true, + sectionType: 'license', + visibility: { + main: null, + other: 'READONLY' + }, + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + } + }, + isLoading: false, + savePending: false, + depositPending: false + } +}); +export var mockSectionsState = Object.assign({}, { + extraction: { + config: '', + mandatory: true, + sectionType: 'utils', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + collection: { + config: '', + mandatory: true, + sectionType: 'collection', + visibility: { + main: 'HIDDEN', + other: 'HIDDEN' + }, + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + traditionalpageone: { + header: 'submit.progressbar.describe.stepone', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone', + mandatory: true, + sectionType: 'submission-form', + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + traditionalpagetwo: { + header: 'submit.progressbar.describe.steptwo', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo', + mandatory: false, + sectionType: 'submission-form', + collapsed: false, + enabled: false, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + upload: { + header: 'submit.progressbar.upload', + config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload', + mandatory: true, + sectionType: 'upload', + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + }, + license: { + header: 'submit.progressbar.license', + config: '', + mandatory: true, + sectionType: 'license', + visibility: { + main: null, + other: 'READONLY' + }, + collapsed: false, + enabled: true, + data: {}, + errors: [], + isLoading: false, + isValid: false + } +}); +export var mockSectionsList = [ + { + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone', + mandatory: true, + data: {}, + errors: [], + header: 'submit.progressbar.describe.stepone', + id: 'traditionalpageone', + sectionType: 'submission-form' + }, + { + config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo', + mandatory: true, + data: {}, + errors: [], + header: 'submit.progressbar.describe.steptwo', + id: 'traditionalpagetwo', + sectionType: 'submission-form' + }, + { + config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload', + mandatory: true, + data: {}, + errors: [], + header: 'submit.progressbar.upload', + id: 'upload', + sectionType: 'upload' + }, + { + config: '', + mandatory: true, + data: {}, + errors: [], + header: 'submit.progressbar.license', + id: 'license', + sectionType: 'license' + } +]; +export var mockUploadConfigResponse = { + accessConditionOptions: [ + { + name: 'openaccess', + groupUUID: '123456-g', + hasStartDate: false, + hasEndDate: false + }, + { + name: 'lease', + groupUUID: '123456-g', + hasStartDate: false, + hasEndDate: true, + maxEndDate: '2019-07-12T14:40:06.308+0000' + }, + { + name: 'embargo', + groupUUID: '123456-g', + hasStartDate: true, + hasEndDate: false, + maxStartDate: '2022-01-12T14:40:06.308+0000' + }, + { + name: 'administrator', + groupUUID: '0f2773dd-1741-475f-80e7-ccdef153d655', + hasStartDate: false, + hasEndDate: false + } + ], + metadata: { + rows: [ + { + fields: [ + { + input: { + type: 'onebox' + }, + label: 'Title', + mandatory: true, + repeatable: false, + mandatoryMessage: 'You must enter a main title for this item.', + hints: 'Enter the name of the file.', + selectableMetadata: [ + { + metadata: 'dc.title', + label: null, + authority: null, + closed: null + } + ], + languageCodes: [] + } + ] + }, + { + fields: [ + { + input: { + type: 'textarea' + }, + label: 'Description', + mandatory: false, + repeatable: true, + hints: 'Enter a description for the file', + selectableMetadata: [ + { + metadata: 'dc.description', + label: null, + authority: null, + closed: null + } + ], + languageCodes: [] + } + ] + } + ], + name: 'bitstream-metadata', + type: 'submissionform', + _links: { + self: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/bitstream-metadata' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/bitstream-metadata' + }, + required: false, + maxSize: 536870912, + name: 'upload', + type: 'submissionupload', + _links: { + metadata: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload/metadata', + self: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' + }, + self: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' +}; +export var mockAccessConditionOptions = [ + { + name: 'openaccess', + groupUUID: '123456-g', + hasStartDate: false, + hasEndDate: false + }, + { + name: 'lease', + groupUUID: '123456-g', + hasStartDate: false, + hasEndDate: true, + maxEndDate: '2019-07-12T14:40:06.308+0000' + }, + { + name: 'embargo', + groupUUID: '123456-g', + hasStartDate: true, + hasEndDate: false, + maxStartDate: '2022-01-12T14:40:06.308+0000' + }, + { + name: 'administrator', + groupUUID: '0f2773dd-1741-475f-80e7-ccdef153d655', + hasStartDate: false, + hasEndDate: false + } +]; +export var mockGroup = Object.assign(new Group(), { + handle: null, + permanent: true, + self: 'https://rest.api/dspace-spring-rest/api/eperson/groups/123456-g1', + id: '123456-g', + uuid: '123456-g', + type: 'group', + name: 'Anonymous', + metadata: [], + _links: { + groups: 'https://rest.api/dspace-spring-rest/api/eperson/groups/123456-g1/groups', + self: 'https://rest.api/dspace-spring-rest/api/eperson/groups/123456-g1' + }, + groups: { + pageInfo: { + elementsPerPage: 0, + totalElements: 0, + totalPages: 1, + currentPage: 1 + }, + page: [] + } +}); +export var mockUploadFiles = [ + { + uuid: '123456-test-upload', + metadata: { + 'dc.source': [ + { + value: '123456-test-upload.jpg', + language: null, + authority: null, + display: '123456-test-upload.jpg', + confidence: -1, + place: 0, + otherInformation: null + } + ], + 'dc.title': [ + { + value: '123456-test-upload.jpg', + language: null, + authority: null, + display: '123456-test-upload.jpg', + confidence: -1, + place: 0, + otherInformation: null + } + ] + }, + accessConditions: [ + { + id: 3675, + name: 'lease', + rpType: 'TYPE_CUSTOM', + groupUUID: '123456-g', + action: 'READ', + endDate: '2019-01-16', + type: 'resourcePolicy' + }, + { + id: 3676, + name: 'openaccess', + rpType: 'TYPE_CUSTOM', + groupUUID: '123456-g', + action: 'READ', + type: 'resourcePolicy' + } + ], + format: { + id: 16, + shortDescription: 'JPEG', + description: 'Joint Photographic Experts Group/JPEG File Interchange Format (JFIF)', + mimetype: 'image/jpeg', + supportLevel: 0, + internal: false, + extensions: null, + type: 'bitstreamformat' + }, + sizeBytes: 202999, + checkSum: { + checkSumAlgorithm: 'MD5', + value: '5e0996996863d2623439cbb53052bc72' + }, + url: 'https://test-ui.com/api/core/bitstreams/123456-test-upload/content' + } +]; +export var mockFileFormData = { + metadata: { + 'dc.title': [ + { + value: 'title', + language: null, + authority: null, + display: 'title', + confidence: -1, + place: 0, + otherInformation: null + } + ], + 'dc.description': [ + { + value: 'description', + language: null, + authority: null, + display: 'description', + confidence: -1, + place: 0, + otherInformation: null + } + ] + }, + accessConditions: [ + { + name: [ + { + value: 'openaccess', + language: null, + authority: null, + display: 'openaccess', + confidence: -1, + place: 0, + otherInformation: null + } + ], + groupUUID: [ + { + value: '123456-g', + language: null, + authority: null, + display: '123456-g', + confidence: -1, + place: 0, + otherInformation: null + } + ] + }, + { + name: [ + { + value: 'lease', + language: null, + authority: null, + display: 'lease', + confidence: -1, + place: 0, + otherInformation: null + } + ], + endDate: [ + { + value: { + year: 2019, + month: 1, + day: 16 + }, + language: null, + authority: null, + display: { + year: 2019, + month: 1, + day: 16 + }, + confidence: -1, + place: 0, + otherInformation: null + } + ], + groupUUID: [ + { + value: '123456-g', + language: null, + authority: null, + display: '123456-g', + confidence: -1, + place: 0, + otherInformation: null + } + ] + }, + { + name: [ + { + value: 'embargo', + language: null, + authority: null, + display: 'lease', + confidence: -1, + place: 0, + otherInformation: null + } + ], + startDate: [ + { + value: { + year: 2019, + month: 1, + day: 16 + }, + language: null, + authority: null, + display: { + year: 2019, + month: 1, + day: 16 + }, + confidence: -1, + place: 0, + otherInformation: null + } + ], + groupUUID: [ + { + value: '123456-g', + language: null, + authority: null, + display: '123456-g', + confidence: -1, + place: 0, + otherInformation: null + } + ] + } + ] +}; +//# sourceMappingURL=mock-submission.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-submission.js.map b/src/app/shared/mocks/mock-submission.js.map new file mode 100644 index 0000000000..a3783cc014 --- /dev/null +++ b/src/app/shared/mocks/mock-submission.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-submission.js","sourceRoot":"","sources":["mock-submission.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-translate-loader.js b/src/app/shared/mocks/mock-translate-loader.js new file mode 100644 index 0000000000..ca38a45bda --- /dev/null +++ b/src/app/shared/mocks/mock-translate-loader.js @@ -0,0 +1,11 @@ +import { of as observableOf } from 'rxjs'; +var MockTranslateLoader = /** @class */ (function () { + function MockTranslateLoader() { + } + MockTranslateLoader.prototype.getTranslation = function (lang) { + return observableOf({}); + }; + return MockTranslateLoader; +}()); +export { MockTranslateLoader }; +//# sourceMappingURL=mock-translate-loader.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-translate-loader.js.map b/src/app/shared/mocks/mock-translate-loader.js.map new file mode 100644 index 0000000000..6cb163d59e --- /dev/null +++ b/src/app/shared/mocks/mock-translate-loader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-translate-loader.js","sourceRoot":"","sources":["mock-translate-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAGtD;IAAA;IAIA,CAAC;IAHC,4CAAc,GAAd,UAAe,IAAY;QACzB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACH,0BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-translate.service.js b/src/app/shared/mocks/mock-translate.service.js new file mode 100644 index 0000000000..80d1acd4d6 --- /dev/null +++ b/src/app/shared/mocks/mock-translate.service.js @@ -0,0 +1,7 @@ +export function getMockTranslateService() { + return jasmine.createSpyObj('translateService', { + get: jasmine.createSpy('get'), + instant: jasmine.createSpy('instant') + }); +} +//# sourceMappingURL=mock-translate.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-translate.service.js.map b/src/app/shared/mocks/mock-translate.service.js.map new file mode 100644 index 0000000000..83694debf6 --- /dev/null +++ b/src/app/shared/mocks/mock-translate.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-translate.service.js","sourceRoot":"","sources":["mock-translate.service.ts"],"names":[],"mappings":"AAEA,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,kBAAkB,EAAE;QAC9C,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC;QAC7B,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;KACtC,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-uuid.service.js b/src/app/shared/mocks/mock-uuid.service.js new file mode 100644 index 0000000000..f2984381a4 --- /dev/null +++ b/src/app/shared/mocks/mock-uuid.service.js @@ -0,0 +1,8 @@ +export var defaultUUID = 'c4ce6905-290b-478f-979d-a333bbd7820f'; +export function getMockUUIDService(uuid) { + if (uuid === void 0) { uuid = defaultUUID; } + return jasmine.createSpyObj('uuidService', { + generate: uuid, + }); +} +//# sourceMappingURL=mock-uuid.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-uuid.service.js.map b/src/app/shared/mocks/mock-uuid.service.js.map new file mode 100644 index 0000000000..acbb411840 --- /dev/null +++ b/src/app/shared/mocks/mock-uuid.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-uuid.service.js","sourceRoot":"","sources":["mock-uuid.service.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,WAAW,GAAG,sCAAsC,CAAC;AAElE,MAAM,6BAA6B,IAAkB;IAAlB,qBAAA,EAAA,kBAAkB;IACnD,OAAO,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE;QACzC,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js b/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js new file mode 100644 index 0000000000..180d192986 --- /dev/null +++ b/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +var ClaimedTaskActionsApproveComponent = /** @class */ (function () { + function ClaimedTaskActionsApproveComponent() { + /** + * An event fired when a approve action is confirmed. + */ + this.approve = new EventEmitter(); + } + /** + * Emit approve event + */ + ClaimedTaskActionsApproveComponent.prototype.confirmApprove = function () { + this.approve.emit(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Boolean) + ], ClaimedTaskActionsApproveComponent.prototype, "processingApprove", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ClaimedTaskActionsApproveComponent.prototype, "wrapperClass", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ClaimedTaskActionsApproveComponent.prototype, "approve", void 0); + ClaimedTaskActionsApproveComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-claimed-task-actions-approve', + styleUrls: ['./claimed-task-actions-approve.component.scss'], + templateUrl: './claimed-task-actions-approve.component.html', + }) + ], ClaimedTaskActionsApproveComponent); + return ClaimedTaskActionsApproveComponent; +}()); +export { ClaimedTaskActionsApproveComponent }; +//# sourceMappingURL=claimed-task-actions-approve.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js.map b/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js.map new file mode 100644 index 0000000000..c868706c96 --- /dev/null +++ b/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-task-actions-approve.component.js","sourceRoot":"","sources":["claimed-task-actions-approve.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAQvE;IANA;QAkBE;;WAEG;QACO,YAAO,GAAsB,IAAI,YAAY,EAAO,CAAC;IAQjE,CAAC;IANC;;OAEG;IACH,2DAAc,GAAd;QACE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAjBQ;QAAR,KAAK,EAAE;;iFAA4B;IAK3B;QAAR,KAAK,EAAE;;4EAAsB;IAKpB;QAAT,MAAM,EAAE;0CAAU,YAAY;uEAAgC;IAfpD,kCAAkC;QAN9C,SAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,SAAS,EAAE,CAAC,+CAA+C,CAAC;YAC5D,WAAW,EAAE,+CAA+C;SAC7D,CAAC;OAEW,kCAAkC,CAuB9C;IAAD,yCAAC;CAAA,AAvBD,IAuBC;SAvBY,kCAAkC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js b/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js new file mode 100644 index 0000000000..dd88663e3d --- /dev/null +++ b/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js @@ -0,0 +1,114 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { BehaviorSubject } from 'rxjs'; +import { filter, map } from 'rxjs/operators'; +import { TranslateService } from '@ngx-translate/core'; +import { ClaimedTask } from '../../../core/tasks/models/claimed-task-object.model'; +import { isNotUndefined } from '../../empty.util'; +import { MyDSpaceActionsComponent } from '../mydspace-actions'; +import { ResourceType } from '../../../core/shared/resource-type'; +import { NotificationsService } from '../../notifications/notifications.service'; +/** + * This component represents mydspace actions related to ClaimedTask object. + */ +var ClaimedTaskActionsComponent = /** @class */ (function (_super) { + tslib_1.__extends(ClaimedTaskActionsComponent, _super); + /** + * Initialize instance variables + * + * @param {Injector} injector + * @param {Router} router + * @param {NotificationsService} notificationsService + * @param {TranslateService} translate + */ + function ClaimedTaskActionsComponent(injector, router, notificationsService, translate) { + var _this = _super.call(this, ResourceType.ClaimedTask, injector, router, notificationsService, translate) || this; + _this.injector = injector; + _this.router = router; + _this.notificationsService = notificationsService; + _this.translate = translate; + /** + * A boolean representing if an approve operation is pending + */ + _this.processingApprove$ = new BehaviorSubject(false); + /** + * A boolean representing if a reject operation is pending + */ + _this.processingReject$ = new BehaviorSubject(false); + /** + * A boolean representing if a return to pool operation is pending + */ + _this.processingReturnToPool$ = new BehaviorSubject(false); + return _this; + } + /** + * Initialize objects + */ + ClaimedTaskActionsComponent.prototype.ngOnInit = function () { + this.initObjects(this.object); + }; + /** + * Init the ClaimedTask and Workflowitem objects + * + * @param {PoolTask} object + */ + ClaimedTaskActionsComponent.prototype.initObjects = function (object) { + this.object = object; + this.workflowitem$ = this.object.workflowitem.pipe(filter(function (rd) { return ((!rd.isRequestPending) && isNotUndefined(rd.payload)); }), map(function (rd) { return rd.payload; })); + }; + /** + * Approve the task. + */ + ClaimedTaskActionsComponent.prototype.approve = function () { + var _this = this; + this.processingApprove$.next(true); + this.objectDataService.approveTask(this.object.id) + .subscribe(function (res) { + _this.processingApprove$.next(false); + _this.handleActionResponse(res.hasSucceeded); + }); + }; + /** + * Reject the task. + */ + ClaimedTaskActionsComponent.prototype.reject = function (reason) { + var _this = this; + this.processingReject$.next(true); + this.objectDataService.rejectTask(reason, this.object.id) + .subscribe(function (res) { + _this.processingReject$.next(false); + _this.handleActionResponse(res.hasSucceeded); + }); + }; + /** + * Return task to the pool. + */ + ClaimedTaskActionsComponent.prototype.returnToPool = function () { + var _this = this; + this.processingReturnToPool$.next(true); + this.objectDataService.returnToPoolTask(this.object.id) + .subscribe(function (res) { + _this.processingReturnToPool$.next(false); + _this.handleActionResponse(res.hasSucceeded); + }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", ClaimedTask) + ], ClaimedTaskActionsComponent.prototype, "object", void 0); + ClaimedTaskActionsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-claimed-task-actions', + styleUrls: ['./claimed-task-actions.component.scss'], + templateUrl: './claimed-task-actions.component.html', + }), + tslib_1.__metadata("design:paramtypes", [Injector, + Router, + NotificationsService, + TranslateService]) + ], ClaimedTaskActionsComponent); + return ClaimedTaskActionsComponent; +}(MyDSpaceActionsComponent)); +export { ClaimedTaskActionsComponent }; +//# sourceMappingURL=claimed-task-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js.map b/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js.map new file mode 100644 index 0000000000..33174cabf7 --- /dev/null +++ b/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-task-actions.component.js","sourceRoot":"","sources":["claimed-task-actions.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js b/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js new file mode 100644 index 0000000000..8fbeb8ccd9 --- /dev/null +++ b/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js @@ -0,0 +1,70 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormBuilder, Validators } from '@angular/forms'; +import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; +var ClaimedTaskActionsRejectComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {FormBuilder} formBuilder + * @param {NgbModal} modalService + */ + function ClaimedTaskActionsRejectComponent(formBuilder, modalService) { + this.formBuilder = formBuilder; + this.modalService = modalService; + /** + * An event fired when a reject action is confirmed. + * Event's payload equals to reject reason. + */ + this.reject = new EventEmitter(); + } + /** + * Initialize form + */ + ClaimedTaskActionsRejectComponent.prototype.ngOnInit = function () { + this.rejectForm = this.formBuilder.group({ + reason: ['', Validators.required] + }); + }; + /** + * Close modal and emit reject event + */ + ClaimedTaskActionsRejectComponent.prototype.confirmReject = function () { + this.processingReject = true; + this.modalRef.close('Send Button'); + var reason = this.rejectForm.get('reason').value; + this.reject.emit(reason); + }; + /** + * Open modal + * + * @param content + */ + ClaimedTaskActionsRejectComponent.prototype.openRejectModal = function (content) { + this.rejectForm.reset(); + this.modalRef = this.modalService.open(content); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Boolean) + ], ClaimedTaskActionsRejectComponent.prototype, "processingReject", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ClaimedTaskActionsRejectComponent.prototype, "wrapperClass", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ClaimedTaskActionsRejectComponent.prototype, "reject", void 0); + ClaimedTaskActionsRejectComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-claimed-task-actions-reject', + styleUrls: ['./claimed-task-actions-reject.component.scss'], + templateUrl: './claimed-task-actions-reject.component.html', + }), + tslib_1.__metadata("design:paramtypes", [FormBuilder, NgbModal]) + ], ClaimedTaskActionsRejectComponent); + return ClaimedTaskActionsRejectComponent; +}()); +export { ClaimedTaskActionsRejectComponent }; +//# sourceMappingURL=claimed-task-actions-reject.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js.map b/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js.map new file mode 100644 index 0000000000..b0a66f6a95 --- /dev/null +++ b/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-task-actions-reject.component.js","sourceRoot":"","sources":["claimed-task-actions-reject.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAa,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,QAAQ,EAAe,MAAM,4BAA4B,CAAC;AAQnE;IA4BE;;;;;OAKG;IACH,2CAAoB,WAAwB,EAAU,YAAsB;QAAxD,gBAAW,GAAX,WAAW,CAAa;QAAU,iBAAY,GAAZ,YAAY,CAAU;QAtB5E;;;WAGG;QACO,WAAM,GAAyB,IAAI,YAAY,EAAU,CAAC;IAmBpE,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YACvC,MAAM,EAAE,CAAC,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IAEL,CAAC;IAED;;OAEG;IACH,yDAAa,GAAb;QACE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACnC,IAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,2DAAe,GAAf,UAAgB,OAAY;QAC1B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IA5DQ;QAAR,KAAK,EAAE;;+EAA2B;IAK1B;QAAR,KAAK,EAAE;;2EAAsB;IAMpB;QAAT,MAAM,EAAE;0CAAS,YAAY;qEAAsC;IAhBzD,iCAAiC;QAN7C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAC,8CAA8C,CAAC;YAC3D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAoCiC,WAAW,EAAwB,QAAQ;OAlCjE,iCAAiC,CAkE7C;IAAD,wCAAC;CAAA,AAlED,IAkEC;SAlEY,iCAAiC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js b/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js new file mode 100644 index 0000000000..a26828d97a --- /dev/null +++ b/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js @@ -0,0 +1,38 @@ +import * as tslib_1 from "tslib"; +import { Component, EventEmitter, Input, Output } from '@angular/core'; +var ClaimedTaskActionsReturnToPoolComponent = /** @class */ (function () { + function ClaimedTaskActionsReturnToPoolComponent() { + /** + * An event fired when a return to pool action is confirmed. + */ + this.returnToPool = new EventEmitter(); + } + /** + * Emit returnToPool event + */ + ClaimedTaskActionsReturnToPoolComponent.prototype.confirmReturnToPool = function () { + this.returnToPool.emit(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Boolean) + ], ClaimedTaskActionsReturnToPoolComponent.prototype, "processingReturnToPool", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ClaimedTaskActionsReturnToPoolComponent.prototype, "wrapperClass", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ClaimedTaskActionsReturnToPoolComponent.prototype, "returnToPool", void 0); + ClaimedTaskActionsReturnToPoolComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-claimed-task-actions-return-to-pool', + styleUrls: ['./claimed-task-actions-return-to-pool.component.scss'], + templateUrl: './claimed-task-actions-return-to-pool.component.html', + }) + ], ClaimedTaskActionsReturnToPoolComponent); + return ClaimedTaskActionsReturnToPoolComponent; +}()); +export { ClaimedTaskActionsReturnToPoolComponent }; +//# sourceMappingURL=claimed-task-actions-return-to-pool.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js.map b/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js.map new file mode 100644 index 0000000000..be6fbfdc1a --- /dev/null +++ b/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-task-actions-return-to-pool.component.js","sourceRoot":"","sources":["claimed-task-actions-return-to-pool.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAQvE;IANA;QAkBE;;WAEG;QACO,iBAAY,GAAsB,IAAI,YAAY,EAAO,CAAC;IAQtE,CAAC;IANC;;OAEG;IACH,qEAAmB,GAAnB;QACE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAjBQ;QAAR,KAAK,EAAE;;2FAAiC;IAKhC;QAAR,KAAK,EAAE;;iFAAsB;IAKpB;QAAT,MAAM,EAAE;0CAAe,YAAY;iFAAgC;IAfzD,uCAAuC;QANnD,SAAS,CAAC;YACT,QAAQ,EAAE,wCAAwC;YAClD,SAAS,EAAE,CAAC,sDAAsD,CAAC;YACnE,WAAW,EAAE,sDAAsD;SACpE,CAAC;OAEW,uCAAuC,CAuBnD;IAAD,8CAAC;CAAA,AAvBD,IAuBC;SAvBY,uCAAuC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/item/item-actions.component.js b/src/app/shared/mydspace-actions/item/item-actions.component.js new file mode 100644 index 0000000000..0ac9bacffd --- /dev/null +++ b/src/app/shared/mydspace-actions/item/item-actions.component.js @@ -0,0 +1,56 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { TranslateService } from '@ngx-translate/core'; +import { MyDSpaceActionsComponent } from '../mydspace-actions'; +import { Item } from '../../../core/shared/item.model'; +import { ResourceType } from '../../../core/shared/resource-type'; +import { NotificationsService } from '../../notifications/notifications.service'; +/** + * This component represents mydspace actions related to Item object. + */ +var ItemActionsComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemActionsComponent, _super); + /** + * Initialize instance variables + * + * @param {Injector} injector + * @param {Router} router + * @param {NotificationsService} notificationsService + * @param {TranslateService} translate + */ + function ItemActionsComponent(injector, router, notificationsService, translate) { + var _this = _super.call(this, ResourceType.Item, injector, router, notificationsService, translate) || this; + _this.injector = injector; + _this.router = router; + _this.notificationsService = notificationsService; + _this.translate = translate; + return _this; + } + /** + * Init the target object + * + * @param {Item} object + */ + ItemActionsComponent.prototype.initObjects = function (object) { + this.object = object; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemActionsComponent.prototype, "object", void 0); + ItemActionsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-actions', + styleUrls: ['./item-actions.component.scss'], + templateUrl: './item-actions.component.html', + }), + tslib_1.__metadata("design:paramtypes", [Injector, + Router, + NotificationsService, + TranslateService]) + ], ItemActionsComponent); + return ItemActionsComponent; +}(MyDSpaceActionsComponent)); +export { ItemActionsComponent }; +//# sourceMappingURL=item-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/item/item-actions.component.js.map b/src/app/shared/mydspace-actions/item/item-actions.component.js.map new file mode 100644 index 0000000000..6c8b2fdccc --- /dev/null +++ b/src/app/shared/mydspace-actions/item/item-actions.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-actions.component.js","sourceRoot":"","sources":["item-actions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF;;GAEG;AAOH;IAA0C,gDAA+C;IAOvF;;;;;;;OAOG;IACH,8BAAsB,QAAkB,EAClB,MAAc,EACd,oBAA0C,EAC1C,SAA2B;QAHjD,YAIE,kBAAM,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,SAC5E;QALqB,cAAQ,GAAR,QAAQ,CAAU;QAClB,YAAM,GAAN,MAAM,CAAQ;QACd,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,eAAS,GAAT,SAAS,CAAkB;;IAEjD,CAAC;IAED;;;;OAIG;IACH,0CAAW,GAAX,UAAY,MAAY;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAxBQ;QAAR,KAAK,EAAE;0CAAS,IAAI;wDAAC;IALX,oBAAoB;QANhC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE,CAAC,+BAA+B,CAAC;YAC5C,WAAW,EAAE,+BAA+B;SAC7C,CAAC;iDAiBgC,QAAQ;YACV,MAAM;YACQ,oBAAoB;YAC/B,gBAAgB;OAlBtC,oBAAoB,CA+BhC;IAAD,2BAAC;CAAA,AA/BD,CAA0C,wBAAwB,GA+BjE;SA/BY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js b/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js new file mode 100644 index 0000000000..26f9cb397e --- /dev/null +++ b/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js @@ -0,0 +1,38 @@ +import { ResourceType } from '../../core/shared/resource-type'; +import { WorkspaceitemDataService } from '../../core/submission/workspaceitem-data.service'; +import { ClaimedTaskDataService } from '../../core/tasks/claimed-task-data.service'; +import { PoolTaskDataService } from '../../core/tasks/pool-task-data.service'; +import { WorkflowitemDataService } from '../../core/submission/workflowitem-data.service'; +import { ItemDataService } from '../../core/data/item-data.service'; +/** + * Class to return DataService for given ResourceType + */ +var MydspaceActionsServiceFactory = /** @class */ (function () { + function MydspaceActionsServiceFactory() { + } + MydspaceActionsServiceFactory.prototype.getConstructor = function (type) { + switch (type) { + case ResourceType.Item: { + return ItemDataService; + } + case ResourceType.Workspaceitem: { + return WorkspaceitemDataService; + } + case ResourceType.Workflowitem: { + return WorkflowitemDataService; + } + case ResourceType.ClaimedTask: { + return ClaimedTaskDataService; + } + case ResourceType.PoolTask: { + return PoolTaskDataService; + } + default: { + return undefined; + } + } + }; + return MydspaceActionsServiceFactory; +}()); +export { MydspaceActionsServiceFactory }; +//# sourceMappingURL=mydspace-actions-service.factory.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js.map b/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js.map new file mode 100644 index 0000000000..0c008acbe0 --- /dev/null +++ b/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mydspace-actions-service.factory.js","sourceRoot":"","sources":["mydspace-actions-service.factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAE1F,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE;;GAEG;AACH;IAAA;IAuBA,CAAC;IAtBQ,sDAAc,GAArB,UAAsB,IAAkB;QACtC,QAAQ,IAAI,EAAE;YACZ,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;gBACtB,OAAO,eAAsB,CAAC;aAC/B;YACD,KAAK,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC/B,OAAO,wBAA+B,CAAC;aACxC;YACD,KAAK,YAAY,CAAC,YAAY,CAAC,CAAC;gBAC9B,OAAO,uBAA8B,CAAC;aACvC;YACD,KAAK,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC7B,OAAO,sBAA6B,CAAC;aACtC;YACD,KAAK,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC1B,OAAO,mBAA0B,CAAC;aACnC;YACD,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,oCAAC;AAAD,CAAC,AAvBD,IAuBC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/mydspace-actions.js b/src/app/shared/mydspace-actions/mydspace-actions.js new file mode 100644 index 0000000000..8b8281a6be --- /dev/null +++ b/src/app/shared/mydspace-actions/mydspace-actions.js @@ -0,0 +1,73 @@ +import * as tslib_1 from "tslib"; +import { Input } from '@angular/core'; +import { find } from 'rxjs/operators'; +import { MydspaceActionsServiceFactory } from './mydspace-actions-service.factory'; +import { NotificationOptions } from '../notifications/models/notification-options.model'; +/** + * Abstract class for all different representations of mydspace actions + */ +var MyDSpaceActionsComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ResourceType} objectType + * @param {Injector} injector + * @param {Router} router + * @param {NotificationsService} notificationsService + * @param {TranslateService} translate + */ + function MyDSpaceActionsComponent(objectType, injector, router, notificationsService, translate) { + this.objectType = objectType; + this.injector = injector; + this.router = router; + this.notificationsService = notificationsService; + this.translate = translate; + var factory = new MydspaceActionsServiceFactory(); + this.objectDataService = injector.get(factory.getConstructor(objectType)); + } + /** + * Refresh current page + */ + MyDSpaceActionsComponent.prototype.reload = function () { + // override the route reuse strategy + this.router.routeReuseStrategy.shouldReuseRoute = function () { + return false; + }; + this.router.navigated = false; + var url = decodeURIComponent(this.router.url); + this.router.navigateByUrl(url); + }; + /** + * Override the target object with a refreshed one + */ + MyDSpaceActionsComponent.prototype.refresh = function () { + var _this = this; + // find object by id + this.objectDataService.findById(this.object.id).pipe(find(function (rd) { return rd.hasSucceeded; })).subscribe(function (rd) { + _this.initObjects(rd.payload); + }); + }; + /** + * Handle action response and show properly notification + * + * @param result + * true on success, false otherwise + */ + MyDSpaceActionsComponent.prototype.handleActionResponse = function (result) { + if (result) { + this.reload(); + this.notificationsService.success(null, this.translate.get('submission.workflow.tasks.generic.success'), new NotificationOptions(5000, false)); + } + else { + this.notificationsService.error(null, this.translate.get('submission.workflow.tasks.generic.error'), new NotificationOptions(20000, true)); + } + }; + var _a; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", typeof (_a = typeof T !== "undefined" && T) === "function" && _a || Object) + ], MyDSpaceActionsComponent.prototype, "object", void 0); + return MyDSpaceActionsComponent; +}()); +export { MyDSpaceActionsComponent }; +//# sourceMappingURL=mydspace-actions.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/mydspace-actions.js.map b/src/app/shared/mydspace-actions/mydspace-actions.js.map new file mode 100644 index 0000000000..9b7db1d138 --- /dev/null +++ b/src/app/shared/mydspace-actions/mydspace-actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mydspace-actions.js","sourceRoot":"","sources":["mydspace-actions.ts"],"names":[],"mappings":";AACA,OAAO,EAAY,KAAK,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AAKnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAIzF;;GAEG;AACH;IAYE;;;;;;;;OAQG;IACH,kCACY,UAAwB,EACxB,QAAkB,EAClB,MAAc,EACd,oBAA0C,EAC1C,SAA2B;QAJ3B,eAAU,GAAV,UAAU,CAAc;QACxB,aAAQ,GAAR,QAAQ,CAAU;QAClB,WAAM,GAAN,MAAM,CAAQ;QACd,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,cAAS,GAAT,SAAS,CAAkB;QACrC,IAAM,OAAO,GAAG,IAAI,6BAA6B,EAAe,CAAC;QACjE,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5E,CAAC;IASD;;OAEG;IACH,yCAAM,GAAN;QACE,oCAAoC;QACpC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,GAAG;YAChD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;QAC9B,IAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,0CAAO,GAAP;QAAA,iBAOC;QANC,oBAAoB;QACpB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAClD,IAAI,CAAC,UAAC,EAAiB,IAAK,OAAA,EAAE,CAAC,YAAY,EAAf,CAAe,CAAC,CAC7C,CAAC,SAAS,CAAC,UAAC,EAAiB;YAC5B,KAAI,CAAC,WAAW,CAAC,EAAE,CAAC,OAAY,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,uDAAoB,GAApB,UAAqB,MAAe;QAClC,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,EACpC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,2CAA2C,CAAC,EAC/D,IAAI,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAClC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yCAAyC,CAAC,EAC7D,IAAI,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;SACzC;IACH,CAAC;;IA3EQ;QAAR,KAAK,EAAE;8DAAkB,CAAC,oBAAD,CAAC;4DAAC;IA4E9B,+BAAC;CAAA,AAjFD,IAiFC;SAjFqB,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js b/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js new file mode 100644 index 0000000000..db55bcf2f2 --- /dev/null +++ b/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js @@ -0,0 +1,83 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { BehaviorSubject } from 'rxjs'; +import { filter, map } from 'rxjs/operators'; +import { TranslateService } from '@ngx-translate/core'; +import { PoolTask } from '../../../core/tasks/models/pool-task-object.model'; +import { isNotUndefined } from '../../empty.util'; +import { MyDSpaceActionsComponent } from '../mydspace-actions'; +import { ResourceType } from '../../../core/shared/resource-type'; +import { NotificationsService } from '../../notifications/notifications.service'; +/** + * This component represents mydspace actions related to PoolTask object. + */ +var PoolTaskActionsComponent = /** @class */ (function (_super) { + tslib_1.__extends(PoolTaskActionsComponent, _super); + /** + * Initialize instance variables + * + * @param {Injector} injector + * @param {Router} router + * @param {NotificationsService} notificationsService + * @param {TranslateService} translate + */ + function PoolTaskActionsComponent(injector, router, notificationsService, translate) { + var _this = _super.call(this, ResourceType.PoolTask, injector, router, notificationsService, translate) || this; + _this.injector = injector; + _this.router = router; + _this.notificationsService = notificationsService; + _this.translate = translate; + /** + * A boolean representing if a claim operation is pending + * @type {BehaviorSubject} + */ + _this.processingClaim$ = new BehaviorSubject(false); + return _this; + } + /** + * Initialize objects + */ + PoolTaskActionsComponent.prototype.ngOnInit = function () { + this.initObjects(this.object); + }; + /** + * Init the PoolTask and Workflowitem objects + * + * @param {PoolTask} object + */ + PoolTaskActionsComponent.prototype.initObjects = function (object) { + this.object = object; + this.workflowitem$ = this.object.workflowitem.pipe(filter(function (rd) { return ((!rd.isRequestPending) && isNotUndefined(rd.payload)); }), map(function (rd) { return rd.payload; })); + }; + /** + * Claim the task. + */ + PoolTaskActionsComponent.prototype.claim = function () { + var _this = this; + this.processingClaim$.next(true); + this.objectDataService.claimTask(this.object.id) + .subscribe(function (res) { + _this.handleActionResponse(res.hasSucceeded); + _this.processingClaim$.next(false); + }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", PoolTask) + ], PoolTaskActionsComponent.prototype, "object", void 0); + PoolTaskActionsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-pool-task-actions', + styleUrls: ['./pool-task-actions.component.scss'], + templateUrl: './pool-task-actions.component.html', + }), + tslib_1.__metadata("design:paramtypes", [Injector, + Router, + NotificationsService, + TranslateService]) + ], PoolTaskActionsComponent); + return PoolTaskActionsComponent; +}(MyDSpaceActionsComponent)); +export { PoolTaskActionsComponent }; +//# sourceMappingURL=pool-task-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js.map b/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js.map new file mode 100644 index 0000000000..f3848f9911 --- /dev/null +++ b/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pool-task-actions.component.js","sourceRoot":"","sources":["pool-task-actions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAc,MAAM,MAAM,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKvD,OAAO,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF;;GAEG;AAMH;IAA8C,oDAAuD;IAkBnG;;;;;;;OAOG;IACH,kCAAsB,QAAkB,EAClB,MAAc,EACd,oBAA0C,EAC1C,SAA2B;QAHjD,YAIE,kBAAM,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,SAChF;QALqB,cAAQ,GAAR,QAAQ,CAAU;QAClB,YAAM,GAAN,MAAM,CAAQ;QACd,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,eAAS,GAAT,SAAS,CAAkB;QAtBjD;;;WAGG;QACI,sBAAgB,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;;IAoB9D,CAAC;IAED;;OAEG;IACH,2CAAQ,GAAR;QACE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,8CAAW,GAAX,UAAY,MAAgB;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAI,IAAI,CAAC,MAAM,CAAC,YAAqD,CAAC,IAAI,CAC1F,MAAM,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAtD,CAAsD,CAAC,EAChG,GAAG,CAAC,UAAC,EAA4B,IAAK,OAAA,EAAE,CAAC,OAAO,EAAV,CAAU,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,wCAAK,GAAL;QAAA,iBAOC;QANC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;aAC7C,SAAS,CAAC,UAAC,GAAwB;YAClC,KAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC5C,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACP,CAAC;IAzDQ;QAAR,KAAK,EAAE;0CAAS,QAAQ;4DAAC;IALf,wBAAwB;QALpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;iDA2BgC,QAAQ;YACV,MAAM;YACQ,oBAAoB;YAC/B,gBAAgB;OA7BtC,wBAAwB,CA+DpC;IAAD,+BAAC;CAAA,AA/DD,CAA8C,wBAAwB,GA+DrE;SA/DY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js b/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js new file mode 100644 index 0000000000..1d308c75f5 --- /dev/null +++ b/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js @@ -0,0 +1,56 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { TranslateService } from '@ngx-translate/core'; +import { MyDSpaceActionsComponent } from '../mydspace-actions'; +import { Workflowitem } from '../../../core/submission/models/workflowitem.model'; +import { ResourceType } from '../../../core/shared/resource-type'; +import { NotificationsService } from '../../notifications/notifications.service'; +/** + * This component represents mydspace actions related to Workflowitem object. + */ +var WorkflowitemActionsComponent = /** @class */ (function (_super) { + tslib_1.__extends(WorkflowitemActionsComponent, _super); + /** + * Initialize instance variables + * + * @param {Injector} injector + * @param {Router} router + * @param {NotificationsService} notificationsService + * @param {TranslateService} translate + */ + function WorkflowitemActionsComponent(injector, router, notificationsService, translate) { + var _this = _super.call(this, ResourceType.Workflowitem, injector, router, notificationsService, translate) || this; + _this.injector = injector; + _this.router = router; + _this.notificationsService = notificationsService; + _this.translate = translate; + return _this; + } + /** + * Init the target object + * + * @param {Workflowitem} object + */ + WorkflowitemActionsComponent.prototype.initObjects = function (object) { + this.object = object; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Workflowitem) + ], WorkflowitemActionsComponent.prototype, "object", void 0); + WorkflowitemActionsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-workflowitem-actions', + styleUrls: ['./workflowitem-actions.component.scss'], + templateUrl: './workflowitem-actions.component.html', + }), + tslib_1.__metadata("design:paramtypes", [Injector, + Router, + NotificationsService, + TranslateService]) + ], WorkflowitemActionsComponent); + return WorkflowitemActionsComponent; +}(MyDSpaceActionsComponent)); +export { WorkflowitemActionsComponent }; +//# sourceMappingURL=workflowitem-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js.map b/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js.map new file mode 100644 index 0000000000..82d0414dbd --- /dev/null +++ b/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workflowitem-actions.component.js","sourceRoot":"","sources":["workflowitem-actions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oDAAoD,CAAC;AAElF,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF;;GAEG;AAMH;IAAkD,wDAA+D;IAO/G;;;;;;;OAOG;IACH,sCAAsB,QAAkB,EAClB,MAAc,EACd,oBAA0C,EAC1C,SAA2B;QAHjD,YAIE,kBAAM,YAAY,CAAC,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,SACpF;QALqB,cAAQ,GAAR,QAAQ,CAAU;QAClB,YAAM,GAAN,MAAM,CAAQ;QACd,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,eAAS,GAAT,SAAS,CAAkB;;IAEjD,CAAC;IAED;;;;OAIG;IACH,kDAAW,GAAX,UAAY,MAAoB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAxBQ;QAAR,KAAK,EAAE;0CAAS,YAAY;gEAAC;IALnB,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;iDAgBgC,QAAQ;YACV,MAAM;YACQ,oBAAoB;YAC/B,gBAAgB;OAlBtC,4BAA4B,CA+BxC;IAAD,mCAAC;CAAA,AA/BD,CAAkD,wBAAwB,GA+BzE;SA/BY,4BAA4B"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js b/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js new file mode 100644 index 0000000000..fc43df2a49 --- /dev/null +++ b/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js @@ -0,0 +1,82 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { BehaviorSubject } from 'rxjs'; +import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; +import { TranslateService } from '@ngx-translate/core'; +import { Workspaceitem } from '../../../core/submission/models/workspaceitem.model'; +import { MyDSpaceActionsComponent } from '../mydspace-actions'; +import { ResourceType } from '../../../core/shared/resource-type'; +import { NotificationsService } from '../../notifications/notifications.service'; +/** + * This component represents mydspace actions related to Workspaceitem object. + */ +var WorkspaceitemActionsComponent = /** @class */ (function (_super) { + tslib_1.__extends(WorkspaceitemActionsComponent, _super); + /** + * Initialize instance variables + * + * @param {Injector} injector + * @param {Router} router + * @param {NgbModal} modalService + * @param {NotificationsService} notificationsService + * @param {TranslateService} translate + */ + function WorkspaceitemActionsComponent(injector, router, modalService, notificationsService, translate) { + var _this = _super.call(this, ResourceType.Workspaceitem, injector, router, notificationsService, translate) || this; + _this.injector = injector; + _this.router = router; + _this.modalService = modalService; + _this.notificationsService = notificationsService; + _this.translate = translate; + /** + * A boolean representing if a delete operation is pending + * @type {BehaviorSubject} + */ + _this.processingDelete$ = new BehaviorSubject(false); + return _this; + } + /** + * Delete the target workspaceitem object + */ + WorkspaceitemActionsComponent.prototype.confirmDiscard = function (content) { + var _this = this; + this.modalService.open(content).result.then(function (result) { + if (result === 'ok') { + _this.processingDelete$.next(true); + _this.objectDataService.delete(_this.object) + .subscribe(function (response) { + _this.processingDelete$.next(false); + _this.handleActionResponse(response); + }); + } + }); + }; + /** + * Init the target object + * + * @param {Workspaceitem} object + */ + WorkspaceitemActionsComponent.prototype.initObjects = function (object) { + this.object = object; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Workspaceitem) + ], WorkspaceitemActionsComponent.prototype, "object", void 0); + WorkspaceitemActionsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-workspaceitem-actions', + styleUrls: ['./workspaceitem-actions.component.scss'], + templateUrl: './workspaceitem-actions.component.html', + }), + tslib_1.__metadata("design:paramtypes", [Injector, + Router, + NgbModal, + NotificationsService, + TranslateService]) + ], WorkspaceitemActionsComponent); + return WorkspaceitemActionsComponent; +}(MyDSpaceActionsComponent)); +export { WorkspaceitemActionsComponent }; +//# sourceMappingURL=workspaceitem-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js.map b/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js.map new file mode 100644 index 0000000000..3478436e5c --- /dev/null +++ b/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-actions.component.js","sourceRoot":"","sources":["workspaceitem-actions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF;;GAEG;AAMH;IAAmD,yDAAiE;IAalH;;;;;;;;OAQG;IACH,uCAAsB,QAAkB,EAClB,MAAc,EACd,YAAsB,EACtB,oBAA0C,EAC1C,SAA2B;QAJjD,YAKE,kBAAM,YAAY,CAAC,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,SACrF;QANqB,cAAQ,GAAR,QAAQ,CAAU;QAClB,YAAM,GAAN,MAAM,CAAQ;QACd,kBAAY,GAAZ,YAAY,CAAU;QACtB,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,eAAS,GAAT,SAAS,CAAkB;QAnBjD;;;WAGG;QACI,uBAAiB,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;;IAiB/D,CAAC;IAED;;OAEG;IACI,sDAAc,GAArB,UAAsB,OAAO;QAA7B,iBAaC;QAZC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CACzC,UAAC,MAAM;YACL,IAAI,MAAM,KAAK,IAAI,EAAE;gBACnB,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClC,KAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAI,CAAC,MAAM,CAAC;qBACvC,SAAS,CAAC,UAAC,QAAiB;oBAC3B,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACnC,KAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAA;aACL;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,mDAAW,GAAX,UAAY,MAAqB;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAlDQ;QAAR,KAAK,EAAE;0CAAS,aAAa;iEAAC;IALpB,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;SACtD,CAAC;iDAuBgC,QAAQ;YACV,MAAM;YACA,QAAQ;YACA,oBAAoB;YAC/B,gBAAgB;OA1BtC,6BAA6B,CAyDzC;IAAD,oCAAC;CAAA,AAzDD,CAAmD,wBAAwB,GAyD1E;SAzDY,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/ngrx/dspace-router-state-serializer.js b/src/app/shared/ngrx/dspace-router-state-serializer.js new file mode 100644 index 0000000000..19c0b58168 --- /dev/null +++ b/src/app/shared/ngrx/dspace-router-state-serializer.js @@ -0,0 +1,14 @@ +var DSpaceRouterStateSerializer = /** @class */ (function () { + function DSpaceRouterStateSerializer() { + } + DSpaceRouterStateSerializer.prototype.serialize = function (routerState) { + var url = routerState.url; + var queryParams = routerState.root.queryParams; + // Only return an object including the URL and query params + // instead of the entire snapshot + return { url: url, queryParams: queryParams }; + }; + return DSpaceRouterStateSerializer; +}()); +export { DSpaceRouterStateSerializer }; +//# sourceMappingURL=dspace-router-state-serializer.js.map \ No newline at end of file diff --git a/src/app/shared/ngrx/dspace-router-state-serializer.js.map b/src/app/shared/ngrx/dspace-router-state-serializer.js.map new file mode 100644 index 0000000000..72e5331393 --- /dev/null +++ b/src/app/shared/ngrx/dspace-router-state-serializer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-router-state-serializer.js","sourceRoot":"","sources":["dspace-router-state-serializer.ts"],"names":[],"mappings":"AAQA;IAAA;IASA,CAAC;IARC,+CAAS,GAAT,UAAU,WAAgC;QAChC,IAAA,qBAAG,CAAiB;QAC5B,IAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;QAEjD,2DAA2D;QAC3D,iCAAiC;QACjC,OAAO,EAAE,GAAG,KAAA,EAAE,WAAW,aAAA,EAAE,CAAC;IAC9B,CAAC;IACH,kCAAC;AAAD,CAAC,AATD,IASC"} \ No newline at end of file diff --git a/src/app/shared/ngrx/type.js b/src/app/shared/ngrx/type.js new file mode 100644 index 0000000000..1fbd0c68e0 --- /dev/null +++ b/src/app/shared/ngrx/type.js @@ -0,0 +1,24 @@ +/** + * Based on + * https://github.com/ngrx/example-app/blob/master/src/app/util.ts + * + * This function coerces a string into a string literal type. + * Using tagged union types in TypeScript 2.0, this enables + * powerful typechecking of our reducers. + * + * Since every action label passes through this function it + * is a good place to ensure all of our action labels + * are unique. + */ +var typeCache = {}; +export function types() { + return Object.keys(typeCache); +} +export function type(label) { + if (typeCache[label]) { + throw new Error("Action type \"" + label + "\" is not unique\""); + } + typeCache[label] = true; + return label; +} +//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/src/app/shared/ngrx/type.js.map b/src/app/shared/ngrx/type.js.map new file mode 100644 index 0000000000..8bd7b5ef4d --- /dev/null +++ b/src/app/shared/ngrx/type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;GAWG;AAEH,IAAM,SAAS,GAAiC,EAAE,CAAC;AAEnD,MAAM;IACJ,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,eAAkB,KAAa;IACnC,IAAI,SAAS,CAAC,KAAe,CAAC,EAAE;QAC9B,MAAM,IAAI,KAAK,CAAC,mBAAgB,KAAK,uBAAkB,CAAC,CAAC;KAC1D;IAED,SAAS,CAAC,KAAe,CAAC,GAAG,IAAI,CAAC;IAElC,OAAO,KAAU,CAAC;AACpB,CAAC"} \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-animations-type.js b/src/app/shared/notifications/models/notification-animations-type.js new file mode 100644 index 0000000000..441b741010 --- /dev/null +++ b/src/app/shared/notifications/models/notification-animations-type.js @@ -0,0 +1,17 @@ +// 'fade' | 'fromTop' | 'fromRight' | 'fromBottom' | 'fromLeft' | 'rotate' | 'scale' +export var NotificationAnimationsType; +(function (NotificationAnimationsType) { + NotificationAnimationsType["Fade"] = "fade"; + NotificationAnimationsType["FromTop"] = "fromTop"; + NotificationAnimationsType["FromRight"] = "fromRight"; + NotificationAnimationsType["FromBottom"] = "fromBottom"; + NotificationAnimationsType["FromLeft"] = "fromLeft"; + NotificationAnimationsType["Rotate"] = "rotate"; + NotificationAnimationsType["Scale"] = "scale"; +})(NotificationAnimationsType || (NotificationAnimationsType = {})); +export var NotificationAnimationsStatus; +(function (NotificationAnimationsStatus) { + NotificationAnimationsStatus["In"] = "In"; + NotificationAnimationsStatus["Out"] = "Out"; +})(NotificationAnimationsStatus || (NotificationAnimationsStatus = {})); +//# sourceMappingURL=notification-animations-type.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-animations-type.js.map b/src/app/shared/notifications/models/notification-animations-type.js.map new file mode 100644 index 0000000000..35631a0469 --- /dev/null +++ b/src/app/shared/notifications/models/notification-animations-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notification-animations-type.js","sourceRoot":"","sources":["notification-animations-type.ts"],"names":[],"mappings":"AAAA,oFAAoF;AAEpF,MAAM,CAAN,IAAY,0BAQX;AARD,WAAY,0BAA0B;IACpC,2CAAa,CAAA;IACb,iDAAmB,CAAA;IACnB,qDAAuB,CAAA;IACvB,uDAAyB,CAAA;IACzB,mDAAqB,CAAA;IACrB,+CAAiB,CAAA;IACjB,6CAAe,CAAA;AACjB,CAAC,EARW,0BAA0B,KAA1B,0BAA0B,QAQrC;AAED,MAAM,CAAN,IAAY,4BAGX;AAHD,WAAY,4BAA4B;IACtC,yCAAS,CAAA;IACT,2CAAW,CAAA;AACb,CAAC,EAHW,4BAA4B,KAA5B,4BAA4B,QAGvC"} \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-options.model.js b/src/app/shared/notifications/models/notification-options.model.js new file mode 100644 index 0000000000..b64a9d8e4e --- /dev/null +++ b/src/app/shared/notifications/models/notification-options.model.js @@ -0,0 +1,14 @@ +import { NotificationAnimationsType } from './notification-animations-type'; +var NotificationOptions = /** @class */ (function () { + function NotificationOptions(timeOut, clickToClose, animate) { + if (timeOut === void 0) { timeOut = 5000; } + if (clickToClose === void 0) { clickToClose = true; } + if (animate === void 0) { animate = NotificationAnimationsType.Scale; } + this.timeOut = timeOut; + this.clickToClose = clickToClose; + this.animate = animate; + } + return NotificationOptions; +}()); +export { NotificationOptions }; +//# sourceMappingURL=notification-options.model.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-options.model.js.map b/src/app/shared/notifications/models/notification-options.model.js.map new file mode 100644 index 0000000000..af73d27da7 --- /dev/null +++ b/src/app/shared/notifications/models/notification-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notification-options.model.js","sourceRoot":"","sources":["notification-options.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAQ5E;IAKE,6BAAY,OAAc,EACd,YAAmB,EACnB,OAA0C;QAF1C,wBAAA,EAAA,cAAc;QACd,6BAAA,EAAA,mBAAmB;QACnB,wBAAA,EAAA,UAAU,0BAA0B,CAAC,KAAK;QAEpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IACH,0BAAC;AAAD,CAAC,AAbD,IAaC"} \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-type.js b/src/app/shared/notifications/models/notification-type.js new file mode 100644 index 0000000000..b97c16199b --- /dev/null +++ b/src/app/shared/notifications/models/notification-type.js @@ -0,0 +1,8 @@ +export var NotificationType; +(function (NotificationType) { + NotificationType["Success"] = "alert-success"; + NotificationType["Error"] = "alert-danger"; + NotificationType["Info"] = "alert-info"; + NotificationType["Warning"] = "alert-warning"; +})(NotificationType || (NotificationType = {})); +//# sourceMappingURL=notification-type.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-type.js.map b/src/app/shared/notifications/models/notification-type.js.map new file mode 100644 index 0000000000..eb7d5cadba --- /dev/null +++ b/src/app/shared/notifications/models/notification-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notification-type.js","sourceRoot":"","sources":["notification-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,6CAAyB,CAAA;IACzB,0CAAsB,CAAA;IACtB,uCAAmB,CAAA;IACnB,6CAAyB,CAAA;AAC3B,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,QAK3B"} \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification.model.js b/src/app/shared/notifications/models/notification.model.js new file mode 100644 index 0000000000..635828ac28 --- /dev/null +++ b/src/app/shared/notifications/models/notification.model.js @@ -0,0 +1,15 @@ +import { NotificationOptions } from './notification-options.model'; +import { isEmpty } from '../../empty.util'; +var Notification = /** @class */ (function () { + function Notification(id, type, title, content, options, html) { + this.id = id; + this.type = type; + this.title = title; + this.content = content; + this.options = isEmpty(options) ? new NotificationOptions() : options; + this.html = html; + } + return Notification; +}()); +export { Notification }; +//# sourceMappingURL=notification.model.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification.model.js.map b/src/app/shared/notifications/models/notification.model.js.map new file mode 100644 index 0000000000..9efeb0a29a --- /dev/null +++ b/src/app/shared/notifications/models/notification.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notification.model.js","sourceRoot":"","sources":["notification.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEzF,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAY3C;IAQE,sBAAY,EAAU,EACV,IAAsB,EACtB,KAAmC,EACnC,OAAqC,EACrC,OAA6B,EAC7B,IAAc;QAExB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACtE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEH,mBAAC;AAAD,CAAC,AAvBD,IAuBC"} \ No newline at end of file diff --git a/src/app/shared/notifications/notification/notification.component.js b/src/app/shared/notifications/notification/notification.component.js new file mode 100644 index 0000000000..9193c9e8e5 --- /dev/null +++ b/src/app/shared/notifications/notification/notification.component.js @@ -0,0 +1,140 @@ +import * as tslib_1 from "tslib"; +import { of as observableOf, Observable } from 'rxjs'; +import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, NgZone, TemplateRef, ViewEncapsulation } from '@angular/core'; +import { trigger } from '@angular/animations'; +import { DomSanitizer } from '@angular/platform-browser'; +import { NotificationsService } from '../notifications.service'; +import { scaleEnter, scaleInState, scaleLeave, scaleOutState } from '../../animations/scale'; +import { rotateEnter, rotateInState, rotateLeave, rotateOutState } from '../../animations/rotate'; +import { fromBottomEnter, fromBottomInState, fromBottomLeave, fromBottomOutState } from '../../animations/fromBottom'; +import { fromRightEnter, fromRightInState, fromRightLeave, fromRightOutState } from '../../animations/fromRight'; +import { fromLeftEnter, fromLeftInState, fromLeftLeave, fromLeftOutState } from '../../animations/fromLeft'; +import { fromTopEnter, fromTopInState, fromTopLeave, fromTopOutState } from '../../animations/fromTop'; +import { fadeInEnter, fadeInState, fadeOutLeave, fadeOutState } from '../../animations/fade'; +import { NotificationAnimationsStatus } from '../models/notification-animations-type'; +import { isNotEmpty } from '../../empty.util'; +var NotificationComponent = /** @class */ (function () { + function NotificationComponent(notificationService, domSanitizer, cdr, zone) { + var _this = this; + this.notificationService = notificationService; + this.domSanitizer = domSanitizer; + this.cdr = cdr; + this.zone = zone; + this.notification = null; + this.showProgressBar = false; + this.titleIsTemplate = false; + this.contentIsTemplate = false; + this.htmlIsTemplate = false; + this.progressWidth = 0; + this.stopTime = false; + this.count = 0; + this.instance = function () { + _this.diff = (new Date().getTime() - _this.start) - (_this.count * _this.speed); + if (_this.count++ === _this.steps) { + _this.remove(); + // this.item.timeoutEnd!.emit(); + } + else if (!_this.stopTime) { + if (_this.showProgressBar) { + _this.progressWidth += 100 / _this.steps; + } + _this.timer = setTimeout(_this.instance, (_this.speed - _this.diff)); + } + _this.zone.run(function () { return _this.cdr.detectChanges(); }); + }; + } + NotificationComponent.prototype.ngOnInit = function () { + this.animate = this.notification.options.animate + NotificationAnimationsStatus.In; + if (this.notification.options.timeOut !== 0) { + this.startTimeOut(); + this.showProgressBar = true; + } + this.html = this.notification.html; + this.contentType(this.notification.title, 'title'); + this.contentType(this.notification.content, 'content'); + }; + NotificationComponent.prototype.startTimeOut = function () { + var _this = this; + this.steps = this.notification.options.timeOut / 10; + this.speed = this.notification.options.timeOut / this.steps; + this.start = new Date().getTime(); + this.zone.runOutsideAngular(function () { return _this.timer = setTimeout(_this.instance, _this.speed); }); + }; + NotificationComponent.prototype.ngOnDestroy = function () { + clearTimeout(this.timer); + }; + NotificationComponent.prototype.remove = function () { + var _this = this; + if (this.animate) { + this.setAnimationOut(); + setTimeout(function () { + _this.notificationService.remove(_this.notification); + }, 1000); + } + else { + this.notificationService.remove(this.notification); + } + }; + NotificationComponent.prototype.contentType = function (item, key) { + if (item instanceof TemplateRef) { + this[key] = item; + } + else if (key === 'title' || (key === 'content' && !this.html)) { + var value = null; + if (isNotEmpty(item)) { + if (typeof item === 'string') { + value = observableOf(item); + } + else if (item instanceof Observable) { + value = item; + } + else if (typeof item === 'object' && isNotEmpty(item.value)) { + // when notifications state is transferred from SSR to CSR, + // Observables Object loses the instance type and become simply object, + // so converts it again to Observable + value = observableOf(item.value); + } + } + this[key] = value; + } + else { + this[key] = this.domSanitizer.bypassSecurityTrustHtml(item); + } + this[key + 'IsTemplate'] = item instanceof TemplateRef; + }; + NotificationComponent.prototype.setAnimationOut = function () { + this.animate = this.notification.options.animate + NotificationAnimationsStatus.Out; + this.cdr.detectChanges(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], NotificationComponent.prototype, "notification", void 0); + NotificationComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-notification', + encapsulation: ViewEncapsulation.None, + animations: [ + trigger('enterLeave', [ + fadeInEnter, fadeInState, fadeOutLeave, fadeOutState, + fromBottomEnter, fromBottomInState, fromBottomLeave, fromBottomOutState, + fromRightEnter, fromRightInState, fromRightLeave, fromRightOutState, + fromLeftEnter, fromLeftInState, fromLeftLeave, fromLeftOutState, + fromTopEnter, fromTopInState, fromTopLeave, fromTopOutState, + rotateInState, rotateEnter, rotateOutState, rotateLeave, + scaleInState, scaleEnter, scaleOutState, scaleLeave + ]) + ], + templateUrl: './notification.component.html', + styleUrls: ['./notification.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush + }), + tslib_1.__metadata("design:paramtypes", [NotificationsService, + DomSanitizer, + ChangeDetectorRef, + NgZone]) + ], NotificationComponent); + return NotificationComponent; +}()); +export { NotificationComponent }; +//# sourceMappingURL=notification.component.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notification/notification.component.js.map b/src/app/shared/notifications/notification/notification.component.js.map new file mode 100644 index 0000000000..f57d39a052 --- /dev/null +++ b/src/app/shared/notifications/notification/notification.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notification.component.js","sourceRoot":"","sources":["notification.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications-board/notifications-board.component.js b/src/app/shared/notifications/notifications-board/notifications-board.component.js new file mode 100644 index 0000000000..0b454b775e --- /dev/null +++ b/src/app/shared/notifications/notifications-board/notifications-board.component.js @@ -0,0 +1,130 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewEncapsulation } from '@angular/core'; +import { select, Store } from '@ngrx/store'; +import { difference } from 'lodash'; +import { NotificationsService } from '../notifications.service'; +import { notificationsStateSelector } from '../selectors'; +var NotificationsBoardComponent = /** @class */ (function () { + function NotificationsBoardComponent(service, store, cdr) { + this.service = service; + this.store = store; + this.cdr = cdr; + this.notifications = []; + this.position = ['bottom', 'right']; + // Received values + this.maxStack = 8; + // Sent values + this.rtl = false; + this.animate = 'fromRight'; + } + Object.defineProperty(NotificationsBoardComponent.prototype, "options", { + set: function (opt) { + this.attachChanges(opt); + }, + enumerable: true, + configurable: true + }); + NotificationsBoardComponent.prototype.ngOnInit = function () { + var _this = this; + this.sub = this.store.pipe(select(notificationsStateSelector)) + .subscribe(function (state) { + if (state.length === 0) { + _this.notifications = []; + } + else if (state.length > _this.notifications.length) { + // Add + var newElem = difference(state, _this.notifications); + newElem.forEach(function (notification) { + _this.add(notification); + }); + } + else { + // Remove + var delElem = difference(_this.notifications, state); + delElem.forEach(function (notification) { + _this.notifications = _this.notifications.filter(function (item) { return item.id !== notification.id; }); + }); + } + _this.cdr.detectChanges(); + }); + }; + // Add the new notification to the notification array + NotificationsBoardComponent.prototype.add = function (item) { + var toBlock = this.block(item); + if (!toBlock) { + if (this.notifications.length >= this.maxStack) { + this.notifications.splice(this.notifications.length - 1, 1); + } + this.notifications.splice(0, 0, item); + } + else { + // Remove the notification from the store + // This notification was in the store, but not in this.notifications + // because it was a blocked duplicate + this.service.remove(item); + } + }; + NotificationsBoardComponent.prototype.block = function (item) { + var toCheck = item.html ? this.checkHtml : this.checkStandard; + this.notifications.forEach(function (notification) { + if (toCheck(notification, item)) { + return true; + } + }); + if (this.notifications.length > 0) { + this.notifications.forEach(function (notification) { + if (toCheck(notification, item)) { + return true; + } + }); + } + var comp; + if (this.notifications.length > 0) { + comp = this.notifications[0]; + } + else { + return false; + } + return toCheck(comp, item); + }; + NotificationsBoardComponent.prototype.checkStandard = function (checker, item) { + return checker.type === item.type && checker.title === item.title && checker.content === item.content; + }; + NotificationsBoardComponent.prototype.checkHtml = function (checker, item) { + return checker.html ? checker.type === item.type && checker.title === item.title && checker.content === item.content && checker.html === item.html : false; + }; + // Attach all the changes received in the options object + NotificationsBoardComponent.prototype.attachChanges = function (options) { + var _this = this; + Object.keys(options).forEach(function (a) { + if (_this.hasOwnProperty(a)) { + _this[a] = options[a]; + } + }); + }; + NotificationsBoardComponent.prototype.ngOnDestroy = function () { + if (this.sub) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object), + tslib_1.__metadata("design:paramtypes", [Object]) + ], NotificationsBoardComponent.prototype, "options", null); + NotificationsBoardComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-notifications-board', + encapsulation: ViewEncapsulation.None, + templateUrl: './notifications-board.component.html', + styleUrls: ['./notifications-board.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush + }), + tslib_1.__metadata("design:paramtypes", [NotificationsService, + Store, + ChangeDetectorRef]) + ], NotificationsBoardComponent); + return NotificationsBoardComponent; +}()); +export { NotificationsBoardComponent }; +//# sourceMappingURL=notifications-board.component.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications-board/notifications-board.component.js.map b/src/app/shared/notifications/notifications-board/notifications-board.component.js.map new file mode 100644 index 0000000000..c498853f0e --- /dev/null +++ b/src/app/shared/notifications/notifications-board/notifications-board.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notifications-board.component.js","sourceRoot":"","sources":["notifications-board.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.actions.js b/src/app/shared/notifications/notifications.actions.js new file mode 100644 index 0000000000..069b0e59f6 --- /dev/null +++ b/src/app/shared/notifications/notifications.actions.js @@ -0,0 +1,47 @@ +import { type } from '../../shared/ngrx/type'; +export var NotificationsActionTypes = { + NEW_NOTIFICATION: type('dspace/notifications/NEW_NOTIFICATION'), + REMOVE_ALL_NOTIFICATIONS: type('dspace/notifications/REMOVE_ALL_NOTIFICATIONS'), + REMOVE_NOTIFICATION: type('dspace/notifications/REMOVE_NOTIFICATION'), +}; +/* tslint:disable:max-classes-per-file */ +/** + * New notification. + * @class NewNotificationAction + * @implements {Action} + */ +var NewNotificationAction = /** @class */ (function () { + function NewNotificationAction(notification) { + this.type = NotificationsActionTypes.NEW_NOTIFICATION; + this.payload = notification; + } + return NewNotificationAction; +}()); +export { NewNotificationAction }; +/** + * Remove all notifications. + * @class RemoveAllNotificationsAction + * @implements {Action} + */ +var RemoveAllNotificationsAction = /** @class */ (function () { + function RemoveAllNotificationsAction(payload) { + this.payload = payload; + this.type = NotificationsActionTypes.REMOVE_ALL_NOTIFICATIONS; + } + return RemoveAllNotificationsAction; +}()); +export { RemoveAllNotificationsAction }; +/** + * Remove a notification. + * @class RemoveNotificationAction + * @implements {Action} + */ +var RemoveNotificationAction = /** @class */ (function () { + function RemoveNotificationAction(notificationId) { + this.type = NotificationsActionTypes.REMOVE_NOTIFICATION; + this.payload = notificationId; + } + return RemoveNotificationAction; +}()); +export { RemoveNotificationAction }; +//# sourceMappingURL=notifications.actions.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.actions.js.map b/src/app/shared/notifications/notifications.actions.js.map new file mode 100644 index 0000000000..0ee4745890 --- /dev/null +++ b/src/app/shared/notifications/notifications.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notifications.actions.js","sourceRoot":"","sources":["notifications.actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C,MAAM,CAAC,IAAM,wBAAwB,GAAG;IACtC,gBAAgB,EAAE,IAAI,CAAC,uCAAuC,CAAC;IAC/D,wBAAwB,EAAE,IAAI,CAAC,+CAA+C,CAAC;IAC/E,mBAAmB,EAAE,IAAI,CAAC,0CAA0C,CAAC;CACtE,CAAC;AAEF,yCAAyC;AAEzC;;;;GAIG;AACH;IAIE,+BAAY,YAA2B;QAHhC,SAAI,GAAW,wBAAwB,CAAC,gBAAgB,CAAC;QAI9D,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;IAC9B,CAAC;IACH,4BAAC;AAAD,CAAC,AAPD,IAOC;;AAED;;;;GAIG;AACH;IAGE,sCAAmB,OAAa;QAAb,YAAO,GAAP,OAAO,CAAM;QAFzB,SAAI,GAAW,wBAAwB,CAAC,wBAAwB,CAAC;IAEpC,CAAC;IACvC,mCAAC;AAAD,CAAC,AAJD,IAIC;;AAED;;;;GAIG;AACH;IAIE,kCAAY,cAAmB;QAHxB,SAAI,GAAW,wBAAwB,CAAC,mBAAmB,CAAC;QAIjE,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;IAChC,CAAC;IACH,+BAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.effects.js b/src/app/shared/notifications/notifications.effects.js new file mode 100644 index 0000000000..e3aff2f3fc --- /dev/null +++ b/src/app/shared/notifications/notifications.effects.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Actions } from '@ngrx/effects'; +import { Store } from '@ngrx/store'; +var NotificationsEffects = /** @class */ (function () { + /** + * Authenticate user. + * @method authenticate + */ + /* @Effect() + public timer: Observable = this.actions$ + .pipe(ofType(NotificationsActionTypes.NEW_NOTIFICATION_WITH_TIMER), + // .debounceTime((action: any) => action.payload.options.timeOut) + debounceTime(3000), + map(() => new RemoveNotificationAction()); + .switchMap((action: NewNotificationWithTimerAction) => Observable + .timer(30000) + .mapTo(() => new RemoveNotificationAction()) + ));*/ + /** + * @constructor + * @param {Actions} actions$ + * @param {Store} store + */ + function NotificationsEffects(actions$, store) { + this.actions$ = actions$; + this.store = store; + } + NotificationsEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions, + Store]) + ], NotificationsEffects); + return NotificationsEffects; +}()); +export { NotificationsEffects }; +//# sourceMappingURL=notifications.effects.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.effects.js.map b/src/app/shared/notifications/notifications.effects.js.map new file mode 100644 index 0000000000..545b890d3f --- /dev/null +++ b/src/app/shared/notifications/notifications.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notifications.effects.js","sourceRoot":"","sources":["notifications.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC;IAEE;;;OAGG;IACJ;;;;;;;;;YASQ;IAEP;;;;OAIG;IACH,8BAAoB,QAAiB,EACjB,KAAsB;QADtB,aAAQ,GAAR,QAAQ,CAAS;QACjB,UAAK,GAAL,KAAK,CAAiB;IAC1C,CAAC;IAxBU,oBAAoB;QADhC,UAAU,EAAE;iDAuBmB,OAAO;YACV,KAAK;OAvBrB,oBAAoB,CAyBhC;IAAD,2BAAC;CAAA,AAzBD,IAyBC;SAzBY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.reducers.js b/src/app/shared/notifications/notifications.reducers.js new file mode 100644 index 0000000000..267307aa05 --- /dev/null +++ b/src/app/shared/notifications/notifications.reducers.js @@ -0,0 +1,28 @@ +import { NotificationsActionTypes } from './notifications.actions'; +/** + * The initial state. + */ +var initialState = []; +/** + * The reducer function. + * @function reducer + * @param {State} state Current state + * @param {NotificationsActions} action Incoming action + */ +export function notificationsReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + case NotificationsActionTypes.NEW_NOTIFICATION: + return state.concat([action.payload]); + case NotificationsActionTypes.REMOVE_ALL_NOTIFICATIONS: + return []; + case NotificationsActionTypes.REMOVE_NOTIFICATION: + return removeNotification(state, action); + default: + return state; + } +} +var removeNotification = function (state, action) { + return state.filter(function (item) { return item.id !== action.payload; }); +}; +//# sourceMappingURL=notifications.reducers.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.reducers.js.map b/src/app/shared/notifications/notifications.reducers.js.map new file mode 100644 index 0000000000..9cd3e84a85 --- /dev/null +++ b/src/app/shared/notifications/notifications.reducers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notifications.reducers.js","sourceRoot":"","sources":["notifications.reducers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,wBAAwB,EAA4B,MAAM,yBAAyB,CAAC;AAUnH;;GAEG;AACH,IAAM,YAAY,GAAuB,EAAE,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,+BAA+B,KAAyB,EAAE,MAA4B;IAAvD,sBAAA,EAAA,oBAAyB;IAE5D,QAAQ,MAAM,CAAC,IAAI,EAAE;QACnB,KAAK,wBAAwB,CAAC,gBAAgB;YAC5C,OAAW,KAAK,SAAE,MAAM,CAAC,OAAO,GAAE;QAEpC,KAAK,wBAAwB,CAAC,wBAAwB;YACpD,OAAO,EAAE,CAAC;QAEZ,KAAK,wBAAwB,CAAC,mBAAmB;YAC/C,OAAO,kBAAkB,CAAC,KAAK,EAAE,MAAkC,CAAC,CAAC;QAEvE;YACE,OAAO,KAAK,CAAC;KAChB;AACH,CAAC;AAED,IAAM,kBAAkB,GAAG,UAAC,KAAyB,EAAE,MAAgC;IACrF,OAAO,KAAK,CAAC,MAAM,CAAC,UAAC,IAAmB,IAAK,OAAA,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,OAAO,EAA1B,CAA0B,CAAC,CAAC;AAC3E,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.service.js b/src/app/shared/notifications/notifications.service.js new file mode 100644 index 0000000000..efc078b27f --- /dev/null +++ b/src/app/shared/notifications/notifications.service.js @@ -0,0 +1,112 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { first } from 'rxjs/operators'; +import { Store } from '@ngrx/store'; +import { TranslateService } from '@ngx-translate/core'; +import { uniqueId } from 'lodash'; +import { Notification } from './models/notification.model'; +import { NotificationType } from './models/notification-type'; +import { NotificationOptions } from './models/notification-options.model'; +import { NewNotificationAction, RemoveAllNotificationsAction, RemoveNotificationAction } from './notifications.actions'; +import { GLOBAL_CONFIG } from '../../../config'; +var NotificationsService = /** @class */ (function () { + function NotificationsService(config, store, translate) { + this.config = config; + this.store = store; + this.translate = translate; + } + NotificationsService.prototype.add = function (notification) { + var notificationAction; + notificationAction = new NewNotificationAction(notification); + this.store.dispatch(notificationAction); + }; + NotificationsService.prototype.success = function (title, content, options, html) { + if (title === void 0) { title = observableOf(''); } + if (content === void 0) { content = observableOf(''); } + if (options === void 0) { options = {}; } + if (html === void 0) { html = false; } + var notificationOptions = tslib_1.__assign({}, this.getDefaultOptions(), options); + var notification = new Notification(uniqueId(), NotificationType.Success, title, content, notificationOptions, html); + this.add(notification); + return notification; + }; + NotificationsService.prototype.error = function (title, content, options, html) { + if (title === void 0) { title = observableOf(''); } + if (content === void 0) { content = observableOf(''); } + if (options === void 0) { options = {}; } + if (html === void 0) { html = false; } + var notificationOptions = tslib_1.__assign({}, this.getDefaultOptions(), options); + var notification = new Notification(uniqueId(), NotificationType.Error, title, content, notificationOptions, html); + this.add(notification); + return notification; + }; + NotificationsService.prototype.info = function (title, content, options, html) { + if (title === void 0) { title = observableOf(''); } + if (content === void 0) { content = observableOf(''); } + if (options === void 0) { options = {}; } + if (html === void 0) { html = false; } + var notificationOptions = tslib_1.__assign({}, this.getDefaultOptions(), options); + var notification = new Notification(uniqueId(), NotificationType.Info, title, content, notificationOptions, html); + this.add(notification); + return notification; + }; + NotificationsService.prototype.warning = function (title, content, options, html) { + if (title === void 0) { title = observableOf(''); } + if (content === void 0) { content = observableOf(''); } + if (options === void 0) { options = this.getDefaultOptions(); } + if (html === void 0) { html = false; } + var notificationOptions = tslib_1.__assign({}, this.getDefaultOptions(), options); + var notification = new Notification(uniqueId(), NotificationType.Warning, title, content, notificationOptions, html); + this.add(notification); + return notification; + }; + NotificationsService.prototype.notificationWithAnchor = function (notificationType, options, href, hrefTranslateLabel, messageTranslateLabel, interpolateParam) { + var _this = this; + this.translate.get(hrefTranslateLabel) + .pipe(first()) + .subscribe(function (hrefMsg) { + var anchor = "\n " + hrefMsg + "\n "; + var interpolateParams = Object.create({}); + interpolateParams[interpolateParam] = anchor; + _this.translate.get(messageTranslateLabel, interpolateParams) + .pipe(first()) + .subscribe(function (m) { + switch (notificationType) { + case NotificationType.Success: + _this.success(null, m, options, true); + break; + case NotificationType.Error: + _this.error(null, m, options, true); + break; + case NotificationType.Info: + _this.info(null, m, options, true); + break; + case NotificationType.Warning: + _this.warning(null, m, options, true); + break; + } + }); + }); + }; + NotificationsService.prototype.remove = function (notification) { + var actionRemove = new RemoveNotificationAction(notification.id); + this.store.dispatch(actionRemove); + }; + NotificationsService.prototype.removeAll = function () { + var actionRemoveAll = new RemoveAllNotificationsAction(); + this.store.dispatch(actionRemoveAll); + }; + NotificationsService.prototype.getDefaultOptions = function () { + return new NotificationOptions(this.config.notifications.timeOut, this.config.notifications.clickToClose, this.config.notifications.animate); + }; + NotificationsService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, Store, + TranslateService]) + ], NotificationsService); + return NotificationsService; +}()); +export { NotificationsService }; +//# sourceMappingURL=notifications.service.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.service.js.map b/src/app/shared/notifications/notifications.service.js.map new file mode 100644 index 0000000000..37ba115eaf --- /dev/null +++ b/src/app/shared/notifications/notifications.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notifications.service.js","sourceRoot":"","sources":["notifications.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/notifications/selectors.js b/src/app/shared/notifications/selectors.js new file mode 100644 index 0000000000..bc382e47ab --- /dev/null +++ b/src/app/shared/notifications/selectors.js @@ -0,0 +1,2 @@ +export var notificationsStateSelector = function (state) { return state.notifications; }; +//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/selectors.js.map b/src/app/shared/notifications/selectors.js.map new file mode 100644 index 0000000000..3da6e2ee79 --- /dev/null +++ b/src/app/shared/notifications/selectors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,IAAM,0BAA0B,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,aAAa,EAAnB,CAAmB,CAAC"} \ No newline at end of file diff --git a/src/app/shared/number-picker/number-picker.component.js b/src/app/shared/number-picker/number-picker.component.js new file mode 100644 index 0000000000..6bae14f5d0 --- /dev/null +++ b/src/app/shared/number-picker/number-picker.component.js @@ -0,0 +1,187 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output, } from '@angular/core'; +import { FormBuilder, NG_VALUE_ACCESSOR } from '@angular/forms'; +import { isEmpty } from '../empty.util'; +var NumberPickerComponent = /** @class */ (function () { + function NumberPickerComponent(fb, cd) { + this.fb = fb; + this.cd = cd; + this.selected = new EventEmitter(); + this.remove = new EventEmitter(); + this.blur = new EventEmitter(); + this.change = new EventEmitter(); + this.focus = new EventEmitter(); + } + NumberPickerComponent_1 = NumberPickerComponent; + NumberPickerComponent.prototype.ngOnInit = function () { + // this.startValue = this.value; + this.step = this.step || 1; + this.min = this.min || 0; + this.max = this.max || 100; + this.size = this.size || 1; + this.disabled = this.disabled || false; + this.invalid = this.invalid || false; + this.cd.detectChanges(); + }; + NumberPickerComponent.prototype.ngOnChanges = function (changes) { + if (this.value) { + if (changes.max) { + // When the user select a month with < # of days + this.value = this.value > this.max ? this.max : this.value; + } + } + else if (changes.value && changes.value.currentValue === null) { + // When the user delete the inserted value + this.value = null; + } + else if (changes.invalid) { + this.invalid = changes.invalid.currentValue; + } + }; + NumberPickerComponent.prototype.changeValue = function (reverse) { + if (reverse === void 0) { reverse = false; } + // First after init + if (isEmpty(this.value)) { + this.value = this.startValue; + } + else { + this.startValue = this.value; + var newValue = this.value; + if (reverse) { + newValue -= this.step; + } + else { + newValue += this.step; + } + if (newValue >= this.min && newValue <= this.max) { + this.value = newValue; + } + else { + if (newValue > this.max) { + this.value = this.min; + } + else { + this.value = this.max; + } + } + } + this.emitChange(); + }; + NumberPickerComponent.prototype.toggleDown = function () { + this.changeValue(true); + }; + NumberPickerComponent.prototype.toggleUp = function () { + this.changeValue(); + }; + NumberPickerComponent.prototype.update = function (event) { + try { + var i = Number.parseInt(event.target.value, 10); + if (i >= this.min && i <= this.max) { + this.value = i; + this.emitChange(); + } + else if (event.target.value === null || event.target.value === '') { + this.value = null; + this.emitChange(); + } + else { + this.value = undefined; + } + } + catch (e) { + this.value = undefined; + } + }; + NumberPickerComponent.prototype.onBlur = function (event) { + this.blur.emit(event); + }; + NumberPickerComponent.prototype.onFocus = function (event) { + if (this.value) { + this.startValue = this.value; + } + this.focus.emit(event); + }; + NumberPickerComponent.prototype.writeValue = function (value) { + this.startValue = value || this.min; + }; + NumberPickerComponent.prototype.registerOnChange = function (fn) { + return; + }; + NumberPickerComponent.prototype.registerOnTouched = function (fn) { + return; + }; + NumberPickerComponent.prototype.emitChange = function () { + this.change.emit({ field: this.name, value: this.value }); + }; + var NumberPickerComponent_1; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], NumberPickerComponent.prototype, "step", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], NumberPickerComponent.prototype, "min", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], NumberPickerComponent.prototype, "max", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], NumberPickerComponent.prototype, "size", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], NumberPickerComponent.prototype, "placeholder", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], NumberPickerComponent.prototype, "name", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Boolean) + ], NumberPickerComponent.prototype, "disabled", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Boolean) + ], NumberPickerComponent.prototype, "invalid", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], NumberPickerComponent.prototype, "value", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], NumberPickerComponent.prototype, "selected", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], NumberPickerComponent.prototype, "remove", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], NumberPickerComponent.prototype, "blur", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], NumberPickerComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], NumberPickerComponent.prototype, "focus", void 0); + NumberPickerComponent = NumberPickerComponent_1 = tslib_1.__decorate([ + Component({ + selector: 'ds-number-picker', + styleUrls: ['./number-picker.component.scss'], + templateUrl: './number-picker.component.html', + providers: [ + { provide: NG_VALUE_ACCESSOR, useExisting: NumberPickerComponent_1, multi: true } + ], + }), + tslib_1.__metadata("design:paramtypes", [FormBuilder, ChangeDetectorRef]) + ], NumberPickerComponent); + return NumberPickerComponent; +}()); +export { NumberPickerComponent }; +//# sourceMappingURL=number-picker.component.js.map \ No newline at end of file diff --git a/src/app/shared/number-picker/number-picker.component.js.map b/src/app/shared/number-picker/number-picker.component.js.map new file mode 100644 index 0000000000..83d70d501d --- /dev/null +++ b/src/app/shared/number-picker/number-picker.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"number-picker.component.js","sourceRoot":"","sources":["number-picker.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/object-collection/object-collection.component.js b/src/app/shared/object-collection/object-collection.component.js new file mode 100644 index 0000000000..38b006a70c --- /dev/null +++ b/src/app/shared/object-collection/object-collection.component.js @@ -0,0 +1,143 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { map } from 'rxjs/operators'; +import { RemoteData } from '../../core/data/remote-data'; +import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; +import { SortOptions } from '../../core/cache/models/sort-options.model'; +import { SetViewMode } from '../view-mode'; +import { hasValue, isNotEmpty } from '../empty.util'; +var ObjectCollectionComponent = /** @class */ (function () { + /** + * @param cdRef + * ChangeDetectorRef service provided by Angular. + * @param route + * Route is a singleton service provided by Angular. + * @param router + * Router is a singleton service provided by Angular. + */ + function ObjectCollectionComponent(cdRef, route, router) { + this.cdRef = cdRef; + this.route = route; + this.router = router; + this.hasBorder = false; + this.hideGear = false; + /** + * An event fired when the page is changed. + * Event's payload equals to the newly selected page. + */ + this.pageChange = new EventEmitter(); + /** + * An event fired when the page wsize is changed. + * Event's payload equals to the newly selected page size. + */ + this.pageSizeChange = new EventEmitter(); + /** + * An event fired when the sort direction is changed. + * Event's payload equals to the newly selected sort direction. + */ + this.sortDirectionChange = new EventEmitter(); + this.paginationChange = new EventEmitter(); + /** + * An event fired when the sort field is changed. + * Event's payload equals to the newly selected sort field. + */ + this.sortFieldChange = new EventEmitter(); + this.data = {}; + this.currentMode = SetViewMode.List; + this.viewModeEnum = SetViewMode; + } + ObjectCollectionComponent.prototype.ngOnChanges = function (changes) { + if (changes.objects && !changes.objects.isFirstChange()) { + // this.pageInfo = this.objects.pageInfo; + } + }; + ObjectCollectionComponent.prototype.ngOnInit = function () { + // this.pageInfo = this.objects.pageInfo; + var _this = this; + this.sub = this.route + .queryParams + .subscribe(function (params) { + if (isNotEmpty(params.view)) { + _this.currentMode = params.view; + } + }); + }; + ObjectCollectionComponent.prototype.getViewMode = function () { + var _this = this; + this.route.queryParams.pipe(map(function (params) { + if (isNotEmpty(params.view) && hasValue(params.view)) { + _this.currentMode = params.view; + } + })); + return this.currentMode; + }; + ObjectCollectionComponent.prototype.onPageChange = function (event) { + this.pageChange.emit(event); + }; + ObjectCollectionComponent.prototype.onPageSizeChange = function (event) { + this.pageSizeChange.emit(event); + }; + ObjectCollectionComponent.prototype.onSortDirectionChange = function (event) { + this.sortDirectionChange.emit(event); + }; + ObjectCollectionComponent.prototype.onSortFieldChange = function (event) { + this.sortFieldChange.emit(event); + }; + ObjectCollectionComponent.prototype.onPaginationChange = function (event) { + this.paginationChange.emit(event); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", RemoteData) + ], ObjectCollectionComponent.prototype, "objects", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", PaginationComponentOptions) + ], ObjectCollectionComponent.prototype, "config", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SortOptions) + ], ObjectCollectionComponent.prototype, "sortConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectCollectionComponent.prototype, "hasBorder", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectCollectionComponent.prototype, "hideGear", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectCollectionComponent.prototype, "pageChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectCollectionComponent.prototype, "pageSizeChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectCollectionComponent.prototype, "sortDirectionChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectCollectionComponent.prototype, "paginationChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectCollectionComponent.prototype, "sortFieldChange", void 0); + ObjectCollectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-viewable-collection', + styleUrls: ['./object-collection.component.scss'], + templateUrl: './object-collection.component.html', + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + ActivatedRoute, + Router]) + ], ObjectCollectionComponent); + return ObjectCollectionComponent; +}()); +export { ObjectCollectionComponent }; +//# sourceMappingURL=object-collection.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/object-collection.component.js.map b/src/app/shared/object-collection/object-collection.component.js.map new file mode 100644 index 0000000000..285390beef --- /dev/null +++ b/src/app/shared/object-collection/object-collection.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-collection.component.js","sourceRoot":"","sources":["object-collection.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js b/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js new file mode 100644 index 0000000000..3e007a9522 --- /dev/null +++ b/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { ClaimedTask } from '../../../core/tasks/models/claimed-task-object.model'; +import { SearchResult } from '../../../+search-page/search-result.model'; +import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; +import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; +/** + * Represents a search result object of a ClaimedTask object + */ +var ClaimedTaskMyDSpaceResult = /** @class */ (function (_super) { + tslib_1.__extends(ClaimedTaskMyDSpaceResult, _super); + function ClaimedTaskMyDSpaceResult() { + return _super !== null && _super.apply(this, arguments) || this; + } + ClaimedTaskMyDSpaceResult = tslib_1.__decorate([ + searchResultFor(ClaimedTask, MyDSpaceConfigurationValueType.Workflow) + ], ClaimedTaskMyDSpaceResult); + return ClaimedTaskMyDSpaceResult; +}(SearchResult)); +export { ClaimedTaskMyDSpaceResult }; +//# sourceMappingURL=claimed-task-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js.map new file mode 100644 index 0000000000..327fbedf88 --- /dev/null +++ b/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-task-my-dspace-result.model.js","sourceRoot":"","sources":["claimed-task-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAEvG;;GAEG;AAEH;IAA+C,qDAAyB;IAAxE;;IACA,CAAC;IADY,yBAAyB;QADrC,eAAe,CAAC,WAAW,EAAE,8BAA8B,CAAC,QAAQ,CAAC;OACzD,yBAAyB,CACrC;IAAD,gCAAC;CAAA,AADD,CAA+C,YAAY,GAC1D;SADY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/collection-search-result.model.js b/src/app/shared/object-collection/shared/collection-search-result.model.js new file mode 100644 index 0000000000..e162ede065 --- /dev/null +++ b/src/app/shared/object-collection/shared/collection-search-result.model.js @@ -0,0 +1,16 @@ +import * as tslib_1 from "tslib"; +import { SearchResult } from '../../../+search-page/search-result.model'; +import { Collection } from '../../../core/shared/collection.model'; +import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; +var CollectionSearchResult = /** @class */ (function (_super) { + tslib_1.__extends(CollectionSearchResult, _super); + function CollectionSearchResult() { + return _super !== null && _super.apply(this, arguments) || this; + } + CollectionSearchResult = tslib_1.__decorate([ + searchResultFor(Collection) + ], CollectionSearchResult); + return CollectionSearchResult; +}(SearchResult)); +export { CollectionSearchResult }; +//# sourceMappingURL=collection-search-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/collection-search-result.model.js.map b/src/app/shared/object-collection/shared/collection-search-result.model.js.map new file mode 100644 index 0000000000..f9546df8a5 --- /dev/null +++ b/src/app/shared/object-collection/shared/collection-search-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-search-result.model.js","sourceRoot":"","sources":["collection-search-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAGvG;IAA4C,kDAAwB;IAApE;;IACA,CAAC;IADY,sBAAsB;QADlC,eAAe,CAAC,UAAU,CAAC;OACf,sBAAsB,CAClC;IAAD,6BAAC;CAAA,AADD,CAA4C,YAAY,GACvD;SADY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/community-search-result.model.js b/src/app/shared/object-collection/shared/community-search-result.model.js new file mode 100644 index 0000000000..43ddc2c3e5 --- /dev/null +++ b/src/app/shared/object-collection/shared/community-search-result.model.js @@ -0,0 +1,16 @@ +import * as tslib_1 from "tslib"; +import { Community } from '../../../core/shared/community.model'; +import { SearchResult } from '../../../+search-page/search-result.model'; +import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; +var CommunitySearchResult = /** @class */ (function (_super) { + tslib_1.__extends(CommunitySearchResult, _super); + function CommunitySearchResult() { + return _super !== null && _super.apply(this, arguments) || this; + } + CommunitySearchResult = tslib_1.__decorate([ + searchResultFor(Community) + ], CommunitySearchResult); + return CommunitySearchResult; +}(SearchResult)); +export { CommunitySearchResult }; +//# sourceMappingURL=community-search-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/community-search-result.model.js.map b/src/app/shared/object-collection/shared/community-search-result.model.js.map new file mode 100644 index 0000000000..3fa6ef4651 --- /dev/null +++ b/src/app/shared/object-collection/shared/community-search-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-search-result.model.js","sourceRoot":"","sources":["community-search-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAGvG;IAA2C,iDAAuB;IAAlE;;IACA,CAAC;IADY,qBAAqB;QADjC,eAAe,CAAC,SAAS,CAAC;OACd,qBAAqB,CACjC;IAAD,4BAAC;CAAA,AADD,CAA2C,YAAY,GACtD;SADY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/dso-element-decorator.js b/src/app/shared/object-collection/shared/dso-element-decorator.js new file mode 100644 index 0000000000..ac08138257 --- /dev/null +++ b/src/app/shared/object-collection/shared/dso-element-decorator.js @@ -0,0 +1,16 @@ +var dsoElementMap = new Map(); +export function renderElementsFor(listable, viewMode) { + return function decorator(objectElement) { + if (!objectElement) { + return; + } + if (!dsoElementMap.get(viewMode)) { + dsoElementMap.set(viewMode, new Map()); + } + dsoElementMap.get(viewMode).set(listable, objectElement); + }; +} +export function rendersDSOType(listable, viewMode) { + return dsoElementMap.get(viewMode).get(listable); +} +//# sourceMappingURL=dso-element-decorator.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/dso-element-decorator.js.map b/src/app/shared/object-collection/shared/dso-element-decorator.js.map new file mode 100644 index 0000000000..1e89bd37e4 --- /dev/null +++ b/src/app/shared/object-collection/shared/dso-element-decorator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dso-element-decorator.js","sourceRoot":"","sources":["dso-element-decorator.ts"],"names":[],"mappings":"AAIA,IAAM,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;AAChC,MAAM,4BAA4B,QAA4C,EAAE,QAAqB;IACnG,OAAO,mBAAmB,aAAkB;QAC1C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YAChC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;SACxC;QACD,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC3D,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,yBAAyB,QAA4C,EAAE,QAAqB;IAChG,OAAO,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACnD,CAAC"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/item-my-dspace-result.model.js b/src/app/shared/object-collection/shared/item-my-dspace-result.model.js new file mode 100644 index 0000000000..7efb687948 --- /dev/null +++ b/src/app/shared/object-collection/shared/item-my-dspace-result.model.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { Item } from '../../../core/shared/item.model'; +import { SearchResult } from '../../../+search-page/search-result.model'; +import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; +import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; +/** + * Represents a search result object of a Item object + */ +var ItemMyDSpaceResult = /** @class */ (function (_super) { + tslib_1.__extends(ItemMyDSpaceResult, _super); + function ItemMyDSpaceResult() { + return _super !== null && _super.apply(this, arguments) || this; + } + ItemMyDSpaceResult = tslib_1.__decorate([ + searchResultFor(Item, MyDSpaceConfigurationValueType.Workspace) + ], ItemMyDSpaceResult); + return ItemMyDSpaceResult; +}(SearchResult)); +export { ItemMyDSpaceResult }; +//# sourceMappingURL=item-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/item-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/item-my-dspace-result.model.js.map new file mode 100644 index 0000000000..6a4377a465 --- /dev/null +++ b/src/app/shared/object-collection/shared/item-my-dspace-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-my-dspace-result.model.js","sourceRoot":"","sources":["item-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AACvG,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAE7G;;GAEG;AAEH;IAAwC,8CAAkB;IAA1D;;IACA,CAAC;IADY,kBAAkB;QAD9B,eAAe,CAAC,IAAI,EAAE,8BAA8B,CAAC,SAAS,CAAC;OACnD,kBAAkB,CAC9B;IAAD,yBAAC;CAAA,AADD,CAAwC,YAAY,GACnD;SADY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/item-search-result.model.js b/src/app/shared/object-collection/shared/item-search-result.model.js new file mode 100644 index 0000000000..6c4d44ec90 --- /dev/null +++ b/src/app/shared/object-collection/shared/item-search-result.model.js @@ -0,0 +1,16 @@ +import * as tslib_1 from "tslib"; +import { SearchResult } from '../../../+search-page/search-result.model'; +import { Item } from '../../../core/shared/item.model'; +import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; +var ItemSearchResult = /** @class */ (function (_super) { + tslib_1.__extends(ItemSearchResult, _super); + function ItemSearchResult() { + return _super !== null && _super.apply(this, arguments) || this; + } + ItemSearchResult = tslib_1.__decorate([ + searchResultFor(Item) + ], ItemSearchResult); + return ItemSearchResult; +}(SearchResult)); +export { ItemSearchResult }; +//# sourceMappingURL=item-search-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/item-search-result.model.js.map b/src/app/shared/object-collection/shared/item-search-result.model.js.map new file mode 100644 index 0000000000..ab9d23a8b6 --- /dev/null +++ b/src/app/shared/object-collection/shared/item-search-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-search-result.model.js","sourceRoot":"","sources":["item-search-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAGvG;IAAsC,4CAAkB;IAAxD;;IACA,CAAC;IADY,gBAAgB;QAD5B,eAAe,CAAC,IAAI,CAAC;OACT,gBAAgB,CAC5B;IAAD,uBAAC;CAAA,AADD,CAAsC,YAAY,GACjD;SADY,gBAAgB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/listable-object.model.js b/src/app/shared/object-collection/shared/listable-object.model.js new file mode 100644 index 0000000000..bbcefdafca --- /dev/null +++ b/src/app/shared/object-collection/shared/listable-object.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=listable-object.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/listable-object.model.js.map b/src/app/shared/object-collection/shared/listable-object.model.js.map new file mode 100644 index 0000000000..d1df240cfa --- /dev/null +++ b/src/app/shared/object-collection/shared/listable-object.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"listable-object.model.js","sourceRoot":"","sources":["listable-object.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js new file mode 100644 index 0000000000..92c4dfed44 --- /dev/null +++ b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js @@ -0,0 +1,9 @@ +export var MyDspaceItemStatusType; +(function (MyDspaceItemStatusType) { + MyDspaceItemStatusType["WORKFLOW"] = "mydspace.status.workflow"; + MyDspaceItemStatusType["VALIDATION"] = "mydspace.status.validation"; + MyDspaceItemStatusType["WAITING_CONTROLLER"] = "mydspace.status.waiting-for-controller"; + MyDspaceItemStatusType["WORKSPACE"] = "mydspace.status.workspace"; + MyDspaceItemStatusType["ARCHIVED"] = "mydspace.status.archived"; +})(MyDspaceItemStatusType || (MyDspaceItemStatusType = {})); +//# sourceMappingURL=my-dspace-item-status-type.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js.map b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js.map new file mode 100644 index 0000000000..5546fe9e4c --- /dev/null +++ b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-item-status-type.js","sourceRoot":"","sources":["my-dspace-item-status-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAChC,+DAAqC,CAAA;IACrC,mEAAyC,CAAA;IACzC,uFAA6D,CAAA;IAC7D,iEAAuC,CAAA;IACvC,+DAAqC,CAAA;AACvC,CAAC,EANW,sBAAsB,KAAtB,sBAAsB,QAMjC"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js new file mode 100644 index 0000000000..f2c2021c31 --- /dev/null +++ b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js @@ -0,0 +1,48 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { MyDspaceItemStatusType } from './my-dspace-item-status-type'; +/** + * This component represents a badge with mydspace item status + */ +var MyDSpaceItemStatusComponent = /** @class */ (function () { + function MyDSpaceItemStatusComponent() { + } + /** + * Initialize badge content and class + */ + MyDSpaceItemStatusComponent.prototype.ngOnInit = function () { + this.badgeContent = this.status; + this.badgeClass = 'text-light badge '; + switch (this.status) { + case MyDspaceItemStatusType.VALIDATION: + this.badgeClass += 'badge-warning'; + break; + case MyDspaceItemStatusType.WAITING_CONTROLLER: + this.badgeClass += 'badge-info'; + break; + case MyDspaceItemStatusType.WORKSPACE: + this.badgeClass += 'badge-primary'; + break; + case MyDspaceItemStatusType.ARCHIVED: + this.badgeClass += 'badge-success'; + break; + case MyDspaceItemStatusType.WORKFLOW: + this.badgeClass += 'badge-info'; + break; + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], MyDSpaceItemStatusComponent.prototype, "status", void 0); + MyDSpaceItemStatusComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-mydspace-item-status', + styleUrls: ['./my-dspace-item-status.component.scss'], + templateUrl: './my-dspace-item-status.component.html' + }) + ], MyDSpaceItemStatusComponent); + return MyDSpaceItemStatusComponent; +}()); +export { MyDSpaceItemStatusComponent }; +//# sourceMappingURL=my-dspace-item-status.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js.map b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js.map new file mode 100644 index 0000000000..d0bcd7743d --- /dev/null +++ b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-item-status.component.js","sourceRoot":"","sources":["my-dspace-item-status.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE;;GAEG;AAMH;IAAA;IA0CA,CAAC;IAzBC;;OAEG;IACH,8CAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,mBAAmB,CAAC;QACtC,QAAQ,IAAI,CAAC,MAAM,EAAE;YACnB,KAAK,sBAAsB,CAAC,UAAU;gBACpC,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC;gBACnC,MAAM;YACR,KAAK,sBAAsB,CAAC,kBAAkB;gBAC5C,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC;gBAChC,MAAM;YACR,KAAK,sBAAsB,CAAC,SAAS;gBACnC,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC;gBACnC,MAAM;YACR,KAAK,sBAAsB,CAAC,QAAQ;gBAClC,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC;gBACnC,MAAM;YACR,KAAK,sBAAsB,CAAC,QAAQ;gBAClC,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC;gBAChC,MAAM;SACT;IACH,CAAC;IAnCQ;QAAR,KAAK,EAAE;;+DAAgC;IAL7B,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;SACtD,CAAC;OACW,2BAA2B,CA0CvC;IAAD,kCAAC;CAAA,AA1CD,IA0CC;SA1CY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js b/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js new file mode 100644 index 0000000000..5f7a8e0f79 --- /dev/null +++ b/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js @@ -0,0 +1,31 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { filter, find, flatMap, map } from 'rxjs/operators'; +import { isNotEmpty, isNotUndefined } from '../../../empty.util'; +/** + * This component represents a badge with submitter information. + */ +var ItemSubmitterComponent = /** @class */ (function () { + function ItemSubmitterComponent() { + } + /** + * Initialize submitter object + */ + ItemSubmitterComponent.prototype.ngOnInit = function () { + this.submitter$ = this.object.workflowitem.pipe(filter(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); }), flatMap(function (rd) { return rd.payload.submitter; }), find(function (rd) { return rd.hasSucceeded && isNotEmpty(rd.payload); }), map(function (rd) { return rd.payload; })); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ItemSubmitterComponent.prototype, "object", void 0); + ItemSubmitterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-submitter', + styleUrls: ['./item-submitter.component.scss'], + templateUrl: './item-submitter.component.html' + }) + ], ItemSubmitterComponent); + return ItemSubmitterComponent; +}()); +export { ItemSubmitterComponent }; +//# sourceMappingURL=item-submitter.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js.map b/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js.map new file mode 100644 index 0000000000..db1c0a3d47 --- /dev/null +++ b/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-submitter.component.js","sourceRoot":"","sources":["item-submitter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAI5D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGjE;;GAEG;AAMH;IAAA;IAsBA,CAAC;IAVC;;OAEG;IACH,yCAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAI,IAAI,CAAC,MAAM,CAAC,YAAqD,CAAC,IAAI,CACvF,MAAM,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,EACzF,OAAO,CAAC,UAAC,EAA4B,IAAK,OAAA,EAAE,CAAC,OAAO,CAAC,SAA4C,EAAvD,CAAuD,CAAC,EAClG,IAAI,CAAC,UAAC,EAAuB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,EAAzC,CAAyC,CAAC,EAC5E,GAAG,CAAC,UAAC,EAAuB,IAAK,OAAA,EAAE,CAAC,OAAO,EAAV,CAAU,CAAC,CAAC,CAAC;IAClD,CAAC;IAhBQ;QAAR,KAAK,EAAE;;0DAAa;IALV,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;OACW,sBAAsB,CAsBlC;IAAD,6BAAC;CAAA,AAtBD,IAsBC;SAtBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js b/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js new file mode 100644 index 0000000000..f8c89f8e2d --- /dev/null +++ b/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js @@ -0,0 +1,19 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +var AbstractListableElementComponent = /** @class */ (function () { + function AbstractListableElementComponent(listableObject) { + this.listableObject = listableObject; + this.object = listableObject; + } + AbstractListableElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-abstract-object-element', + template: "", + }), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object]) + ], AbstractListableElementComponent); + return AbstractListableElementComponent; +}()); +export { AbstractListableElementComponent }; +//# sourceMappingURL=abstract-listable-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js.map b/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js.map new file mode 100644 index 0000000000..0b19bed2eb --- /dev/null +++ b/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"abstract-listable-element.component.js","sourceRoot":"","sources":["abstract-listable-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAOlD;IAEE,0CAA2D,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QACvF,IAAI,CAAC,MAAM,GAAG,cAAmB,CAAC;IACpC,CAAC;IAJU,gCAAgC;QAJ5C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,QAAQ,EAAE,EAAE;SACb,CAAC;QAGoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAFxC,gCAAgC,CAK5C;IAAD,uCAAC;CAAA,AALD,IAKC;SALY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js b/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js new file mode 100644 index 0000000000..566deece9c --- /dev/null +++ b/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { PoolTask } from '../../../core/tasks/models/pool-task-object.model'; +import { SearchResult } from '../../../+search-page/search-result.model'; +import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; +import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; +/** + * Represents a search result object of a PoolTask object + */ +var PoolTaskMyDSpaceResult = /** @class */ (function (_super) { + tslib_1.__extends(PoolTaskMyDSpaceResult, _super); + function PoolTaskMyDSpaceResult() { + return _super !== null && _super.apply(this, arguments) || this; + } + PoolTaskMyDSpaceResult = tslib_1.__decorate([ + searchResultFor(PoolTask, MyDSpaceConfigurationValueType.Workflow) + ], PoolTaskMyDSpaceResult); + return PoolTaskMyDSpaceResult; +}(SearchResult)); +export { PoolTaskMyDSpaceResult }; +//# sourceMappingURL=pool-task-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js.map new file mode 100644 index 0000000000..772d083f47 --- /dev/null +++ b/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pool-task-my-dspace-result.model.js","sourceRoot":"","sources":["pool-task-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAEvG;;GAEG;AAEH;IAA4C,kDAAsB;IAAlE;;IACA,CAAC;IADY,sBAAsB;QADlC,eAAe,CAAC,QAAQ,EAAE,8BAA8B,CAAC,QAAQ,CAAC;OACtD,sBAAsB,CAClC;IAAD,6BAAC;CAAA,AADD,CAA4C,YAAY,GACvD;SADY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js b/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js new file mode 100644 index 0000000000..9821fe54d8 --- /dev/null +++ b/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { Workflowitem } from '../../../core/submission/models/workflowitem.model'; +import { SearchResult } from '../../../+search-page/search-result.model'; +import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; +import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; +/** + * Represents a search result object of a Workflowitem object + */ +var WorkflowitemMyDSpaceResult = /** @class */ (function (_super) { + tslib_1.__extends(WorkflowitemMyDSpaceResult, _super); + function WorkflowitemMyDSpaceResult() { + return _super !== null && _super.apply(this, arguments) || this; + } + WorkflowitemMyDSpaceResult = tslib_1.__decorate([ + searchResultFor(Workflowitem, MyDSpaceConfigurationValueType.Workspace) + ], WorkflowitemMyDSpaceResult); + return WorkflowitemMyDSpaceResult; +}(SearchResult)); +export { WorkflowitemMyDSpaceResult }; +//# sourceMappingURL=workflowitem-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js.map new file mode 100644 index 0000000000..8408bec1b3 --- /dev/null +++ b/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workflowitem-my-dspace-result.model.js","sourceRoot":"","sources":["workflowitem-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oDAAoD,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAEvG;;GAEG;AAEH;IAAgD,sDAA0B;IAA1E;;IACA,CAAC;IADY,0BAA0B;QADtC,eAAe,CAAC,YAAY,EAAE,8BAA8B,CAAC,SAAS,CAAC;OAC3D,0BAA0B,CACtC;IAAD,iCAAC;CAAA,AADD,CAAgD,YAAY,GAC3D;SADY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js b/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js new file mode 100644 index 0000000000..356ec01517 --- /dev/null +++ b/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { Workspaceitem } from '../../../core/submission/models/workspaceitem.model'; +import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; +import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; +import { SearchResult } from '../../../+search-page/search-result.model'; +/** + * Represents a search result object of a Workspaceitem object + */ +var WorkspaceitemMyDSpaceResult = /** @class */ (function (_super) { + tslib_1.__extends(WorkspaceitemMyDSpaceResult, _super); + function WorkspaceitemMyDSpaceResult() { + return _super !== null && _super.apply(this, arguments) || this; + } + WorkspaceitemMyDSpaceResult = tslib_1.__decorate([ + searchResultFor(Workspaceitem, MyDSpaceConfigurationValueType.Workspace) + ], WorkspaceitemMyDSpaceResult); + return WorkspaceitemMyDSpaceResult; +}(SearchResult)); +export { WorkspaceitemMyDSpaceResult }; +//# sourceMappingURL=workspaceitem-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js.map new file mode 100644 index 0000000000..bcb9caad6f --- /dev/null +++ b/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-my-dspace-result.model.js","sourceRoot":"","sources":["workspaceitem-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpF,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAEzE;;GAEG;AAEH;IAAiD,uDAA2B;IAA5E;;IACA,CAAC;IADY,2BAA2B;QADvC,eAAe,CAAC,aAAa,EAAE,8BAA8B,CAAC,SAAS,CAAC;OAC5D,2BAA2B,CACvC;IAAD,kCAAC;CAAA,AADD,CAAiD,YAAY,GAC5D;SADY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js new file mode 100644 index 0000000000..1711e664be --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js @@ -0,0 +1,58 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { find } from 'rxjs/operators'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { isNotUndefined } from '../../../empty.util'; +import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model'; +import { ClaimedTaskMyDSpaceResult } from '../../../object-collection/shared/claimed-task-my-dspace-result.model'; +import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders claimed task object for the mydspace result in the detail view. + */ +var ClaimedMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ClaimedMyDSpaceResultDetailElementComponent, _super); + function ClaimedMyDSpaceResultDetailElementComponent(listable) { + var _this = _super.call(this, listable) || this; + _this.listable = listable; + /** + * A boolean representing if to show submitter information + */ + _this.showSubmitter = true; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.VALIDATION; + return _this; + } + /** + * Initialize all instance variables + */ + ClaimedMyDSpaceResultDetailElementComponent.prototype.ngOnInit = function () { + this.initWorkflowItem(this.dso.workflowitem); + }; + /** + * Retrieve workflowitem from result object + */ + ClaimedMyDSpaceResultDetailElementComponent.prototype.initWorkflowItem = function (wfi$) { + var _this = this; + wfi$.pipe(find(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); })).subscribe(function (rd) { + _this.workflowitem = rd.payload; + }); + }; + ClaimedMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-claimed-my-dspace-result-detail-element', + styleUrls: ['../my-dspace-result-detail-element.component.scss'], + templateUrl: './claimed-my-dspace-result-detail-element.component.html' + }), + renderElementsFor(ClaimedTaskMyDSpaceResult, SetViewMode.Detail), + renderElementsFor(ClaimedTask, SetViewMode.Detail), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object]) + ], ClaimedMyDSpaceResultDetailElementComponent); + return ClaimedMyDSpaceResultDetailElementComponent; +}(MyDSpaceResultDetailElementComponent)); +export { ClaimedMyDSpaceResultDetailElementComponent }; +//# sourceMappingURL=claimed-my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js.map new file mode 100644 index 0000000000..959aee8281 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["claimed-my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAG5F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAE,WAAW,EAAE,MAAM,yDAAyD,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uEAAuE,CAAC;AAClH,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAAiE,uEAA4E;IAiB3I,qDAAoD,QAAwB;QAA5E,YACE,kBAAM,QAAQ,CAAC,SAChB;QAFmD,cAAQ,GAAR,QAAQ,CAAgB;QAf5E;;WAEG;QACI,mBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,UAAU,CAAC;;IASlD,CAAC;IAED;;OAEG;IACH,8DAAQ,GAAR;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAoD,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,sEAAgB,GAAhB,UAAiB,IAA0C;QAA3D,iBAMC;QALC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,CACxF,CAAC,SAAS,CAAC,UAAC,EAA4B;YACvC,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IArCU,2CAA2C;QARvD,SAAS,CAAC;YACT,QAAQ,EAAE,4CAA4C;YACtD,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,WAAW,EAAE,0DAA0D;SACxE,CAAC;QAED,iBAAiB,CAAC,yBAAyB,EAAE,WAAW,CAAC,MAAM,CAAC;QAChE,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC;QAkBpC,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAjBjC,2CAA2C,CAuCvD;IAAD,kDAAC;CAAA,AAvCD,CAAiE,oCAAoC,GAuCpG;SAvCY,2CAA2C"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js new file mode 100644 index 0000000000..6e433a98cc --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js @@ -0,0 +1,54 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Metadata } from '../../../../../core/shared/metadata.utils'; +import { MyDSpaceResult } from '../../../../../+my-dspace-page/my-dspace-result.model'; +import { Item } from '../../../../../core/shared/item.model'; +/** + * This component show values for the given item metadata + */ +var ItemDetailPreviewFieldComponent = /** @class */ (function () { + function ItemDetailPreviewFieldComponent() { + } + /** + * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string[]} the matching string values or an empty array. + */ + ItemDetailPreviewFieldComponent.prototype.allMetadataValues = function (keyOrKeys) { + return Metadata.allValues([this.object.hitHighlights, this.item.metadata], keyOrKeys); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemDetailPreviewFieldComponent.prototype, "item", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", MyDSpaceResult) + ], ItemDetailPreviewFieldComponent.prototype, "object", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ItemDetailPreviewFieldComponent.prototype, "label", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ItemDetailPreviewFieldComponent.prototype, "metadata", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ItemDetailPreviewFieldComponent.prototype, "placeholder", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ItemDetailPreviewFieldComponent.prototype, "separator", void 0); + ItemDetailPreviewFieldComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-detail-preview-field', + templateUrl: './item-detail-preview-field.component.html' + }) + ], ItemDetailPreviewFieldComponent); + return ItemDetailPreviewFieldComponent; +}()); +export { ItemDetailPreviewFieldComponent }; +//# sourceMappingURL=item-detail-preview-field.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js.map new file mode 100644 index 0000000000..c395081f8b --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-detail-preview-field.component.js","sourceRoot":"","sources":["item-detail-preview-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,uDAAuD,CAAC;AACvF,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAE7D;;GAEG;AAKH;IAAA;IAyCA,CAAC;IATC;;;;;OAKG;IACH,2DAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAnCQ;QAAR,KAAK,EAAE;0CAAO,IAAI;iEAAC;IAKX;QAAR,KAAK,EAAE;0CAAS,cAAc;mEAAM;IAK5B;QAAR,KAAK,EAAE;;kEAAe;IAKd;QAAR,KAAK,EAAE;;qEAA6B;IAK5B;QAAR,KAAK,EAAE;;wEAAqB;IAKpB;QAAR,KAAK,EAAE;;sEAAmB;IA9BhB,+BAA+B;QAJ3C,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,WAAW,EAAE,4CAA4C;SAC1D,CAAC;OACW,+BAA+B,CAyC3C;IAAD,sCAAC;CAAA,AAzCD,IAyCC;SAzCY,+BAA+B"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js new file mode 100644 index 0000000000..fff5288287 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js @@ -0,0 +1,55 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../core/shared/item.model'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { fadeInOut } from '../../../animations/fade'; +import { MyDSpaceResult } from '../../../../+my-dspace-page/my-dspace-result.model'; +/** + * This component show metadata for the given item object in the detail view. + */ +var ItemDetailPreviewComponent = /** @class */ (function () { + function ItemDetailPreviewComponent() { + /** + * A boolean representing if to show submitter information + */ + this.showSubmitter = false; + /** + * The value's separator + */ + this.separator = ', '; + } + /** + * Initialize all instance variables + */ + ItemDetailPreviewComponent.prototype.ngOnInit = function () { + this.thumbnail$ = this.item.getThumbnail(); + this.bitstreams$ = this.item.getFiles(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemDetailPreviewComponent.prototype, "item", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", MyDSpaceResult) + ], ItemDetailPreviewComponent.prototype, "object", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ItemDetailPreviewComponent.prototype, "status", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ItemDetailPreviewComponent.prototype, "showSubmitter", void 0); + ItemDetailPreviewComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-detail-preview', + styleUrls: ['./item-detail-preview.component.scss'], + templateUrl: './item-detail-preview.component.html', + animations: [fadeInOut] + }) + ], ItemDetailPreviewComponent); + return ItemDetailPreviewComponent; +}()); +export { ItemDetailPreviewComponent }; +//# sourceMappingURL=item-detail-preview.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js.map new file mode 100644 index 0000000000..927239dd37 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-detail-preview.component.js","sourceRoot":"","sources":["item-detail-preview.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAIjD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAEpF;;GAEG;AAOH;IANA;QAuBE;;WAEG;QACM,kBAAa,GAAG,KAAK,CAAC;QAO/B;;WAEG;QACI,cAAS,GAAG,IAAI,CAAC;IAe1B,CAAC;IARC;;OAEG;IACH,6CAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC1C,CAAC;IAtCQ;QAAR,KAAK,EAAE;0CAAO,IAAI;4DAAC;IAKX;QAAR,KAAK,EAAE;0CAAS,cAAc;8DAAM;IAK5B;QAAR,KAAK,EAAE;;8DAAgC;IAK/B;QAAR,KAAK,EAAE;;qEAAuB;IApBpB,0BAA0B;QANtC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;YACnD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;OACW,0BAA0B,CA6CtC;IAAD,iCAAC;CAAA,AA7CD,IA6CC;SA7CY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js new file mode 100644 index 0000000000..0a918b1fc5 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { ItemMyDSpaceResult } from '../../../object-collection/shared/item-my-dspace-result.model'; +import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders item object for the mydspace result in the detail view. + */ +var ItemMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemMyDSpaceResultDetailElementComponent, _super); + function ItemMyDSpaceResultDetailElementComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.ARCHIVED; + return _this; + } + ItemMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-workspaceitem-my-dspace-result-detail-element', + styleUrls: ['../my-dspace-result-detail-element.component.scss', './item-my-dspace-result-detail-element.component.scss'], + templateUrl: './item-my-dspace-result-detail-element.component.html' + }), + renderElementsFor(ItemMyDSpaceResult, SetViewMode.Detail) + ], ItemMyDSpaceResultDetailElementComponent); + return ItemMyDSpaceResultDetailElementComponent; +}(MyDSpaceResultDetailElementComponent)); +export { ItemMyDSpaceResultDetailElementComponent }; +//# sourceMappingURL=item-my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js.map new file mode 100644 index 0000000000..f34dce05f6 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["item-my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAG5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,+DAA+D,CAAC;AACnG,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAQH;IAA8D,oEAA8D;IAP5H;QAAA,qEAcC;QALC;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IAElD,CAAC;IAPY,wCAAwC;QAPpD,SAAS,CAAC;YACT,QAAQ,EAAE,kDAAkD;YAC5D,SAAS,EAAE,CAAC,mDAAmD,EAAE,uDAAuD,CAAC;YACzH,WAAW,EAAE,uDAAuD;SACrE,CAAC;QAED,iBAAiB,CAAC,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC;OAC7C,wCAAwC,CAOpD;IAAD,+CAAC;CAAA,AAPD,CAA8D,oCAAoC,GAOjG;SAPY,wCAAwC"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js new file mode 100644 index 0000000000..30aee93f3f --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js @@ -0,0 +1,47 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { Metadata } from '../../../core/shared/metadata.utils'; +var MyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(MyDSpaceResultDetailElementComponent, _super); + /** + * Initialize instance variables + * + * @param {ListableObject} detailable + */ + function MyDSpaceResultDetailElementComponent(detailable) { + var _this = _super.call(this, detailable) || this; + _this.detailable = detailable; + _this.dso = _this.object.indexableObject; + return _this; + } + /** + * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string[]} the matching string values or an empty array. + */ + MyDSpaceResultDetailElementComponent.prototype.allMetadataValues = function (keyOrKeys) { + return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys); + }; + /** + * Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string} the first matching string value, or `undefined`. + */ + MyDSpaceResultDetailElementComponent.prototype.firstMetadataValue = function (keyOrKeys) { + return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys); + }; + MyDSpaceResultDetailElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-my-dspace-result-detail-element', + template: "" + }), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object]) + ], MyDSpaceResultDetailElementComponent); + return MyDSpaceResultDetailElementComponent; +}(AbstractListableElementComponent)); +export { MyDSpaceResultDetailElementComponent }; +//# sourceMappingURL=my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js.map new file mode 100644 index 0000000000..ec36d3548a --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAGhJ,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAM/D;IAA+G,gEAAmC;IAOhJ;;;;OAIG;IACH,8CAA2D,UAA0B;QAArF,YACE,kBAAM,UAAU,CAAC,SAElB;QAH0D,gBAAU,GAAV,UAAU,CAAgB;QAEnF,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;;IACzC,CAAC;IAED;;;;;OAKG;IACH,gEAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;;;OAKG;IACH,iEAAkB,GAAlB,UAAmB,SAA4B;QAC7C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAnCU,oCAAoC;QAJhD,SAAS,CAAC;YACT,QAAQ,EAAE,oCAAoC;YAC9C,QAAQ,EAAE,EAAE;SACb,CAAC;QAaoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAZxC,oCAAoC,CAoChD;IAAD,2CAAC;CAAA,AApCD,CAA+G,gCAAgC,GAoC9I;SApCY,oCAAoC"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js new file mode 100644 index 0000000000..8d3777f6b7 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js @@ -0,0 +1,58 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { find } from 'rxjs/operators'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { isNotUndefined } from '../../../empty.util'; +import { PoolTask } from '../../../../core/tasks/models/pool-task-object.model'; +import { PoolTaskMyDSpaceResult } from '../../../object-collection/shared/pool-task-my-dspace-result.model'; +import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders pool task object for the mydspace result in the detail view. + */ +var PoolMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(PoolMyDSpaceResultDetailElementComponent, _super); + function PoolMyDSpaceResultDetailElementComponent(listable) { + var _this = _super.call(this, listable) || this; + _this.listable = listable; + /** + * A boolean representing if to show submitter information + */ + _this.showSubmitter = true; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.WAITING_CONTROLLER; + return _this; + } + /** + * Initialize all instance variables + */ + PoolMyDSpaceResultDetailElementComponent.prototype.ngOnInit = function () { + this.initWorkflowItem(this.dso.workflowitem); + }; + /** + * Retrieve workflowitem from result object + */ + PoolMyDSpaceResultDetailElementComponent.prototype.initWorkflowItem = function (wfi$) { + var _this = this; + wfi$.pipe(find(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); })).subscribe(function (rd) { + _this.workflowitem = rd.payload; + }); + }; + PoolMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-pool-my-dspace-result-detail-element', + styleUrls: ['../my-dspace-result-detail-element.component.scss'], + templateUrl: './pool-my-dspace-result-detail-element.component.html', + }), + renderElementsFor(PoolTaskMyDSpaceResult, SetViewMode.Detail), + renderElementsFor(PoolTask, SetViewMode.Detail), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object]) + ], PoolMyDSpaceResultDetailElementComponent); + return PoolMyDSpaceResultDetailElementComponent; +}(MyDSpaceResultDetailElementComponent)); +export { PoolMyDSpaceResultDetailElementComponent }; +//# sourceMappingURL=pool-my-dspace-result-detail-lement.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js.map new file mode 100644 index 0000000000..dd1a5f8d12 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pool-my-dspace-result-detail-lement.component.js","sourceRoot":"","sources":["pool-my-dspace-result-detail-lement.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAGtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAE5F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAE,QAAQ,EAAE,MAAM,sDAAsD,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,oEAAoE,CAAC;AAC5G,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAA8D,oEAAsE;IAiBlI,kDAAoD,QAAwB;QAA5E,YACE,kBAAM,QAAQ,CAAC,SAChB;QAFmD,cAAQ,GAAR,QAAQ,CAAgB;QAf5E;;WAEG;QACI,mBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,kBAAkB,CAAC;;IAS1D,CAAC;IAED;;OAEG;IACH,2DAAQ,GAAR;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAoD,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,mEAAgB,GAAhB,UAAiB,IAA0C;QAA3D,iBAMC;QALC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,CACxF,CAAC,SAAS,CAAC,UAAC,EAA4B;YACvC,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IArCU,wCAAwC;QARpD,SAAS,CAAC;YACT,QAAQ,EAAE,yCAAyC;YACnD,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,WAAW,EAAE,uDAAuD;SACrE,CAAC;QAED,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC,MAAM,CAAC;QAC7D,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC;QAkBjC,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAjBjC,wCAAwC,CAuCpD;IAAD,+CAAC;CAAA,AAvCD,CAA8D,oCAAoC,GAuCjG;SAvCY,wCAAwC"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js new file mode 100644 index 0000000000..1b1540810e --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js @@ -0,0 +1,54 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { WorkflowitemMyDSpaceResult } from '../../../object-collection/shared/workflowitem-my-dspace-result.model'; +import { Workflowitem } from '../../../../core/submission/models/workflowitem.model'; +import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { find } from 'rxjs/operators'; +import { isNotUndefined } from '../../../empty.util'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders workflowitem object for the mydspace result in the detail view. + */ +var WorkflowitemMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(WorkflowitemMyDSpaceResultDetailElementComponent, _super); + function WorkflowitemMyDSpaceResultDetailElementComponent(listable) { + var _this = _super.call(this, listable) || this; + _this.listable = listable; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.WORKFLOW; + return _this; + } + /** + * Initialize all instance variables + */ + WorkflowitemMyDSpaceResultDetailElementComponent.prototype.ngOnInit = function () { + this.initItem(this.dso.item); + }; + /** + * Retrieve item from result object + */ + WorkflowitemMyDSpaceResultDetailElementComponent.prototype.initItem = function (item$) { + var _this = this; + item$.pipe(find(function (rd) { return rd.hasSucceeded && isNotUndefined(rd.payload); })).subscribe(function (rd) { + _this.item = rd.payload; + }); + }; + WorkflowitemMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-workflowitem-my-dspace-result-detail-element', + styleUrls: ['../my-dspace-result-detail-element.component.scss'], + templateUrl: './workflowitem-my-dspace-result-detail-element.component.html', + }), + renderElementsFor(WorkflowitemMyDSpaceResult, SetViewMode.Detail), + renderElementsFor(Workflowitem, SetViewMode.Detail), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object]) + ], WorkflowitemMyDSpaceResultDetailElementComponent); + return WorkflowitemMyDSpaceResultDetailElementComponent; +}(MyDSpaceResultDetailElementComponent)); +export { WorkflowitemMyDSpaceResultDetailElementComponent }; +//# sourceMappingURL=workflowitem-my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js.map new file mode 100644 index 0000000000..6cd3063f44 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workflowitem-my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["workflowitem-my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAI5F,OAAO,EAAE,0BAA0B,EAAE,MAAM,uEAAuE,CAAC;AACnH,OAAO,EAAE,YAAY,EAAE,MAAM,uDAAuD,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAG3H,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAAsE,4EAA8E;IAYlJ,0DAAoD,QAAwB;QAA5E,YACE,kBAAM,QAAQ,CAAC,SAChB;QAFmD,cAAQ,GAAR,QAAQ,CAAgB;QAL5E;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IAIhD,CAAC;IAED;;OAEG;IACH,mEAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAoC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,mEAAQ,GAAR,UAAS,KAAmC;QAA5C,iBAMC;QALC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC9E,CAAC,SAAS,CAAC,UAAC,EAAoB;YAC/B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAhCU,gDAAgD;QAR5D,SAAS,CAAC;YACT,QAAQ,EAAE,iDAAiD;YAC3D,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,WAAW,EAAE,+DAA+D;SAC7E,CAAC;QAED,iBAAiB,CAAC,0BAA0B,EAAE,WAAW,CAAC,MAAM,CAAC;QACjE,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC;QAarC,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAZjC,gDAAgD,CAkC5D;IAAD,uDAAC;CAAA,AAlCD,CAAsE,oCAAoC,GAkCzG;SAlCY,gDAAgD"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js new file mode 100644 index 0000000000..6455e5ebfa --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js @@ -0,0 +1,54 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { find } from 'rxjs/operators'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { Workspaceitem } from '../../../../core/submission/models/workspaceitem.model'; +import { WorkspaceitemMyDSpaceResult } from '../../../object-collection/shared/workspaceitem-my-dspace-result.model'; +import { isNotUndefined } from '../../../empty.util'; +import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders workspaceitem object for the mydspace result in the detail view. + */ +var WorkspaceitemMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(WorkspaceitemMyDSpaceResultDetailElementComponent, _super); + function WorkspaceitemMyDSpaceResultDetailElementComponent(listable) { + var _this = _super.call(this, listable) || this; + _this.listable = listable; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.WORKSPACE; + return _this; + } + /** + * Initialize all instance variables + */ + WorkspaceitemMyDSpaceResultDetailElementComponent.prototype.ngOnInit = function () { + this.initItem(this.dso.item); + }; + /** + * Retrieve item from result object + */ + WorkspaceitemMyDSpaceResultDetailElementComponent.prototype.initItem = function (item$) { + var _this = this; + item$.pipe(find(function (rd) { return rd.hasSucceeded && isNotUndefined(rd.payload); })).subscribe(function (rd) { + _this.item = rd.payload; + }); + }; + WorkspaceitemMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-workspaceitem-my-dspace-result-detail-element', + styleUrls: ['../my-dspace-result-detail-element.component.scss', './workspaceitem-my-dspace-result-detail-element.component.scss'], + templateUrl: './workspaceitem-my-dspace-result-detail-element.component.html', + }), + renderElementsFor(WorkspaceitemMyDSpaceResult, SetViewMode.Detail), + renderElementsFor(Workspaceitem, SetViewMode.Detail), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object]) + ], WorkspaceitemMyDSpaceResultDetailElementComponent); + return WorkspaceitemMyDSpaceResultDetailElementComponent; +}(MyDSpaceResultDetailElementComponent)); +export { WorkspaceitemMyDSpaceResultDetailElementComponent }; +//# sourceMappingURL=workspaceitem-my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js.map new file mode 100644 index 0000000000..fa3dc94d56 --- /dev/null +++ b/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["workspaceitem-my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,wDAAwD,CAAC;AACvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wEAAwE,CAAC;AAGrH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAAuE,6EAAgF;IAYrJ,2DAAoD,QAAwB;QAA5E,YACE,kBAAM,QAAQ,CAAC,SAChB;QAFmD,cAAQ,GAAR,QAAQ,CAAgB;QAL5E;;WAEG;QACH,YAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC;;IAI1C,CAAC;IAED;;OAEG;IACH,oEAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAoC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,oEAAQ,GAAR,UAAS,KAAmC;QAA5C,iBAMC;QALC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC9E,CAAC,SAAS,CAAC,UAAC,EAAoB;YAC/B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAhCU,iDAAiD;QAR7D,SAAS,CAAC;YACT,QAAQ,EAAE,kDAAkD;YAC5D,SAAS,EAAE,CAAC,mDAAmD,EAAE,gEAAgE,CAAC;YAClI,WAAW,EAAE,gEAAgE;SAC9E,CAAC;QAED,iBAAiB,CAAC,2BAA2B,EAAE,WAAW,CAAC,MAAM,CAAC;QAClE,iBAAiB,CAAC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC;QAatC,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAZjC,iDAAiD,CAiC7D;IAAD,wDAAC;CAAA,AAjCD,CAAuE,oCAAoC,GAiC1G;SAjCY,iDAAiD"} \ No newline at end of file diff --git a/src/app/shared/object-detail/object-detail.component.js b/src/app/shared/object-detail/object-detail.component.js new file mode 100644 index 0000000000..9fff998881 --- /dev/null +++ b/src/app/shared/object-detail/object-detail.component.js @@ -0,0 +1,160 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; +import { SortOptions } from '../../core/cache/models/sort-options.model'; +import { RemoteData } from '../../core/data/remote-data'; +import { fadeIn } from '../animations/fade'; +import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; +/** + * This component renders a paginated set of results in the detail view. + */ +var ObjectDetailComponent = /** @class */ (function () { + function ObjectDetailComponent() { + /** + * A boolean representing if to hide gear pagination icon + */ + this.hideGear = true; + /** + * A boolean representing if to hide pagination when there is only a page + */ + this.hidePagerWhenSinglePage = true; + /** + * Option for hiding the pagination detail + */ + this.hidePaginationDetail = true; + /** + * An event fired when the page is changed. + * Event's payload equals to the newly selected page. + */ + this.change = new EventEmitter(); + /** + * An event fired when the page is changed. + * Event's payload equals to the newly selected page. + */ + this.pageChange = new EventEmitter(); + /** + * An event fired when the page wsize is changed. + * Event's payload equals to the newly selected page size. + */ + this.pageSizeChange = new EventEmitter(); + /** + * An event fired when the sort direction is changed. + * Event's payload equals to the newly selected sort direction. + */ + this.sortDirectionChange = new EventEmitter(); + /** + * An event fired when the pagination is changed. + * Event's payload equals to the newly selected sort direction. + */ + this.paginationChange = new EventEmitter(); + /** + * An event fired when the sort field is changed. + * Event's payload equals to the newly selected sort field. + */ + this.sortFieldChange = new EventEmitter(); + } + Object.defineProperty(ObjectDetailComponent.prototype, "objects", { + /** + * Getter for _objects property + */ + get: function () { + return this._objects; + }, + /** + * Setter for _objects property + * @param objects + */ + set: function (objects) { + this._objects = objects; + }, + enumerable: true, + configurable: true + }); + /** + * Emit pageChange event + */ + ObjectDetailComponent.prototype.onPageChange = function (event) { + this.pageChange.emit(event); + }; + /** + * Emit pageSizeChange event + */ + ObjectDetailComponent.prototype.onPageSizeChange = function (event) { + this.pageSizeChange.emit(event); + }; + /** + * Emit sortDirectionChange event + */ + ObjectDetailComponent.prototype.onSortDirectionChange = function (event) { + this.sortDirectionChange.emit(event); + }; + /** + * Emit sortFieldChange event + */ + ObjectDetailComponent.prototype.onSortFieldChange = function (event) { + this.sortFieldChange.emit(event); + }; + /** + * Emit paginationChange event + */ + ObjectDetailComponent.prototype.onPaginationChange = function (event) { + this.paginationChange.emit(event); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", PaginationComponentOptions) + ], ObjectDetailComponent.prototype, "config", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SortOptions) + ], ObjectDetailComponent.prototype, "sortConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectDetailComponent.prototype, "hideGear", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectDetailComponent.prototype, "hidePagerWhenSinglePage", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", RemoteData), + tslib_1.__metadata("design:paramtypes", [RemoteData]) + ], ObjectDetailComponent.prototype, "objects", null); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectDetailComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectDetailComponent.prototype, "pageChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectDetailComponent.prototype, "pageSizeChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectDetailComponent.prototype, "sortDirectionChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectDetailComponent.prototype, "paginationChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectDetailComponent.prototype, "sortFieldChange", void 0); + ObjectDetailComponent = tslib_1.__decorate([ + Component({ + changeDetection: ChangeDetectionStrategy.Default, + encapsulation: ViewEncapsulation.Emulated, + selector: 'ds-object-detail', + styleUrls: ['./object-detail.component.scss'], + templateUrl: './object-detail.component.html', + animations: [fadeIn] + }) + ], ObjectDetailComponent); + return ObjectDetailComponent; +}()); +export { ObjectDetailComponent }; +//# sourceMappingURL=object-detail.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/object-detail.component.js.map b/src/app/shared/object-detail/object-detail.component.js.map new file mode 100644 index 0000000000..8c88dcdf08 --- /dev/null +++ b/src/app/shared/object-detail/object-detail.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-detail.component.js","sourceRoot":"","sources":["object-detail.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js b/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js new file mode 100644 index 0000000000..873dc1050e --- /dev/null +++ b/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js @@ -0,0 +1,49 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { rendersDSOType } from '../../object-collection/shared/dso-element-decorator'; +import { SetViewMode } from '../../view-mode'; +/** + * This component renders a wrapper for an object in the detail view. + */ +var WrapperDetailElementComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {Injector} injector + */ + function WrapperDetailElementComponent(injector) { + this.injector = injector; + } + /** + * Initialize injector + */ + WrapperDetailElementComponent.prototype.ngOnInit = function () { + var _this = this; + this.objectInjector = Injector.create({ + providers: [{ provide: 'objectElementProvider', useFactory: function () { return (_this.object); }, deps: [] }], + parent: this.injector + }); + }; + /** + * Return class name for the object to inject + */ + WrapperDetailElementComponent.prototype.getDetailElement = function () { + var f = this.object.constructor; + return rendersDSOType(f, SetViewMode.Detail); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], WrapperDetailElementComponent.prototype, "object", void 0); + WrapperDetailElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-wrapper-detail-element', + styleUrls: ['./wrapper-detail-element.component.scss'], + templateUrl: './wrapper-detail-element.component.html' + }), + tslib_1.__metadata("design:paramtypes", [Injector]) + ], WrapperDetailElementComponent); + return WrapperDetailElementComponent; +}()); +export { WrapperDetailElementComponent }; +//# sourceMappingURL=wrapper-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js.map b/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js.map new file mode 100644 index 0000000000..76abcc04ad --- /dev/null +++ b/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"wrapper-detail-element.component.js","sourceRoot":"","sources":["wrapper-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAEtF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;GAEG;AAMH;IAYE;;;;OAIG;IACH,uCAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtC,CAAC;IAED;;OAEG;IACH,gDAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,MAAM,CAAC,EAAb,CAAa,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC;YAC3F,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IAEL,CAAC;IAED;;OAEG;IACH,wDAAgB,GAAhB;QACE,IAAM,CAAC,GAAuC,IAAI,CAAC,MAAM,CAAC,WAAiD,CAAC;QAC5G,OAAO,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAhCQ;QAAR,KAAK,EAAE;;iEAAwB;IALrB,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;iDAkB8B,QAAQ;OAjB3B,6BAA6B,CAsCzC;IAAD,oCAAC;CAAA,AAtCD,IAsCC;SAtCY,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js b/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js new file mode 100644 index 0000000000..7d1f85f71b --- /dev/null +++ b/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Collection } from '../../../core/shared/collection.model'; +import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; +import { SetViewMode } from '../../view-mode'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +var CollectionGridElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(CollectionGridElementComponent, _super); + function CollectionGridElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + CollectionGridElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-collection-grid-element', + styleUrls: ['./collection-grid-element.component.scss'], + templateUrl: './collection-grid-element.component.html' + }), + renderElementsFor(Collection, SetViewMode.Grid) + ], CollectionGridElementComponent); + return CollectionGridElementComponent; +}(AbstractListableElementComponent)); +export { CollectionGridElementComponent }; +//# sourceMappingURL=collection-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js.map b/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js.map new file mode 100644 index 0000000000..4afdf2dca8 --- /dev/null +++ b/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-grid-element.component.js","sourceRoot":"","sources":["collection-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAC,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAShJ;IAAoD,0DAA4C;IAAhG;;IAAkG,CAAC;IAAtF,8BAA8B;QAP1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,SAAS,EAAE,CAAC,0CAA0C,CAAC;YACvD,WAAW,EAAE,0CAA0C;SACxD,CAAC;QAED,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC;OACnC,8BAA8B,CAAwD;IAAD,qCAAC;CAAA,AAAnG,CAAoD,gCAAgC,GAAe;SAAtF,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js b/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js new file mode 100644 index 0000000000..8c2fb90c68 --- /dev/null +++ b/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Community } from '../../../core/shared/community.model'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; +import { SetViewMode } from '../../view-mode'; +var CommunityGridElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(CommunityGridElementComponent, _super); + function CommunityGridElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + CommunityGridElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-community-grid-element', + styleUrls: ['./community-grid-element.component.scss'], + templateUrl: './community-grid-element.component.html' + }), + renderElementsFor(Community, SetViewMode.Grid) + ], CommunityGridElementComponent); + return CommunityGridElementComponent; +}(AbstractListableElementComponent)); +export { CommunityGridElementComponent }; +//# sourceMappingURL=community-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js.map b/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js.map new file mode 100644 index 0000000000..29c21bcb06 --- /dev/null +++ b/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-grid-element.component.js","sourceRoot":"","sources":["community-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,iBAAiB,EAAC,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAS9C;IAAmD,yDAA2C;IAA9F;;IAAgG,CAAC;IAApF,6BAA6B;QAPzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;QAED,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC;OAClC,6BAA6B,CAAuD;IAAD,oCAAC;CAAA,AAAjG,CAAmD,gCAAgC,GAAc;SAApF,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js b/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js new file mode 100644 index 0000000000..7b44ef64ae --- /dev/null +++ b/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Bitstream } from '../../../core/shared/bitstream.model'; +/** + * This component renders a given Bitstream as a thumbnail. + * One input parameter of type Bitstream is expected. + * If no Bitstream is provided, a holderjs image will be rendered instead. + */ +var GridThumbnailComponent = /** @class */ (function () { + function GridThumbnailComponent() { + this.data = {}; + /** + * The default 'holder.js' image + */ + this.holderSource = 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/PjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjYwIiBoZWlnaHQ9IjE4MCIgdmlld0JveD0iMCAwIDI2MCAxODAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjwhLS0KU291cmNlIFVSTDogaG9sZGVyLmpzLzEwMCV4MTgwL3RleHQ6Tm8gVGh1bWJuYWlsCkNyZWF0ZWQgd2l0aCBIb2xkZXIuanMgMi42LjAuCkxlYXJuIG1vcmUgYXQgaHR0cDovL2hvbGRlcmpzLmNvbQooYykgMjAxMi0yMDE1IEl2YW4gTWFsb3BpbnNreSAtIGh0dHA6Ly9pbXNreS5jbwotLT48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwhW0NEQVRBWyNob2xkZXJfMTVmNzJmMmFlMGIgdGV4dCB7IGZpbGw6I0FBQUFBQTtmb250LXdlaWdodDpib2xkO2ZvbnQtZmFtaWx5OkFyaWFsLCBIZWx2ZXRpY2EsIE9wZW4gU2Fucywgc2Fucy1zZXJpZiwgbW9ub3NwYWNlO2ZvbnQtc2l6ZToxM3B0IH0gXV0+PC9zdHlsZT48L2RlZnM+PGcgaWQ9ImhvbGRlcl8xNWY3MmYyYWUwYiI+PHJlY3Qgd2lkdGg9IjI2MCIgaGVpZ2h0PSIxODAiIGZpbGw9IiNFRUVFRUUiLz48Zz48dGV4dCB4PSI3Mi4yNDIxODc1IiB5PSI5NiI+Tm8gVGh1bWJuYWlsPC90ZXh0PjwvZz48L2c+PC9zdmc+'; + } + GridThumbnailComponent.prototype.errorHandler = function (event) { + event.currentTarget.src = this.holderSource; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Bitstream) + ], GridThumbnailComponent.prototype, "thumbnail", void 0); + GridThumbnailComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-grid-thumbnail', + styleUrls: ['./grid-thumbnail.component.scss'], + templateUrl: './grid-thumbnail.component.html' + }) + ], GridThumbnailComponent); + return GridThumbnailComponent; +}()); +export { GridThumbnailComponent }; +//# sourceMappingURL=grid-thumbnail.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js.map b/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js.map new file mode 100644 index 0000000000..c5ce8f4918 --- /dev/null +++ b/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"grid-thumbnail.component.js","sourceRoot":"","sources":["grid-thumbnail.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAEjE;;;;GAIG;AAOH;IALA;QASE,SAAI,GAAQ,EAAE,CAAC;QAEf;;WAEG;QACH,iBAAY,GAAG,w5BAAw5B,CAAC;IAM16B,CAAC;IAJC,6CAAY,GAAZ,UAAa,KAAK;QAChB,KAAK,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;IAC9C,CAAC;IAXQ;QAAR,KAAK,EAAE;0CAAY,SAAS;6DAAC;IAFnB,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;OACW,sBAAsB,CAelC;IAAD,6BAAC;CAAA,AAfD,IAeC;SAfY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js b/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js new file mode 100644 index 0000000000..c34f6b9414 --- /dev/null +++ b/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Item } from '../../../core/shared/item.model'; +import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { SetViewMode } from '../../view-mode'; +var ItemGridElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemGridElementComponent, _super); + function ItemGridElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + ItemGridElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-grid-element', + styleUrls: ['./item-grid-element.component.scss'], + templateUrl: './item-grid-element.component.html' + }), + renderElementsFor(Item, SetViewMode.Grid) + ], ItemGridElementComponent); + return ItemGridElementComponent; +}(AbstractListableElementComponent)); +export { ItemGridElementComponent }; +//# sourceMappingURL=item-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js.map b/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js.map new file mode 100644 index 0000000000..08074d572e --- /dev/null +++ b/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-grid-element.component.js","sourceRoot":"","sources":["item-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAC,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAS9C;IAA8C,oDAAsC;IAApF;;IAAsF,CAAC;IAA1E,wBAAwB;QAPpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;QAED,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;OAC7B,wBAAwB,CAAkD;IAAD,+BAAC;CAAA,AAAvF,CAA8C,gCAAgC,GAAS;SAA1E,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/object-grid/object-grid.component.js b/src/app/shared/object-grid/object-grid.component.js new file mode 100644 index 0000000000..6db34997ef --- /dev/null +++ b/src/app/shared/object-grid/object-grid.component.js @@ -0,0 +1,165 @@ +import * as tslib_1 from "tslib"; +import { combineLatest as observableCombineLatest, BehaviorSubject } from 'rxjs'; +import { startWith, distinctUntilChanged, map } from 'rxjs/operators'; +import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; +import { SortOptions } from '../../core/cache/models/sort-options.model'; +import { RemoteData } from '../../core/data/remote-data'; +import { fadeIn } from '../animations/fade'; +import { hasNoValue, hasValue } from '../empty.util'; +import { HostWindowService, WidthCategory } from '../host-window.service'; +import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; +var ObjectGridComponent = /** @class */ (function () { + function ObjectGridComponent(hostWindow) { + this.hostWindow = hostWindow; + this.hideGear = false; + this.hidePagerWhenSinglePage = true; + /** + * An event fired when the page is changed. + * Event's payload equals to the newly selected page. + */ + this.change = new EventEmitter(); + /** + * An event fired when the page is changed. + * Event's payload equals to the newly selected page. + */ + this.pageChange = new EventEmitter(); + /** + * An event fired when the page wsize is changed. + * Event's payload equals to the newly selected page size. + */ + this.pageSizeChange = new EventEmitter(); + /** + * An event fired when the sort direction is changed. + * Event's payload equals to the newly selected sort direction. + */ + this.sortDirectionChange = new EventEmitter(); + this.paginationChange = new EventEmitter(); + /** + * An event fired when the sort field is changed. + * Event's payload equals to the newly selected sort field. + */ + this.sortFieldChange = new EventEmitter(); + this.data = {}; + this._objects$ = new BehaviorSubject(undefined); + } + Object.defineProperty(ObjectGridComponent.prototype, "objects", { + get: function () { + return this._objects$.getValue(); + }, + set: function (objects) { + this._objects$.next(objects); + }, + enumerable: true, + configurable: true + }); + ObjectGridComponent.prototype.ngOnInit = function () { + var nbColumns$ = this.hostWindow.widthCategory.pipe(map(function (widthCat) { + switch (widthCat) { + case WidthCategory.XL: + case WidthCategory.LG: { + return 3; + } + case WidthCategory.MD: + case WidthCategory.SM: { + return 2; + } + default: { + return 1; + } + } + }), distinctUntilChanged()).pipe(startWith(3)); + this.columns$ = observableCombineLatest(nbColumns$, this._objects$).pipe(map(function (_a) { + var nbColumns = _a[0], objects = _a[1]; + if (hasValue(objects) && hasValue(objects.payload) && hasValue(objects.payload.page)) { + var page = objects.payload.page; + var result_1 = []; + page.forEach(function (obj, i) { + var colNb = i % nbColumns; + var col = result_1[colNb]; + if (hasNoValue(col)) { + col = []; + } + result_1[colNb] = col.concat([obj]); + }); + return result_1; + } + else { + return []; + } + })); + }; + ObjectGridComponent.prototype.onPageChange = function (event) { + this.pageChange.emit(event); + }; + ObjectGridComponent.prototype.onPageSizeChange = function (event) { + this.pageSizeChange.emit(event); + }; + ObjectGridComponent.prototype.onSortDirectionChange = function (event) { + this.sortDirectionChange.emit(event); + }; + ObjectGridComponent.prototype.onSortFieldChange = function (event) { + this.sortFieldChange.emit(event); + }; + ObjectGridComponent.prototype.onPaginationChange = function (event) { + this.paginationChange.emit(event); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", PaginationComponentOptions) + ], ObjectGridComponent.prototype, "config", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SortOptions) + ], ObjectGridComponent.prototype, "sortConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectGridComponent.prototype, "hideGear", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectGridComponent.prototype, "hidePagerWhenSinglePage", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", RemoteData), + tslib_1.__metadata("design:paramtypes", [RemoteData]) + ], ObjectGridComponent.prototype, "objects", null); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectGridComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectGridComponent.prototype, "pageChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectGridComponent.prototype, "pageSizeChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectGridComponent.prototype, "sortDirectionChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectGridComponent.prototype, "paginationChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectGridComponent.prototype, "sortFieldChange", void 0); + ObjectGridComponent = tslib_1.__decorate([ + Component({ + changeDetection: ChangeDetectionStrategy.Default, + encapsulation: ViewEncapsulation.Emulated, + selector: 'ds-object-grid', + styleUrls: ['./object-grid.component.scss'], + templateUrl: './object-grid.component.html', + animations: [fadeIn] + }), + tslib_1.__metadata("design:paramtypes", [HostWindowService]) + ], ObjectGridComponent); + return ObjectGridComponent; +}()); +export { ObjectGridComponent }; +//# sourceMappingURL=object-grid.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/object-grid.component.js.map b/src/app/shared/object-grid/object-grid.component.js.map new file mode 100644 index 0000000000..822d1a2d9f --- /dev/null +++ b/src/app/shared/object-grid/object-grid.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-grid.component.js","sourceRoot":"","sources":["object-grid.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js b/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js new file mode 100644 index 0000000000..076cfe8be9 --- /dev/null +++ b/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { SearchResultGridElementComponent } from '../search-result-grid-element.component'; +import { SetViewMode } from '../../../view-mode'; +import { CollectionSearchResult } from '../../../object-collection/shared/collection-search-result.model'; +var CollectionSearchResultGridElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(CollectionSearchResultGridElementComponent, _super); + function CollectionSearchResultGridElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + CollectionSearchResultGridElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-collection-search-result-grid-element', + styleUrls: ['../search-result-grid-element.component.scss', 'collection-search-result-grid-element.component.scss'], + templateUrl: 'collection-search-result-grid-element.component.html' + }), + renderElementsFor(CollectionSearchResult, SetViewMode.Grid) + ], CollectionSearchResultGridElementComponent); + return CollectionSearchResultGridElementComponent; +}(SearchResultGridElementComponent)); +export { CollectionSearchResultGridElementComponent }; +//# sourceMappingURL=collection-search-result-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js.map b/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js.map new file mode 100644 index 0000000000..b4a958a218 --- /dev/null +++ b/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-search-result-grid-element.component.js","sourceRoot":"","sources":["collection-search-result-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAC,MAAM,yDAAyD,CAAC;AAC3F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kEAAkE,CAAC;AAS1G;IAAgE,sEAAoE;IAApI;;IAAsI,CAAC;IAA1H,0CAA0C;QAPtD,SAAS,CAAC;YACT,QAAQ,EAAE,0CAA0C;YACpD,SAAS,EAAE,CAAC,8CAA8C,EAAE,sDAAsD,CAAC;YACnH,WAAW,EAAE,sDAAsD;SACpE,CAAC;QAED,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC/C,0CAA0C,CAAgF;IAAD,iDAAC;CAAA,AAAvI,CAAgE,gCAAgC,GAAuC;SAA1H,0CAA0C"} \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js b/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js new file mode 100644 index 0000000000..8ceed16a7b --- /dev/null +++ b/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { SearchResultGridElementComponent } from '../search-result-grid-element.component'; +import { SetViewMode } from '../../../view-mode'; +import { CommunitySearchResult } from '../../../object-collection/shared/community-search-result.model'; +var CommunitySearchResultGridElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(CommunitySearchResultGridElementComponent, _super); + function CommunitySearchResultGridElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + CommunitySearchResultGridElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-community-search-result-grid-element', + styleUrls: ['../search-result-grid-element.component.scss', 'community-search-result-grid-element.component.scss'], + templateUrl: 'community-search-result-grid-element.component.html' + }), + renderElementsFor(CommunitySearchResult, SetViewMode.Grid) + ], CommunitySearchResultGridElementComponent); + return CommunitySearchResultGridElementComponent; +}(SearchResultGridElementComponent)); +export { CommunitySearchResultGridElementComponent }; +//# sourceMappingURL=community-search-result-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js.map b/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js.map new file mode 100644 index 0000000000..e083d946b5 --- /dev/null +++ b/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-search-result-grid-element.component.js","sourceRoot":"","sources":["community-search-result-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iEAAiE,CAAC;AASxG;IAA+D,qEAAkE;IAAjI;;IAEA,CAAC;IAFY,yCAAyC;QAPrD,SAAS,CAAC;YACT,QAAQ,EAAE,yCAAyC;YACnD,SAAS,EAAE,CAAC,8CAA8C,EAAE,qDAAqD,CAAC;YAClH,WAAW,EAAE,qDAAqD;SACnE,CAAC;QAED,iBAAiB,CAAC,qBAAqB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC9C,yCAAyC,CAErD;IAAD,gDAAC;CAAA,AAFD,CAA+D,gCAAgC,GAE9F;SAFY,yCAAyC"} \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js b/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js new file mode 100644 index 0000000000..0bc2642067 --- /dev/null +++ b/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { SearchResultGridElementComponent } from '../search-result-grid-element.component'; +import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model'; +import { SetViewMode } from '../../../view-mode'; +import { focusShadow } from '../../../../shared/animations/focus'; +var ItemSearchResultGridElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemSearchResultGridElementComponent, _super); + function ItemSearchResultGridElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + ItemSearchResultGridElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-search-result-grid-element', + styleUrls: ['../search-result-grid-element.component.scss', 'item-search-result-grid-element.component.scss'], + templateUrl: 'item-search-result-grid-element.component.html', + animations: [focusShadow], + }), + renderElementsFor(ItemSearchResult, SetViewMode.Grid) + ], ItemSearchResultGridElementComponent); + return ItemSearchResultGridElementComponent; +}(SearchResultGridElementComponent)); +export { ItemSearchResultGridElementComponent }; +//# sourceMappingURL=item-search-result-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js.map b/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js.map new file mode 100644 index 0000000000..3b77b39d50 --- /dev/null +++ b/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-search-result-grid-element.component.js","sourceRoot":"","sources":["item-search-result-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4DAA4D,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAUlE;IAA0D,gEAAwD;IAAlH;;IAAoH,CAAC;IAAxG,oCAAoC;QARhD,SAAS,CAAC;YACT,QAAQ,EAAE,oCAAoC;YAC9C,SAAS,EAAE,CAAC,8CAA8C,EAAE,gDAAgD,CAAC;YAC7G,WAAW,EAAE,gDAAgD;YAC7D,UAAU,EAAE,CAAC,WAAW,CAAC;SAC1B,CAAC;QAED,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,CAAC,IAAI,CAAC;OACzC,oCAAoC,CAAoE;IAAD,2CAAC;CAAA,AAArH,CAA0D,gCAAgC,GAA2B;SAAxG,oCAAoC"} \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js b/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js new file mode 100644 index 0000000000..52728f567a --- /dev/null +++ b/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js @@ -0,0 +1,47 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { TruncatableService } from '../../truncatable/truncatable.service'; +import { Metadata } from '../../../core/shared/metadata.utils'; +var SearchResultGridElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(SearchResultGridElementComponent, _super); + function SearchResultGridElementComponent(listableObject, truncatableService) { + var _this = _super.call(this, listableObject) || this; + _this.listableObject = listableObject; + _this.truncatableService = truncatableService; + _this.dso = _this.object.indexableObject; + return _this; + } + /** + * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string[]} the matching string values or an empty array. + */ + SearchResultGridElementComponent.prototype.allMetadataValues = function (keyOrKeys) { + return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys); + }; + /** + * Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string} the first matching string value, or `undefined`. + */ + SearchResultGridElementComponent.prototype.firstMetadataValue = function (keyOrKeys) { + return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys); + }; + SearchResultGridElementComponent.prototype.isCollapsed = function () { + return this.truncatableService.isCollapsed(this.dso.id); + }; + SearchResultGridElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-result-grid-element', + template: "" + }), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object, TruncatableService]) + ], SearchResultGridElementComponent); + return SearchResultGridElementComponent; +}(AbstractListableElementComponent)); +export { SearchResultGridElementComponent }; +//# sourceMappingURL=search-result-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js.map b/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js.map new file mode 100644 index 0000000000..cda164ca8a --- /dev/null +++ b/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-result-grid-element.component.js","sourceRoot":"","sources":["search-result-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAIlD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAEhJ,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAO/D;IAAyG,4DAAmC;IAG1I,0CAA2D,cAA8B,EAAU,kBAAsC;QAAzI,YACE,kBAAM,cAAc,CAAC,SAEtB;QAH0D,oBAAc,GAAd,cAAc,CAAgB;QAAU,wBAAkB,GAAlB,kBAAkB,CAAoB;QAEvI,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;;IACzC,CAAC;IAED;;;;;OAKG;IACH,4DAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;;;OAKG;IACH,6DAAkB,GAAlB,UAAmB,SAA4B;QAC7C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAED,sDAAW,GAAX;QACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IA9BU,gCAAgC;QAL5C,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,QAAQ,EAAE,EAAE;SACb,CAAC;QAKoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;yDAAoE,kBAAkB;OAH9H,gCAAgC,CAgC5C;IAAD,uCAAC;CAAA,AAhCD,CAAyG,gCAAgC,GAgCxI;SAhCY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js b/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js new file mode 100644 index 0000000000..2e36f3e910 --- /dev/null +++ b/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js @@ -0,0 +1,35 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { SetViewMode } from '../../view-mode'; +import { rendersDSOType } from '../../object-collection/shared/dso-element-decorator'; +var WrapperGridElementComponent = /** @class */ (function () { + function WrapperGridElementComponent(injector) { + this.injector = injector; + } + WrapperGridElementComponent.prototype.ngOnInit = function () { + var _this = this; + this.objectInjector = Injector.create({ + providers: [{ provide: 'objectElementProvider', useFactory: function () { return (_this.object); }, deps: [] }], + parent: this.injector + }); + }; + WrapperGridElementComponent.prototype.getGridElement = function () { + var f = this.object.constructor; + return rendersDSOType(f, SetViewMode.Grid); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], WrapperGridElementComponent.prototype, "object", void 0); + WrapperGridElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-wrapper-grid-element', + styleUrls: ['./wrapper-grid-element.component.scss'], + templateUrl: './wrapper-grid-element.component.html' + }), + tslib_1.__metadata("design:paramtypes", [Injector]) + ], WrapperGridElementComponent); + return WrapperGridElementComponent; +}()); +export { WrapperGridElementComponent }; +//# sourceMappingURL=wrapper-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js.map b/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js.map new file mode 100644 index 0000000000..4d8156d415 --- /dev/null +++ b/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"wrapper-grid-element.component.js","sourceRoot":"","sources":["wrapper-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAQtF;IAIE,qCAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtC,CAAC;IAED,8CAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,MAAM,CAAC,EAAb,CAAa,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC;YAC3F,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IAEL,CAAC;IAED,oDAAc,GAAd;QACE,IAAM,CAAC,GAAuC,IAAI,CAAC,MAAM,CAAC,WAAiD,CAAC;QAC5G,OAAO,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAjBQ;QAAR,KAAK,EAAE;;+DAAwB;IADrB,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;iDAK8B,QAAQ;OAJ3B,2BAA2B,CAmBvC;IAAD,kCAAC;CAAA,AAnBD,IAmBC;SAnBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js b/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js new file mode 100644 index 0000000000..be4195ab13 --- /dev/null +++ b/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; +import { BrowseEntry } from '../../../core/shared/browse-entry.model'; +import { SetViewMode } from '../../view-mode'; +var BrowseEntryListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(BrowseEntryListElementComponent, _super); + function BrowseEntryListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + BrowseEntryListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-browse-entry-list-element', + styleUrls: ['./browse-entry-list-element.component.scss'], + templateUrl: './browse-entry-list-element.component.html' + }) + /** + * This component is automatically used to create a list view for BrowseEntry objects when used in ObjectCollectionComponent + */ + , + renderElementsFor(BrowseEntry, SetViewMode.List) + ], BrowseEntryListElementComponent); + return BrowseEntryListElementComponent; +}(AbstractListableElementComponent)); +export { BrowseEntryListElementComponent }; +//# sourceMappingURL=browse-entry-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js.map b/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js.map new file mode 100644 index 0000000000..39ae82a45f --- /dev/null +++ b/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-entry-list-element.component.js","sourceRoot":"","sources":["browse-entry-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAEtE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAY9C;IAAqD,2DAA6C;IAAlG;;IAAoG,CAAC;IAAxF,+BAA+B;QAV3C,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,SAAS,EAAE,CAAC,4CAA4C,CAAC;YACzD,WAAW,EAAE,4CAA4C;SAC1D,CAAC;QAEF;;WAEG;;QACF,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC;OACpC,+BAA+B,CAAyD;IAAD,sCAAC;CAAA,AAArG,CAAqD,gCAAgC,GAAgB;SAAxF,+BAA+B"} \ No newline at end of file diff --git a/src/app/shared/object-list/collection-list-element/collection-list-element.component.js b/src/app/shared/object-list/collection-list-element/collection-list-element.component.js new file mode 100644 index 0000000000..4a1c0e96ea --- /dev/null +++ b/src/app/shared/object-list/collection-list-element/collection-list-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Collection } from '../../../core/shared/collection.model'; +import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; +import { SetViewMode } from '../../view-mode'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +var CollectionListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(CollectionListElementComponent, _super); + function CollectionListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + CollectionListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-collection-list-element', + styleUrls: ['./collection-list-element.component.scss'], + templateUrl: './collection-list-element.component.html' + }), + renderElementsFor(Collection, SetViewMode.List) + ], CollectionListElementComponent); + return CollectionListElementComponent; +}(AbstractListableElementComponent)); +export { CollectionListElementComponent }; +//# sourceMappingURL=collection-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/collection-list-element/collection-list-element.component.js.map b/src/app/shared/object-list/collection-list-element/collection-list-element.component.js.map new file mode 100644 index 0000000000..b18702be9c --- /dev/null +++ b/src/app/shared/object-list/collection-list-element/collection-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-list-element.component.js","sourceRoot":"","sources":["collection-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAShJ;IAAoD,0DAA4C;IAAhG;;IAAkG,CAAC;IAAtF,8BAA8B;QAP1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,SAAS,EAAE,CAAC,0CAA0C,CAAC;YACvD,WAAW,EAAE,0CAA0C;SACxD,CAAC;QAED,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC;OACnC,8BAA8B,CAAwD;IAAD,qCAAC;CAAA,AAAnG,CAAoD,gCAAgC,GAAe;SAAtF,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/object-list/community-list-element/community-list-element.component.js b/src/app/shared/object-list/community-list-element/community-list-element.component.js new file mode 100644 index 0000000000..80e529919a --- /dev/null +++ b/src/app/shared/object-list/community-list-element/community-list-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Community } from '../../../core/shared/community.model'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; +import { SetViewMode } from '../../view-mode'; +var CommunityListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(CommunityListElementComponent, _super); + function CommunityListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + CommunityListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-community-list-element', + styleUrls: ['./community-list-element.component.scss'], + templateUrl: './community-list-element.component.html' + }), + renderElementsFor(Community, SetViewMode.List) + ], CommunityListElementComponent); + return CommunityListElementComponent; +}(AbstractListableElementComponent)); +export { CommunityListElementComponent }; +//# sourceMappingURL=community-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/community-list-element/community-list-element.component.js.map b/src/app/shared/object-list/community-list-element/community-list-element.component.js.map new file mode 100644 index 0000000000..0203dbd492 --- /dev/null +++ b/src/app/shared/object-list/community-list-element/community-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-list-element.component.js","sourceRoot":"","sources":["community-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAS9C;IAAmD,yDAA2C;IAA9F;;IAAgG,CAAC;IAApF,6BAA6B;QAPzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;QAED,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC;OAClC,6BAA6B,CAAuD;IAAD,oCAAC;CAAA,AAAjG,CAAmD,gCAAgC,GAAc;SAApF,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-list-element.component.js b/src/app/shared/object-list/item-list-element/item-list-element.component.js new file mode 100644 index 0000000000..1fa30c8e73 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-list-element.component.js @@ -0,0 +1,31 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Item } from '../../../core/shared/item.model'; +import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { SetViewMode } from '../../view-mode'; +import { ItemViewMode } from '../../items/item-type-decorator'; +var ItemListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemListElementComponent, _super); + function ItemListElementComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.viewMode = ItemViewMode.Element; + return _this; + } + ItemListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-list-element', + styleUrls: ['./item-list-element.component.scss'], + templateUrl: './item-list-element.component.html' + }) + /** + * The component used to list items depending on type + * Uses item-type-switcher to determine which components to use for displaying the list + */ + , + renderElementsFor(Item, SetViewMode.List) + ], ItemListElementComponent); + return ItemListElementComponent; +}(AbstractListableElementComponent)); +export { ItemListElementComponent }; +//# sourceMappingURL=item-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-list-element.component.js.map new file mode 100644 index 0000000000..05ab8e0e6f --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-list-element.component.js","sourceRoot":"","sources":["item-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAa/D;IAA8C,oDAAsC;IAXpF;QAAA,qEAaC;QADC,cAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;;IAClC,CAAC;IAFY,wBAAwB;QAXpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;QAEF;;;WAGG;;QACF,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;OAC7B,wBAAwB,CAEpC;IAAD,+BAAC;CAAA,AAFD,CAA8C,gCAAgC,GAE7E;SAFY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js new file mode 100644 index 0000000000..7767894d7b --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +var JournalIssueListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(JournalIssueListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type Journal Issue + */ + function JournalIssueListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + JournalIssueListElementComponent = tslib_1.__decorate([ + rendersItemType('JournalIssue', ItemViewMode.Element), + Component({ + selector: 'ds-journal-issue-list-element', + styleUrls: ['./journal-issue-list-element.component.scss'], + templateUrl: './journal-issue-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type Journal Issue + */ + ], JournalIssueListElementComponent); + return JournalIssueListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { JournalIssueListElementComponent }; +//# sourceMappingURL=journal-issue-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js.map new file mode 100644 index 0000000000..3345061bd9 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journal-issue-list-element.component.js","sourceRoot":"","sources":["journal-issue-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAsD,4DAAyC;IAH/F;;OAEG;IACH;;IACA,CAAC;IADY,gCAAgC;QAT5C,eAAe,CAAC,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC;QACrD,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,SAAS,EAAE,CAAC,6CAA6C,CAAC;YAC1D,WAAW,EAAE,6CAA6C;SAC3D,CAAC;QACF;;WAEG;OACU,gCAAgC,CAC5C;IAAD,uCAAC;CAAA,AADD,CAAsD,yCAAyC,GAC9F;SADY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js new file mode 100644 index 0000000000..344f35f951 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +var JournalVolumeListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(JournalVolumeListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type Journal Volume + */ + function JournalVolumeListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + JournalVolumeListElementComponent = tslib_1.__decorate([ + rendersItemType('JournalVolume', ItemViewMode.Element), + Component({ + selector: 'ds-journal-volume-list-element', + styleUrls: ['./journal-volume-list-element.component.scss'], + templateUrl: './journal-volume-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type Journal Volume + */ + ], JournalVolumeListElementComponent); + return JournalVolumeListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { JournalVolumeListElementComponent }; +//# sourceMappingURL=journal-volume-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js.map new file mode 100644 index 0000000000..1d444223da --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journal-volume-list-element.component.js","sourceRoot":"","sources":["journal-volume-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAuD,6DAAyC;IAHhG;;OAEG;IACH;;IACA,CAAC;IADY,iCAAiC;QAT7C,eAAe,CAAC,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC;QACtD,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAC,8CAA8C,CAAC;YAC3D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;QACF;;WAEG;OACU,iCAAiC,CAC7C;IAAD,wCAAC;CAAA,AADD,CAAuD,yCAAyC,GAC/F;SADY,iCAAiC"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js new file mode 100644 index 0000000000..408424b233 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +var JournalListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(JournalListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type Journal + */ + function JournalListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + JournalListElementComponent = tslib_1.__decorate([ + rendersItemType('Journal', ItemViewMode.Element), + Component({ + selector: 'ds-journal-list-element', + styleUrls: ['./journal-list-element.component.scss'], + templateUrl: './journal-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type Journal + */ + ], JournalListElementComponent); + return JournalListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { JournalListElementComponent }; +//# sourceMappingURL=journal-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js.map new file mode 100644 index 0000000000..81435f4cd3 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journal-list-element.component.js","sourceRoot":"","sources":["journal-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAiD,uDAAyC;IAH1F;;OAEG;IACH;;IACA,CAAC;IADY,2BAA2B;QATvC,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC;QAChD,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;OACU,2BAA2B,CACvC;IAAD,kCAAC;CAAA,AADD,CAAiD,yCAAyC,GACzF;SADY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js new file mode 100644 index 0000000000..9ee965fa66 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +var OrgUnitListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(OrgUnitListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type Organisation Unit + */ + function OrgUnitListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + OrgUnitListElementComponent = tslib_1.__decorate([ + rendersItemType('OrgUnit', ItemViewMode.Element), + Component({ + selector: 'ds-orgunit-list-element', + styleUrls: ['./orgunit-list-element.component.scss'], + templateUrl: './orgunit-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type Organisation Unit + */ + ], OrgUnitListElementComponent); + return OrgUnitListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { OrgUnitListElementComponent }; +//# sourceMappingURL=orgunit-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js.map new file mode 100644 index 0000000000..09f87db5d0 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"orgunit-list-element.component.js","sourceRoot":"","sources":["orgunit-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAiD,uDAAyC;IAH1F;;OAEG;IACH;;IACA,CAAC;IADY,2BAA2B;QATvC,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC;QAChD,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;OACU,2BAA2B,CACvC;IAAD,kCAAC;CAAA,AADD,CAAiD,yCAAyC,GACzF;SADY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js new file mode 100644 index 0000000000..d4ad81f310 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { Component } from '@angular/core'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +import { MetadataRepresentationType } from '../../../../../core/shared/metadata-representation/metadata-representation.model'; +var OrgUnitMetadataListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(OrgUnitMetadataListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type OrgUnit + */ + function OrgUnitMetadataListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + OrgUnitMetadataListElementComponent = tslib_1.__decorate([ + rendersItemType('OrgUnit', ItemViewMode.Element, MetadataRepresentationType.Item), + Component({ + selector: 'ds-orgunit-metadata-list-element', + templateUrl: './orgunit-metadata-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type OrgUnit + */ + ], OrgUnitMetadataListElementComponent); + return OrgUnitMetadataListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { OrgUnitMetadataListElementComponent }; +//# sourceMappingURL=orgunit-metadata-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js.map new file mode 100644 index 0000000000..9393fb8b31 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"orgunit-metadata-list-element.component.js","sourceRoot":"","sources":["orgunit-metadata-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAC/G,OAAO,EAAE,0BAA0B,EAAE,MAAM,kFAAkF,CAAC;AAU9H;IAAyD,+DAAyC;IAHlG;;OAEG;IACH;;IACA,CAAC;IADY,mCAAmC;QAR/C,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,EAAE,0BAA0B,CAAC,IAAI,CAAC;QACjF,SAAS,CAAC;YACT,QAAQ,EAAE,kCAAkC;YAC5C,WAAW,EAAE,gDAAgD;SAC9D,CAAC;QACF;;WAEG;OACU,mCAAmC,CAC/C;IAAD,0CAAC;CAAA,AADD,CAAyD,yCAAyC,GACjG;SADY,mCAAmC"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js new file mode 100644 index 0000000000..08547fdf81 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +var PersonListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(PersonListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type Person + */ + function PersonListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + PersonListElementComponent = tslib_1.__decorate([ + rendersItemType('Person', ItemViewMode.Element), + Component({ + selector: 'ds-person-list-element', + styleUrls: ['./person-list-element.component.scss'], + templateUrl: './person-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type Person + */ + ], PersonListElementComponent); + return PersonListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { PersonListElementComponent }; +//# sourceMappingURL=person-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js.map new file mode 100644 index 0000000000..0a295b1b86 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"person-list-element.component.js","sourceRoot":"","sources":["person-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAgD,sDAAyC;IAHzF;;OAEG;IACH;;IACA,CAAC;IADY,0BAA0B;QATtC,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC;QAC/C,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;QACF;;WAEG;OACU,0BAA0B,CACtC;IAAD,iCAAC;CAAA,AADD,CAAgD,yCAAyC,GACxF;SADY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js new file mode 100644 index 0000000000..5d1e6d9769 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { Component } from '@angular/core'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +import { MetadataRepresentationType } from '../../../../../core/shared/metadata-representation/metadata-representation.model'; +var PersonMetadataListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(PersonMetadataListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type Person + */ + function PersonMetadataListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + PersonMetadataListElementComponent = tslib_1.__decorate([ + rendersItemType('Person', ItemViewMode.Element, MetadataRepresentationType.Item), + Component({ + selector: 'ds-person-metadata-list-element', + templateUrl: './person-metadata-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type Person + */ + ], PersonMetadataListElementComponent); + return PersonMetadataListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { PersonMetadataListElementComponent }; +//# sourceMappingURL=person-metadata-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js.map new file mode 100644 index 0000000000..ba1b185a5e --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"person-metadata-list-element.component.js","sourceRoot":"","sources":["person-metadata-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAC/G,OAAO,EAAE,0BAA0B,EAAE,MAAM,kFAAkF,CAAC;AAU9H;IAAwD,8DAAyC;IAHjG;;OAEG;IACH;;IACA,CAAC;IADY,kCAAkC;QAR9C,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,EAAE,0BAA0B,CAAC,IAAI,CAAC;QAChF,SAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,WAAW,EAAE,+CAA+C;SAC7D,CAAC;QACF;;WAEG;OACU,kCAAkC,CAC9C;IAAD,yCAAC;CAAA,AADD,CAAwD,yCAAyC,GAChG;SADY,kCAAkC"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js new file mode 100644 index 0000000000..f0dba4162b --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +var ProjectListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ProjectListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type Project + */ + function ProjectListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + ProjectListElementComponent = tslib_1.__decorate([ + rendersItemType('Project', ItemViewMode.Element), + Component({ + selector: 'ds-project-list-element', + styleUrls: ['./project-list-element.component.scss'], + templateUrl: './project-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type Project + */ + ], ProjectListElementComponent); + return ProjectListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { ProjectListElementComponent }; +//# sourceMappingURL=project-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js.map new file mode 100644 index 0000000000..2acb503cbf --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"project-list-element.component.js","sourceRoot":"","sources":["project-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAiD,uDAAyC;IAH1F;;OAEG;IACH;;IACA,CAAC;IADY,2BAA2B;QATvC,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC;QAChD,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;OACU,2BAA2B,CACvC;IAAD,kCAAC;CAAA,AADD,CAAiD,yCAAyC,GACzF;SADY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js new file mode 100644 index 0000000000..8d5dfcf990 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js @@ -0,0 +1,28 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { DEFAULT_ITEM_TYPE, ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; +import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; +var PublicationListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(PublicationListElementComponent, _super); + /** + * The component for displaying a list element for an item of the type Publication + */ + function PublicationListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + PublicationListElementComponent = tslib_1.__decorate([ + rendersItemType('Publication', ItemViewMode.Element), + rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Element), + Component({ + selector: 'ds-publication-list-element', + styleUrls: ['./publication-list-element.component.scss'], + templateUrl: './publication-list-element.component.html' + }) + /** + * The component for displaying a list element for an item of the type Publication + */ + ], PublicationListElementComponent); + return PublicationListElementComponent; +}(TypedItemSearchResultListElementComponent)); +export { PublicationListElementComponent }; +//# sourceMappingURL=publication-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js.map new file mode 100644 index 0000000000..a123f02c67 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"publication-list-element.component.js","sourceRoot":"","sources":["publication-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACzG,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAY/G;IAAqD,2DAAyC;IAH9F;;OAEG;IACH;;IACA,CAAC;IADY,+BAA+B;QAV3C,eAAe,CAAC,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC;QACpD,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,OAAO,CAAC;QACxD,SAAS,CAAC;YACT,QAAQ,EAAE,6BAA6B;YACvC,SAAS,EAAE,CAAC,2CAA2C,CAAC;YACxD,WAAW,EAAE,2CAA2C;SACzD,CAAC;QACF;;WAEG;OACU,+BAA+B,CAC3C;IAAD,sCAAC;CAAA,AADD,CAAqD,yCAAyC,GAC7F;SADY,+BAA+B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js new file mode 100644 index 0000000000..db22dc3493 --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js @@ -0,0 +1,42 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { hasValue } from '../../../empty.util'; +import { ITEM } from '../../../items/switcher/item-type-switcher.component'; +import { TruncatableService } from '../../../truncatable/truncatable.service'; +import { SearchResultListElementComponent } from '../../search-result-list-element/search-result-list-element.component'; +import { MetadataMap } from '../../../../core/shared/metadata.models'; +/** + * A generic component for displaying item list elements + */ +var TypedItemSearchResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(TypedItemSearchResultListElementComponent, _super); + function TypedItemSearchResultListElementComponent(truncatableService, obj) { + var _this = _super.call(this, undefined, truncatableService) || this; + _this.truncatableService = truncatableService; + _this.obj = obj; + if (hasValue(obj.indexableObject)) { + _this.object = obj; + _this.dso = _this.object.indexableObject; + } + else { + _this.object = { + indexableObject: obj, + hitHighlights: new MetadataMap() + }; + _this.dso = obj; + } + _this.item = _this.dso; + return _this; + } + TypedItemSearchResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-search-result', + template: '' + }), + tslib_1.__param(1, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [TruncatableService, Object]) + ], TypedItemSearchResultListElementComponent); + return TypedItemSearchResultListElementComponent; +}(SearchResultListElementComponent)); +export { TypedItemSearchResultListElementComponent }; +//# sourceMappingURL=typed-item-search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js.map new file mode 100644 index 0000000000..366db8595b --- /dev/null +++ b/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"typed-item-search-result-list-element.component.js","sourceRoot":"","sources":["typed-item-search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,sDAAsD,CAAC;AAE5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,gCAAgC,EAAE,MAAM,uEAAuE,CAAC;AACzH,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAEtE;;GAEG;AAKH;IAA+D,qEAAwD;IAGrH,mDACY,kBAAsC,EAC3B,GAA4B;QAFnD,YAIE,kBAAM,SAAS,EAAE,kBAAkB,CAAC,SAYrC;QAfW,wBAAkB,GAAlB,kBAAkB,CAAoB;QAC3B,SAAG,GAAH,GAAG,CAAyB;QAGjD,IAAI,QAAQ,CAAE,GAAW,CAAC,eAAe,CAAC,EAAE;YAC1C,KAAI,CAAC,MAAM,GAAG,GAAuB,CAAC;YACtC,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;SACxC;aAAM;YACL,KAAI,CAAC,MAAM,GAAG;gBACZ,eAAe,EAAE,GAAW;gBAC5B,aAAa,EAAE,IAAI,WAAW,EAAE;aACjC,CAAC;YACF,KAAI,CAAC,GAAG,GAAG,GAAW,CAAC;SACxB;QACD,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,GAAG,CAAC;;IACvB,CAAC;IAnBU,yCAAyC;QAJrD,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,QAAQ,EAAE,EAAE;SACb,CAAC;QAMG,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDADiB,kBAAkB;OAJvC,yCAAyC,CAoBrD;IAAD,gDAAC;CAAA,AApBD,CAA+D,gCAAgC,GAoB9F;SApBY,yCAAyC"} \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js b/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js new file mode 100644 index 0000000000..56f2a9fd1c --- /dev/null +++ b/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { MetadataRepresentationType } from '../../../../core/shared/metadata-representation/metadata-representation.model'; +import { Component } from '@angular/core'; +import { MetadataRepresentationListElementComponent } from '../metadata-representation-list-element.component'; +import { DEFAULT_ITEM_TYPE, ItemViewMode, rendersItemType } from '../../../items/item-type-decorator'; +var ItemMetadataListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemMetadataListElementComponent, _super); + function ItemMetadataListElementComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * The view-mode we're currently on + * @type {ElementViewMode} + */ + _this.viewMode = ItemViewMode.Element; + return _this; + } + ItemMetadataListElementComponent = tslib_1.__decorate([ + rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Metadata, MetadataRepresentationType.Item), + Component({ + selector: 'ds-item-metadata-list-element', + templateUrl: './item-metadata-list-element.component.html' + }) + /** + * A component for displaying MetadataRepresentation objects in the form of items + * It will send the MetadataRepresentation object along with ElementViewMode.SetElement to the ItemTypeSwitcherComponent, + * which will in his turn decide how to render the item as metadata. + */ + ], ItemMetadataListElementComponent); + return ItemMetadataListElementComponent; +}(MetadataRepresentationListElementComponent)); +export { ItemMetadataListElementComponent }; +//# sourceMappingURL=item-metadata-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js.map b/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js.map new file mode 100644 index 0000000000..93846918fa --- /dev/null +++ b/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-metadata-list-element.component.js","sourceRoot":"","sources":["item-metadata-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,+EAA+E,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,0CAA0C,EAAE,MAAM,mDAAmD,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAYtG;IAAsD,4DAA0C;IAVhG;QAAA,qEAgBC;QALC;;;WAGG;QACH,cAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;;IAClC,CAAC;IANY,gCAAgC;QAV5C,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,EAAE,0BAA0B,CAAC,IAAI,CAAC;QAC1F,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,WAAW,EAAE,6CAA6C;SAC3D,CAAC;QACF;;;;WAIG;OACU,gCAAgC,CAM5C;IAAD,uCAAC;CAAA,AAND,CAAsD,0CAA0C,GAM/F;SANY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js b/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js new file mode 100644 index 0000000000..1d17a0463d --- /dev/null +++ b/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { ITEM } from '../../items/switcher/item-type-switcher.component'; +var MetadataRepresentationListElementComponent = /** @class */ (function () { + function MetadataRepresentationListElementComponent(metadataRepresentation) { + this.metadataRepresentation = metadataRepresentation; + } + MetadataRepresentationListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-metadata-representation-list-element', + template: '' + }) + /** + * An abstract class for displaying a single MetadataRepresentation + */ + , + tslib_1.__param(0, Inject(ITEM)), + tslib_1.__metadata("design:paramtypes", [Object]) + ], MetadataRepresentationListElementComponent); + return MetadataRepresentationListElementComponent; +}()); +export { MetadataRepresentationListElementComponent }; +//# sourceMappingURL=metadata-representation-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js.map b/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js.map new file mode 100644 index 0000000000..672eef12dc --- /dev/null +++ b/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"metadata-representation-list-element.component.js","sourceRoot":"","sources":["metadata-representation-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,IAAI,EAAE,MAAM,mDAAmD,CAAC;AASzE;IACE,oDAAiC,sBAA8C;QAA9C,2BAAsB,GAAtB,sBAAsB,CAAwB;IAC/E,CAAC;IAFU,0CAA0C;QAPtD,SAAS,CAAC;YACT,QAAQ,EAAE,yCAAyC;YACnD,QAAQ,EAAE,EAAE;SACb,CAAC;QACF;;WAEG;;QAEY,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;;OADd,0CAA0C,CAGtD;IAAD,iDAAC;CAAA,AAHD,IAGC;SAHY,0CAA0C"} \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js b/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js new file mode 100644 index 0000000000..3cb7ab9598 --- /dev/null +++ b/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { MetadataRepresentationType } from '../../../../core/shared/metadata-representation/metadata-representation.model'; +import { Component } from '@angular/core'; +import { MetadataRepresentationListElementComponent } from '../metadata-representation-list-element.component'; +import { DEFAULT_ITEM_TYPE, ItemViewMode, rendersItemType } from '../../../items/item-type-decorator'; +var PlainTextMetadataListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(PlainTextMetadataListElementComponent, _super); + /** + * A component for displaying MetadataRepresentation objects in the form of plain text + * It will simply use the value retrieved from MetadataRepresentation.getValue() to display as plain text + */ + function PlainTextMetadataListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + PlainTextMetadataListElementComponent = tslib_1.__decorate([ + rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Metadata, MetadataRepresentationType.PlainText) + // For now, authority controlled fields are rendered the same way as plain text fields + , + rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Metadata, MetadataRepresentationType.AuthorityControlled), + Component({ + selector: 'ds-plain-text-metadata-list-element', + templateUrl: './plain-text-metadata-list-element.component.html' + }) + /** + * A component for displaying MetadataRepresentation objects in the form of plain text + * It will simply use the value retrieved from MetadataRepresentation.getValue() to display as plain text + */ + ], PlainTextMetadataListElementComponent); + return PlainTextMetadataListElementComponent; +}(MetadataRepresentationListElementComponent)); +export { PlainTextMetadataListElementComponent }; +//# sourceMappingURL=plain-text-metadata-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js.map b/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js.map new file mode 100644 index 0000000000..6bfb245e0e --- /dev/null +++ b/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"plain-text-metadata-list-element.component.js","sourceRoot":"","sources":["plain-text-metadata-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,+EAA+E,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,0CAA0C,EAAE,MAAM,mDAAmD,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAatG;IAA2D,iEAA0C;IAJrG;;;OAGG;IACH;;IACA,CAAC;IADY,qCAAqC;QAXjD,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,EAAE,0BAA0B,CAAC,SAAS,CAAC;QAChG,sFAAsF;;QACrF,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,EAAE,0BAA0B,CAAC,mBAAmB,CAAC;QACzG,SAAS,CAAC;YACT,QAAQ,EAAE,qCAAqC;YAC/C,WAAW,EAAE,mDAAmD;SACjE,CAAC;QACF;;;WAGG;OACU,qCAAqC,CACjD;IAAD,4CAAC;CAAA,AADD,CAA2D,0CAA0C,GACpG;SADY,qCAAqC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js new file mode 100644 index 0000000000..b7d1d5b283 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js @@ -0,0 +1,57 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { Location, LocationStrategy, PathLocationStrategy } from '@angular/common'; +import { find } from 'rxjs/operators'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; +import { isNotUndefined } from '../../../empty.util'; +import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model'; +import { ClaimedTaskMyDSpaceResult } from '../../../object-collection/shared/claimed-task-my-dspace-result.model'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders claimed task object for the mydspace result in the list view. + */ +var ClaimedMyDSpaceResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ClaimedMyDSpaceResultListElementComponent, _super); + function ClaimedMyDSpaceResultListElementComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * A boolean representing if to show submitter information + */ + _this.showSubmitter = true; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.VALIDATION; + return _this; + } + /** + * Initialize all instance variables + */ + ClaimedMyDSpaceResultListElementComponent.prototype.ngOnInit = function () { + this.initWorkflowItem(this.dso.workflowitem); + }; + /** + * Retrieve workflowitem from result object + */ + ClaimedMyDSpaceResultListElementComponent.prototype.initWorkflowItem = function (wfi$) { + var _this = this; + wfi$.pipe(find(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); })).subscribe(function (rd) { + _this.workflowitem = rd.payload; + }); + }; + ClaimedMyDSpaceResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-claimed-my-dspace-result-list-element', + styleUrls: ['../my-dspace-result-list-element.component.scss'], + templateUrl: './claimed-my-dspace-result-list-element.component.html', + providers: [Location, { provide: LocationStrategy, useClass: PathLocationStrategy }] + }), + renderElementsFor(ClaimedTaskMyDSpaceResult, SetViewMode.List), + renderElementsFor(ClaimedTask, SetViewMode.List) + ], ClaimedMyDSpaceResultListElementComponent); + return ClaimedMyDSpaceResultListElementComponent; +}(MyDSpaceResultListElementComponent)); +export { ClaimedMyDSpaceResultListElementComponent }; +//# sourceMappingURL=claimed-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js.map new file mode 100644 index 0000000000..6c4568c70f --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"claimed-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["claimed-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGnF,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAGjG,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,yDAAyD,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uEAAuE,CAAC;AAClH,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAUH;IAA+D,qEAA0E;IATzI;QAAA,qEA2CC;QAhCC;;WAEG;QACI,mBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,UAAU,CAAC;;IAwBpD,CAAC;IAjBC;;OAEG;IACH,4DAAQ,GAAR;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAoD,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,oEAAgB,GAAhB,UAAiB,IAA0C;QAA3D,iBAMC;QALC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,CACxF,CAAC,SAAS,CAAC,UAAC,EAA4B;YACvC,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAjCU,yCAAyC;QATrD,SAAS,CAAC;YACT,QAAQ,EAAE,0CAA0C;YACpD,SAAS,EAAE,CAAC,iDAAiD,CAAC;YAC9D,WAAW,EAAE,wDAAwD;YACrE,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;SACrF,CAAC;QAED,iBAAiB,CAAC,yBAAyB,EAAE,WAAW,CAAC,IAAI,CAAC;QAC9D,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC;OACpC,yCAAyC,CAkCrD;IAAD,gDAAC;CAAA,AAlCD,CAA+D,kCAAkC,GAkChG;SAlCY,yCAAyC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js b/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js new file mode 100644 index 0000000000..d7995f6703 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js @@ -0,0 +1,44 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Item } from '../../../../core/shared/item.model'; +import { fadeInOut } from '../../../animations/fade'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { MyDSpaceResult } from '../../../../+my-dspace-page/my-dspace-result.model'; +/** + * This component show metadata for the given item object in the list view. + */ +var ItemListPreviewComponent = /** @class */ (function () { + function ItemListPreviewComponent() { + /** + * A boolean representing if to show submitter information + */ + this.showSubmitter = false; + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Item) + ], ItemListPreviewComponent.prototype, "item", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", MyDSpaceResult) + ], ItemListPreviewComponent.prototype, "object", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], ItemListPreviewComponent.prototype, "status", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ItemListPreviewComponent.prototype, "showSubmitter", void 0); + ItemListPreviewComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-list-preview', + styleUrls: ['item-list-preview.component.scss'], + templateUrl: 'item-list-preview.component.html', + animations: [fadeInOut] + }) + ], ItemListPreviewComponent); + return ItemListPreviewComponent; +}()); +export { ItemListPreviewComponent }; +//# sourceMappingURL=item-list-preview.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js.map new file mode 100644 index 0000000000..64d32eb7c1 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-list-preview.component.js","sourceRoot":"","sources":["item-list-preview.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAEpF;;GAEG;AAOH;IANA;QAuBE;;WAEG;QACM,kBAAa,GAAG,KAAK,CAAC;IAEjC,CAAC;IAjBU;QAAR,KAAK,EAAE;0CAAO,IAAI;0DAAC;IAKX;QAAR,KAAK,EAAE;0CAAS,cAAc;4DAAM;IAK5B;QAAR,KAAK,EAAE;;4DAAgC;IAK/B;QAAR,KAAK,EAAE;;mEAAuB;IApBpB,wBAAwB;QANpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,kCAAkC,CAAC;YAC/C,WAAW,EAAE,kCAAkC;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;OACW,wBAAwB,CAsBpC;IAAD,+BAAC;CAAA,AAtBD,IAsBC;SAtBY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js new file mode 100644 index 0000000000..d5ca8c4e14 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js @@ -0,0 +1,32 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; +import { ItemMyDSpaceResult } from '../../../object-collection/shared/item-my-dspace-result.model'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders item object for the mydspace result in the list view. + */ +var ItemMyDSpaceResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemMyDSpaceResultListElementComponent, _super); + function ItemMyDSpaceResultListElementComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.ARCHIVED; + return _this; + } + ItemMyDSpaceResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-workspaceitem-my-dspace-result-list-element', + styleUrls: ['../my-dspace-result-list-element.component.scss', './item-my-dspace-result-list-element.component.scss'], + templateUrl: './item-my-dspace-result-list-element.component.html' + }), + renderElementsFor(ItemMyDSpaceResult, SetViewMode.List) + ], ItemMyDSpaceResultListElementComponent); + return ItemMyDSpaceResultListElementComponent; +}(MyDSpaceResultListElementComponent)); +export { ItemMyDSpaceResultListElementComponent }; +//# sourceMappingURL=item-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js.map new file mode 100644 index 0000000000..a9a3cadd53 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["item-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAEjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,+DAA+D,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAQH;IAA4D,kEAA4D;IAPxH;QAAA,qEAcC;QALC;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IAElD,CAAC;IAPY,sCAAsC;QAPlD,SAAS,CAAC;YACT,QAAQ,EAAE,gDAAgD;YAC1D,SAAS,EAAE,CAAC,iDAAiD,EAAE,qDAAqD,CAAC;YACrH,WAAW,EAAE,qDAAqD;SACnE,CAAC;QAED,iBAAiB,CAAC,kBAAkB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC3C,sCAAsC,CAOlD;IAAD,6CAAC;CAAA,AAPD,CAA4D,kCAAkC,GAO7F;SAPY,sCAAsC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js new file mode 100644 index 0000000000..4482b5a481 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js @@ -0,0 +1,51 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { Metadata } from '../../../core/shared/metadata.utils'; +var MyDSpaceResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(MyDSpaceResultListElementComponent, _super); + /** + * Initialize instance variables + * + * @param {ListableObject} listable + * @param {number} index + */ + function MyDSpaceResultListElementComponent(listable, index) { + var _this = _super.call(this, listable) || this; + _this.listable = listable; + _this.index = index; + _this.dso = _this.object.indexableObject; + _this.dsoIndex = _this.index; + return _this; + } + /** + * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string[]} the matching string values or an empty array. + */ + MyDSpaceResultListElementComponent.prototype.allMetadataValues = function (keyOrKeys) { + return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys); + }; + /** + * Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string} the first matching string value, or `undefined`. + */ + MyDSpaceResultListElementComponent.prototype.firstMetadataValue = function (keyOrKeys) { + return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys); + }; + MyDSpaceResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-my-dspace-result-list-element', + template: "" + }), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__param(1, Inject('indexElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object, Number]) + ], MyDSpaceResultListElementComponent); + return MyDSpaceResultListElementComponent; +}(AbstractListableElementComponent)); +export { MyDSpaceResultListElementComponent }; +//# sourceMappingURL=my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js.map new file mode 100644 index 0000000000..dae604983a --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"my-dspace-result-list-element.component.js","sourceRoot":"","sources":["my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAGhJ,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAM/D;IAA6G,8DAAmC;IAY9I;;;;;OAKG;IACH,4CAA2D,QAAwB,EACzB,KAAa;QADvE,YAEE,kBAAM,QAAQ,CAAC,SAGhB;QAL0D,cAAQ,GAAR,QAAQ,CAAgB;QACzB,WAAK,GAAL,KAAK,CAAQ;QAErE,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QACvC,KAAI,CAAC,QAAQ,GAAG,KAAI,CAAC,KAAK,CAAC;;IAC7B,CAAC;IAED;;;;;OAKG;IACH,8DAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;;;OAKG;IACH,+DAAkB,GAAlB,UAAmB,SAA4B;QAC7C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IA3CU,kCAAkC;QAJ9C,SAAS,CAAC;YACT,QAAQ,EAAE,kCAAkC;YAC5C,QAAQ,EAAE,EAAE;SACb,CAAC;QAmBoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;QAC/B,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;;OAnBvC,kCAAkC,CA6C9C;IAAD,yCAAC;CAAA,AA7CD,CAA6G,gCAAgC,GA6C5I;SA7CY,kCAAkC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js new file mode 100644 index 0000000000..d14662ebcd --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js @@ -0,0 +1,60 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { find } from 'rxjs/operators'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; +import { isNotUndefined } from '../../../empty.util'; +import { PoolTask } from '../../../../core/tasks/models/pool-task-object.model'; +import { PoolTaskMyDSpaceResult } from '../../../object-collection/shared/pool-task-my-dspace-result.model'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders pool task object for the mydspace result in the list view. + */ +var PoolMyDSpaceResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(PoolMyDSpaceResultListElementComponent, _super); + function PoolMyDSpaceResultListElementComponent(listable, index) { + var _this = _super.call(this, listable, index) || this; + _this.listable = listable; + _this.index = index; + /** + * A boolean representing if to show submitter information + */ + _this.showSubmitter = true; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.WAITING_CONTROLLER; + return _this; + } + /** + * Initialize all instance variables + */ + PoolMyDSpaceResultListElementComponent.prototype.ngOnInit = function () { + this.initWorkflowItem(this.dso.workflowitem); + }; + /** + * Retrieve workflowitem from result object + */ + PoolMyDSpaceResultListElementComponent.prototype.initWorkflowItem = function (wfi$) { + var _this = this; + wfi$.pipe(find(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); })).subscribe(function (rd) { + _this.workflowitem = rd.payload; + }); + }; + PoolMyDSpaceResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-pool-my-dspace-result-list-element', + styleUrls: ['../my-dspace-result-list-element.component.scss'], + templateUrl: './pool-my-dspace-result-list-element.component.html', + }), + renderElementsFor(PoolTaskMyDSpaceResult, SetViewMode.List), + renderElementsFor(PoolTask, SetViewMode.List), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__param(1, Inject('indexElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object, Number]) + ], PoolMyDSpaceResultListElementComponent); + return PoolMyDSpaceResultListElementComponent; +}(MyDSpaceResultListElementComponent)); +export { PoolMyDSpaceResultListElementComponent }; +//# sourceMappingURL=pool-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js.map new file mode 100644 index 0000000000..a67a5fd126 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pool-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["pool-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAGjG,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAE,QAAQ,EAAE,MAAM,sDAAsD,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,oEAAoE,CAAC;AAC5G,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAA4D,kEAAoE;IAiB9H,gDAAoD,QAAwB,EACzB,KAAa;QADhE,YAEE,kBAAM,QAAQ,EAAE,KAAK,CAAC,SACvB;QAHmD,cAAQ,GAAR,QAAQ,CAAgB;QACzB,WAAK,GAAL,KAAK,CAAQ;QAhBhE;;WAEG;QACI,mBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,kBAAkB,CAAC;;IAU1D,CAAC;IAED;;OAEG;IACH,yDAAQ,GAAR;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAoD,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,iEAAgB,GAAhB,UAAiB,IAA0C;QAA3D,iBAMC;QALC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,CACxF,CAAC,SAAS,CAAC,UAAC,EAA4B;YACvC,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAtCU,sCAAsC;QARlD,SAAS,CAAC;YACT,QAAQ,EAAE,uCAAuC;YACjD,SAAS,EAAE,CAAC,iDAAiD,CAAC;YAC9D,WAAW,EAAE,qDAAqD;SACnE,CAAC;QAED,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC,IAAI,CAAC;QAC3D,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC;QAkB/B,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;QAC/B,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;;OAlBhC,sCAAsC,CAuClD;IAAD,6CAAC;CAAA,AAvCD,CAA4D,kCAAkC,GAuC7F;SAvCY,sCAAsC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js new file mode 100644 index 0000000000..3dbd5ebcf6 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js @@ -0,0 +1,51 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { find } from 'rxjs/operators'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; +import { isNotUndefined } from '../../../empty.util'; +import { WorkflowitemMyDSpaceResult } from '../../../object-collection/shared/workflowitem-my-dspace-result.model'; +import { Workflowitem } from '../../../../core/submission/models/workflowitem.model'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders workflowitem object for the mydspace result in the list view. + */ +var WorkflowitemMyDSpaceResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(WorkflowitemMyDSpaceResultListElementComponent, _super); + function WorkflowitemMyDSpaceResultListElementComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.WORKFLOW; + return _this; + } + /** + * Initialize all instance variables + */ + WorkflowitemMyDSpaceResultListElementComponent.prototype.ngOnInit = function () { + this.initItem(this.dso.item); + }; + /** + * Retrieve item from result object + */ + WorkflowitemMyDSpaceResultListElementComponent.prototype.initItem = function (item$) { + var _this = this; + item$.pipe(find(function (rd) { return rd.hasSucceeded && isNotUndefined(rd.payload); })).subscribe(function (rd) { + _this.item = rd.payload; + }); + }; + WorkflowitemMyDSpaceResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-workflowitem-my-dspace-result-list-element', + styleUrls: ['../my-dspace-result-list-element.component.scss'], + templateUrl: './workflowitem-my-dspace-result-list-element.component.html', + }), + renderElementsFor(WorkflowitemMyDSpaceResult, SetViewMode.List), + renderElementsFor(Workflowitem, SetViewMode.List) + ], WorkflowitemMyDSpaceResultListElementComponent); + return WorkflowitemMyDSpaceResultListElementComponent; +}(MyDSpaceResultListElementComponent)); +export { WorkflowitemMyDSpaceResultListElementComponent }; +//# sourceMappingURL=workflowitem-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js.map new file mode 100644 index 0000000000..cd921c06f2 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workflowitem-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["workflowitem-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAGjG,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uEAAuE,CAAC;AACnH,OAAO,EAAE,YAAY,EAAE,MAAM,uDAAuD,CAAC;AAErF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAAoE,0EAA4E;IARhJ;QAAA,qEAsCC;QAvBC;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IAoBlD,CAAC;IAlBC;;OAEG;IACH,iEAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAoC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,iEAAQ,GAAR,UAAS,KAAmC;QAA5C,iBAMC;QALC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC9E,CAAC,SAAS,CAAC,UAAC,EAAoB;YAC/B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IA5BU,8CAA8C;QAR1D,SAAS,CAAC;YACT,QAAQ,EAAE,+CAA+C;YACzD,SAAS,EAAE,CAAC,iDAAiD,CAAC;YAC9D,WAAW,EAAE,6DAA6D;SAC3E,CAAC;QAED,iBAAiB,CAAC,0BAA0B,EAAE,WAAW,CAAC,IAAI,CAAC;QAC/D,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC;OACrC,8CAA8C,CA8B1D;IAAD,qDAAC;CAAA,AA9BD,CAAoE,kCAAkC,GA8BrG;SA9BY,8CAA8C"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js new file mode 100644 index 0000000000..7f2410b377 --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js @@ -0,0 +1,49 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { find } from 'rxjs/operators'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; +import { WorkspaceitemMyDSpaceResult } from '../../../object-collection/shared/workspaceitem-my-dspace-result.model'; +import { isNotUndefined } from '../../../empty.util'; +import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; +import { SetViewMode } from '../../../view-mode'; +/** + * This component renders workspaceitem object for the mydspace result in the list view. + */ +var WorkspaceitemMyDSpaceResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(WorkspaceitemMyDSpaceResultListElementComponent, _super); + function WorkspaceitemMyDSpaceResultListElementComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Represent item's status + */ + _this.status = MyDspaceItemStatusType.WORKSPACE; + return _this; + } + /** + * Initialize all instance variables + */ + WorkspaceitemMyDSpaceResultListElementComponent.prototype.ngOnInit = function () { + this.initItem(this.dso.item); + }; + /** + * Retrieve item from result object + */ + WorkspaceitemMyDSpaceResultListElementComponent.prototype.initItem = function (item$) { + var _this = this; + item$.pipe(find(function (rd) { return rd.hasSucceeded && isNotUndefined(rd.payload); })).subscribe(function (rd) { + _this.item = rd.payload; + }); + }; + WorkspaceitemMyDSpaceResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-workspaceitem-my-dspace-result-list-element', + styleUrls: ['../my-dspace-result-list-element.component.scss', './workspaceitem-my-dspace-result-list-element.component.scss'], + templateUrl: './workspaceitem-my-dspace-result-list-element.component.html', + }), + renderElementsFor(WorkspaceitemMyDSpaceResult, SetViewMode.List) + ], WorkspaceitemMyDSpaceResultListElementComponent); + return WorkspaceitemMyDSpaceResultListElementComponent; +}(MyDSpaceResultListElementComponent)); +export { WorkspaceitemMyDSpaceResultListElementComponent }; +//# sourceMappingURL=workspaceitem-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js.map new file mode 100644 index 0000000000..ef3c4f780e --- /dev/null +++ b/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"workspaceitem-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["workspaceitem-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAGjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,wEAAwE,CAAC;AAErH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAQH;IAAqE,2EAA8E;IAPnJ;QAAA,qEAoCC;QAtBC;;WAEG;QACH,YAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC;;IAmB5C,CAAC;IAjBC;;OAEG;IACH,kEAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAoC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,kEAAQ,GAAR,UAAS,KAAmC;QAA5C,iBAMC;QALC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC9E,CAAC,SAAS,CAAC,UAAC,EAAoB;YAC/B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IA5BU,+CAA+C;QAP3D,SAAS,CAAC;YACT,QAAQ,EAAE,gDAAgD;YAC1D,SAAS,EAAE,CAAC,iDAAiD,EAAE,8DAA8D,CAAC;YAC9H,WAAW,EAAE,8DAA8D;SAC5E,CAAC;QAED,iBAAiB,CAAC,2BAA2B,EAAE,WAAW,CAAC,IAAI,CAAC;OACpD,+CAA+C,CA6B3D;IAAD,sDAAC;CAAA,AA7BD,CAAqE,kCAAkC,GA6BtG;SA7BY,+CAA+C"} \ No newline at end of file diff --git a/src/app/shared/object-list/object-list.component.js b/src/app/shared/object-list/object-list.component.js new file mode 100644 index 0000000000..84aa1df651 --- /dev/null +++ b/src/app/shared/object-list/object-list.component.js @@ -0,0 +1,127 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; +import { SortOptions } from '../../core/cache/models/sort-options.model'; +import { RemoteData } from '../../core/data/remote-data'; +import { fadeIn } from '../animations/fade'; +import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; +var ObjectListComponent = /** @class */ (function () { + function ObjectListComponent() { + this.hasBorder = false; + this.hideGear = false; + this.hidePagerWhenSinglePage = true; + /** + * An event fired when the page is changed. + * Event's payload equals to the newly selected page. + */ + this.change = new EventEmitter(); + /** + * An event fired when the page is changed. + * Event's payload equals to the newly selected page. + */ + this.pageChange = new EventEmitter(); + /** + * An event fired when the page wsize is changed. + * Event's payload equals to the newly selected page size. + */ + this.pageSizeChange = new EventEmitter(); + /** + * An event fired when the sort direction is changed. + * Event's payload equals to the newly selected sort direction. + */ + this.sortDirectionChange = new EventEmitter(); + this.paginationChange = new EventEmitter(); + /** + * An event fired when the sort field is changed. + * Event's payload equals to the newly selected sort field. + */ + this.sortFieldChange = new EventEmitter(); + this.data = {}; + } + Object.defineProperty(ObjectListComponent.prototype, "objects", { + get: function () { + return this._objects; + }, + set: function (objects) { + this._objects = objects; + }, + enumerable: true, + configurable: true + }); + ObjectListComponent.prototype.onPageChange = function (event) { + this.pageChange.emit(event); + }; + ObjectListComponent.prototype.onPageSizeChange = function (event) { + this.pageSizeChange.emit(event); + }; + ObjectListComponent.prototype.onSortDirectionChange = function (event) { + this.sortDirectionChange.emit(event); + }; + ObjectListComponent.prototype.onSortFieldChange = function (event) { + this.sortFieldChange.emit(event); + }; + ObjectListComponent.prototype.onPaginationChange = function (event) { + this.paginationChange.emit(event); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", PaginationComponentOptions) + ], ObjectListComponent.prototype, "config", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SortOptions) + ], ObjectListComponent.prototype, "sortConfig", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectListComponent.prototype, "hasBorder", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectListComponent.prototype, "hideGear", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ObjectListComponent.prototype, "hidePagerWhenSinglePage", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", RemoteData), + tslib_1.__metadata("design:paramtypes", [RemoteData]) + ], ObjectListComponent.prototype, "objects", null); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectListComponent.prototype, "change", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectListComponent.prototype, "pageChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectListComponent.prototype, "pageSizeChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectListComponent.prototype, "sortDirectionChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectListComponent.prototype, "paginationChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], ObjectListComponent.prototype, "sortFieldChange", void 0); + ObjectListComponent = tslib_1.__decorate([ + Component({ + changeDetection: ChangeDetectionStrategy.Default, + encapsulation: ViewEncapsulation.Emulated, + selector: 'ds-object-list', + styleUrls: ['./object-list.component.scss'], + templateUrl: './object-list.component.html', + animations: [fadeIn] + }) + ], ObjectListComponent); + return ObjectListComponent; +}()); +export { ObjectListComponent }; +//# sourceMappingURL=object-list.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/object-list.component.js.map b/src/app/shared/object-list/object-list.component.js.map new file mode 100644 index 0000000000..83763343c8 --- /dev/null +++ b/src/app/shared/object-list/object-list.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-list.component.js","sourceRoot":"","sources":["object-list.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js b/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js new file mode 100644 index 0000000000..eaa02851f0 --- /dev/null +++ b/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { SearchResultListElementComponent } from '../search-result-list-element.component'; +import { SetViewMode } from '../../../view-mode'; +import { CollectionSearchResult } from '../../../object-collection/shared/collection-search-result.model'; +var CollectionSearchResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(CollectionSearchResultListElementComponent, _super); + function CollectionSearchResultListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + CollectionSearchResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-collection-search-result-list-element', + styleUrls: ['../search-result-list-element.component.scss', 'collection-search-result-list-element.component.scss'], + templateUrl: 'collection-search-result-list-element.component.html' + }), + renderElementsFor(CollectionSearchResult, SetViewMode.List) + ], CollectionSearchResultListElementComponent); + return CollectionSearchResultListElementComponent; +}(SearchResultListElementComponent)); +export { CollectionSearchResultListElementComponent }; +//# sourceMappingURL=collection-search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js.map b/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js.map new file mode 100644 index 0000000000..39a63f0aac --- /dev/null +++ b/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"collection-search-result-list-element.component.js","sourceRoot":"","sources":["collection-search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAE5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kEAAkE,CAAC;AAS1G;IAAgE,sEAAoE;IAApI;;IAAsI,CAAC;IAA1H,0CAA0C;QAPtD,SAAS,CAAC;YACT,QAAQ,EAAE,0CAA0C;YACpD,SAAS,EAAE,CAAC,8CAA8C,EAAE,sDAAsD,CAAC;YACnH,WAAW,EAAE,sDAAsD;SACpE,CAAC;QAED,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC/C,0CAA0C,CAAgF;IAAD,iDAAC;CAAA,AAAvI,CAAgE,gCAAgC,GAAuC;SAA1H,0CAA0C"} \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js b/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js new file mode 100644 index 0000000000..4af8ec2869 --- /dev/null +++ b/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js @@ -0,0 +1,23 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { SearchResultListElementComponent } from '../search-result-list-element.component'; +import { SetViewMode } from '../../../view-mode'; +import { CommunitySearchResult } from '../../../object-collection/shared/community-search-result.model'; +var CommunitySearchResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(CommunitySearchResultListElementComponent, _super); + function CommunitySearchResultListElementComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + CommunitySearchResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-community-search-result-list-element', + styleUrls: ['../search-result-list-element.component.scss', 'community-search-result-list-element.component.scss'], + templateUrl: 'community-search-result-list-element.component.html' + }), + renderElementsFor(CommunitySearchResult, SetViewMode.List) + ], CommunitySearchResultListElementComponent); + return CommunitySearchResultListElementComponent; +}(SearchResultListElementComponent)); +export { CommunitySearchResultListElementComponent }; +//# sourceMappingURL=community-search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js.map b/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js.map new file mode 100644 index 0000000000..094fe9dd17 --- /dev/null +++ b/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"community-search-result-list-element.component.js","sourceRoot":"","sources":["community-search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAE5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iEAAiE,CAAC;AASxG;IAA+D,qEAAkE;IAAjI;;IAEA,CAAC;IAFY,yCAAyC;QAPrD,SAAS,CAAC;YACT,QAAQ,EAAE,yCAAyC;YACnD,SAAS,EAAE,CAAC,8CAA8C,EAAE,qDAAqD,CAAC;YAClH,WAAW,EAAE,qDAAqD;SACnE,CAAC;QAED,iBAAiB,CAAC,qBAAqB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC9C,yCAAyC,CAErD;IAAD,gDAAC;CAAA,AAFD,CAA+D,gCAAgC,GAE9F;SAFY,yCAAyC"} \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js new file mode 100644 index 0000000000..b6d7e7175f --- /dev/null +++ b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js @@ -0,0 +1,28 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { focusBackground } from '../../../animations/focus'; +import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; +import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model'; +import { SetViewMode } from '../../../view-mode'; +import { SearchResultListElementComponent } from '../search-result-list-element.component'; +import { ItemViewMode } from '../../../items/item-type-decorator'; +var ItemSearchResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(ItemSearchResultListElementComponent, _super); + function ItemSearchResultListElementComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.viewMode = ItemViewMode.Element; + return _this; + } + ItemSearchResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-item-search-result-list-element', + styleUrls: ['../search-result-list-element.component.scss', 'item-search-result-list-element.component.scss'], + templateUrl: 'item-search-result-list-element.component.html', + animations: [focusBackground], + }), + renderElementsFor(ItemSearchResult, SetViewMode.List) + ], ItemSearchResultListElementComponent); + return ItemSearchResultListElementComponent; +}(SearchResultListElementComponent)); +export { ItemSearchResultListElementComponent }; +//# sourceMappingURL=item-search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js.map b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js.map new file mode 100644 index 0000000000..a25b45ae04 --- /dev/null +++ b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-search-result-list-element.component.js","sourceRoot":"","sources":["item-search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAG5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4DAA4D,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAWlE;IAA0D,gEAAwD;IATlH;QAAA,qEAYC;QAFC,cAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;;IAElC,CAAC;IAHY,oCAAoC;QAThD,SAAS,CAAC;YACT,QAAQ,EAAE,oCAAoC;YAC9C,SAAS,EAAE,CAAC,8CAA8C,EAAE,gDAAgD,CAAC;YAC7G,WAAW,EAAE,gDAAgD;YAC7D,UAAU,EAAE,CAAC,eAAe,CAAC;SAE9B,CAAC;QAED,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,CAAC,IAAI,CAAC;OACzC,oCAAoC,CAGhD;IAAD,2CAAC;CAAA,AAHD,CAA0D,gCAAgC,GAGzF;SAHY,oCAAoC"} \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js b/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js new file mode 100644 index 0000000000..de4e3557a3 --- /dev/null +++ b/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js @@ -0,0 +1,50 @@ +import * as tslib_1 from "tslib"; +import { Component, Inject } from '@angular/core'; +import { hasValue } from '../../empty.util'; +import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { TruncatableService } from '../../truncatable/truncatable.service'; +import { Metadata } from '../../../core/shared/metadata.utils'; +var SearchResultListElementComponent = /** @class */ (function (_super) { + tslib_1.__extends(SearchResultListElementComponent, _super); + function SearchResultListElementComponent(listable, truncatableService) { + var _this = _super.call(this, listable) || this; + _this.listable = listable; + _this.truncatableService = truncatableService; + if (hasValue(_this.object)) { + _this.dso = _this.object.indexableObject; + } + return _this; + } + /** + * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string[]} the matching string values or an empty array. + */ + SearchResultListElementComponent.prototype.allMetadataValues = function (keyOrKeys) { + return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys); + }; + /** + * Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights. + * + * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. + * @returns {string} the first matching string value, or `undefined`. + */ + SearchResultListElementComponent.prototype.firstMetadataValue = function (keyOrKeys) { + return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys); + }; + SearchResultListElementComponent.prototype.isCollapsed = function () { + return this.truncatableService.isCollapsed(this.dso.id); + }; + SearchResultListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-result-list-element', + template: "" + }), + tslib_1.__param(0, Inject('objectElementProvider')), + tslib_1.__metadata("design:paramtypes", [Object, TruncatableService]) + ], SearchResultListElementComponent); + return SearchResultListElementComponent; +}(AbstractListableElementComponent)); +export { SearchResultListElementComponent }; +//# sourceMappingURL=search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js.map b/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js.map new file mode 100644 index 0000000000..bd607602cf --- /dev/null +++ b/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-result-list-element.component.js","sourceRoot":"","sources":["search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAKlD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAO/D;IAAyG,4DAAmC;IAG1I,0CAA2D,QAAwB,EAAY,kBAAsC;QAArI,YACE,kBAAM,QAAQ,CAAC,SAIhB;QAL0D,cAAQ,GAAR,QAAQ,CAAgB;QAAY,wBAAkB,GAAlB,kBAAkB,CAAoB;QAEnI,IAAI,QAAQ,CAAC,KAAI,CAAC,MAAM,CAAC,EAAE;YACzB,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;SACxC;;IACH,CAAC;IAED;;;;;OAKG;IACH,4DAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;;;OAKG;IACH,6DAAkB,GAAlB,UAAmB,SAA4B;QAC7C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAED,sDAAW,GAAX;QACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IAhCU,gCAAgC;QAL5C,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,QAAQ,EAAE,EAAE;SACb,CAAC;QAKoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;yDAAgE,kBAAkB;OAH1H,gCAAgC,CAiC5C;IAAD,uCAAC;CAAA,AAjCD,CAAyG,gCAAgC,GAiCxI;SAjCY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js b/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js new file mode 100644 index 0000000000..e44c8134cf --- /dev/null +++ b/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js @@ -0,0 +1,42 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input } from '@angular/core'; +import { SetViewMode } from '../../view-mode'; +import { rendersDSOType } from '../../object-collection/shared/dso-element-decorator'; +var WrapperListElementComponent = /** @class */ (function () { + function WrapperListElementComponent(injector) { + this.injector = injector; + } + WrapperListElementComponent.prototype.ngOnInit = function () { + var _this = this; + this.objectInjector = Injector.create({ + providers: [ + { provide: 'objectElementProvider', useFactory: function () { return (_this.object); }, deps: [] }, + { provide: 'indexElementProvider', useFactory: function () { return (_this.index); }, deps: [] } + ], + parent: this.injector + }); + }; + WrapperListElementComponent.prototype.getListElement = function () { + var f = this.object.constructor; + return rendersDSOType(f, SetViewMode.List); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], WrapperListElementComponent.prototype, "object", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], WrapperListElementComponent.prototype, "index", void 0); + WrapperListElementComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-wrapper-list-element', + styleUrls: ['./wrapper-list-element.component.scss'], + templateUrl: './wrapper-list-element.component.html' + }), + tslib_1.__metadata("design:paramtypes", [Injector]) + ], WrapperListElementComponent); + return WrapperListElementComponent; +}()); +export { WrapperListElementComponent }; +//# sourceMappingURL=wrapper-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js.map b/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js.map new file mode 100644 index 0000000000..c40024ad26 --- /dev/null +++ b/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"wrapper-list-element.component.js","sourceRoot":"","sources":["wrapper-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAA;AAQrF;IAKE,qCAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IAAG,CAAC;IAE1C,8CAAQ,GAAR;QAAA,iBAQC;QAPC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YAClC,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,MAAM,CAAC,EAAb,CAAa,EAAE,IAAI,EAAC,EAAE,EAAE;gBAC9E,EAAE,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,KAAK,CAAC,EAAZ,CAAY,EAAE,IAAI,EAAC,EAAE,EAAE;aAC7E;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC,CAAC;IACL,CAAC;IAED,oDAAc,GAAd;QACE,IAAM,CAAC,GAAuC,IAAI,CAAC,MAAM,CAAC,WAAiD,CAAC;QAC5G,OAAO,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAnBQ;QAAR,KAAK,EAAE;;+DAAwB;IACvB;QAAR,KAAK,EAAE;;8DAAe;IAFZ,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;iDAM8B,QAAQ;OAL3B,2BAA2B,CAqBvC;IAAD,kCAAC;CAAA,AArBD,IAqBC;SArBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object.util.js b/src/app/shared/object.util.js new file mode 100644 index 0000000000..cb41492d65 --- /dev/null +++ b/src/app/shared/object.util.js @@ -0,0 +1,58 @@ +import * as tslib_1 from "tslib"; +import { isNotEmpty } from './empty.util'; +import { isEqual, isObject, transform } from 'lodash'; +/** + * Returns passed object without specified property + */ +export function deleteProperty(object, key) { + var _a = key, deletedKey = object[_a], otherKeys = tslib_1.__rest(object, [typeof _a === "symbol" ? _a : _a + ""]); + return otherKeys; +} +/** + * Returns true if the passed object is empty or has only empty property. + * hasOnlyEmptyProperties({}); // true + * hasOnlyEmptyProperties({a: null}); // true + * hasOnlyEmptyProperties({a: []}); // true + * hasOnlyEmptyProperties({a: [], b: {}); // true + * hasOnlyEmptyProperties({a: 'a', b: 'b'}); // false + * hasOnlyEmptyProperties({a: [], b: 'b'}); // false + */ +export function hasOnlyEmptyProperties(obj) { + var objectType = typeof obj; + if (objectType === 'object') { + if (Object.keys(obj).length === 0) { + return true; + } + else { + var result = true; + for (var key in obj) { + if (isNotEmpty(obj[key])) { + result = false; + break; + } + } + return result; + } + } +} +/** + * Returns diff from the base object. + * difference({}, {}); // {} + * difference({a: 'a', b: 'b'}, {a: 'a'}); // {b: 'b'} + * difference({a: 'a', b: {}}, {a: 'a'}); // {} + * difference({a: 'a'}, {a: 'a', b: 'b'}); // {} + */ +export function difference(object, base) { + var changes = function (o, b) { + return transform(o, function (result, value, key) { + if (!isEqual(value, b[key]) && isNotEmpty(value)) { + var resultValue = (isObject(value) && isObject(b[key])) ? changes(value, b[key]) : value; + if (!hasOnlyEmptyProperties(resultValue)) { + result[key] = resultValue; + } + } + }); + }; + return changes(object, base); +} +//# sourceMappingURL=object.util.js.map \ No newline at end of file diff --git a/src/app/shared/object.util.js.map b/src/app/shared/object.util.js.map new file mode 100644 index 0000000000..21c70166b1 --- /dev/null +++ b/src/app/shared/object.util.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object.util.js","sourceRoot":"","sources":["object.util.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEtD;;GAEG;AACH,MAAM,yBAAyB,MAAc,EAAE,GAAW;IACxD,IAAO,QAAK,EAAL,uBAAiB,EAAE,2EAAsB,CAAC;IACjD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,iCAAiC,GAAW;IAChD,IAAM,UAAU,GAAG,OAAO,GAAG,CAAC;IAC9B,IAAI,UAAU,KAAK,QAAQ,EAAE;QAC3B,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC;SACb;aAAM;YACL,IAAI,MAAM,GAAG,IAAI,CAAC;YAClB,KAAK,IAAM,GAAG,IAAI,GAAG,EAAE;gBACrB,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;oBACxB,MAAM,GAAG,KAAK,CAAC;oBACf,MAAM;iBACP;aACF;YACD,OAAO,MAAM,CAAC;SACf;KACF;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,qBAAqB,MAAc,EAAE,IAAY;IACrD,IAAM,OAAO,GAAG,UAAC,CAAC,EAAE,CAAC;QACnB,OAAO,SAAS,CAAC,CAAC,EAAE,UAAC,MAAM,EAAE,KAAK,EAAE,GAAG;YACrC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;gBAChD,IAAM,WAAW,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC3F,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,EAAE;oBACxC,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;iBAC3B;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,OAAO,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/pagination/pagination-component-options.model.js b/src/app/shared/pagination/pagination-component-options.model.js new file mode 100644 index 0000000000..0c638d3eb9 --- /dev/null +++ b/src/app/shared/pagination/pagination-component-options.model.js @@ -0,0 +1,24 @@ +import * as tslib_1 from "tslib"; +import { NgbPaginationConfig } from '@ng-bootstrap/ng-bootstrap'; +var PaginationComponentOptions = /** @class */ (function (_super) { + tslib_1.__extends(PaginationComponentOptions, _super); + function PaginationComponentOptions() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * The active page. + */ + _this.currentPage = 1; + /** + * Maximum number of pages to display. + */ + _this.maxSize = 10; + /** + * A number array that represents options for a context pagination limit. + */ + _this.pageSizeOptions = [1, 5, 10, 20, 40, 60, 80, 100]; + return _this; + } + return PaginationComponentOptions; +}(NgbPaginationConfig)); +export { PaginationComponentOptions }; +//# sourceMappingURL=pagination-component-options.model.js.map \ No newline at end of file diff --git a/src/app/shared/pagination/pagination-component-options.model.js.map b/src/app/shared/pagination/pagination-component-options.model.js.map new file mode 100644 index 0000000000..f4339e7b7e --- /dev/null +++ b/src/app/shared/pagination/pagination-component-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pagination-component-options.model.js","sourceRoot":"","sources":["pagination-component-options.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE;IAAgD,sDAAmB;IAAnE;QAAA,qEA2BC;QApBC;;WAEG;QACH,iBAAW,GAAG,CAAC,CAAC;QAEhB;;WAEG;QACH,aAAO,GAAG,EAAE,CAAC;QAEb;;WAEG;QACH,qBAAe,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;;IAO9D,CAAC;IAAD,iCAAC;AAAD,CAAC,AA3BD,CAAgD,mBAAmB,GA2BlE"} \ No newline at end of file diff --git a/src/app/shared/pagination/pagination.component.js b/src/app/shared/pagination/pagination.component.js new file mode 100644 index 0000000000..42733d0fc3 --- /dev/null +++ b/src/app/shared/pagination/pagination.component.js @@ -0,0 +1,474 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { Observable } from 'rxjs'; +import { isNumeric } from 'rxjs/internal-compatibility'; +import { isEqual, isObject, transform } from 'lodash'; +import { HostWindowService } from '../host-window.service'; +import { PaginationComponentOptions } from './pagination-component-options.model'; +import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; +import { hasValue, isNotEmpty } from '../empty.util'; +import { difference } from '../object.util'; +/** + * The default pagination controls component. + */ +var PaginationComponent = /** @class */ (function () { + /** + * @param route + * Route is a singleton service provided by Angular. + * @param router + * Router is a singleton service provided by Angular. + */ + function PaginationComponent(cdRef, route, router, hostWindowService) { + this.cdRef = cdRef; + this.route = route; + this.router = router; + this.hostWindowService = hostWindowService; + /** + * Page state of a Remote paginated objects. + */ + this.pageInfoState = undefined; + /** + * An event fired when the page is changed. + * Event's payload equals to the newly selected page. + */ + this.pageChange = new EventEmitter(); + /** + * An event fired when the page wsize is changed. + * Event's payload equals to the newly selected page size. + */ + this.pageSizeChange = new EventEmitter(); + /** + * An event fired when the sort direction is changed. + * Event's payload equals to the newly selected sort direction. + */ + this.sortDirectionChange = new EventEmitter(); + /** + * An event fired when the sort field is changed. + * Event's payload equals to the newly selected sort field. + */ + this.sortFieldChange = new EventEmitter(); + /** + * An event fired when the pagination is changed. + * Event's payload equals to the newly selected sort field. + */ + this.paginationChange = new EventEmitter(); + /** + * Option for hiding the pagination detail + */ + this.hidePaginationDetail = false; + /** + * Option for hiding the gear + */ + this.hideGear = false; + /** + * Option for hiding the pager when there is less than 2 pages + */ + this.hidePagerWhenSinglePage = true; + /** + * Current page in the state of a Remote paginated objects. + */ + this.currentPageState = undefined; + /** + * Declare SortDirection enumeration to use it in the template + */ + this.sortDirections = SortDirection; + /** + * Direction in which to sort: ascending or descending + */ + this.sortDirection = SortDirection.ASC; + /** + * Name of the field that's used to sort by + */ + this.sortField = 'id'; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subs = []; + } + /** + * Method provided by Angular. Invoked after the constructor. + */ + PaginationComponent.prototype.ngOnInit = function () { + var _this = this; + this.subs.push(this.hostWindowService.isXs() + .subscribe(function (status) { + _this.isXs = status; + _this.cdRef.markForCheck(); + })); + this.checkConfig(this.paginationOptions); + this.initializeConfig(); + // Listen to changes + this.subs.push(this.route.queryParams + .subscribe(function (queryParams) { + if (_this.isEmptyPaginationParams(queryParams)) { + _this.initializeConfig(queryParams); + } + else { + _this.currentQueryParams = queryParams; + var fixedProperties = _this.validateParams(queryParams); + if (isNotEmpty(fixedProperties)) { + _this.fixRoute(fixedProperties); + } + else { + _this.setFields(); + } + } + })); + }; + PaginationComponent.prototype.fixRoute = function (fixedProperties) { + this.updateRoute(fixedProperties); + }; + /** + * Method provided by Angular. Invoked when the instance is destroyed. + */ + PaginationComponent.prototype.ngOnDestroy = function () { + this.subs + .filter(function (sub) { return hasValue(sub); }) + .forEach(function (sub) { return sub.unsubscribe(); }); + }; + /** + * Initializes all default variables + */ + PaginationComponent.prototype.initializeConfig = function (queryParams) { + if (queryParams === void 0) { queryParams = {}; } + // Set initial values + this.id = this.paginationOptions.id || null; + this.pageSizeOptions = this.paginationOptions.pageSizeOptions; + this.currentPage = this.paginationOptions.currentPage; + this.pageSize = this.paginationOptions.pageSize; + if (this.sortOptions) { + this.sortDirection = this.sortOptions.direction; + this.sortField = this.sortOptions.field; + } + this.currentQueryParams = Object.assign({}, queryParams, { + pageId: this.id, + page: this.currentPage, + pageSize: this.pageSize, + sortDirection: this.sortDirection, + sortField: this.sortField + }); + }; + /** + * Method to change the route to the given page + * + * @param page + * The page being navigated to. + */ + PaginationComponent.prototype.doPageChange = function (page) { + this.updateRoute({ page: page.toString() }); + }; + /** + * Method to change the route to the given page size + * + * @param pageSize + * The page size being navigated to. + */ + PaginationComponent.prototype.doPageSizeChange = function (pageSize) { + this.updateRoute({ page: 1, pageSize: pageSize }); + }; + /** + * Method to change the route to the given sort direction + * + * @param sortDirection + * The sort direction being navigated to. + */ + PaginationComponent.prototype.doSortDirectionChange = function (sortDirection) { + this.updateRoute({ page: 1, sortDirection: sortDirection }); + }; + /** + * Method to change the route to the given sort field + * + * @param sortField + * The sort field being navigated to. + */ + PaginationComponent.prototype.doSortFieldChange = function (field) { + this.updateRoute({ page: 1, sortField: field }); + }; + /** + * Method to set the current page and trigger page change events + * + * @param page + * The new page value + */ + PaginationComponent.prototype.setPage = function (page) { + this.currentPage = page; + this.pageChange.emit(page); + this.emitPaginationChange(); + }; + /** + * Method to set the current page size and trigger page size change events + * + * @param pageSize + * The new page size value. + */ + PaginationComponent.prototype.setPageSize = function (pageSize) { + this.pageSize = pageSize; + this.pageSizeChange.emit(pageSize); + this.emitPaginationChange(); + }; + /** + * Method to set the current sort direction and trigger sort direction change events + * + * @param sortDirection + * The new sort directionvalue. + */ + PaginationComponent.prototype.setSortDirection = function (sortDirection) { + this.sortDirection = sortDirection; + this.sortDirectionChange.emit(sortDirection); + this.emitPaginationChange(); + }; + /** + * Method to set the current sort field and trigger sort field change events + * + * @param sortField + * The new sort field. + */ + PaginationComponent.prototype.setSortField = function (field) { + this.sortField = field; + this.sortFieldChange.emit(field); + this.emitPaginationChange(); + }; + /** + * Method to emit a general pagination change event + */ + PaginationComponent.prototype.emitPaginationChange = function () { + this.paginationChange.emit({ + pageId: this.id, + page: this.currentPage, + pageSize: this.pageSize, + sortDirection: this.sortDirection, + sortField: this.sortField + }); + }; + /** + * Method to update the route parameters + */ + PaginationComponent.prototype.updateRoute = function (params) { + if (isNotEmpty(difference(params, this.currentQueryParams))) { + this.router.navigate([], { + queryParams: Object.assign({}, this.currentQueryParams, params), + queryParamsHandling: 'merge' + }); + } + }; + PaginationComponent.prototype.difference = function (object, base) { + var changes = function (o, b) { + return transform(o, function (result, value, key) { + if (!isEqual(value, b[key]) && isNotEmpty(value)) { + result[key] = (isObject(value) && isObject(b[key])) ? changes(value, b[key]) : value; + } + }); + }; + return changes(object, base); + }; + /** + * Method to get pagination details of the current viewed page. + */ + PaginationComponent.prototype.getShowingDetails = function (collectionSize) { + var showingDetails = { range: null + ' - ' + null, total: null }; + if (collectionSize) { + var firstItem = void 0; + var lastItem = void 0; + var pageMax = this.pageSize * this.currentPage; + firstItem = this.pageSize * (this.currentPage - 1) + 1; + if (collectionSize > pageMax) { + lastItem = pageMax; + } + else { + lastItem = collectionSize; + } + showingDetails = { range: firstItem + ' - ' + lastItem, total: collectionSize }; + } + return showingDetails; + }; + /** + * Method to validate query params + * + * @param page + * The page number to validate + * @param pageSize + * The page size to validate + * @returns valid parameters if initial parameters were invalid + */ + PaginationComponent.prototype.validateParams = function (params) { + var validPage = this.validatePage(params.page); + var filteredSize = this.validatePageSize(params.pageSize); + var fixedFields = {}; + if (+params.page !== validPage) { + fixedFields.page = validPage.toString(); + } + if (+params.pageSize !== filteredSize) { + fixedFields.pageSize = filteredSize.toString(); + } + return fixedFields; + }; + /** + * Method to update all pagination variables to the current query parameters + */ + PaginationComponent.prototype.setFields = function () { + // (+) converts string to a number + var page = this.currentQueryParams.page; + if (this.currentPage !== +page) { + this.setPage(+page); + } + var pageSize = this.currentQueryParams.pageSize; + if (this.pageSize !== +pageSize) { + this.setPageSize(+pageSize); + } + var sortDirection = this.currentQueryParams.sortDirection; + if (this.sortDirection !== sortDirection) { + this.setSortDirection(sortDirection); + } + var sortField = this.currentQueryParams.sortField; + if (this.sortField !== sortField) { + this.setSortField(sortField); + } + this.cdRef.detectChanges(); + }; + /** + * Method to validate the current page value + * + * @param page + * The page number to validate + * @returns returns valid page value + */ + PaginationComponent.prototype.validatePage = function (page) { + var result = this.currentPage; + if (isNumeric(page)) { + result = +page; + } + return result; + }; + /** + * Method to validate the current page size value + * + * @param page size + * The page size to validate + * @returns returns valid page size value + */ + PaginationComponent.prototype.validatePageSize = function (pageSize) { + var filteredPageSize = this.pageSizeOptions.find(function (x) { return x === +pageSize; }); + var result = this.pageSize; + if (filteredPageSize) { + result = +pageSize; + } + return result; + }; + /** + * Method to ensure options passed contains the required properties. + * + * @param paginateOptions + * The paginate options object. + */ + PaginationComponent.prototype.checkConfig = function (paginateOptions) { + var required = ['id', 'currentPage', 'pageSize', 'pageSizeOptions']; + var missing = required.filter(function (prop) { + return !(prop in paginateOptions); + }); + if (0 < missing.length) { + throw new Error('Paginate: Argument is missing the following required properties: ' + missing.join(', ')); + } + }; + /** + * Method to check if none of the query params necessary for pagination are filled out. + * + * @param paginateOptions + * The paginate options object. + */ + PaginationComponent.prototype.isEmptyPaginationParams = function (paginateOptions) { + var properties = ['id', 'currentPage', 'pageSize', 'pageSizeOptions']; + var missing = properties.filter(function (prop) { + return !(prop in paginateOptions); + }); + return properties.length === missing.length; + }; + Object.defineProperty(PaginationComponent.prototype, "hasMultiplePages", { + /** + * Property to check whether the current pagination object has multiple pages + * @returns true if there are multiple pages, else returns false + */ + get: function () { + return this.collectionSize > this.pageSize; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(PaginationComponent.prototype, "shouldShowBottomPager", { + /** + * Property to check whether the current pagination should show a bottom pages + * @returns true if a bottom pages should be shown, else returns false + */ + get: function () { + return this.hasMultiplePages || !this.hidePagerWhenSinglePage; + }, + enumerable: true, + configurable: true + }); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], PaginationComponent.prototype, "collectionSize", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Observable) + ], PaginationComponent.prototype, "pageInfoState", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", PaginationComponentOptions) + ], PaginationComponent.prototype, "paginationOptions", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SortOptions) + ], PaginationComponent.prototype, "sortOptions", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], PaginationComponent.prototype, "pageChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], PaginationComponent.prototype, "pageSizeChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], PaginationComponent.prototype, "sortDirectionChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], PaginationComponent.prototype, "sortFieldChange", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], PaginationComponent.prototype, "paginationChange", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], PaginationComponent.prototype, "hidePaginationDetail", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], PaginationComponent.prototype, "hideGear", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], PaginationComponent.prototype, "hidePagerWhenSinglePage", void 0); + PaginationComponent = tslib_1.__decorate([ + Component({ + exportAs: 'paginationComponent', + selector: 'ds-pagination', + styleUrls: ['pagination.component.scss'], + templateUrl: 'pagination.component.html', + changeDetection: ChangeDetectionStrategy.Default, + encapsulation: ViewEncapsulation.Emulated + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + ActivatedRoute, + Router, + HostWindowService]) + ], PaginationComponent); + return PaginationComponent; +}()); +export { PaginationComponent }; +//# sourceMappingURL=pagination.component.js.map \ No newline at end of file diff --git a/src/app/shared/pagination/pagination.component.js.map b/src/app/shared/pagination/pagination.component.js.map new file mode 100644 index 0000000000..27fb45c1ef --- /dev/null +++ b/src/app/shared/pagination/pagination.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"pagination.component.js","sourceRoot":"","sources":["pagination.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/roles/role.directive.js b/src/app/shared/roles/role.directive.js new file mode 100644 index 0000000000..3fd3b17650 --- /dev/null +++ b/src/app/shared/roles/role.directive.js @@ -0,0 +1,100 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core'; +import { combineLatest } from 'rxjs'; +import { filter, first, map } from 'rxjs/operators'; +import { hasValue } from '../empty.util'; +import { RoleService } from '../../core/roles/role.service'; +var RoleDirective = /** @class */ (function () { + function RoleDirective(roleService, viewContainer, changeDetector, templateRef) { + this.roleService = roleService; + this.viewContainer = viewContainer; + this.changeDetector = changeDetector; + this.templateRef = templateRef; + this.subs = []; + } + RoleDirective.prototype.ngOnChanges = function (changes) { + var onlyChanges = changes.dsShowOnlyForRole; + var exceptChanges = changes.dsShowExceptForRole; + this.hasRoles(this.dsShowOnlyForRole); + if (changes.dsShowOnlyForRole) { + this.validateOnly(); + } + else if (changes.dsShowExceptForRole) { + this.validateExcept(); + } + }; + RoleDirective.prototype.ngOnDestroy = function () { + this.subs + .filter(function (subscription) { return hasValue(subscription); }) + .forEach(function (subscription) { return subscription.unsubscribe(); }); + }; + /** + * Show template in view container + */ + RoleDirective.prototype.showTemplateBlockInView = function () { + this.viewContainer.clear(); + if (!this.templateRef) { + return; + } + this.viewContainer.createEmbeddedView(this.templateRef); + this.changeDetector.markForCheck(); + }; + /** + * Validate the list of roles that can show template + */ + RoleDirective.prototype.validateOnly = function () { + var _this = this; + this.subs.push(this.hasRoles(this.dsShowOnlyForRole).pipe(filter(function (hasRole) { return hasRole; })) + .subscribe(function (hasRole) { + _this.showTemplateBlockInView(); + })); + }; + /** + * Validate the list of roles that cannot show template + */ + RoleDirective.prototype.validateExcept = function () { + var _this = this; + this.subs.push(this.hasRoles(this.dsShowExceptForRole).pipe(filter(function (hasRole) { return !hasRole; })) + .subscribe(function (hasRole) { + _this.showTemplateBlockInView(); + })); + }; + /** + * Check if current user role is included in the specified role list + * + * @param roles + * The role or the list of roles + * @returns {Observable} + * observable of true if current user role is included in the specified role list, observable of false otherwise + */ + RoleDirective.prototype.hasRoles = function (roles) { + var _this = this; + var toValidate = (Array.isArray(roles)) ? roles : [roles]; + var checks = toValidate.map(function (role) { return _this.roleService.checkRole(role); }); + return combineLatest(checks).pipe(map(function (permissions) { return permissions.includes(true); }), first()); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], RoleDirective.prototype, "dsShowOnlyForRole", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], RoleDirective.prototype, "dsShowExceptForRole", void 0); + RoleDirective = tslib_1.__decorate([ + Directive({ + selector: '[dsShowOnlyForRole],[dsShowExceptForRole]' + }) + /** + * Structural Directive for showing or hiding a template based on current user role + */ + , + tslib_1.__metadata("design:paramtypes", [RoleService, + ViewContainerRef, + ChangeDetectorRef, + TemplateRef]) + ], RoleDirective); + return RoleDirective; +}()); +export { RoleDirective }; +//# sourceMappingURL=role.directive.js.map \ No newline at end of file diff --git a/src/app/shared/roles/role.directive.js.map b/src/app/shared/roles/role.directive.js.map new file mode 100644 index 0000000000..ce1aac9a29 --- /dev/null +++ b/src/app/shared/roles/role.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"role.directive.js","sourceRoot":"","sources":["role.directive.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.actions.js b/src/app/shared/sass-helper/sass-helper.actions.js new file mode 100644 index 0000000000..7a9d38293e --- /dev/null +++ b/src/app/shared/sass-helper/sass-helper.actions.js @@ -0,0 +1,21 @@ +import { type } from '../../shared/ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var CSSVariableActionTypes = { + ADD: type('dspace/css-variables/ADD'), +}; +var AddCSSVariableAction = /** @class */ (function () { + function AddCSSVariableAction(name, value) { + this.type = CSSVariableActionTypes.ADD; + this.payload = { name: name, value: value }; + } + return AddCSSVariableAction; +}()); +export { AddCSSVariableAction }; +//# sourceMappingURL=sass-helper.actions.js.map \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.actions.js.map b/src/app/shared/sass-helper/sass-helper.actions.js.map new file mode 100644 index 0000000000..985d85f0c2 --- /dev/null +++ b/src/app/shared/sass-helper/sass-helper.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sass-helper.actions.js","sourceRoot":"","sources":["sass-helper.actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG;IACpC,GAAG,EAAE,IAAI,CAAC,0BAA0B,CAAC;CACtC,CAAC;AAEF;IAOE,8BAAY,IAAY,EAAE,KAAa;QANvC,SAAI,GAAG,sBAAsB,CAAC,GAAG,CAAC;QAOhC,IAAI,CAAC,OAAO,GAAG,EAAC,IAAI,MAAA,EAAE,KAAK,OAAA,EAAC,CAAC;IAC/B,CAAC;IACH,2BAAC;AAAD,CAAC,AAVD,IAUC"} \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.reducer.js b/src/app/shared/sass-helper/sass-helper.reducer.js new file mode 100644 index 0000000000..ded67b34d9 --- /dev/null +++ b/src/app/shared/sass-helper/sass-helper.reducer.js @@ -0,0 +1,17 @@ +import { CSSVariableActionTypes } from './sass-helper.actions'; +var initialState = Object.create({}); +export function cssVariablesReducer(state, action) { + if (state === void 0) { state = initialState; } + var _a; + switch (action.type) { + case CSSVariableActionTypes.ADD: { + var variable = action.payload; + var t = Object.assign({}, state, (_a = {}, _a[variable.name] = variable.value, _a)); + return t; + } + default: { + return state; + } + } +} +//# sourceMappingURL=sass-helper.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.reducer.js.map b/src/app/shared/sass-helper/sass-helper.reducer.js.map new file mode 100644 index 0000000000..1788e4abd1 --- /dev/null +++ b/src/app/shared/sass-helper/sass-helper.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sass-helper.reducer.js","sourceRoot":"","sources":["sass-helper.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAMlF,IAAM,YAAY,GAAsB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE1D,MAAM,8BAA8B,KAAoB,EAAE,MAAyB;IAA/C,sBAAA,EAAA,oBAAoB;;IACtD,QAAQ,MAAM,CAAC,IAAI,EAAE;QACnB,KAAK,sBAAsB,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;YAChC,IAAM,CAAC,GAAI,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,YAAI,GAAC,QAAQ,CAAC,IAAI,IAAG,QAAQ,CAAC,KAAK,MAAG,CAAC;YACzE,OAAO,CAAC,CAAC;SACV;QACD,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.service.js b/src/app/shared/sass-helper/sass-helper.service.js new file mode 100644 index 0000000000..9892dc138d --- /dev/null +++ b/src/app/shared/sass-helper/sass-helper.service.js @@ -0,0 +1,33 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { keySelector } from '../../app.reducer'; +import { select, Store } from '@ngrx/store'; +import { GLOBAL_CONFIG } from '../../../config'; +import { AddCSSVariableAction } from './sass-helper.actions'; +var CSSVariableService = /** @class */ (function () { + function CSSVariableService(store, EnvConfig) { + this.store = store; + this.EnvConfig = EnvConfig; + } + CSSVariableService.prototype.addCSSVariable = function (name, value) { + this.store.dispatch(new AddCSSVariableAction(name, value)); + }; + CSSVariableService.prototype.getVariable = function (name) { + return this.store.pipe(select(themeVariableByNameSelector(name))); + }; + CSSVariableService.prototype.getAllVariables = function () { + return this.store.pipe(select(themeVariablesSelector)); + }; + CSSVariableService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(1, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Store, Object]) + ], CSSVariableService); + return CSSVariableService; +}()); +export { CSSVariableService }; +var themeVariablesSelector = function (state) { return state.cssVariables; }; +var themeVariableByNameSelector = function (name) { + return keySelector(name, themeVariablesSelector); +}; +//# sourceMappingURL=sass-helper.service.js.map \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.service.js.map b/src/app/shared/sass-helper/sass-helper.service.js.map new file mode 100644 index 0000000000..b417fc3d5a --- /dev/null +++ b/src/app/shared/sass-helper/sass-helper.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sass-helper.service.js","sourceRoot":"","sources":["sass-helper.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAY,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAoB,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAG7D;IACE,4BACY,KAAsB,EACC,SAAuB;QAD9C,UAAK,GAAL,KAAK,CAAiB;QACC,cAAS,GAAT,SAAS,CAAc;IAC1D,CAAC;IAED,2CAAc,GAAd,UAAe,IAAY,EAAE,KAAa;QACxC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,wCAAW,GAAX,UAAY,IAAY;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,4CAAe,GAAf;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC;IACzD,CAAC;IAhBU,kBAAkB;QAD9B,UAAU,EAAE;QAIR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;iDADL,KAAK;OAFb,kBAAkB,CAkB9B;IAAD,yBAAC;CAAA,AAlBD,IAkBC;SAlBY,kBAAkB;AAoB/B,IAAM,sBAAsB,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,YAAY,EAAlB,CAAkB,CAAC;AAEvE,IAAM,2BAA2B,GAAG,UAAC,IAAY;IAC/C,OAAO,WAAW,CAAS,IAAI,EAAE,sBAAsB,CAAC,CAAC;AAC3D,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/search-form/search-form.component.js b/src/app/shared/search-form/search-form.component.js new file mode 100644 index 0000000000..fc82d1c1dd --- /dev/null +++ b/src/app/shared/search-form/search-form.component.js @@ -0,0 +1,103 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Router } from '@angular/router'; +import { isNotEmpty } from '../empty.util'; +import { SearchService } from '../../+search-page/search-service/search.service'; +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ +var SearchFormComponent = /** @class */ (function () { + function SearchFormComponent(router, searchService) { + this.router = router; + this.searchService = searchService; + /** + * The currently selected scope object's UUID + */ + this.scope = ''; + } + /** + * Updates the search when the form is submitted + * @param data Values submitted using the form + */ + SearchFormComponent.prototype.onSubmit = function (data) { + this.updateSearch(data); + }; + /** + * Updates the search when the current scope has been changed + * @param {string} scope The new scope + */ + SearchFormComponent.prototype.onScopeChange = function (scope) { + this.updateSearch({ scope: scope }); + }; + /** + * Updates the search URL + * @param data Updated parameters + */ + SearchFormComponent.prototype.updateSearch = function (data) { + this.router.navigate(this.getSearchLinkParts(), { + queryParams: Object.assign({}, { page: 1 }, data), + queryParamsHandling: 'merge' + }); + }; + /** + * For usage of the isNotEmpty function in the template + */ + SearchFormComponent.prototype.isNotEmpty = function (object) { + return isNotEmpty(object); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + SearchFormComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.searchService.getSearchLink(); + }; + /** + * @returns {string[]} The base path to the search page, or the current page when inPlaceSearch is true, split in separate pieces + */ + SearchFormComponent.prototype.getSearchLinkParts = function () { + if (this.inPlaceSearch) { + return []; + } + return this.getSearchLink().split('/'); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SearchFormComponent.prototype, "query", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchFormComponent.prototype, "inPlaceSearch", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SearchFormComponent.prototype, "scope", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SearchFormComponent.prototype, "currentUrl", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], SearchFormComponent.prototype, "scopes", void 0); + SearchFormComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-search-form', + styleUrls: ['./search-form.component.scss'], + templateUrl: './search-form.component.html' + }) + /** + * Component that represents the search form + */ + , + tslib_1.__metadata("design:paramtypes", [Router, SearchService]) + ], SearchFormComponent); + return SearchFormComponent; +}()); +export { SearchFormComponent }; +//# sourceMappingURL=search-form.component.js.map \ No newline at end of file diff --git a/src/app/shared/search-form/search-form.component.js.map b/src/app/shared/search-form/search-form.component.js.map new file mode 100644 index 0000000000..c8793162da --- /dev/null +++ b/src/app/shared/search-form/search-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-form.component.js","sourceRoot":"","sources":["search-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAY,UAAU,EAAE,MAAM,eAAe,CAAC;AAGrD,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AAEjF;;;;GAIG;AAWH;IAwBE,6BAAoB,MAAc,EAAU,aAA4B;QAApD,WAAM,GAAN,MAAM,CAAQ;QAAU,kBAAa,GAAb,aAAa,CAAe;QAbxE;;WAEG;QAEH,UAAK,GAAG,EAAE,CAAC;IAUX,CAAC;IAED;;;OAGG;IACH,sCAAQ,GAAR,UAAS,IAAS;QAChB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,2CAAa,GAAb,UAAc,KAAa;QACzB,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,OAAA,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,0CAAY,GAAZ,UAAa,IAAS;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE;YAC9C,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;YACjD,mBAAmB,EAAE,OAAO;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,wCAAU,GAAV,UAAW,MAAW;QACpB,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,2CAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,gDAAkB,GAAzB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IA3EQ;QAAR,KAAK,EAAE;;sDAAe;IAKd;QAAR,KAAK,EAAE;;8DAAe;IAMvB;QADC,KAAK,EAAE;;sDACG;IAEF;QAAR,KAAK,EAAE;;2DAAoB;IAKnB;QAAR,KAAK,EAAE;;uDAAwB;IAtBrB,mBAAmB;QAT/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;SAC5C,CAAC;QAEF;;WAEG;;iDAyB2B,MAAM,EAAyB,aAAa;OAxB7D,mBAAmB,CAgF/B;IAAD,0BAAC;CAAA,AAhFD,IAgFC;SAhFY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/services/api.service.js b/src/app/shared/services/api.service.js new file mode 100644 index 0000000000..d78b7ad3d4 --- /dev/null +++ b/src/app/shared/services/api.service.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { throwError as observableThrowError } from 'rxjs'; +import { catchError } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +var ApiService = /** @class */ (function () { + function ApiService(_http) { + this._http = _http; + } + /** + * whatever domain/feature method name + */ + ApiService.prototype.get = function (url, options) { + return this._http.get(url, options).pipe(catchError(function (err) { + console.log('Error: ', err); + return observableThrowError(err); + })); + }; + ApiService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [HttpClient]) + ], ApiService); + return ApiService; +}()); +export { ApiService }; +//# sourceMappingURL=api.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/api.service.js.map b/src/app/shared/services/api.service.js.map new file mode 100644 index 0000000000..a21ec466b0 --- /dev/null +++ b/src/app/shared/services/api.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"api.service.js","sourceRoot":"","sources":["api.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD;IACE,oBAAmB,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;IAEpC,CAAC;IAED;;OAEG;IACH,wBAAG,GAAH,UAAI,GAAW,EAAE,OAAa;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CACtC,UAAU,CAAC,UAAC,GAAG;YACb,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC5B,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAdU,UAAU;QADtB,UAAU,EAAE;iDAEe,UAAU;OADzB,UAAU,CAgBtB;IAAD,iBAAC;CAAA,AAhBD,IAgBC;SAhBY,UAAU"} \ No newline at end of file diff --git a/src/app/shared/services/client-cookie.service.js b/src/app/shared/services/client-cookie.service.js new file mode 100644 index 0000000000..d225b6abdc --- /dev/null +++ b/src/app/shared/services/client-cookie.service.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { getJSON, remove, set } from 'js-cookie'; +import { CookieService } from './cookie.service'; +var ClientCookieService = /** @class */ (function (_super) { + tslib_1.__extends(ClientCookieService, _super); + function ClientCookieService() { + return _super !== null && _super.apply(this, arguments) || this; + } + ClientCookieService.prototype.set = function (name, value, options) { + set(name, value, options); + this.updateSource(); + }; + ClientCookieService.prototype.remove = function (name, options) { + remove(name, options); + this.updateSource(); + }; + ClientCookieService.prototype.get = function (name) { + return getJSON(name); + }; + ClientCookieService.prototype.getAll = function () { + return getJSON(); + }; + ClientCookieService = tslib_1.__decorate([ + Injectable() + ], ClientCookieService); + return ClientCookieService; +}(CookieService)); +export { ClientCookieService }; +//# sourceMappingURL=client-cookie.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/client-cookie.service.js.map b/src/app/shared/services/client-cookie.service.js.map new file mode 100644 index 0000000000..bcd6aef675 --- /dev/null +++ b/src/app/shared/services/client-cookie.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"client-cookie.service.js","sourceRoot":"","sources":["client-cookie.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAoB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAClE,OAAO,EAAE,aAAa,EAAkB,MAAM,kBAAkB,CAAC;AAGjE;IAAyC,+CAAa;IAAtD;;IAmBA,CAAC;IAjBQ,iCAAG,GAAV,UAAW,IAAY,EAAE,KAAU,EAAE,OAA0B;QAC7D,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAEM,oCAAM,GAAb,UAAc,IAAY,EAAE,OAA0B;QACpD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAEM,iCAAG,GAAV,UAAW,IAAY;QACrB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,CAAC;IAEM,oCAAM,GAAb;QACE,OAAO,OAAO,EAAE,CAAA;IAClB,CAAC;IAlBU,mBAAmB;QAD/B,UAAU,EAAE;OACA,mBAAmB,CAmB/B;IAAD,0BAAC;CAAA,AAnBD,CAAyC,aAAa,GAmBrD;SAnBY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/services/cookie.service.js b/src/app/shared/services/cookie.service.js new file mode 100644 index 0000000000..bf19204af1 --- /dev/null +++ b/src/app/shared/services/cookie.service.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { REQUEST } from '@nguniversal/express-engine/tokens'; +import { Subject } from 'rxjs'; +var CookieService = /** @class */ (function () { + function CookieService(req) { + this.req = req; + this.cookieSource = new Subject(); + this.cookies$ = this.cookieSource.asObservable(); + } + CookieService.prototype.updateSource = function () { + this.cookieSource.next(this.getAll()); + }; + CookieService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(REQUEST)), + tslib_1.__metadata("design:paramtypes", [Object]) + ], CookieService); + return CookieService; +}()); +export { CookieService }; +//# sourceMappingURL=cookie.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/cookie.service.js.map b/src/app/shared/services/cookie.service.js.map new file mode 100644 index 0000000000..da3db155d2 --- /dev/null +++ b/src/app/shared/services/cookie.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cookie.service.js","sourceRoot":"","sources":["cookie.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAA;AAE5D,OAAO,EAAE,OAAO,EAAgB,MAAM,MAAM,CAAA;AAgB5C;IAIE,uBAAuC,GAAQ;QAAR,QAAG,GAAH,GAAG,CAAK;QAH5B,iBAAY,GAAG,IAAI,OAAO,EAAmC,CAAC;QACjE,aAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAG5D,CAAC;IAUS,oCAAY,GAAtB;QACE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,CAAC;IAjBmB,aAAa;QADlC,UAAU,EAAE;QAKE,mBAAA,MAAM,CAAC,OAAO,CAAC,CAAA;;OAJR,aAAa,CAkBlC;IAAD,oBAAC;CAAA,AAlBD,IAkBC;SAlBqB,aAAa"} \ No newline at end of file diff --git a/src/app/shared/services/route.service.js b/src/app/shared/services/route.service.js new file mode 100644 index 0000000000..fe0420e858 --- /dev/null +++ b/src/app/shared/services/route.service.js @@ -0,0 +1,114 @@ +import * as tslib_1 from "tslib"; +import { distinctUntilChanged, filter, map, mergeMap } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { ActivatedRoute, NavigationEnd, Router, } from '@angular/router'; +import { select, Store } from '@ngrx/store'; +import { isEqual } from 'lodash'; +import { AddUrlToHistoryAction } from '../history/history.actions'; +import { historySelector } from '../history/selectors'; +/** + * Service to keep track of the current query parameters + */ +var RouteService = /** @class */ (function () { + function RouteService(route, router, store) { + this.route = route; + this.router = router; + this.store = store; + this.subscribeToRouterParams(); + } + /** + * Retrieves all query parameter values based on a parameter name + * @param paramName The name of the parameter to look for + */ + RouteService.prototype.getQueryParameterValues = function (paramName) { + return this.getQueryParamMap().pipe(map(function (params) { return params.getAll(paramName).slice(); }), distinctUntilChanged(function (a, b) { return JSON.stringify(a) === JSON.stringify(b); })); + }; + /** + * Retrieves a single query parameter values based on a parameter name + * @param paramName The name of the parameter to look for + */ + RouteService.prototype.getQueryParameterValue = function (paramName) { + return this.getQueryParamMap().pipe(map(function (params) { return params.get(paramName); }), distinctUntilChanged()); + }; + /** + * Checks if the query parameter currently exists in the route + * @param paramName The name of the parameter to look for + */ + RouteService.prototype.hasQueryParam = function (paramName) { + return this.getQueryParamMap().pipe(map(function (params) { return params.has(paramName); }), distinctUntilChanged()); + }; + /** + * Checks if the query parameter with a specific value currently exists in the route + * @param paramName The name of the parameter to look for + * @param paramValue The value of the parameter to look for + */ + RouteService.prototype.hasQueryParamWithValue = function (paramName, paramValue) { + return this.getQueryParamMap().pipe(map(function (params) { return params.getAll(paramName).indexOf(paramValue) > -1; }), distinctUntilChanged()); + }; + RouteService.prototype.getRouteParameterValue = function (paramName) { + return this.params.pipe(map(function (params) { return params[paramName]; }), distinctUntilChanged()); + }; + RouteService.prototype.getRouteDataValue = function (datafield) { + return this.route.data.pipe(map(function (data) { return data[datafield]; }), distinctUntilChanged()); + }; + /** + * Retrieves all query parameters of which the parameter name starts with the given prefix + * @param prefix The prefix of the parameter name to look for + */ + RouteService.prototype.getQueryParamsWithPrefix = function (prefix) { + return this.getQueryParamMap().pipe(map(function (qparams) { + var params = {}; + qparams.keys + .filter(function (key) { return key.startsWith(prefix); }) + .forEach(function (key) { + params[key] = qparams.getAll(key).slice(); + }); + return params; + }), distinctUntilChanged(function (a, b) { return JSON.stringify(a) === JSON.stringify(b); })); + }; + RouteService.prototype.getQueryParamMap = function () { + var _this = this; + return this.route.queryParamMap.pipe(map(function (paramMap) { + var snapshot = _this.router.routerState.snapshot; + // Due to an Angular bug, sometimes change of QueryParam is not detected so double checks with route snapshot + if (!isEqual(paramMap, snapshot.root.queryParamMap)) { + return snapshot.root.queryParamMap; + } + else { + return paramMap; + } + })); + }; + RouteService.prototype.saveRouting = function () { + var _this = this; + this.router.events + .pipe(filter(function (event) { return event instanceof NavigationEnd; })) + .subscribe(function (_a) { + var urlAfterRedirects = _a.urlAfterRedirects; + _this.store.dispatch(new AddUrlToHistoryAction(urlAfterRedirects)); + }); + }; + RouteService.prototype.subscribeToRouterParams = function () { + var _this = this; + this.params = this.router.events.pipe(mergeMap(function (event) { + var active = _this.route; + while (active.firstChild) { + active = active.firstChild; + } + return active.params; + })); + }; + RouteService.prototype.getHistory = function () { + return this.store.pipe(select(historySelector)); + }; + RouteService.prototype.getPreviousUrl = function () { + return this.getHistory().pipe(map(function (history) { return history[history.length - 2] || ''; })); + }; + RouteService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [ActivatedRoute, Router, Store]) + ], RouteService); + return RouteService; +}()); +export { RouteService }; +//# sourceMappingURL=route.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/route.service.js.map b/src/app/shared/services/route.service.js.map new file mode 100644 index 0000000000..dc5b08a762 --- /dev/null +++ b/src/app/shared/services/route.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"route.service.js","sourceRoot":"","sources":["route.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,cAAc,EACd,aAAa,EAEb,MAAM,GAEP,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;GAEG;AAEH;IAGE,sBAAoB,KAAqB,EAAU,MAAc,EAAU,KAAsB;QAA7E,UAAK,GAAL,KAAK,CAAgB;QAAU,WAAM,GAAN,MAAM,CAAQ;QAAU,UAAK,GAAL,KAAK,CAAiB;QAC/F,IAAI,CAAC,uBAAuB,EAAE,CAAC;IAEjC,CAAC;IAED;;;OAGG;IACH,8CAAuB,GAAvB,UAAwB,SAAiB;QACvC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CACjC,GAAG,CAAC,UAAC,MAAM,IAAK,OAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,UAA5B,CAA6B,CAAC,EAC9C,oBAAoB,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAvC,CAAuC,CAAC,CACxE,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,6CAAsB,GAAtB,UAAuB,SAAiB;QACtC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CACjC,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAArB,CAAqB,CAAC,EACtC,oBAAoB,EAAE,CACvB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,oCAAa,GAAb,UAAc,SAAiB;QAC7B,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CACjC,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAArB,CAAqB,CAAC,EACtC,oBAAoB,EAAE,CACvB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,6CAAsB,GAAtB,UAAuB,SAAiB,EAAE,UAAkB;QAC1D,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CACjC,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAjD,CAAiD,CAAC,EAClE,oBAAoB,EAAE,CACvB,CAAC;IACJ,CAAC;IAED,6CAAsB,GAAtB,UAAuB,SAAiB;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,SAAS,CAAC,EAAjB,CAAiB,CAAC,EAAC,oBAAoB,EAAE,CAAE,CAAC;IACtF,CAAC;IAED,wCAAiB,GAAjB,UAAkB,SAAiB;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,SAAS,CAAC,EAAf,CAAe,CAAC,EAAC,oBAAoB,EAAE,CAAE,CAAC;IACtF,CAAC;IAED;;;OAGG;IACH,+CAAwB,GAAxB,UAAyB,MAAc;QACrC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CACjC,GAAG,CAAC,UAAC,OAAO;YACV,IAAM,MAAM,GAAG,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI;iBACT,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAtB,CAAsB,CAAC;iBACvC,OAAO,CAAC,UAAC,GAAG;gBACX,MAAM,CAAC,GAAG,CAAC,GAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,QAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YACL,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,EACF,oBAAoB,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAvC,CAAuC,CAAC,CACxE,CAAC;IACJ,CAAC;IAEM,uCAAgB,GAAvB;QAAA,iBAWC;QAVC,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAClC,GAAG,CAAC,UAAC,QAAQ;YACX,IAAM,QAAQ,GAAwB,KAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;YACvE,6GAA6G;YAC7G,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;gBACnD,OAAO,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;aACpC;iBAAM;gBACL,OAAO,QAAQ,CAAC;aACjB;QACH,CAAC,CAAC,CAAC,CAAA;IACP,CAAC;IAEM,kCAAW,GAAlB;QAAA,iBAMC;QALC,IAAI,CAAC,MAAM,CAAC,MAAM;aACf,IAAI,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,YAAY,aAAa,EAA9B,CAA8B,CAAC,CAAC;aACvD,SAAS,CAAC,UAAC,EAAoC;gBAAlC,wCAAiB;YAC7B,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,qBAAqB,CAAC,iBAAiB,CAAC,CAAC,CAAA;QACnE,CAAC,CAAC,CAAC;IACP,CAAC;IAED,8CAAuB,GAAvB;QAAA,iBAUC;QATC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CACnC,QAAQ,CAAC,UAAC,KAAK;YACb,IAAI,MAAM,GAAG,KAAI,CAAC,KAAK,CAAC;YACxB,OAAO,MAAM,CAAC,UAAU,EAAE;gBACxB,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC;aAC5B;YACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACvB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEM,iCAAU,GAAjB;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IAClD,CAAC;IAEM,qCAAc,GAArB;QACE,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CAC3B,GAAG,CAAC,UAAC,OAAiB,IAAK,OAAA,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,EAAjC,CAAiC,CAAC,CAC9D,CAAC;IACJ,CAAC;IAzHU,YAAY;QADxB,UAAU,EAAE;iDAIgB,cAAc,EAAkB,MAAM,EAAiB,KAAK;OAH5E,YAAY,CA0HxB;IAAD,mBAAC;CAAA,AA1HD,IA0HC;SA1HY,YAAY"} \ No newline at end of file diff --git a/src/app/shared/services/server-cookie.service.js b/src/app/shared/services/server-cookie.service.js new file mode 100644 index 0000000000..44512df6c0 --- /dev/null +++ b/src/app/shared/services/server-cookie.service.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { CookieService } from './cookie.service'; +var ServerCookieService = /** @class */ (function (_super) { + tslib_1.__extends(ServerCookieService, _super); + function ServerCookieService() { + return _super !== null && _super.apply(this, arguments) || this; + } + ServerCookieService.prototype.set = function (name, value, options) { + return; + }; + ServerCookieService.prototype.remove = function (name, options) { + return; + }; + ServerCookieService.prototype.get = function (name) { + try { + return JSON.parse(this.req.cookies[name]); + } + catch (err) { + return this.req ? this.req.cookies[name] : undefined; + } + }; + ServerCookieService.prototype.getAll = function () { + if (this.req) { + return this.req.cookies; + } + }; + ServerCookieService = tslib_1.__decorate([ + Injectable() + ], ServerCookieService); + return ServerCookieService; +}(CookieService)); +export { ServerCookieService }; +//# sourceMappingURL=server-cookie.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/server-cookie.service.js.map b/src/app/shared/services/server-cookie.service.js.map new file mode 100644 index 0000000000..1638d226bf --- /dev/null +++ b/src/app/shared/services/server-cookie.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-cookie.service.js","sourceRoot":"","sources":["server-cookie.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,OAAO,EAAE,aAAa,EAAkB,MAAM,kBAAkB,CAAC;AAGjE;IAAyC,+CAAa;IAAtD;;IAuBA,CAAC;IArBQ,iCAAG,GAAV,UAAW,IAAY,EAAE,KAAU,EAAE,OAA0B;QAC7D,OAAM;IACR,CAAC;IAEM,oCAAM,GAAb,UAAc,IAAY,EAAE,OAA0B;QACpD,OAAM;IACR,CAAC;IAEM,iCAAG,GAAV,UAAW,IAAY;QACrB,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;SAC1C;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;SACrD;IACH,CAAC;IAEM,oCAAM,GAAb;QACE,IAAI,IAAI,CAAC,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAA;SACxB;IACH,CAAC;IAtBU,mBAAmB;QAD/B,UAAU,EAAE;OACA,mBAAmB,CAuB/B;IAAD,0BAAC;CAAA,AAvBD,CAAyC,aAAa,GAuBrD;SAvBY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/services/server-response.service.js b/src/app/shared/services/server-response.service.js new file mode 100644 index 0000000000..d8be5626e8 --- /dev/null +++ b/src/app/shared/services/server-response.service.js @@ -0,0 +1,29 @@ +import * as tslib_1 from "tslib"; +import { RESPONSE } from '@nguniversal/express-engine/tokens'; +import { Inject, Injectable, Optional } from '@angular/core'; +var ServerResponseService = /** @class */ (function () { + function ServerResponseService(response) { + this.response = response; + } + ServerResponseService.prototype.setStatus = function (code, message) { + if (this.response) { + this.response.statusCode = code; + if (message) { + this.response.statusMessage = message; + } + } + return this; + }; + ServerResponseService.prototype.setNotFound = function (message) { + if (message === void 0) { message = 'Not found'; } + return this.setStatus(404, message); + }; + ServerResponseService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Optional()), tslib_1.__param(0, Inject(RESPONSE)), + tslib_1.__metadata("design:paramtypes", [Object]) + ], ServerResponseService); + return ServerResponseService; +}()); +export { ServerResponseService }; +//# sourceMappingURL=server-response.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/server-response.service.js.map b/src/app/shared/services/server-response.service.js.map new file mode 100644 index 0000000000..aef0de2b97 --- /dev/null +++ b/src/app/shared/services/server-response.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-response.service.js","sourceRoot":"","sources":["server-response.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAI7D;IAGE,+BAA0C,QAAa;QACrD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,yCAAS,GAAT,UAAU,IAAY,EAAE,OAAgB;QACtC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC;YAChC,IAAI,OAAO,EAAE;gBACX,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,OAAO,CAAC;aACvC;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2CAAW,GAAX,UAAY,OAAqB;QAArB,wBAAA,EAAA,qBAAqB;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACrC,CAAC;IAnBU,qBAAqB;QADjC,UAAU,EAAE;QAIE,mBAAA,QAAQ,EAAE,CAAA,EAAE,mBAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;;OAH9B,qBAAqB,CAoBjC;IAAD,4BAAC;CAAA,AApBD,IAoBC;SApBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/services/window.service.js b/src/app/shared/services/window.service.js new file mode 100644 index 0000000000..5adbaf64e4 --- /dev/null +++ b/src/app/shared/services/window.service.js @@ -0,0 +1,24 @@ +import { InjectionToken } from '@angular/core'; +export var NativeWindowService = new InjectionToken('NativeWindowService'); +var NativeWindowRef = /** @class */ (function () { + function NativeWindowRef() { + } + Object.defineProperty(NativeWindowRef.prototype, "nativeWindow", { + get: function () { + if (typeof window !== 'undefined') { + return window; + } + else { + return false; + } + }, + enumerable: true, + configurable: true + }); + return NativeWindowRef; +}()); +export { NativeWindowRef }; +export function NativeWindowFactory() { + return new NativeWindowRef(); +} +//# sourceMappingURL=window.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/window.service.js.map b/src/app/shared/services/window.service.js.map new file mode 100644 index 0000000000..6653f09be2 --- /dev/null +++ b/src/app/shared/services/window.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"window.service.js","sourceRoot":"","sources":["window.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,CAAC,IAAM,mBAAmB,GAAG,IAAI,cAAc,CAAC,qBAAqB,CAAC,CAAC;AAE7E;IAAA;IAQA,CAAC;IAPC,sBAAI,yCAAY;aAAhB;YACE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;gBACjC,OAAO,MAAM,CAAC;aACf;iBAAM;gBACL,OAAO,KAAK,CAAC;aACd;QACH,CAAC;;;OAAA;IACH,sBAAC;AAAD,CAAC,AARD,IAQC;;AAED,MAAM;IACJ,OAAO,IAAI,eAAe,EAAE,CAAC;AAC/B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/shared.module.js b/src/app/shared/shared.module.js new file mode 100644 index 0000000000..3e53dae222 --- /dev/null +++ b/src/app/shared/shared.module.js @@ -0,0 +1,350 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { RouterModule } from '@angular/router'; +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; +import { NouisliderModule } from 'ng2-nouislider'; +import { NgbDatepickerModule, NgbModule, NgbTimepickerModule, NgbTypeaheadModule } from '@ng-bootstrap/ng-bootstrap'; +import { TranslateModule } from '@ngx-translate/core'; +import { NgxPaginationModule } from 'ngx-pagination'; +import { ItemTypeSwitcherComponent } from './items/switcher/item-type-switcher.component'; +import { OrgUnitMetadataListElementComponent } from './object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component'; +import { TypedItemSearchResultListElementComponent } from './object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; +import { PublicationListElementComponent } from './object-list/item-list-element/item-types/publication/publication-list-element.component'; +import { OrgUnitListElementComponent } from './object-list/item-list-element/item-types/orgunit/orgunit-list-element.component'; +import { PersonListElementComponent } from './object-list/item-list-element/item-types/person/person-list-element.component'; +import { ProjectListElementComponent } from './object-list/item-list-element/item-types/project/project-list-element.component'; +import { JournalListElementComponent } from './object-list/item-list-element/item-types/journal/journal-list-element.component'; +import { JournalVolumeListElementComponent } from './object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component'; +import { JournalIssueListElementComponent } from './object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component'; +import { FileUploadModule } from 'ng2-file-upload'; +import { InfiniteScrollModule } from 'ngx-infinite-scroll'; +import { EnumKeysPipe } from './utils/enum-keys-pipe'; +import { FileSizePipe } from './utils/file-size-pipe'; +import { SafeUrlPipe } from './utils/safe-url-pipe'; +import { ConsolePipe } from './utils/console.pipe'; +import { CollectionListElementComponent } from './object-list/collection-list-element/collection-list-element.component'; +import { CommunityListElementComponent } from './object-list/community-list-element/community-list-element.component'; +import { ItemListElementComponent } from './object-list/item-list-element/item-list-element.component'; +import { SearchResultListElementComponent } from './object-list/search-result-list-element/search-result-list-element.component'; +import { WrapperListElementComponent } from './object-list/wrapper-list-element/wrapper-list-element.component'; +import { ObjectListComponent } from './object-list/object-list.component'; +import { CollectionGridElementComponent } from './object-grid/collection-grid-element/collection-grid-element.component'; +import { CommunityGridElementComponent } from './object-grid/community-grid-element/community-grid-element.component'; +import { ItemGridElementComponent } from './object-grid/item-grid-element/item-grid-element.component'; +import { AbstractListableElementComponent } from './object-collection/shared/object-collection-element/abstract-listable-element.component'; +import { WrapperGridElementComponent } from './object-grid/wrapper-grid-element/wrapper-grid-element.component'; +import { ObjectGridComponent } from './object-grid/object-grid.component'; +import { ObjectCollectionComponent } from './object-collection/object-collection.component'; +import { ComcolPageContentComponent } from './comcol-page-content/comcol-page-content.component'; +import { ComcolPageHeaderComponent } from './comcol-page-header/comcol-page-header.component'; +import { ComcolPageLogoComponent } from './comcol-page-logo/comcol-page-logo.component'; +import { ErrorComponent } from './error/error.component'; +import { LoadingComponent } from './loading/loading.component'; +import { PaginationComponent } from './pagination/pagination.component'; +import { ThumbnailComponent } from '../thumbnail/thumbnail.component'; +import { SearchFormComponent } from './search-form/search-form.component'; +import { SearchResultGridElementComponent } from './object-grid/search-result-grid-element/search-result-grid-element.component'; +import { ViewModeSwitchComponent } from './view-mode-switch/view-mode-switch.component'; +import { GridThumbnailComponent } from './object-grid/grid-thumbnail/grid-thumbnail.component'; +import { VarDirective } from './utils/var.directive'; +import { LogInComponent } from './log-in/log-in.component'; +import { AuthNavMenuComponent } from './auth-nav-menu/auth-nav-menu.component'; +import { LogOutComponent } from './log-out/log-out.component'; +import { FormComponent } from './form/form.component'; +import { DsDynamicTypeaheadComponent } from './form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component'; +import { DsDynamicScrollableDropdownComponent } from './form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component'; +import { DsDynamicFormControlContainerComponent, dsDynamicFormControlMapFn } from './form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component'; +import { DsDynamicFormComponent } from './form/builder/ds-dynamic-form-ui/ds-dynamic-form.component'; +import { DYNAMIC_FORM_CONTROL_MAP_FN, DynamicFormsCoreModule } from '@ng-dynamic-forms/core'; +import { DynamicFormsNGBootstrapUIModule } from '@ng-dynamic-forms/ui-ng-bootstrap'; +import { TextMaskModule } from 'angular2-text-mask'; +import { DragClickDirective } from './utils/drag-click.directive'; +import { TruncatePipe } from './utils/truncate.pipe'; +import { TruncatableComponent } from './truncatable/truncatable.component'; +import { TruncatableService } from './truncatable/truncatable.service'; +import { TruncatablePartComponent } from './truncatable/truncatable-part/truncatable-part.component'; +import { UploaderComponent } from './uploader/uploader.component'; +import { ChipsComponent } from './chips/chips.component'; +import { DsDynamicTagComponent } from './form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component'; +import { DsDynamicListComponent } from './form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component'; +import { DsDynamicFormGroupComponent } from './form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component'; +import { DsDynamicFormArrayComponent } from './form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component'; +import { DsDynamicRelationGroupComponent } from './form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components'; +import { DsDatePickerInlineComponent } from './form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component'; +import { SortablejsModule } from 'angular-sortablejs'; +import { NumberPickerComponent } from './number-picker/number-picker.component'; +import { DsDatePickerComponent } from './form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component'; +import { DsDynamicLookupComponent } from './form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component'; +import { MockAdminGuard } from './mocks/mock-admin-guard.service'; +import { AlertComponent } from './alert/alert.component'; +import { MyDSpaceResultListElementComponent } from './object-list/my-dspace-result-list-element/my-dspace-result-list-element.component'; +import { MyDSpaceResultDetailElementComponent } from './object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component'; +import { ClaimedTaskActionsComponent } from './mydspace-actions/claimed-task/claimed-task-actions.component'; +import { PoolTaskActionsComponent } from './mydspace-actions/pool-task/pool-task-actions.component'; +import { ObjectDetailComponent } from './object-detail/object-detail.component'; +import { WrapperDetailElementComponent } from './object-detail/wrapper-detail-element/wrapper-detail-element.component'; +import { ItemDetailPreviewComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component'; +import { MyDSpaceItemStatusComponent } from './object-collection/shared/mydspace-item-status/my-dspace-item-status.component'; +import { WorkspaceitemActionsComponent } from './mydspace-actions/workspaceitem/workspaceitem-actions.component'; +import { WorkflowitemActionsComponent } from './mydspace-actions/workflowitem/workflowitem-actions.component'; +import { ItemSubmitterComponent } from './object-collection/shared/mydspace-item-submitter/item-submitter.component'; +import { ItemActionsComponent } from './mydspace-actions/item/item-actions.component'; +import { ClaimedTaskActionsApproveComponent } from './mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component'; +import { ClaimedTaskActionsRejectComponent } from './mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component'; +import { ObjNgFor } from './utils/object-ngfor.pipe'; +import { BrowseByComponent } from './browse-by/browse-by.component'; +import { BrowseEntryListElementComponent } from './object-list/browse-entry-list-element/browse-entry-list-element.component'; +import { DebounceDirective } from './utils/debounce.directive'; +import { ClickOutsideDirective } from './utils/click-outside.directive'; +import { EmphasizePipe } from './utils/emphasize.pipe'; +import { InputSuggestionsComponent } from './input-suggestions/input-suggestions.component'; +import { CapitalizePipe } from './utils/capitalize.pipe'; +import { ObjectKeysPipe } from './utils/object-keys-pipe'; +import { MomentModule } from 'ngx-moment'; +import { AuthorityConfidenceStateDirective } from './authority-confidence/authority-confidence-state.directive'; +import { MenuModule } from './menu/menu.module'; +import { LangSwitchComponent } from './lang-switch/lang-switch.component'; +import { PlainTextMetadataListElementComponent } from './object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component'; +import { ItemMetadataListElementComponent } from './object-list/metadata-representation-list-element/item/item-metadata-list-element.component'; +import { TooltipModule } from 'ngx-bootstrap'; +import { PersonMetadataListElementComponent } from './object-list/item-list-element/item-types/person/person-metadata-list-element.component'; +import { MetadataRepresentationListElementComponent } from './object-list/metadata-representation-list-element/metadata-representation-list-element.component'; +import { ComColFormComponent } from './comcol-forms/comcol-form/comcol-form.component'; +import { CreateComColPageComponent } from './comcol-forms/create-comcol-page/create-comcol-page.component'; +import { EditComColPageComponent } from './comcol-forms/edit-comcol-page/edit-comcol-page.component'; +import { DeleteComColPageComponent } from './comcol-forms/delete-comcol-page/delete-comcol-page.component'; +import { ObjectValuesPipe } from './utils/object-values-pipe'; +import { InListValidator } from './utils/in-list-validator.directive'; +import { AutoFocusDirective } from './utils/auto-focus.directive'; +import { ComcolPageBrowseByComponent } from './comcol-page-browse-by/comcol-page-browse-by.component'; +import { StartsWithDateComponent } from './starts-with/date/starts-with-date.component'; +import { StartsWithTextComponent } from './starts-with/text/starts-with-text.component'; +import { DSOSelectorComponent } from './dso-selector/dso-selector/dso-selector.component'; +import { CreateCommunityParentSelectorComponent } from './dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component'; +import { CreateItemParentSelectorComponent } from './dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component'; +import { CreateCollectionParentSelectorComponent } from './dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component'; +import { CommunitySearchResultListElementComponent } from './object-list/search-result-list-element/community-search-result/community-search-result-list-element.component'; +import { CollectionSearchResultListElementComponent } from './object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component'; +import { ItemSearchResultListElementComponent } from './object-list/search-result-list-element/item-search-result/item-search-result-list-element.component'; +import { EditItemSelectorComponent } from './dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component'; +import { EditCommunitySelectorComponent } from './dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component'; +import { EditCollectionSelectorComponent } from './dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component'; +import { ItemListPreviewComponent } from './object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component'; +import { MetadataFieldWrapperComponent } from '../+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component'; +import { MetadataValuesComponent } from '../+item-page/field-components/metadata-values/metadata-values.component'; +import { RoleDirective } from './roles/role.directive'; +import { UserMenuComponent } from './auth-nav-menu/user-menu/user-menu.component'; +import { ClaimedTaskActionsReturnToPoolComponent } from './mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component'; +import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component'; +var MODULES = [ + // Do NOT include UniversalModule, HttpModule, or JsonpModule here + CommonModule, + SortablejsModule, + DynamicFormsCoreModule, + DynamicFormsNGBootstrapUIModule, + FileUploadModule, + FormsModule, + InfiniteScrollModule, + NgbModule, + NgbDatepickerModule, + NgbTimepickerModule, + NgbTypeaheadModule, + NgxPaginationModule, + ReactiveFormsModule, + RouterModule, + TranslateModule, + NouisliderModule, + MomentModule, + TextMaskModule, + MenuModule +]; +var ROOT_MODULES = [ + TooltipModule.forRoot() +]; +var PIPES = [ + // put shared pipes here + EnumKeysPipe, + FileSizePipe, + SafeUrlPipe, + TruncatePipe, + EmphasizePipe, + CapitalizePipe, + ObjectKeysPipe, + ObjectValuesPipe, + ConsolePipe, + ObjNgFor +]; +var COMPONENTS = [ + // put shared components here + AlertComponent, + AuthNavMenuComponent, + UserMenuComponent, + ChipsComponent, + ComcolPageContentComponent, + ComcolPageHeaderComponent, + ComcolPageLogoComponent, + ComColFormComponent, + CreateComColPageComponent, + EditComColPageComponent, + DeleteComColPageComponent, + ComcolPageBrowseByComponent, + DsDynamicFormComponent, + DsDynamicFormControlContainerComponent, + DsDynamicListComponent, + DsDynamicLookupComponent, + DsDynamicScrollableDropdownComponent, + DsDynamicTagComponent, + DsDynamicTypeaheadComponent, + DsDynamicRelationGroupComponent, + DsDatePickerComponent, + DsDynamicFormGroupComponent, + DsDynamicFormArrayComponent, + DsDatePickerInlineComponent, + ErrorComponent, + FormComponent, + LangSwitchComponent, + LoadingComponent, + LogInComponent, + LogOutComponent, + NumberPickerComponent, + ObjectListComponent, + ObjectDetailComponent, + ObjectGridComponent, + AbstractListableElementComponent, + WrapperListElementComponent, + WrapperDetailElementComponent, + WrapperGridElementComponent, + ObjectCollectionComponent, + PaginationComponent, + SearchFormComponent, + ThumbnailComponent, + GridThumbnailComponent, + UploaderComponent, + WrapperListElementComponent, + ItemListPreviewComponent, + MyDSpaceItemStatusComponent, + ItemSubmitterComponent, + ItemDetailPreviewComponent, + ItemDetailPreviewFieldComponent, + ClaimedTaskActionsComponent, + ClaimedTaskActionsApproveComponent, + ClaimedTaskActionsRejectComponent, + ClaimedTaskActionsReturnToPoolComponent, + ItemActionsComponent, + PoolTaskActionsComponent, + WorkflowitemActionsComponent, + WorkspaceitemActionsComponent, + ViewModeSwitchComponent, + TruncatableComponent, + TruncatablePartComponent, + BrowseByComponent, + InputSuggestionsComponent, + DSOSelectorComponent, + CreateCommunityParentSelectorComponent, + CreateCollectionParentSelectorComponent, + CreateItemParentSelectorComponent, + EditCommunitySelectorComponent, + EditCollectionSelectorComponent, + EditItemSelectorComponent, + CommunitySearchResultListElementComponent, + CollectionSearchResultListElementComponent, + ItemSearchResultListElementComponent, + TypedItemSearchResultListElementComponent, + ItemTypeSwitcherComponent, + BrowseByComponent +]; +var ENTRY_COMPONENTS = [ + // put shared entry components (components that are created dynamically) here + ItemListElementComponent, + CollectionListElementComponent, + CommunityListElementComponent, + MyDSpaceResultListElementComponent, + SearchResultListElementComponent, + CommunitySearchResultListElementComponent, + CollectionSearchResultListElementComponent, + ItemSearchResultListElementComponent, + ItemGridElementComponent, + CollectionGridElementComponent, + CommunityGridElementComponent, + SearchResultGridElementComponent, + PublicationListElementComponent, + PersonListElementComponent, + PersonMetadataListElementComponent, + OrgUnitMetadataListElementComponent, + OrgUnitListElementComponent, + ProjectListElementComponent, + JournalListElementComponent, + JournalVolumeListElementComponent, + JournalIssueListElementComponent, + BrowseEntryListElementComponent, + MyDSpaceResultDetailElementComponent, + SearchResultGridElementComponent, + DsDynamicListComponent, + DsDynamicLookupComponent, + DsDynamicScrollableDropdownComponent, + DsDynamicTagComponent, + DsDynamicTypeaheadComponent, + DsDynamicRelationGroupComponent, + DsDatePickerComponent, + DsDynamicFormGroupComponent, + DsDynamicFormArrayComponent, + DsDatePickerInlineComponent, + StartsWithDateComponent, + StartsWithTextComponent, + DSOSelectorComponent, + CreateCommunityParentSelectorComponent, + CreateCollectionParentSelectorComponent, + CreateItemParentSelectorComponent, + EditCommunitySelectorComponent, + EditCollectionSelectorComponent, + EditItemSelectorComponent, + StartsWithTextComponent, + PlainTextMetadataListElementComponent, + ItemMetadataListElementComponent, + MetadataRepresentationListElementComponent +]; +var SHARED_ITEM_PAGE_COMPONENTS = [ + MetadataFieldWrapperComponent, + MetadataValuesComponent, +]; +var PROVIDERS = [ + TruncatableService, + MockAdminGuard, + { + provide: DYNAMIC_FORM_CONTROL_MAP_FN, + useValue: dsDynamicFormControlMapFn + } +]; +var DIRECTIVES = [ + VarDirective, + DragClickDirective, + DebounceDirective, + ClickOutsideDirective, + AuthorityConfidenceStateDirective, + InListValidator, + AutoFocusDirective, + RoleDirective +]; +var SharedModule = /** @class */ (function () { + /** + * This module handles all components and pipes that need to be shared among multiple other modules + */ + function SharedModule() { + } + SharedModule = tslib_1.__decorate([ + NgModule({ + imports: MODULES.concat(ROOT_MODULES), + declarations: PIPES.concat(COMPONENTS, DIRECTIVES, ENTRY_COMPONENTS, SHARED_ITEM_PAGE_COMPONENTS), + providers: PROVIDERS.slice(), + exports: MODULES.concat(PIPES, COMPONENTS, SHARED_ITEM_PAGE_COMPONENTS, DIRECTIVES), + entryComponents: ENTRY_COMPONENTS.slice() + }) + /** + * This module handles all components and pipes that need to be shared among multiple other modules + */ + ], SharedModule); + return SharedModule; +}()); +export { SharedModule }; +//# sourceMappingURL=shared.module.js.map \ No newline at end of file diff --git a/src/app/shared/shared.module.js.map b/src/app/shared/shared.module.js.map new file mode 100644 index 0000000000..bd5ebff6ef --- /dev/null +++ b/src/app/shared/shared.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"shared.module.js","sourceRoot":"","sources":["shared.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/starts-with/date/starts-with-date.component.js b/src/app/shared/starts-with/date/starts-with-date.component.js new file mode 100644 index 0000000000..67e408e086 --- /dev/null +++ b/src/app/shared/starts-with/date/starts-with-date.component.js @@ -0,0 +1,133 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderStartsWithFor, StartsWithType } from '../starts-with-decorator'; +import { StartsWithAbstractComponent } from '../starts-with-abstract.component'; +import { hasValue } from '../../empty.util'; +/** + * A switchable component rendering StartsWith options for the type "Date". + * The options are rendered in a dropdown with an input field (of type number) next to it. + */ +var StartsWithDateComponent = /** @class */ (function (_super) { + tslib_1.__extends(StartsWithDateComponent, _super); + function StartsWithDateComponent() { + var _this = _super !== null && _super.apply(this, arguments) || this; + /** + * Currently selected month + */ + _this.startsWithMonth = 'none'; + return _this; + } + StartsWithDateComponent.prototype.ngOnInit = function () { + this.monthOptions = [ + 'none', + 'january', + 'february', + 'march', + 'april', + 'may', + 'june', + 'july', + 'august', + 'september', + 'october', + 'november', + 'december' + ]; + _super.prototype.ngOnInit.call(this); + }; + /** + * Set the startsWith by event + * @param event + */ + StartsWithDateComponent.prototype.setStartsWithYearEvent = function (event) { + this.startsWithYear = +event.target.value; + this.setStartsWithYearMonth(); + this.setStartsWithParam(); + }; + /** + * Set the startsWithMonth by event + * @param event + */ + StartsWithDateComponent.prototype.setStartsWithMonthEvent = function (event) { + this.startsWithMonth = event.target.value; + this.setStartsWithYearMonth(); + this.setStartsWithParam(); + }; + /** + * Get startsWith year combined with month; + * Returned value: "{{year}}-{{month}}" + */ + StartsWithDateComponent.prototype.getStartsWith = function () { + var month = this.getStartsWithMonth(); + if (month > 0 && hasValue(this.startsWithYear) && this.startsWithYear !== -1) { + var twoDigitMonth = '' + month; + if (month < 10) { + twoDigitMonth = "0" + month; + } + return this.startsWithYear + "-" + twoDigitMonth; + } + else { + if (hasValue(this.startsWithYear) && this.startsWithYear > 0) { + return '' + this.startsWithYear; + } + else { + return undefined; + } + } + }; + /** + * Set startsWith year combined with month; + */ + StartsWithDateComponent.prototype.setStartsWithYearMonth = function () { + this.startsWith = this.getStartsWith(); + }; + /** + * Set the startsWith by string + * This method also sets startsWithYear and startsWithMonth correctly depending on the received value + * - When startsWith contains a "-", the first part is considered the year, the second part the month + * - When startsWith doesn't contain a "-", the whole string is expected to be the year + * startsWithMonth will be set depending on the index received after the "-" + * @param startsWith + */ + StartsWithDateComponent.prototype.setStartsWith = function (startsWith) { + this.startsWith = startsWith; + if (hasValue(startsWith) && startsWith.indexOf('-') > -1) { + var split = startsWith.split('-'); + this.startsWithYear = +split[0]; + var month = +split[1]; + if (month < this.monthOptions.length) { + this.startsWithMonth = this.monthOptions[month]; + } + else { + this.startsWithMonth = this.monthOptions[0]; + } + } + else { + this.startsWithYear = +startsWith; + } + this.setStartsWithParam(); + }; + /** + * Get startsWithYear as a number; + */ + StartsWithDateComponent.prototype.getStartsWithYear = function () { + return this.startsWithYear; + }; + /** + * Get startsWithMonth as a number; + */ + StartsWithDateComponent.prototype.getStartsWithMonth = function () { + return this.monthOptions.indexOf(this.startsWithMonth); + }; + StartsWithDateComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-starts-with-date', + styleUrls: ['./starts-with-date.component.scss'], + templateUrl: './starts-with-date.component.html' + }), + renderStartsWithFor(StartsWithType.date) + ], StartsWithDateComponent); + return StartsWithDateComponent; +}(StartsWithAbstractComponent)); +export { StartsWithDateComponent }; +//# sourceMappingURL=starts-with-date.component.js.map \ No newline at end of file diff --git a/src/app/shared/starts-with/date/starts-with-date.component.js.map b/src/app/shared/starts-with/date/starts-with-date.component.js.map new file mode 100644 index 0000000000..e3c2e0b67c --- /dev/null +++ b/src/app/shared/starts-with/date/starts-with-date.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"starts-with-date.component.js","sourceRoot":"","sources":["starts-with-date.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/starts-with/starts-with-abstract.component.js b/src/app/shared/starts-with/starts-with-abstract.component.js new file mode 100644 index 0000000000..31e65afc24 --- /dev/null +++ b/src/app/shared/starts-with/starts-with-abstract.component.js @@ -0,0 +1,83 @@ +import * as tslib_1 from "tslib"; +import { Inject } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { FormControl, FormGroup } from '@angular/forms'; +import { hasValue } from '../empty.util'; +/** + * An abstract component to render StartsWith options + */ +var StartsWithAbstractComponent = /** @class */ (function () { + function StartsWithAbstractComponent(startsWithOptions, route, router) { + this.startsWithOptions = startsWithOptions; + this.route = route; + this.router = router; + /** + * List of subscriptions + */ + this.subs = []; + } + StartsWithAbstractComponent.prototype.ngOnInit = function () { + var _this = this; + this.subs.push(this.route.queryParams.subscribe(function (params) { + if (hasValue(params.startsWith)) { + _this.setStartsWith(params.startsWith); + } + })); + this.formData = new FormGroup({ + startsWith: new FormControl() + }); + }; + /** + * Get startsWith + */ + StartsWithAbstractComponent.prototype.getStartsWith = function () { + return this.startsWith; + }; + /** + * Set the startsWith by event + * @param event + */ + StartsWithAbstractComponent.prototype.setStartsWithEvent = function (event) { + this.startsWith = event.target.value; + this.setStartsWithParam(); + }; + /** + * Set the startsWith by string + * @param startsWith + */ + StartsWithAbstractComponent.prototype.setStartsWith = function (startsWith) { + this.startsWith = startsWith; + this.setStartsWithParam(); + }; + /** + * Add/Change the url query parameter startsWith using the local variable + */ + StartsWithAbstractComponent.prototype.setStartsWithParam = function () { + if (this.startsWith === '-1') { + this.startsWith = undefined; + } + this.router.navigate([], { + queryParams: Object.assign({ startsWith: this.startsWith }), + queryParamsHandling: 'merge' + }); + }; + /** + * Submit the form data. Called when clicking a submit button on the form. + * @param data + */ + StartsWithAbstractComponent.prototype.submitForm = function (data) { + this.startsWith = data.startsWith; + this.setStartsWithParam(); + }; + StartsWithAbstractComponent.prototype.ngOnDestroy = function () { + this.subs.filter(function (sub) { return hasValue(sub); }).forEach(function (sub) { return sub.unsubscribe(); }); + }; + StartsWithAbstractComponent = tslib_1.__decorate([ + tslib_1.__param(0, Inject('startsWithOptions')), + tslib_1.__metadata("design:paramtypes", [Array, ActivatedRoute, + Router]) + ], StartsWithAbstractComponent); + return StartsWithAbstractComponent; +}()); +export { StartsWithAbstractComponent }; +//# sourceMappingURL=starts-with-abstract.component.js.map \ No newline at end of file diff --git a/src/app/shared/starts-with/starts-with-abstract.component.js.map b/src/app/shared/starts-with/starts-with-abstract.component.js.map new file mode 100644 index 0000000000..ce1c7e265e --- /dev/null +++ b/src/app/shared/starts-with/starts-with-abstract.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"starts-with-abstract.component.js","sourceRoot":"","sources":["starts-with-abstract.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;GAEG;AACH;IAgBE,qCAAuD,iBAAwB,EAClD,KAAqB,EACrB,MAAc;QAFY,sBAAiB,GAAjB,iBAAiB,CAAO;QAClD,UAAK,GAAL,KAAK,CAAgB;QACrB,WAAM,GAAN,MAAM,CAAQ;QAP3C;;WAEG;QACH,SAAI,GAAmB,EAAE,CAAC;IAK1B,CAAC;IAED,8CAAQ,GAAR;QAAA,iBAWC;QAVC,IAAI,CAAC,IAAI,CAAC,IAAI,CACZ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,UAAC,MAAM;YACtC,IAAI,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;gBAC/B,KAAI,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aACvC;QACH,CAAC,CAAC,CACH,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC;YAC5B,UAAU,EAAE,IAAI,WAAW,EAAE;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,mDAAa,GAAb;QACE,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,wDAAkB,GAAlB,UAAmB,KAAY;QAC7B,IAAI,CAAC,UAAU,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;QAC3D,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,mDAAa,GAAb,UAAc,UAAkB;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,wDAAkB,GAAlB;QACE,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE;YAC5B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;SAC7B;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE;YACvB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3D,mBAAmB,EAAE,OAAO;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,gDAAU,GAAV,UAAW,IAAI;QACb,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED,iDAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,GAAG,CAAC,EAAb,CAAa,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,WAAW,EAAE,EAAjB,CAAiB,CAAC,CAAC;IAC/E,CAAC;IAnFU,2BAA2B;QAgBlB,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA;wDACX,cAAc;YACb,MAAM;OAlBhC,2BAA2B,CAoFvC;IAAD,kCAAC;CAAA,AApFD,IAoFC;SApFY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/starts-with/starts-with-decorator.js b/src/app/shared/starts-with/starts-with-decorator.js new file mode 100644 index 0000000000..520883b3f7 --- /dev/null +++ b/src/app/shared/starts-with/starts-with-decorator.js @@ -0,0 +1,29 @@ +var startsWithMap = new Map(); +/** + * An enum that defines the type of StartsWith options + */ +export var StartsWithType; +(function (StartsWithType) { + StartsWithType["text"] = "Text"; + StartsWithType["date"] = "Date"; +})(StartsWithType || (StartsWithType = {})); +/** + * Fetch a decorator to render a StartsWith component for type + * @param type + */ +export function renderStartsWithFor(type) { + return function decorator(objectElement) { + if (!objectElement) { + return; + } + startsWithMap.set(type, objectElement); + }; +} +/** + * Get the correct component depending on the StartsWith type + * @param type + */ +export function getStartsWithComponent(type) { + return startsWithMap.get(type); +} +//# sourceMappingURL=starts-with-decorator.js.map \ No newline at end of file diff --git a/src/app/shared/starts-with/starts-with-decorator.js.map b/src/app/shared/starts-with/starts-with-decorator.js.map new file mode 100644 index 0000000000..3e84c0b3e8 --- /dev/null +++ b/src/app/shared/starts-with/starts-with-decorator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"starts-with-decorator.js","sourceRoot":"","sources":["starts-with-decorator.ts"],"names":[],"mappings":"AAAA,IAAM,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;AAEhC;;GAEG;AACH,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED;;;GAGG;AACH,MAAM,8BAA8B,IAAoB;IACtD,OAAO,mBAAmB,aAAkB;QAC1C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,iCAAiC,IAAoB;IACzD,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/starts-with/text/starts-with-text.component.js b/src/app/shared/starts-with/text/starts-with-text.component.js new file mode 100644 index 0000000000..e6b4014239 --- /dev/null +++ b/src/app/shared/starts-with/text/starts-with-text.component.js @@ -0,0 +1,55 @@ +import * as tslib_1 from "tslib"; +import { Component } from '@angular/core'; +import { renderStartsWithFor, StartsWithType } from '../starts-with-decorator'; +import { StartsWithAbstractComponent } from '../starts-with-abstract.component'; +import { hasValue } from '../../empty.util'; +/** + * A switchable component rendering StartsWith options for the type "Text". + */ +var StartsWithTextComponent = /** @class */ (function (_super) { + tslib_1.__extends(StartsWithTextComponent, _super); + function StartsWithTextComponent() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * Get startsWith as text; + */ + StartsWithTextComponent.prototype.getStartsWith = function () { + if (hasValue(this.startsWith)) { + return this.startsWith; + } + else { + return ''; + } + }; + /** + * Add/Change the url query parameter startsWith using the local variable + */ + StartsWithTextComponent.prototype.setStartsWithParam = function () { + if (this.startsWith === '0-9') { + this.startsWith = '0'; + } + _super.prototype.setStartsWithParam.call(this); + }; + /** + * Checks whether the provided option is equal to the current startsWith + * @param option + */ + StartsWithTextComponent.prototype.isSelectedOption = function (option) { + if (this.startsWith === '0' && option === '0-9') { + return true; + } + return option === this.startsWith; + }; + StartsWithTextComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-starts-with-text', + styleUrls: ['./starts-with-text.component.scss'], + templateUrl: './starts-with-text.component.html' + }), + renderStartsWithFor(StartsWithType.text) + ], StartsWithTextComponent); + return StartsWithTextComponent; +}(StartsWithAbstractComponent)); +export { StartsWithTextComponent }; +//# sourceMappingURL=starts-with-text.component.js.map \ No newline at end of file diff --git a/src/app/shared/starts-with/text/starts-with-text.component.js.map b/src/app/shared/starts-with/text/starts-with-text.component.js.map new file mode 100644 index 0000000000..4e975cb963 --- /dev/null +++ b/src/app/shared/starts-with/text/starts-with-text.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"starts-with-text.component.js","sourceRoot":"","sources":["starts-with-text.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;GAEG;AAOH;IAA6C,mDAA2B;IAAxE;;IAkCA,CAAC;IAhCC;;OAEG;IACH,+CAAa,GAAb;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC,UAAU,CAAC;SACxB;aAAM;YACL,OAAO,EAAE,CAAC;SACX;IACH,CAAC;IAED;;OAEG;IACH,oDAAkB,GAAlB;QACE,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE;YAC7B,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;SACvB;QACD,iBAAM,kBAAkB,WAAE,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,kDAAgB,GAAhB,UAAiB,MAAc;QAC7B,IAAI,IAAI,CAAC,UAAU,KAAK,GAAG,IAAI,MAAM,KAAK,KAAK,EAAE;YAC/C,OAAO,IAAI,CAAC;SACb;QACD,OAAO,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC;IACpC,CAAC;IAhCU,uBAAuB;QANnC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,mCAAmC,CAAC;YAChD,WAAW,EAAE,mCAAmC;SACjD,CAAC;QACD,mBAAmB,CAAC,cAAc,CAAC,IAAI,CAAC;OAC5B,uBAAuB,CAkCnC;IAAD,8BAAC;CAAA,AAlCD,CAA6C,2BAA2B,GAkCvE;SAlCY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/testing/active-router-stub.js b/src/app/shared/testing/active-router-stub.js new file mode 100644 index 0000000000..32e831461e --- /dev/null +++ b/src/app/shared/testing/active-router-stub.js @@ -0,0 +1,46 @@ +import { map } from 'rxjs/operators'; +import { convertToParamMap } from '@angular/router'; +import { BehaviorSubject } from 'rxjs'; +var ActivatedRouteStub = /** @class */ (function () { + function ActivatedRouteStub(params) { + // ActivatedRoute.params is Observable + this.subject = new BehaviorSubject(this.testParams); + this.params = this.subject.asObservable(); + this.queryParams = this.subject.asObservable(); + this.paramMap = this.subject.asObservable().pipe(map(function (params) { return convertToParamMap(params); })); + this.queryParamMap = this.subject.asObservable().pipe(map(function (params) { return convertToParamMap(params); })); + if (params) { + this.testParams = params; + } + else { + this.testParams = {}; + } + } + ; + Object.defineProperty(ActivatedRouteStub.prototype, "testParams", { + // Test parameters + get: function () { + return this._testParams; + }, + set: function (params) { + this._testParams = params; + this.subject.next(params); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ActivatedRouteStub.prototype, "snapshot", { + // ActivatedRoute.snapshot.params + get: function () { + return { + params: this.testParams, + queryParamMap: convertToParamMap(this.testParams) + }; + }, + enumerable: true, + configurable: true + }); + return ActivatedRouteStub; +}()); +export { ActivatedRouteStub }; +//# sourceMappingURL=active-router-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/active-router-stub.js.map b/src/app/shared/testing/active-router-stub.js.map new file mode 100644 index 0000000000..25c7e620f2 --- /dev/null +++ b/src/app/shared/testing/active-router-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"active-router-stub.js","sourceRoot":"","sources":["active-router-stub.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAoB,MAAM,iBAAiB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEvC;IAWE,4BAAY,MAAe;QAR3B,sCAAsC;QAC9B,YAAO,GAA0B,IAAI,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE9E,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACrC,gBAAW,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1C,aAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,MAAc,IAAK,OAAA,iBAAiB,CAAC,MAAM,CAAC,EAAzB,CAAyB,CAAC,CAAC,CAAC;QAChG,kBAAa,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,MAAc,IAAK,OAAA,iBAAiB,CAAC,MAAM,CAAC,EAAzB,CAAyB,CAAC,CAAC,CAAC;QAGnG,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;SACtB;IACH,CAAC;IAT+F,CAAC;IAYjG,sBAAI,0CAAU;QADd,kBAAkB;aAClB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aAED,UAAe,MAAU;YACvB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;;;OALA;IAQD,sBAAI,wCAAQ;QADZ,iCAAiC;aACjC;YACE,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,UAAU;gBACvB,aAAa,EAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC;aAClD,CAAA;QACH,CAAC;;;OAAA;IACH,yBAAC;AAAD,CAAC,AApCD,IAoCC"} \ No newline at end of file diff --git a/src/app/shared/testing/auth-request-service-stub.js b/src/app/shared/testing/auth-request-service-stub.js new file mode 100644 index 0000000000..fa8528198c --- /dev/null +++ b/src/app/shared/testing/auth-request-service-stub.js @@ -0,0 +1,74 @@ +import { of as observableOf } from 'rxjs'; +import { AuthStatus } from '../../core/auth/models/auth-status.model'; +import { AuthTokenInfo } from '../../core/auth/models/auth-token-info.model'; +import { isNotEmpty } from '../empty.util'; +import { EPersonMock } from './eperson-mock'; +import { RemoteData } from '../../core/data/remote-data'; +var AuthRequestServiceStub = /** @class */ (function () { + function AuthRequestServiceStub() { + this.mockUser = EPersonMock; + this.mockTokenInfo = new AuthTokenInfo('test_token'); + } + AuthRequestServiceStub.prototype.postToEndpoint = function (method, body, options) { + var authStatusStub = new AuthStatus(); + if (isNotEmpty(body)) { + var parsedBody = this.parseQueryString(body); + authStatusStub.okay = true; + if (parsedBody.user === 'user' && parsedBody.password === 'password') { + authStatusStub.authenticated = true; + authStatusStub.token = this.mockTokenInfo; + } + else { + authStatusStub.authenticated = false; + } + } + else { + var token = options.headers.lazyUpdate[1].value; + if (this.validateToken(token)) { + authStatusStub.authenticated = true; + authStatusStub.token = this.mockTokenInfo; + authStatusStub.eperson = observableOf(new RemoteData(false, false, true, undefined, this.mockUser)); + } + else { + authStatusStub.authenticated = false; + } + } + return observableOf(authStatusStub); + }; + AuthRequestServiceStub.prototype.getRequest = function (method, options) { + var authStatusStub = new AuthStatus(); + switch (method) { + case 'logout': + authStatusStub.authenticated = false; + break; + case 'status': + var token = options.headers.lazyUpdate[1].value; + if (this.validateToken(token)) { + authStatusStub.authenticated = true; + authStatusStub.token = this.mockTokenInfo; + authStatusStub.eperson = observableOf(new RemoteData(false, false, true, undefined, this.mockUser)); + } + else { + authStatusStub.authenticated = false; + } + break; + } + return observableOf(authStatusStub); + }; + AuthRequestServiceStub.prototype.validateToken = function (token) { + return (token === 'Bearer test_token'); + }; + AuthRequestServiceStub.prototype.parseQueryString = function (query) { + var obj = Object.create({}); + var vars = query.split('&'); + for (var _i = 0, vars_1 = vars; _i < vars_1.length; _i++) { + var param = vars_1[_i]; + var pair = param.split('='); + obj[pair[0]] = pair[1]; + } + return obj; + }; + return AuthRequestServiceStub; +}()); +export { AuthRequestServiceStub }; +//# sourceMappingURL=auth-request-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/auth-request-service-stub.js.map b/src/app/shared/testing/auth-request-service-stub.js.map new file mode 100644 index 0000000000..b7d02f20d5 --- /dev/null +++ b/src/app/shared/testing/auth-request-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-request-service-stub.js","sourceRoot":"","sources":["auth-request-service-stub.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/testing/auth-service-stub.js b/src/app/shared/testing/auth-service-stub.js new file mode 100644 index 0000000000..371d2ebecc --- /dev/null +++ b/src/app/shared/testing/auth-service-stub.js @@ -0,0 +1,85 @@ +import { of as observableOf } from 'rxjs'; +import { AuthStatus } from '../../core/auth/models/auth-status.model'; +import { AuthTokenInfo } from '../../core/auth/models/auth-token-info.model'; +import { EPersonMock } from './eperson-mock'; +import { RemoteData } from '../../core/data/remote-data'; +var AuthServiceStub = /** @class */ (function () { + function AuthServiceStub() { + this.token = new AuthTokenInfo('token_test'); + this._tokenExpired = false; + this.token.expires = Date.now() + (1000 * 60 * 60); + } + AuthServiceStub.prototype.authenticate = function (user, password) { + if (user === 'user' && password === 'password') { + var authStatus = new AuthStatus(); + authStatus.okay = true; + authStatus.authenticated = true; + authStatus.token = this.token; + authStatus.eperson = observableOf(new RemoteData(false, false, true, undefined, EPersonMock)); + return observableOf(authStatus); + } + else { + console.log('error'); + throw (new Error('Message Error test')); + } + }; + AuthServiceStub.prototype.authenticatedUser = function (token) { + if (token.accessToken === 'token_test') { + return observableOf(EPersonMock); + } + else { + throw (new Error('Message Error test')); + } + }; + AuthServiceStub.prototype.buildAuthHeader = function (token) { + return "Bearer " + token.accessToken; + }; + AuthServiceStub.prototype.getToken = function () { + return this.token; + }; + AuthServiceStub.prototype.hasValidAuthenticationToken = function () { + return observableOf(this.token); + }; + AuthServiceStub.prototype.logout = function () { + return observableOf(true); + }; + AuthServiceStub.prototype.isTokenExpired = function (token) { + return this._tokenExpired; + }; + /** + * This method is used to ease testing + */ + AuthServiceStub.prototype.setTokenAsExpired = function () { + this._tokenExpired = true; + }; + /** + * This method is used to ease testing + */ + AuthServiceStub.prototype.setTokenAsNotExpired = function () { + this._tokenExpired = false; + }; + AuthServiceStub.prototype.isTokenExpiring = function () { + return observableOf(false); + }; + AuthServiceStub.prototype.refreshAuthenticationToken = function (token) { + return observableOf(this.token); + }; + AuthServiceStub.prototype.redirectToPreviousUrl = function () { + return; + }; + AuthServiceStub.prototype.removeToken = function () { + return; + }; + AuthServiceStub.prototype.setRedirectUrl = function (url) { + return; + }; + AuthServiceStub.prototype.storeToken = function (token) { + return; + }; + AuthServiceStub.prototype.isAuthenticated = function () { + return observableOf(true); + }; + return AuthServiceStub; +}()); +export { AuthServiceStub }; +//# sourceMappingURL=auth-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/auth-service-stub.js.map b/src/app/shared/testing/auth-service-stub.js.map new file mode 100644 index 0000000000..1787839899 --- /dev/null +++ b/src/app/shared/testing/auth-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auth-service-stub.js","sourceRoot":"","sources":["auth-service-stub.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/testing/authority-service-stub.js b/src/app/shared/testing/authority-service-stub.js new file mode 100644 index 0000000000..40e630c55e --- /dev/null +++ b/src/app/shared/testing/authority-service-stub.js @@ -0,0 +1,21 @@ +import { of as observableOf } from 'rxjs'; +import { IntegrationData } from '../../core/integration/integration-data'; +import { PageInfo } from '../../core/shared/page-info.model'; +import { AuthorityValue } from '../../core/integration/models/authority.value'; +var AuthorityServiceStub = /** @class */ (function () { + function AuthorityServiceStub() { + this._payload = [ + Object.assign(new AuthorityValue(), { id: 1, display: 'one', value: 1 }), + Object.assign(new AuthorityValue(), { id: 2, display: 'two', value: 2 }), + ]; + } + AuthorityServiceStub.prototype.setNewPayload = function (payload) { + this._payload = payload; + }; + AuthorityServiceStub.prototype.getEntriesByName = function (options) { + return observableOf(new IntegrationData(new PageInfo(), this._payload)); + }; + return AuthorityServiceStub; +}()); +export { AuthorityServiceStub }; +//# sourceMappingURL=authority-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/authority-service-stub.js.map b/src/app/shared/testing/authority-service-stub.js.map new file mode 100644 index 0000000000..a3e08627c4 --- /dev/null +++ b/src/app/shared/testing/authority-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"authority-service-stub.js","sourceRoot":"","sources":["authority-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAE/E;IAAA;QAEU,aAAQ,GAAG;YACjB,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAC,EAAC,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAC,CAAC;YACrE,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAC,EAAC,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAC,CAAC;SACtE,CAAC;IASJ,CAAC;IAPC,4CAAa,GAAb,UAAc,OAAO;QACnB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,+CAAgB,GAAhB,UAAiB,OAAiC;QAChD,OAAO,YAAY,CAAC,IAAI,eAAe,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1E,CAAC;IACH,2BAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/shared/testing/css-variable-service-stub.js b/src/app/shared/testing/css-variable-service-stub.js new file mode 100644 index 0000000000..314ee7f542 --- /dev/null +++ b/src/app/shared/testing/css-variable-service-stub.js @@ -0,0 +1,23 @@ +import { of as observableOf } from 'rxjs'; +var variables = { + smMin: '576px,', + mdMin: '768px,', + lgMin: '992px', + xlMin: '1200px', +}; +var CSSVariableServiceStub = /** @class */ (function () { + function CSSVariableServiceStub() { + } + CSSVariableServiceStub.prototype.getVariable = function (name) { + return observableOf('500px'); + }; + CSSVariableServiceStub.prototype.getAllVariables = function (name) { + return observableOf(variables); + }; + CSSVariableServiceStub.prototype.addCSSVariable = function (name, value) { + /**/ + }; + return CSSVariableServiceStub; +}()); +export { CSSVariableServiceStub }; +//# sourceMappingURL=css-variable-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/css-variable-service-stub.js.map b/src/app/shared/testing/css-variable-service-stub.js.map new file mode 100644 index 0000000000..a7a452b5c1 --- /dev/null +++ b/src/app/shared/testing/css-variable-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"css-variable-service-stub.js","sourceRoot":"","sources":["css-variable-service-stub.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C,IAAM,SAAS,GAAG;IAChB,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,QAAQ;CACT,CAAC;AAET;IAAA;IAYA,CAAC;IAXC,4CAAW,GAAX,UAAY,IAAY;QACtB,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,gDAAe,GAAf,UAAgB,IAAY;QAC1B,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED,+CAAc,GAAd,UAAe,IAAY,EAAE,KAAa;QACxC,IAAI;IACN,CAAC;IACH,6BAAC;AAAD,CAAC,AAZD,IAYC"} \ No newline at end of file diff --git a/src/app/shared/testing/eperson-mock.js b/src/app/shared/testing/eperson-mock.js new file mode 100644 index 0000000000..d189e33c8e --- /dev/null +++ b/src/app/shared/testing/eperson-mock.js @@ -0,0 +1,42 @@ +import { EPerson } from '../../core/eperson/models/eperson.model'; +export var EPersonMock = Object.assign(new EPerson(), { + handle: null, + groups: [], + netid: 'test@test.com', + lastActive: '2018-05-14T12:25:42.411+0000', + canLogIn: true, + email: 'test@test.com', + requireCertificate: false, + selfRegistered: false, + self: 'https://dspace.4science.it/dspace-spring-rest/api/eperson/epersons/testid', + id: 'testid', + uuid: 'testid', + type: 'eperson', + metadata: { + 'dc.title': [ + { + language: null, + value: 'User Test' + } + ], + 'eperson.firstname': [ + { + language: null, + value: 'User' + } + ], + 'eperson.lastname': [ + { + language: null, + value: 'Test' + }, + ], + 'eperson.language': [ + { + language: null, + value: 'en' + }, + ] + } +}); +//# sourceMappingURL=eperson-mock.js.map \ No newline at end of file diff --git a/src/app/shared/testing/eperson-mock.js.map b/src/app/shared/testing/eperson-mock.js.map new file mode 100644 index 0000000000..4614e04850 --- /dev/null +++ b/src/app/shared/testing/eperson-mock.js.map @@ -0,0 +1 @@ +{"version":3,"file":"eperson-mock.js","sourceRoot":"","sources":["eperson-mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAC;AAElE,MAAM,CAAC,IAAM,WAAW,GAAY,MAAM,CAAC,MAAM,CAAC,IAAI,OAAO,EAAE,EAAC;IAC9D,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,eAAe;IACtB,UAAU,EAAE,8BAA8B;IAC1C,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,eAAe;IACtB,kBAAkB,EAAE,KAAK;IACzB,cAAc,EAAE,KAAK;IACrB,IAAI,EAAE,2EAA2E;IACjF,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE;QACR,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,WAAW;aACnB;SACF;QACD,mBAAmB,EAAE;YACnB;gBACE,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,MAAM;aACd;SACF;QACD,kBAAkB,EAAE;YAClB;gBACE,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,MAAM;aACd;SACF;QACD,kBAAkB,EAAE;YAClB;gBACE,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,IAAI;aACZ;SACF;KACF;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/testing/hal-endpoint-service-stub.js b/src/app/shared/testing/hal-endpoint-service-stub.js new file mode 100644 index 0000000000..9462df0309 --- /dev/null +++ b/src/app/shared/testing/hal-endpoint-service-stub.js @@ -0,0 +1,13 @@ +import { of as observableOf } from 'rxjs'; +var HALEndpointServiceStub = /** @class */ (function () { + function HALEndpointServiceStub(url) { + this.url = url; + } + ; + HALEndpointServiceStub.prototype.getEndpoint = function (path) { + return observableOf(this.url + '/' + path); + }; + return HALEndpointServiceStub; +}()); +export { HALEndpointServiceStub }; +//# sourceMappingURL=hal-endpoint-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/hal-endpoint-service-stub.js.map b/src/app/shared/testing/hal-endpoint-service-stub.js.map new file mode 100644 index 0000000000..f1fe0c6810 --- /dev/null +++ b/src/app/shared/testing/hal-endpoint-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"hal-endpoint-service-stub.js","sourceRoot":"","sources":["hal-endpoint-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAE1C;IAEE,gCAAoB,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;IAAG,CAAC;IAAA,CAAC;IACpC,4CAAW,GAAX,UAAY,IAAY;QACtB,OAAO,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;IACH,6BAAC;AAAD,CAAC,AAND,IAMC"} \ No newline at end of file diff --git a/src/app/shared/testing/host-window-service-stub.js b/src/app/shared/testing/host-window-service-stub.js new file mode 100644 index 0000000000..3fd93aae41 --- /dev/null +++ b/src/app/shared/testing/host-window-service-stub.js @@ -0,0 +1,19 @@ +import { of as observableOf } from 'rxjs'; +// declare a stub service +var HostWindowServiceStub = /** @class */ (function () { + function HostWindowServiceStub(width) { + this.setWidth(width); + } + HostWindowServiceStub.prototype.setWidth = function (width) { + this.width = width; + }; + HostWindowServiceStub.prototype.isXs = function () { + return observableOf(this.width < 576); + }; + HostWindowServiceStub.prototype.isXsOrSm = function () { + return this.isXs(); + }; + return HostWindowServiceStub; +}()); +export { HostWindowServiceStub }; +//# sourceMappingURL=host-window-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/host-window-service-stub.js.map b/src/app/shared/testing/host-window-service-stub.js.map new file mode 100644 index 0000000000..9ee176b21a --- /dev/null +++ b/src/app/shared/testing/host-window-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"host-window-service-stub.js","sourceRoot":"","sources":["host-window-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtD,yBAAyB;AACzB;IAIE,+BAAY,KAAK;QACf,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,wCAAQ,GAAR,UAAS,KAAK;QACZ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,oCAAI,GAAJ;QACE,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,wCAAQ,GAAR;QACE,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IACH,4BAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file diff --git a/src/app/shared/testing/menu-service-stub.js b/src/app/shared/testing/menu-service-stub.js new file mode 100644 index 0000000000..0ef5a4aea5 --- /dev/null +++ b/src/app/shared/testing/menu-service-stub.js @@ -0,0 +1,94 @@ +import { of as observableOf } from 'rxjs'; +var MenuServiceStub = /** @class */ (function () { + function MenuServiceStub() { + this.visibleSection1 = { + id: 'section', + visible: true, + active: false + }; + this.visibleSection2 = { + id: 'section_2', + visible: true + }; + this.hiddenSection3 = { + id: 'section_3', + visible: false + }; + this.subSection4 = { + id: 'section_4', + visible: true, + parentID: 'section1' + }; + } + MenuServiceStub.prototype.toggleMenu = function () { + }; + ; + MenuServiceStub.prototype.expandMenu = function () { + }; + ; + MenuServiceStub.prototype.collapseMenu = function () { + }; + ; + MenuServiceStub.prototype.showMenu = function () { + }; + ; + MenuServiceStub.prototype.hideMenu = function () { + }; + ; + MenuServiceStub.prototype.expandMenuPreview = function () { + }; + ; + MenuServiceStub.prototype.collapseMenuPreview = function () { + }; + ; + MenuServiceStub.prototype.toggleActiveSection = function () { + }; + ; + MenuServiceStub.prototype.activateSection = function () { + }; + ; + MenuServiceStub.prototype.deactivateSection = function () { + }; + ; + MenuServiceStub.prototype.addSection = function () { + }; + ; + MenuServiceStub.prototype.removeSection = function () { + }; + ; + MenuServiceStub.prototype.isMenuVisible = function (id) { + return observableOf(true); + }; + ; + MenuServiceStub.prototype.isMenuCollapsed = function (id) { + return observableOf(false); + }; + ; + MenuServiceStub.prototype.isMenuPreviewCollapsed = function (id) { + return observableOf(true); + }; + ; + MenuServiceStub.prototype.hasSubSections = function (id, sectionID) { + return observableOf(true); + }; + ; + MenuServiceStub.prototype.getMenuTopSections = function (id) { + return observableOf([this.visibleSection1, this.visibleSection2]); + }; + ; + MenuServiceStub.prototype.getSubSectionsByParentID = function (id) { + return observableOf([this.subSection4]); + }; + ; + MenuServiceStub.prototype.isSectionActive = function (id, sectionID) { + return observableOf(true); + }; + ; + MenuServiceStub.prototype.isSectionVisible = function (id, sectionID) { + return observableOf(true); + }; + ; + return MenuServiceStub; +}()); +export { MenuServiceStub }; +//# sourceMappingURL=menu-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/menu-service-stub.js.map b/src/app/shared/testing/menu-service-stub.js.map new file mode 100644 index 0000000000..c99889fc81 --- /dev/null +++ b/src/app/shared/testing/menu-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"menu-service-stub.js","sourceRoot":"","sources":["menu-service-stub.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAI1C;IAAA;QACE,oBAAe,GAAG;YAChB,EAAE,EAAE,SAAS;YACb,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,KAAK;SACP,CAAC;QACT,oBAAe,GAAG;YAChB,EAAE,EAAE,WAAW;YACf,OAAO,EAAE,IAAI;SACP,CAAC;QACT,mBAAc,GAAG;YACf,EAAE,EAAE,WAAW;YACf,OAAO,EAAE,KAAK;SACR,CAAC;QACT,gBAAW,GAAG;YACZ,EAAE,EAAE,WAAW;YACf,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,UAAU;SACd,CAAC;IAqEX,CAAC;IAnEC,oCAAU,GAAV;IACA,CAAC;IAAA,CAAC;IAEF,oCAAU,GAAV;IACA,CAAC;IAAA,CAAC;IAEF,sCAAY,GAAZ;IACA,CAAC;IAAA,CAAC;IAEF,kCAAQ,GAAR;IACA,CAAC;IAAA,CAAC;IAEF,kCAAQ,GAAR;IACA,CAAC;IAAA,CAAC;IAEF,2CAAiB,GAAjB;IACA,CAAC;IAAA,CAAC;IAEF,6CAAmB,GAAnB;IACA,CAAC;IAAA,CAAC;IAEF,6CAAmB,GAAnB;IACA,CAAC;IAAA,CAAC;IAEF,yCAAe,GAAf;IACA,CAAC;IAAA,CAAC;IAEF,2CAAiB,GAAjB;IACA,CAAC;IAAA,CAAC;IAEF,oCAAU,GAAV;IACA,CAAC;IAAA,CAAC;IAEF,uCAAa,GAAb;IACA,CAAC;IAAA,CAAC;IAEF,uCAAa,GAAb,UAAc,EAAU;QACtB,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IAEF,yCAAe,GAAf,UAAgB,EAAU;QACxB,OAAO,YAAY,CAAC,KAAK,CAAC,CAAA;IAC5B,CAAC;IAAA,CAAC;IAEF,gDAAsB,GAAtB,UAAuB,EAAU;QAC/B,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IAEF,wCAAc,GAAd,UAAe,EAAU,EAAE,SAAiB;QAC1C,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IAEF,4CAAkB,GAAlB,UAAmB,EAAU;QAC3B,OAAO,YAAY,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAA;IACnE,CAAC;IAAA,CAAC;IAEF,kDAAwB,GAAxB,UAAyB,EAAU;QACjC,OAAO,YAAY,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAA;IACzC,CAAC;IAAA,CAAC;IAEF,yCAAe,GAAf,UAAgB,EAAU,EAAE,SAAiB;QAC3C,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IAEF,0CAAgB,GAAhB,UAAiB,EAAU,EAAE,SAAiB;QAC5C,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IACJ,sBAAC;AAAD,CAAC,AAvFD,IAuFC"} \ No newline at end of file diff --git a/src/app/shared/testing/mock-action.js b/src/app/shared/testing/mock-action.js new file mode 100644 index 0000000000..eb52581277 --- /dev/null +++ b/src/app/shared/testing/mock-action.js @@ -0,0 +1,8 @@ +var MockAction = /** @class */ (function () { + function MockAction() { + this.type = null; + } + return MockAction; +}()); +export { MockAction }; +//# sourceMappingURL=mock-action.js.map \ No newline at end of file diff --git a/src/app/shared/testing/mock-action.js.map b/src/app/shared/testing/mock-action.js.map new file mode 100644 index 0000000000..def2870f4d --- /dev/null +++ b/src/app/shared/testing/mock-action.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-action.js","sourceRoot":"","sources":["mock-action.ts"],"names":[],"mappings":"AAEA;IAAA;QACE,SAAI,GAAG,IAAI,CAAC;IAEd,CAAC;IAAD,iBAAC;AAAD,CAAC,AAHD,IAGC"} \ No newline at end of file diff --git a/src/app/shared/testing/mock-store.js b/src/app/shared/testing/mock-store.js new file mode 100644 index 0000000000..cfcbeac3bc --- /dev/null +++ b/src/app/shared/testing/mock-store.js @@ -0,0 +1,25 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { ActionsSubject, ReducerManager, StateObservable, Store } from '@ngrx/store'; +import { BehaviorSubject } from 'rxjs/internal/BehaviorSubject'; +var MockStore = /** @class */ (function (_super) { + tslib_1.__extends(MockStore, _super); + function MockStore(state$, actionsObserver, reducerManager) { + var _this = _super.call(this, state$, actionsObserver, reducerManager) || this; + _this.stateSubject = new BehaviorSubject({}); + _this.source = _this.stateSubject.asObservable(); + return _this; + } + MockStore.prototype.nextState = function (nextState) { + this.stateSubject.next(nextState); + }; + MockStore = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [StateObservable, + ActionsSubject, + ReducerManager]) + ], MockStore); + return MockStore; +}(Store)); +export { MockStore }; +//# sourceMappingURL=mock-store.js.map \ No newline at end of file diff --git a/src/app/shared/testing/mock-store.js.map b/src/app/shared/testing/mock-store.js.map new file mode 100644 index 0000000000..5fde29ed0f --- /dev/null +++ b/src/app/shared/testing/mock-store.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-store.js","sourceRoot":"","sources":["mock-store.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE;IAAkC,qCAAQ;IAGxC,mBACE,MAAuB,EACvB,eAA+B,EAC/B,cAA8B;QAHhC,YAKE,kBAAM,MAAM,EAAE,eAAe,EAAE,cAAc,CAAC,SAE/C;QATO,kBAAY,GAAG,IAAI,eAAe,CAAI,EAAO,CAAC,CAAC;QAQrD,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;;IACjD,CAAC;IAED,6BAAS,GAAT,UAAU,SAAY;QACpB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAdU,SAAS;QADrB,UAAU,EAAE;iDAKD,eAAe;YACN,cAAc;YACf,cAAc;OANrB,SAAS,CAerB;IAAD,gBAAC;CAAA,AAfD,CAAkC,KAAK,GAetC;SAfY,SAAS"} \ No newline at end of file diff --git a/src/app/shared/testing/mock-submission-config.js b/src/app/shared/testing/mock-submission-config.js new file mode 100644 index 0000000000..f222dac593 --- /dev/null +++ b/src/app/shared/testing/mock-submission-config.js @@ -0,0 +1,51 @@ +export var MOCK_SUBMISSION_CONFIG = { + submission: { + autosave: { + // NOTE: which metadata trigger an autosave + metadata: ['dc.title', 'dc.identifier.doi', 'dc.identifier.pmid', 'dc.identifier.arxiv'], + // NOTE: every how many minutes submission is saved automatically + timer: 5 + }, + icons: { + metadata: [ + { + name: 'mainField', + style: 'fas fa-user' + }, + { + name: 'relatedField', + style: 'fas fa-university' + }, + { + name: 'otherRelatedField', + style: 'fas fa-circle' + }, + { + name: 'default', + style: '' + } + ], + authority: { + confidence: [ + { + value: 600, + style: 'text-success' + }, + { + value: 500, + style: 'text-info' + }, + { + value: 400, + style: 'text-warning' + }, + { + value: 'default', + style: 'text-muted' + }, + ] + } + } + } +}; +//# sourceMappingURL=mock-submission-config.js.map \ No newline at end of file diff --git a/src/app/shared/testing/mock-submission-config.js.map b/src/app/shared/testing/mock-submission-config.js.map new file mode 100644 index 0000000000..4d6b01ec93 --- /dev/null +++ b/src/app/shared/testing/mock-submission-config.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-submission-config.js","sourceRoot":"","sources":["mock-submission-config.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,IAAM,sBAAsB,GAAG;IACpC,UAAU,EAAE;QACV,QAAQ,EAAE;YACR,2CAA2C;YAC3C,QAAQ,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,qBAAqB,CAAC;YACxF,iEAAiE;YACjE,KAAK,EAAE,CAAC;SACT;QACD,KAAK,EAAE;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,aAAa;iBACrB;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,mBAAmB;iBAC3B;gBACD;oBACE,IAAI,EAAE,mBAAmB;oBACzB,KAAK,EAAE,eAAe;iBACvB;gBACD;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,EAAE;iBACV;aACF;YACD,SAAS,EAAE;gBACT,UAAU,EAAE;oBACV;wBACE,KAAK,EAAE,GAAG;wBACV,KAAK,EAAE,cAAc;qBACtB;oBACD;wBACE,KAAK,EAAE,GAAG;wBACV,KAAK,EAAE,WAAW;qBACnB;oBACD;wBACE,KAAK,EAAE,GAAG;wBACV,KAAK,EAAE,cAAc;qBACtB;oBACD;wBACE,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE,YAAY;qBACpB;iBAEF;aACF;SACF;KACkB;CACN,CAAC"} \ No newline at end of file diff --git a/src/app/shared/testing/mock-translate-loader.js b/src/app/shared/testing/mock-translate-loader.js new file mode 100644 index 0000000000..ca38a45bda --- /dev/null +++ b/src/app/shared/testing/mock-translate-loader.js @@ -0,0 +1,11 @@ +import { of as observableOf } from 'rxjs'; +var MockTranslateLoader = /** @class */ (function () { + function MockTranslateLoader() { + } + MockTranslateLoader.prototype.getTranslation = function (lang) { + return observableOf({}); + }; + return MockTranslateLoader; +}()); +export { MockTranslateLoader }; +//# sourceMappingURL=mock-translate-loader.js.map \ No newline at end of file diff --git a/src/app/shared/testing/mock-translate-loader.js.map b/src/app/shared/testing/mock-translate-loader.js.map new file mode 100644 index 0000000000..6cb163d59e --- /dev/null +++ b/src/app/shared/testing/mock-translate-loader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"mock-translate-loader.js","sourceRoot":"","sources":["mock-translate-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAGtD;IAAA;IAIA,CAAC;IAHC,4CAAc,GAAd,UAAe,IAAY;QACzB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACH,0BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/testing/ng-component-outlet-directive-stub.js b/src/app/shared/testing/ng-component-outlet-directive-stub.js new file mode 100644 index 0000000000..57ea748ce3 --- /dev/null +++ b/src/app/shared/testing/ng-component-outlet-directive-stub.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { Directive, Input } from '@angular/core'; +/* tslint:disable:directive-class-suffix */ +var NgComponentOutletDirectiveStub = /** @class */ (function () { + function NgComponentOutletDirectiveStub() { + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], NgComponentOutletDirectiveStub.prototype, "ngComponentOutlet", void 0); + NgComponentOutletDirectiveStub = tslib_1.__decorate([ + Directive({ + // tslint:disable-next-line:directive-selector + selector: '[ngComponentOutlet]', + }) + ], NgComponentOutletDirectiveStub); + return NgComponentOutletDirectiveStub; +}()); +export { NgComponentOutletDirectiveStub }; +//# sourceMappingURL=ng-component-outlet-directive-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/ng-component-outlet-directive-stub.js.map b/src/app/shared/testing/ng-component-outlet-directive-stub.js.map new file mode 100644 index 0000000000..0b96804a9a --- /dev/null +++ b/src/app/shared/testing/ng-component-outlet-directive-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ng-component-outlet-directive-stub.js","sourceRoot":"","sources":["ng-component-outlet-directive-stub.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,2CAA2C;AAK3C;IAAA;IAEA,CAAC;IADU;QAAR,KAAK,EAAE;;6EAAwB;IADrB,8BAA8B;QAJ1C,SAAS,CAAC;YACT,8CAA8C;YAC9C,QAAQ,EAAE,qBAAqB;SAChC,CAAC;OACW,8BAA8B,CAE1C;IAAD,qCAAC;CAAA,AAFD,IAEC;SAFY,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/testing/notifications-service-stub.js b/src/app/shared/testing/notifications-service-stub.js new file mode 100644 index 0000000000..049616e1cc --- /dev/null +++ b/src/app/shared/testing/notifications-service-stub.js @@ -0,0 +1,17 @@ +import { NotificationOptions } from '../notifications/models/notification-options.model'; +var NotificationsServiceStub = /** @class */ (function () { + function NotificationsServiceStub() { + this.success = jasmine.createSpy('success'); + this.error = jasmine.createSpy('error'); + this.info = jasmine.createSpy('info'); + this.warning = jasmine.createSpy('warning'); + this.remove = jasmine.createSpy('remove'); + this.removeAll = jasmine.createSpy('removeAll'); + } + NotificationsServiceStub.prototype.getDefaultOptions = function () { + return new NotificationOptions(); + }; + return NotificationsServiceStub; +}()); +export { NotificationsServiceStub }; +//# sourceMappingURL=notifications-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/notifications-service-stub.js.map b/src/app/shared/testing/notifications-service-stub.js.map new file mode 100644 index 0000000000..e7850dc04d --- /dev/null +++ b/src/app/shared/testing/notifications-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notifications-service-stub.js","sourceRoot":"","sources":["notifications-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAEzF;IAAA;QAEE,YAAO,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACvC,UAAK,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACnC,SAAI,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACjC,YAAO,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACvC,WAAM,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACrC,cAAS,GAAG,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAK7C,CAAC;IAHS,oDAAiB,GAAzB;QACE,OAAO,IAAI,mBAAmB,EAAE,CAAC;IACnC,CAAC;IACH,+BAAC;AAAD,CAAC,AAZD,IAYC"} \ No newline at end of file diff --git a/src/app/shared/testing/query-params-directive-stub.js b/src/app/shared/testing/query-params-directive-stub.js new file mode 100644 index 0000000000..f730ae0638 --- /dev/null +++ b/src/app/shared/testing/query-params-directive-stub.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { Directive, Input } from '@angular/core'; +/* tslint:disable:directive-class-suffix */ +var QueryParamsDirectiveStub = /** @class */ (function () { + function QueryParamsDirectiveStub() { + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], QueryParamsDirectiveStub.prototype, "queryParams", void 0); + QueryParamsDirectiveStub = tslib_1.__decorate([ + Directive({ + // tslint:disable-next-line:directive-selector + selector: '[queryParams]', + }) + ], QueryParamsDirectiveStub); + return QueryParamsDirectiveStub; +}()); +export { QueryParamsDirectiveStub }; +//# sourceMappingURL=query-params-directive-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/query-params-directive-stub.js.map b/src/app/shared/testing/query-params-directive-stub.js.map new file mode 100644 index 0000000000..0a575fda00 --- /dev/null +++ b/src/app/shared/testing/query-params-directive-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"query-params-directive-stub.js","sourceRoot":"","sources":["query-params-directive-stub.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,2CAA2C;AAK3C;IAAA;IAEA,CAAC;IADU;QAAR,KAAK,EAAE;;iEAAkB;IADf,wBAAwB;QAJpC,SAAS,CAAC;YACT,8CAA8C;YAC9C,QAAQ,EAAE,eAAe;SAC1B,CAAC;OACW,wBAAwB,CAEpC;IAAD,+BAAC;CAAA,AAFD,IAEC;SAFY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/testing/route-service-stub.js b/src/app/shared/testing/route-service-stub.js new file mode 100644 index 0000000000..5cfd37ea72 --- /dev/null +++ b/src/app/shared/testing/route-service-stub.js @@ -0,0 +1,32 @@ +import { of as observableOf } from 'rxjs/internal/observable/of'; +export var routeServiceStub = { + /* tslint:disable:no-empty */ + hasQueryParamWithValue: function (param, value) { + }, + hasQueryParam: function (param) { + }, + removeQueryParameterValue: function (param, value) { + }, + addQueryParameterValue: function (param, value) { + }, + getQueryParameterValues: function (param) { + return observableOf({}); + }, + getQueryParamsWithPrefix: function (param) { + return observableOf({}); + }, + getQueryParamMap: function () { + return observableOf(new Map()); + }, + getQueryParameterValue: function () { + return observableOf({}); + }, + getRouteParameterValue: function (param) { + return observableOf(''); + }, + getRouteDataValue: function (param) { + return observableOf({}); + } + /* tslint:enable:no-empty */ +}; +//# sourceMappingURL=route-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/route-service-stub.js.map b/src/app/shared/testing/route-service-stub.js.map new file mode 100644 index 0000000000..e60d85a830 --- /dev/null +++ b/src/app/shared/testing/route-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"route-service-stub.js","sourceRoot":"","sources":["route-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,CAAC,IAAM,gBAAgB,GAAQ;IACnC,6BAA6B;IAC7B,sBAAsB,EAAE,UAAC,KAAa,EAAE,KAAa;IACrD,CAAC;IACD,aAAa,EAAE,UAAC,KAAa;IAC7B,CAAC;IACD,yBAAyB,EAAE,UAAC,KAAa,EAAE,KAAa;IACxD,CAAC;IACD,sBAAsB,EAAE,UAAC,KAAa,EAAE,KAAa;IACrD,CAAC;IACD,uBAAuB,EAAE,UAAC,KAAa;QACrC,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,wBAAwB,EAAE,UAAC,KAAa;QACtC,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,gBAAgB,EAAE;QAChB,OAAO,YAAY,CAAC,IAAI,GAAG,EAAE,CAAC,CAAA;IAChC,CAAC;IACD,sBAAsB,EAAE;QACtB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAA;IACzB,CAAC;IACD,sBAAsB,EAAE,UAAC,KAAK;QAC5B,OAAO,YAAY,CAAC,EAAE,CAAC,CAAA;IACzB,CAAC;IACD,iBAAiB,EAAE,UAAC,KAAK;QACvB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAA;IACzB,CAAC;IACD,4BAA4B;CAC7B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/testing/router-link-directive-stub.js b/src/app/shared/testing/router-link-directive-stub.js new file mode 100644 index 0000000000..2a3d1740be --- /dev/null +++ b/src/app/shared/testing/router-link-directive-stub.js @@ -0,0 +1,20 @@ +import * as tslib_1 from "tslib"; +import { Directive, Input } from '@angular/core'; +/* tslint:disable:directive-class-suffix */ +var RouterLinkDirectiveStub = /** @class */ (function () { + function RouterLinkDirectiveStub() { + } + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], RouterLinkDirectiveStub.prototype, "routerLink", void 0); + RouterLinkDirectiveStub = tslib_1.__decorate([ + Directive({ + // tslint:disable-next-line:directive-selector + selector: '[routerLink]', + }) + ], RouterLinkDirectiveStub); + return RouterLinkDirectiveStub; +}()); +export { RouterLinkDirectiveStub }; +//# sourceMappingURL=router-link-directive-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/router-link-directive-stub.js.map b/src/app/shared/testing/router-link-directive-stub.js.map new file mode 100644 index 0000000000..1ea94bbf2c --- /dev/null +++ b/src/app/shared/testing/router-link-directive-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"router-link-directive-stub.js","sourceRoot":"","sources":["router-link-directive-stub.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,2CAA2C;AAK3C;IAAA;IAEA,CAAC;IADU;QAAR,KAAK,EAAE;;+DAAiB;IADd,uBAAuB;QAJnC,SAAS,CAAC;YACT,8CAA8C;YAC9C,QAAQ,EAAE,cAAc;SACzB,CAAC;OACW,uBAAuB,CAEnC;IAAD,8BAAC;CAAA,AAFD,IAEC;SAFY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/testing/router-stub.js b/src/app/shared/testing/router-stub.js new file mode 100644 index 0000000000..792f985661 --- /dev/null +++ b/src/app/shared/testing/router-stub.js @@ -0,0 +1,16 @@ +import { of as observableOf } from 'rxjs'; +var RouterStub = /** @class */ (function () { + function RouterStub() { + this.routeReuseStrategy = { shouldReuseRoute: {} }; + //noinspection TypeScriptUnresolvedFunction + this.navigate = jasmine.createSpy('navigate'); + this.parseUrl = jasmine.createSpy('parseUrl'); + this.events = observableOf({}); + } + RouterStub.prototype.navigateByUrl = function (url) { + this.url = url; + }; + return RouterStub; +}()); +export { RouterStub }; +//# sourceMappingURL=router-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/router-stub.js.map b/src/app/shared/testing/router-stub.js.map new file mode 100644 index 0000000000..1df9c126c9 --- /dev/null +++ b/src/app/shared/testing/router-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"router-stub.js","sourceRoot":"","sources":["router-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C;IAAA;QAEE,uBAAkB,GAAG,EAAC,gBAAgB,EAAE,EAAE,EAAC,CAAC;QAC5C,2CAA2C;QAC3C,aAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACzC,aAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACzC,WAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAI5B,CAAC;IAHC,kCAAa,GAAb,UAAc,GAAG;QACf,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IACH,iBAAC;AAAD,CAAC,AAVD,IAUC"} \ No newline at end of file diff --git a/src/app/shared/testing/search-configuration-service-stub.js b/src/app/shared/testing/search-configuration-service-stub.js new file mode 100644 index 0000000000..6215ab340f --- /dev/null +++ b/src/app/shared/testing/search-configuration-service-stub.js @@ -0,0 +1,19 @@ +import { BehaviorSubject, of as observableOf } from 'rxjs'; +var SearchConfigurationServiceStub = /** @class */ (function () { + function SearchConfigurationServiceStub() { + this.searchOptions = new BehaviorSubject({}); + this.paginatedSearchOptions = new BehaviorSubject({}); + } + SearchConfigurationServiceStub.prototype.getCurrentFrontendFilters = function () { + return observableOf([]); + }; + SearchConfigurationServiceStub.prototype.getCurrentScope = function (a) { + return observableOf('test-id'); + }; + SearchConfigurationServiceStub.prototype.getCurrentConfiguration = function (a) { + return observableOf(a); + }; + return SearchConfigurationServiceStub; +}()); +export { SearchConfigurationServiceStub }; +//# sourceMappingURL=search-configuration-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/search-configuration-service-stub.js.map b/src/app/shared/testing/search-configuration-service-stub.js.map new file mode 100644 index 0000000000..1fd5e692b9 --- /dev/null +++ b/src/app/shared/testing/search-configuration-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-configuration-service-stub.js","sourceRoot":"","sources":["search-configuration-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAE3D;IAAA;QAEU,kBAAa,GAAyB,IAAI,eAAe,CAAM,EAAE,CAAC,CAAC;QACnE,2BAAsB,GAAyB,IAAI,eAAe,CAAM,EAAE,CAAC,CAAC;IAatF,CAAC;IAXC,kEAAyB,GAAzB;QACE,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,wDAAe,GAAf,UAAgB,CAAC;QACf,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED,gEAAuB,GAAvB,UAAwB,CAAC;QACvB,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IACH,qCAAC;AAAD,CAAC,AAhBD,IAgBC"} \ No newline at end of file diff --git a/src/app/shared/testing/search-service-stub.js b/src/app/shared/testing/search-service-stub.js new file mode 100644 index 0000000000..d4551ef2e5 --- /dev/null +++ b/src/app/shared/testing/search-service-stub.js @@ -0,0 +1,43 @@ +import { of as observableOf, BehaviorSubject } from 'rxjs'; +import { SetViewMode } from '../view-mode'; +var SearchServiceStub = /** @class */ (function () { + function SearchServiceStub(searchLink) { + if (searchLink === void 0) { searchLink = '/search'; } + this.searchLink = searchLink; + this.subject = new BehaviorSubject(this.testViewMode); + this.viewMode = this.subject.asObservable(); + this.setViewMode(SetViewMode.List); + } + SearchServiceStub.prototype.getViewMode = function () { + return this.viewMode; + }; + SearchServiceStub.prototype.setViewMode = function (viewMode) { + this.testViewMode = viewMode; + }; + SearchServiceStub.prototype.getFacetValuesFor = function () { + return null; + }; + Object.defineProperty(SearchServiceStub.prototype, "testViewMode", { + get: function () { + return this._viewMode; + }, + set: function (viewMode) { + this._viewMode = viewMode; + this.subject.next(viewMode); + }, + enumerable: true, + configurable: true + }); + SearchServiceStub.prototype.getSearchLink = function () { + return this.searchLink; + }; + SearchServiceStub.prototype.getFilterLabels = function () { + return observableOf([]); + }; + SearchServiceStub.prototype.search = function () { + return observableOf({}); + }; + return SearchServiceStub; +}()); +export { SearchServiceStub }; +//# sourceMappingURL=search-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/search-service-stub.js.map b/src/app/shared/testing/search-service-stub.js.map new file mode 100644 index 0000000000..cb3cc5ca40 --- /dev/null +++ b/src/app/shared/testing/search-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"search-service-stub.js","sourceRoot":"","sources":["search-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAiB,eAAe,EAAE,MAAM,MAAM,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;IAOE,2BAAoB,UAA8B;QAA9B,2BAAA,EAAA,sBAA8B;QAA9B,eAAU,GAAV,UAAU,CAAoB;QAJ1C,YAAO,GAA0B,IAAI,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEhF,aAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAGrC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,uCAAW,GAAX;QACE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,uCAAW,GAAX,UAAY,QAAqB;QAC/B,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED,6CAAiB,GAAjB;QACE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sBAAI,2CAAY;aAAhB;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aAED,UAAiB,QAAqB;YACpC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;;;OALA;IAOD,yCAAa,GAAb;QACE,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,2CAAe,GAAf;QACE,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,kCAAM,GAAN;QACE,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACH,wBAAC;AAAD,CAAC,AA3CD,IA2CC"} \ No newline at end of file diff --git a/src/app/shared/testing/sections-service-stub.js b/src/app/shared/testing/sections-service-stub.js new file mode 100644 index 0000000000..fc23b29ac8 --- /dev/null +++ b/src/app/shared/testing/sections-service-stub.js @@ -0,0 +1,21 @@ +var SectionsServiceStub = /** @class */ (function () { + function SectionsServiceStub() { + this.checkSectionErrors = jasmine.createSpy('checkSectionErrors'); + this.dispatchRemoveSectionErrors = jasmine.createSpy('dispatchRemoveSectionErrors'); + this.getSectionData = jasmine.createSpy('getSectionData'); + this.getSectionErrors = jasmine.createSpy('getSectionErrors'); + this.getSectionState = jasmine.createSpy('getSectionState'); + this.isSectionValid = jasmine.createSpy('isSectionValid'); + this.isSectionEnabled = jasmine.createSpy('isSectionEnabled'); + this.isSectionReadOnly = jasmine.createSpy('isSectionReadOnly'); + this.isSectionAvailable = jasmine.createSpy('isSectionAvailable'); + this.addSection = jasmine.createSpy('addSection'); + this.removeSection = jasmine.createSpy('removeSection'); + this.updateSectionData = jasmine.createSpy('updateSectionData'); + this.setSectionError = jasmine.createSpy('setSectionError'); + this.setSectionStatus = jasmine.createSpy('setSectionStatus'); + } + return SectionsServiceStub; +}()); +export { SectionsServiceStub }; +//# sourceMappingURL=sections-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/sections-service-stub.js.map b/src/app/shared/testing/sections-service-stub.js.map new file mode 100644 index 0000000000..a22b409bb2 --- /dev/null +++ b/src/app/shared/testing/sections-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sections-service-stub.js","sourceRoot":"","sources":["sections-service-stub.ts"],"names":[],"mappings":"AAAA;IAAA;QAEE,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,gCAA2B,GAAG,OAAO,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QAC/E,mBAAc,GAAG,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrD,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,mBAAc,GAAG,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrD,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,sBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3D,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,eAAU,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC7C,kBAAa,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACnD,sBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3D,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAE3D,CAAC;IAAD,0BAAC;AAAD,CAAC,AAjBD,IAiBC"} \ No newline at end of file diff --git a/src/app/shared/testing/submission-json-patch-operations-service-stub.js b/src/app/shared/testing/submission-json-patch-operations-service-stub.js new file mode 100644 index 0000000000..f7fd708ccc --- /dev/null +++ b/src/app/shared/testing/submission-json-patch-operations-service-stub.js @@ -0,0 +1,10 @@ +var SubmissionJsonPatchOperationsServiceStub = /** @class */ (function () { + function SubmissionJsonPatchOperationsServiceStub() { + this.linkPath = 'workspaceitems'; + this.jsonPatchByResourceType = jasmine.createSpy('jsonPatchByResourceType'); + this.jsonPatchByResourceID = jasmine.createSpy('jsonPatchByResourceID'); + } + return SubmissionJsonPatchOperationsServiceStub; +}()); +export { SubmissionJsonPatchOperationsServiceStub }; +//# sourceMappingURL=submission-json-patch-operations-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/submission-json-patch-operations-service-stub.js.map b/src/app/shared/testing/submission-json-patch-operations-service-stub.js.map new file mode 100644 index 0000000000..1e583bd6e7 --- /dev/null +++ b/src/app/shared/testing/submission-json-patch-operations-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-json-patch-operations-service-stub.js","sourceRoot":"","sources":["submission-json-patch-operations-service-stub.ts"],"names":[],"mappings":"AAEA;IAAA;QACY,aAAQ,GAAG,gBAAgB,CAAC;QAGtC,4BAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACvE,0BAAqB,GAAG,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;IAErE,CAAC;IAAD,+CAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/shared/testing/submission-rest-service-stub.js b/src/app/shared/testing/submission-rest-service-stub.js new file mode 100644 index 0000000000..f8d794d0f1 --- /dev/null +++ b/src/app/shared/testing/submission-rest-service-stub.js @@ -0,0 +1,17 @@ +import { of as observableOf } from 'rxjs'; +var SubmissionRestServiceStub = /** @class */ (function () { + function SubmissionRestServiceStub() { + this.linkPath = 'workspaceitems'; + this.deleteById = jasmine.createSpy('deleteById'); + this.fetchRequest = jasmine.createSpy('fetchRequest'); + this.getDataById = jasmine.createSpy('getDataById'); + this.getDataByHref = jasmine.createSpy('getDataByHref'); + this.getEndpointByIDHref = jasmine.createSpy('getEndpointByIDHref'); + this.patchToEndpoint = jasmine.createSpy('patchToEndpoint'); + this.postToEndpoint = jasmine.createSpy('postToEndpoint').and.returnValue(observableOf({})); + this.submitData = jasmine.createSpy('submitData'); + } + return SubmissionRestServiceStub; +}()); +export { SubmissionRestServiceStub }; +//# sourceMappingURL=submission-rest-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/submission-rest-service-stub.js.map b/src/app/shared/testing/submission-rest-service-stub.js.map new file mode 100644 index 0000000000..bddd22432c --- /dev/null +++ b/src/app/shared/testing/submission-rest-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-rest-service-stub.js","sourceRoot":"","sources":["submission-rest-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAO1C;IAAA;QACY,aAAQ,GAAG,gBAAgB,CAAC;QAKtC,eAAU,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC7C,iBAAY,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACjD,gBAAW,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC/C,kBAAa,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACnD,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,mBAAc,GAAG,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;QACvF,eAAU,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC/C,CAAC;IAAD,gCAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/shared/testing/submission-service-stub.js b/src/app/shared/testing/submission-service-stub.js new file mode 100644 index 0000000000..2a9f4c3413 --- /dev/null +++ b/src/app/shared/testing/submission-service-stub.js @@ -0,0 +1,36 @@ +var SubmissionServiceStub = /** @class */ (function () { + function SubmissionServiceStub() { + this.changeSubmissionCollection = jasmine.createSpy('changeSubmissionCollection'); + this.createSubmission = jasmine.createSpy('createSubmission'); + this.depositSubmission = jasmine.createSpy('depositSubmission'); + this.discardSubmission = jasmine.createSpy('discardSubmission'); + this.dispatchInit = jasmine.createSpy('dispatchInit'); + this.dispatchDeposit = jasmine.createSpy('dispatchDeposit'); + this.dispatchDiscard = jasmine.createSpy('dispatchDiscard'); + this.dispatchSave = jasmine.createSpy('dispatchSave'); + this.dispatchSaveForLater = jasmine.createSpy('dispatchSaveForLater'); + this.dispatchSaveSection = jasmine.createSpy('dispatchSaveSection'); + this.getActiveSectionId = jasmine.createSpy('getActiveSectionId'); + this.getSubmissionObject = jasmine.createSpy('getSubmissionObject'); + this.getSubmissionSections = jasmine.createSpy('getSubmissionSections'); + this.getDisabledSectionsList = jasmine.createSpy('getDisabledSectionsList'); + this.getSubmissionObjectLinkName = jasmine.createSpy('getSubmissionObjectLinkName'); + this.getSubmissionScope = jasmine.createSpy('getSubmissionScope'); + this.getSubmissionStatus = jasmine.createSpy('getSubmissionStatus'); + this.getSubmissionSaveProcessingStatus = jasmine.createSpy('getSubmissionSaveProcessingStatus'); + this.getSubmissionDepositProcessingStatus = jasmine.createSpy('getSubmissionDepositProcessingStatus'); + this.isSectionHidden = jasmine.createSpy('isSectionHidden'); + this.isSubmissionLoading = jasmine.createSpy('isSubmissionLoading'); + this.notifyNewSection = jasmine.createSpy('notifyNewSection'); + this.redirectToMyDSpace = jasmine.createSpy('redirectToMyDSpace'); + this.resetAllSubmissionObjects = jasmine.createSpy('resetAllSubmissionObjects'); + this.resetSubmissionObject = jasmine.createSpy('resetSubmissionObject'); + this.retrieveSubmission = jasmine.createSpy('retrieveSubmission'); + this.setActiveSection = jasmine.createSpy('setActiveSection'); + this.startAutoSave = jasmine.createSpy('startAutoSave'); + this.stopAutoSave = jasmine.createSpy('stopAutoSave'); + } + return SubmissionServiceStub; +}()); +export { SubmissionServiceStub }; +//# sourceMappingURL=submission-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/submission-service-stub.js.map b/src/app/shared/testing/submission-service-stub.js.map new file mode 100644 index 0000000000..56993567c4 --- /dev/null +++ b/src/app/shared/testing/submission-service-stub.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-service-stub.js","sourceRoot":"","sources":["submission-service-stub.ts"],"names":[],"mappings":"AAAA;IAAA;QAEE,+BAA0B,GAAG,OAAO,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;QAC7E,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,sBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3D,sBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3D,iBAAY,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACjD,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,iBAAY,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACjD,yBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QACjE,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,0BAAqB,GAAG,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACnE,4BAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACvE,gCAA2B,GAAG,OAAO,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QAC/E,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,sCAAiC,GAAG,OAAO,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;QAC3F,yCAAoC,GAAG,OAAO,CAAC,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACjG,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,8BAAyB,GAAG,OAAO,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAC3E,0BAAqB,GAAG,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACnE,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,kBAAa,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACnD,iBAAY,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAEnD,CAAC;IAAD,4BAAC;AAAD,CAAC,AAhCD,IAgCC"} \ No newline at end of file diff --git a/src/app/shared/testing/test-module.js b/src/app/shared/testing/test-module.js new file mode 100644 index 0000000000..a701db1869 --- /dev/null +++ b/src/app/shared/testing/test-module.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core'; +import { QueryParamsDirectiveStub } from './query-params-directive-stub'; +import { MySimpleItemActionComponent } from '../../+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec'; +import { CommonModule } from '@angular/common'; +import { SharedModule } from '../shared.module'; +import { RouterLinkDirectiveStub } from './router-link-directive-stub'; +import { NgComponentOutletDirectiveStub } from './ng-component-outlet-directive-stub'; +/** + * This module isn't used. It serves to prevent the AoT compiler + * complaining about components/pipes/directives that were + * created only for use in tests. + * See https://github.com/angular/angular/issues/13590 + */ +var TestModule = /** @class */ (function () { + function TestModule() { + } + TestModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + SharedModule + ], + declarations: [ + QueryParamsDirectiveStub, + MySimpleItemActionComponent, + RouterLinkDirectiveStub, + NgComponentOutletDirectiveStub + ], schemas: [ + CUSTOM_ELEMENTS_SCHEMA + ] + }) + ], TestModule); + return TestModule; +}()); +export { TestModule }; +//# sourceMappingURL=test-module.js.map \ No newline at end of file diff --git a/src/app/shared/testing/test-module.js.map b/src/app/shared/testing/test-module.js.map new file mode 100644 index 0000000000..2d72bbf16c --- /dev/null +++ b/src/app/shared/testing/test-module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"test-module.js","sourceRoot":"","sources":["test-module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,sBAAsB,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+FAA+F,CAAC;AAC5I,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAEtF;;;;;GAKG;AAeH;IAAA;IAAyB,CAAC;IAAb,UAAU;QAdtB,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;aACb;YACD,YAAY,EAAE;gBACZ,wBAAwB;gBACxB,2BAA2B;gBAC3B,uBAAuB;gBACvB,8BAA8B;aAC/B,EAAE,OAAO,EAAE;gBACV,sBAAsB;aACvB;SACF,CAAC;OACW,UAAU,CAAG;IAAD,iBAAC;CAAA,AAA1B,IAA0B;SAAb,UAAU"} \ No newline at end of file diff --git a/src/app/shared/testing/utils.js b/src/app/shared/testing/utils.js new file mode 100644 index 0000000000..0bb159c359 --- /dev/null +++ b/src/app/shared/testing/utils.js @@ -0,0 +1,48 @@ +import { TestBed } from '@angular/core/testing'; +/** + * Returns true if a Native Element has a specified css class. + * + * @param element + * the Native Element + * @param className + * the class name to find + */ +export var hasClass = function (element, className) { + var classes = element.getAttribute('class'); + return classes.split(' ').indexOf(className) !== -1; +}; +/** + * Creates an instance of a component and returns test fixture. + * + * @param html + * the component's template as html + * @param type + * the type of the component to instantiate + */ +export var createTestComponent = function (html, type) { + TestBed.overrideComponent(type, { + set: { template: html } + }); + var fixture = TestBed.createComponent(type); + fixture.detectChanges(); + return fixture; +}; +/** + * Allows you to spy on a read only property + * + * @param obj + * The object to spy on + * @param prop + * The property to spy on + */ +export function spyOnOperator(obj, prop) { + var oldProp = obj[prop]; + Object.defineProperty(obj, prop, { + configurable: true, + enumerable: true, + value: oldProp, + writable: true + }); + return spyOn(obj, prop); +} +//# sourceMappingURL=utils.js.map \ No newline at end of file diff --git a/src/app/shared/testing/utils.js.map b/src/app/shared/testing/utils.js.map new file mode 100644 index 0000000000..16f9c73dd5 --- /dev/null +++ b/src/app/shared/testing/utils.js.map @@ -0,0 +1 @@ +{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAElE;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,QAAQ,GAAG,UAAC,OAAY,EAAE,SAAiB;IACtD,IAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAAI,IAAY,EAAE,IAAgC;IACnF,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE;QAC9B,GAAG,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC;KACtB,CAAC,CAAC;IACH,IAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAE9C,OAAO,CAAC,aAAa,EAAE,CAAC;IACxB,OAAO,OAA8B,CAAC;AACxC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,wBAAwB,GAAQ,EAAE,IAAY;IAClD,IAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE;QAC/B,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC1B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js b/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js new file mode 100644 index 0000000000..95df0bd9ca --- /dev/null +++ b/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js @@ -0,0 +1,81 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { TruncatableService } from '../truncatable.service'; +import { hasValue } from '../../empty.util'; +var TruncatablePartComponent = /** @class */ (function () { + function TruncatablePartComponent(service) { + this.service = service; + /** + * Number of lines shown when the part is expanded. -1 indicates no limit + */ + this.maxLines = -1; + /** + * True if the minimal height of the part should at least be as high as it's minimum amount of lines + */ + this.fixedHeight = false; + } + /** + * Initialize lines variable + */ + TruncatablePartComponent.prototype.ngOnInit = function () { + this.setLines(); + }; + /** + * Subscribe to the current state to determine how much lines should be shown of this part + */ + TruncatablePartComponent.prototype.setLines = function () { + var _this = this; + this.sub = this.service.isCollapsed(this.id).subscribe(function (collapsed) { + if (collapsed) { + _this.lines = _this.minLines.toString(); + } + else { + _this.lines = _this.maxLines < 0 ? 'none' : _this.maxLines.toString(); + } + }); + }; + /** + * Unsubscribe from the subscription + */ + TruncatablePartComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sub)) { + this.sub.unsubscribe(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], TruncatablePartComponent.prototype, "minLines", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], TruncatablePartComponent.prototype, "maxLines", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], TruncatablePartComponent.prototype, "id", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], TruncatablePartComponent.prototype, "type", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], TruncatablePartComponent.prototype, "fixedHeight", void 0); + TruncatablePartComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-truncatable-part', + templateUrl: './truncatable-part.component.html', + styleUrls: ['./truncatable-part.component.scss'] + }) + /** + * Component that truncates/clamps a piece of text + * It needs a TruncatableComponent parent to identify it's current state + */ + , + tslib_1.__metadata("design:paramtypes", [TruncatableService]) + ], TruncatablePartComponent); + return TruncatablePartComponent; +}()); +export { TruncatablePartComponent }; +//# sourceMappingURL=truncatable-part.component.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js.map b/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js.map new file mode 100644 index 0000000000..130071dbdc --- /dev/null +++ b/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"truncatable-part.component.js","sourceRoot":"","sources":["truncatable-part.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAY5C;IAoCE,kCAA2B,OAA2B;QAA3B,YAAO,GAAP,OAAO,CAAoB;QA9BtD;;WAEG;QACM,aAAQ,GAAG,CAAC,CAAC,CAAC;QAYvB;;WAEG;QACM,gBAAW,GAAG,KAAK,CAAC;IAa7B,CAAC;IAED;;OAEG;IACH,2CAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAED;;OAEG;IACK,2CAAQ,GAAhB;QAAA,iBAQC;QAPC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,UAAC,SAAkB;YACxE,IAAI,SAAS,EAAE;gBACb,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;aACvC;iBAAM;gBACL,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;aACpE;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,8CAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IA9DQ;QAAR,KAAK,EAAE;;8DAAkB;IAKjB;QAAR,KAAK,EAAE;;8DAAe;IAKd;QAAR,KAAK,EAAE;;wDAAY;IAKX;QAAR,KAAK,EAAE;;0DAAc;IAKb;QAAR,KAAK,EAAE;;iEAAqB;IAxBlB,wBAAwB;QAVpC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,WAAW,EAAE,mCAAmC;YAChD,SAAS,EAAE,CAAC,mCAAmC,CAAC;SACjD,CAAC;QAEF;;;WAGG;;iDAqCmC,kBAAkB;OApC3C,wBAAwB,CAmEpC;IAAD,+BAAC;CAAA,AAnED,IAmEC;SAnEY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.actions.js b/src/app/shared/truncatable/truncatable.actions.js new file mode 100644 index 0000000000..05ae73c58a --- /dev/null +++ b/src/app/shared/truncatable/truncatable.actions.js @@ -0,0 +1,68 @@ +import * as tslib_1 from "tslib"; +import { type } from '../ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var TruncatableActionTypes = { + TOGGLE: type('dspace/truncatable/TOGGLE'), + COLLAPSE: type('dspace/truncatable/COLLAPSE'), + EXPAND: type('dspace/truncatable/EXPAND'), +}; +var TruncatableAction = /** @class */ (function () { + /** + * Initialize with the truncatable component's UUID + * @param {string} id of the filter + */ + function TruncatableAction(id) { + this.id = id; + } + return TruncatableAction; +}()); +export { TruncatableAction }; +/* tslint:disable:max-classes-per-file */ +/** + * Used to collapse a truncatable component when it's expanded and expand it when it's collapsed + */ +var TruncatableToggleAction = /** @class */ (function (_super) { + tslib_1.__extends(TruncatableToggleAction, _super); + function TruncatableToggleAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TruncatableActionTypes.TOGGLE; + return _this; + } + return TruncatableToggleAction; +}(TruncatableAction)); +export { TruncatableToggleAction }; +/** + * Used to collapse a truncatable component + */ +var TruncatableCollapseAction = /** @class */ (function (_super) { + tslib_1.__extends(TruncatableCollapseAction, _super); + function TruncatableCollapseAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TruncatableActionTypes.COLLAPSE; + return _this; + } + return TruncatableCollapseAction; +}(TruncatableAction)); +export { TruncatableCollapseAction }; +/** + * Used to expand a truncatable component + */ +var TruncatableExpandAction = /** @class */ (function (_super) { + tslib_1.__extends(TruncatableExpandAction, _super); + function TruncatableExpandAction() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.type = TruncatableActionTypes.EXPAND; + return _this; + } + return TruncatableExpandAction; +}(TruncatableAction)); +export { TruncatableExpandAction }; +/* tslint:enable:max-classes-per-file */ +//# sourceMappingURL=truncatable.actions.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.actions.js.map b/src/app/shared/truncatable/truncatable.actions.js.map new file mode 100644 index 0000000000..0483a73578 --- /dev/null +++ b/src/app/shared/truncatable/truncatable.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"truncatable.actions.js","sourceRoot":"","sources":["truncatable.actions.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG;IACpC,MAAM,EAAE,IAAI,CAAC,2BAA2B,CAAC;IACzC,QAAQ,EAAE,IAAI,CAAC,6BAA6B,CAAC;IAC7C,MAAM,EAAE,IAAI,CAAC,2BAA2B,CAAC;CAC1C,CAAC;AAEF;IAWE;;;OAGG;IACH,2BAAY,EAAU;QACpB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IACH,wBAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED,yCAAyC;AACzC;;GAEG;AACH;IAA6C,mDAAiB;IAA9D;QAAA,qEAEC;QADC,UAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC;;IACvC,CAAC;IAAD,8BAAC;AAAD,CAAC,AAFD,CAA6C,iBAAiB,GAE7D;;AAED;;GAEG;AACH;IAA+C,qDAAiB;IAAhE;QAAA,qEAEC;QADC,UAAI,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IACzC,CAAC;IAAD,gCAAC;AAAD,CAAC,AAFD,CAA+C,iBAAiB,GAE/D;;AAED;;GAEG;AACH;IAA6C,mDAAiB;IAA9D;QAAA,qEAEC;QADC,UAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC;;IACvC,CAAC;IAAD,8BAAC;AAAD,CAAC,AAFD,CAA6C,iBAAiB,GAE7D;;AAED,wCAAwC"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.component.js b/src/app/shared/truncatable/truncatable.component.js new file mode 100644 index 0000000000..0cc791dc02 --- /dev/null +++ b/src/app/shared/truncatable/truncatable.component.js @@ -0,0 +1,76 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { TruncatableService } from './truncatable.service'; +var TruncatableComponent = /** @class */ (function () { + function TruncatableComponent(service) { + this.service = service; + /** + * Is true when all truncatable parts in this truncatable should be expanded on loading + */ + this.initialExpand = false; + /** + * Is true when the truncatable should expand on both hover as click + */ + this.onHover = false; + } + /** + * Set the initial state + */ + TruncatableComponent.prototype.ngOnInit = function () { + if (this.initialExpand) { + this.service.expand(this.id); + } + else { + this.service.collapse(this.id); + } + }; + /** + * If onHover is true, collapses the truncatable + */ + TruncatableComponent.prototype.hoverCollapse = function () { + if (this.onHover) { + this.service.collapse(this.id); + } + }; + /** + * If onHover is true, expands the truncatable + */ + TruncatableComponent.prototype.hoverExpand = function () { + if (this.onHover) { + this.service.expand(this.id); + } + }; + /** + * Expands the truncatable when it's collapsed, collapses it when it's expanded + */ + TruncatableComponent.prototype.toggle = function () { + this.service.toggle(this.id); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], TruncatableComponent.prototype, "initialExpand", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], TruncatableComponent.prototype, "id", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], TruncatableComponent.prototype, "onHover", void 0); + TruncatableComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-truncatable', + templateUrl: './truncatable.component.html', + styleUrls: ['./truncatable.component.scss'], + }) + /** + * Component that represents a section with one or more truncatable parts that all listen to this state + */ + , + tslib_1.__metadata("design:paramtypes", [TruncatableService]) + ], TruncatableComponent); + return TruncatableComponent; +}()); +export { TruncatableComponent }; +//# sourceMappingURL=truncatable.component.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.component.js.map b/src/app/shared/truncatable/truncatable.component.js.map new file mode 100644 index 0000000000..5a19b385d1 --- /dev/null +++ b/src/app/shared/truncatable/truncatable.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"truncatable.component.js","sourceRoot":"","sources":["truncatable.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EAAE,KAAK,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAY3D;IAgBE,8BAA2B,OAA2B;QAA3B,YAAO,GAAP,OAAO,CAAoB;QAftD;;WAEG;QACM,kBAAa,GAAG,KAAK,CAAC;QAO/B;;WAEG;QACM,YAAO,GAAG,KAAK,CAAC;IAGzB,CAAC;IAED;;OAEG;IACH,uCAAQ,GAAR;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAChC;IACH,CAAC;IAED;;OAEG;IACI,4CAAa,GAApB;QACE,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAChC;IACH,CAAC;IAED;;OAEG;IACI,0CAAW,GAAlB;QACE,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC9B;IACH,CAAC;IAED;;OAEG;IACI,qCAAM,GAAb;QACE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAjDQ;QAAR,KAAK,EAAE;;+DAAuB;IAKtB;QAAR,KAAK,EAAE;;oDAAY;IAKX;QAAR,KAAK,EAAE;;yDAAiB;IAdd,oBAAoB;QAVhC,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,8BAA8B;YAC3C,SAAS,EAAE,CAAC,8BAA8B,CAAC;SAE5C,CAAC;QAEF;;WAEG;;iDAiBmC,kBAAkB;OAhB3C,oBAAoB,CAuDhC;IAAD,2BAAC;CAAA,AAvDD,IAuDC;SAvDY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.reducer.js b/src/app/shared/truncatable/truncatable.reducer.js new file mode 100644 index 0000000000..86a1b4cae7 --- /dev/null +++ b/src/app/shared/truncatable/truncatable.reducer.js @@ -0,0 +1,42 @@ +import { TruncatableActionTypes } from './truncatable.actions'; +var initialState = Object.create(null); +/** + * Performs a truncatable action on the current state + * @param {TruncatablesState} state The state before the action is performed + * @param {TruncatableAction} action The action that should be performed + * @returns {TruncatablesState} The state after the action is performed + */ +export function truncatableReducer(state, action) { + if (state === void 0) { state = initialState; } + var _a, _b, _c; + switch (action.type) { + case TruncatableActionTypes.COLLAPSE: { + return Object.assign({}, state, (_a = {}, + _a[action.id] = { + collapsed: true, + }, + _a)); + } + case TruncatableActionTypes.EXPAND: { + return Object.assign({}, state, (_b = {}, + _b[action.id] = { + collapsed: false, + }, + _b)); + } + case TruncatableActionTypes.TOGGLE: { + if (!state[action.id]) { + state[action.id] = { collapsed: false }; + } + return Object.assign({}, state, (_c = {}, + _c[action.id] = { + collapsed: !state[action.id].collapsed, + }, + _c)); + } + default: { + return state; + } + } +} +//# sourceMappingURL=truncatable.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.reducer.js.map b/src/app/shared/truncatable/truncatable.reducer.js.map new file mode 100644 index 0000000000..cb7da1cf4d --- /dev/null +++ b/src/app/shared/truncatable/truncatable.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"truncatable.reducer.js","sourceRoot":"","sources":["truncatable.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAgBlF,IAAM,YAAY,GAAsB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,6BAA6B,KAAoB,EAAE,MAAyB;IAA/C,sBAAA,EAAA,oBAAoB;;IAErD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,EAAE,IAAG;oBACX,SAAS,EAAE,IAAI;iBAChB;oBACD,CAAC;SACJ;QAAC,KAAK,sBAAsB,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,EAAE,IAAG;oBACX,SAAS,EAAE,KAAK;iBACjB;oBACD,CAAC;SACJ;QAAC,KAAK,sBAAsB,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;gBACrB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAC,SAAS,EAAE,KAAK,EAAC,CAAC;aACvC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,EAAE,IAAG;oBACX,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS;iBACvC;oBACD,CAAC;SACJ;QACD,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.service.js b/src/app/shared/truncatable/truncatable.service.js new file mode 100644 index 0000000000..fa27e455f7 --- /dev/null +++ b/src/app/shared/truncatable/truncatable.service.js @@ -0,0 +1,71 @@ +import * as tslib_1 from "tslib"; +import { map } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { createSelector, select, Store } from '@ngrx/store'; +import { TruncatableExpandAction, TruncatableToggleAction, TruncatableCollapseAction } from './truncatable.actions'; +import { hasValue } from '../empty.util'; +var truncatableStateSelector = function (state) { return state.truncatable; }; +/** + * Service responsible for truncating/clamping text and performing actions on truncatable elements + */ +var TruncatableService = /** @class */ (function () { + function TruncatableService(store) { + this.store = store; + } + /** + * Checks if a trunctable component should currently be collapsed + * @param {string} id The UUID of the truncatable component + * @returns {Observable} Emits true if the state in the store is currently collapsed for the given truncatable component + */ + TruncatableService.prototype.isCollapsed = function (id) { + return this.store.pipe(select(truncatableByIdSelector(id)), map(function (object) { + if (object) { + return object.collapsed; + } + else { + return false; + } + })); + }; + /** + * Dispatches a toggle action to the store for a given truncatable component + * @param {string} id The identifier of the truncatable for which the action is dispatched + */ + TruncatableService.prototype.toggle = function (id) { + this.store.dispatch(new TruncatableToggleAction(id)); + }; + /** + * Dispatches a collapse action to the store for a given truncatable component + * @param {string} id The identifier of the truncatable for which the action is dispatched + */ + TruncatableService.prototype.collapse = function (id) { + this.store.dispatch(new TruncatableCollapseAction(id)); + }; + /** + * Dispatches an expand action to the store for a given truncatable component + * @param {string} id The identifier of the truncatable for which the action is dispatched + */ + TruncatableService.prototype.expand = function (id) { + this.store.dispatch(new TruncatableExpandAction(id)); + }; + TruncatableService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store]) + ], TruncatableService); + return TruncatableService; +}()); +export { TruncatableService }; +function truncatableByIdSelector(id) { + return keySelector(id); +} +export function keySelector(key) { + return createSelector(truncatableStateSelector, function (state) { + if (hasValue(state)) { + return state[key]; + } + else { + return undefined; + } + }); +} +//# sourceMappingURL=truncatable.service.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.service.js.map b/src/app/shared/truncatable/truncatable.service.js.map new file mode 100644 index 0000000000..c7357bee07 --- /dev/null +++ b/src/app/shared/truncatable/truncatable.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"truncatable.service.js","sourceRoot":"","sources":["truncatable.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAoB,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAG9E,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,IAAM,wBAAwB,GAAG,UAAC,KAAwB,IAAK,OAAA,KAAK,CAAC,WAAW,EAAjB,CAAiB,CAAC;AAEjF;;GAEG;AAEH;IAEE,4BAAoB,KAA+B;QAA/B,UAAK,GAAL,KAAK,CAA0B;IACnD,CAAC;IAED;;;;OAIG;IACH,wCAAW,GAAX,UAAY,EAAU;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CACpB,MAAM,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,EACnC,GAAG,CAAC,UAAC,MAAwB;YAC3B,IAAI,MAAM,EAAE;gBACV,OAAO,MAAM,CAAC,SAAS,CAAC;aACzB;iBAAM;gBACL,OAAO,KAAK,CAAC;aACd;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,mCAAM,GAAb,UAAc,EAAU;QACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACI,qCAAQ,GAAf,UAAgB,EAAU;QACxB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;IAED;;;OAGG;IACI,mCAAM,GAAb,UAAc,EAAU;QACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IA7CU,kBAAkB;QAD9B,UAAU,EAAE;iDAGgB,KAAK;OAFrB,kBAAkB,CA8C9B;IAAD,yBAAC;CAAA,AA9CD,IA8CC;SA9CY,kBAAkB;AAgD/B,iCAAiC,EAAU;IACzC,OAAO,WAAW,CAAmB,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,sBAAyB,GAAW;IACxC,OAAO,cAAc,CAAC,wBAAwB,EAAE,UAAC,KAAuB;QACtE,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;SACnB;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/uploader/uploader-options.model.js b/src/app/shared/uploader/uploader-options.model.js new file mode 100644 index 0000000000..275cb21456 --- /dev/null +++ b/src/app/shared/uploader/uploader-options.model.js @@ -0,0 +1,8 @@ +var UploaderOptions = /** @class */ (function () { + function UploaderOptions() { + this.disableMultipart = false; + } + return UploaderOptions; +}()); +export { UploaderOptions }; +//# sourceMappingURL=uploader-options.model.js.map \ No newline at end of file diff --git a/src/app/shared/uploader/uploader-options.model.js.map b/src/app/shared/uploader/uploader-options.model.js.map new file mode 100644 index 0000000000..1c509cd187 --- /dev/null +++ b/src/app/shared/uploader/uploader-options.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"uploader-options.model.js","sourceRoot":"","sources":["uploader-options.model.ts"],"names":[],"mappings":"AACA;IAAA;QAQE,qBAAgB,GAAG,KAAK,CAAC;IAG3B,CAAC;IAAD,sBAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/shared/uploader/uploader.component.js b/src/app/shared/uploader/uploader.component.js new file mode 100644 index 0000000000..08dc78d757 --- /dev/null +++ b/src/app/shared/uploader/uploader.component.js @@ -0,0 +1,169 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostListener, Input, Output, ViewEncapsulation, } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { FileUploader } from 'ng2-file-upload'; +import { uniqueId } from 'lodash'; +import { ScrollToService } from '@nicky-lenaers/ngx-scroll-to'; +import { UploaderOptions } from './uploader-options.model'; +import { isNotEmpty, isUndefined } from '../empty.util'; +import { UploaderService } from './uploader.service'; +var UploaderComponent = /** @class */ (function () { + function UploaderComponent(cdr, scrollToService, uploaderService) { + this.cdr = cdr; + this.scrollToService = scrollToService; + this.uploaderService = uploaderService; + /** + * The function to call when upload is completed + */ + this.onCompleteItem = new EventEmitter(); + /** + * The function to call on error occurred + */ + this.onUploadError = new EventEmitter(); + this.isOverBaseDropZone = observableOf(false); + this.isOverDocumentDropZone = observableOf(false); + } + UploaderComponent.prototype.onDragOver = function (event) { + if (this.enableDragOverDocument && this.uploaderService.isAllowedDragOverPage()) { + // Show drop area on the page + event.preventDefault(); + if (event.target.tagName !== 'HTML') { + this.isOverDocumentDropZone = observableOf(true); + } + } + }; + /** + * Method provided by Angular. Invoked after the constructor. + */ + UploaderComponent.prototype.ngOnInit = function () { + this.uploaderId = 'ds-drag-and-drop-uploader' + uniqueId(); + this.checkConfig(this.uploadFilesOptions); + this.uploader = new FileUploader({ + url: this.uploadFilesOptions.url, + authToken: this.uploadFilesOptions.authToken, + disableMultipart: this.uploadFilesOptions.disableMultipart, + itemAlias: this.uploadFilesOptions.itemAlias, + removeAfterUpload: true, + autoUpload: true + }); + if (isUndefined(this.enableDragOverDocument)) { + this.enableDragOverDocument = false; + } + if (isUndefined(this.dropMsg)) { + this.dropMsg = 'uploader.drag-message'; + } + if (isUndefined(this.dropOverDocumentMsg)) { + this.dropOverDocumentMsg = 'uploader.drag-message'; + } + }; + UploaderComponent.prototype.ngAfterViewInit = function () { + var _this = this; + // Maybe to remove: needed to avoid CORS issue with our temp upload server + this.uploader.onAfterAddingFile = (function (item) { + item.withCredentials = false; + }); + if (isUndefined(this.onBeforeUpload)) { + this.onBeforeUpload = function () { return; }; + } + this.uploader.onBeforeUploadItem = function () { + _this.onBeforeUpload(); + _this.isOverDocumentDropZone = observableOf(false); + // Move page target to the uploader + var config = { + target: _this.uploaderId + }; + _this.scrollToService.scrollTo(config); + }; + this.uploader.onCompleteItem = function (item, response, status, headers) { + if (isNotEmpty(response)) { + var responsePath = JSON.parse(response); + _this.onCompleteItem.emit(responsePath); + } + }; + this.uploader.onErrorItem = function (item, response, status, headers) { + _this.onUploadError.emit(null); + _this.uploader.cancelAll(); + }; + this.uploader.onProgressAll = function () { return _this.onProgress(); }; + this.uploader.onProgressItem = function () { return _this.onProgress(); }; + }; + /** + * Called when files are dragged on the base drop area. + */ + UploaderComponent.prototype.fileOverBase = function (isOver) { + this.isOverBaseDropZone = observableOf(isOver); + }; + /** + * Called when files are dragged on the window document drop area. + */ + UploaderComponent.prototype.fileOverDocument = function (isOver) { + if (!isOver) { + this.isOverDocumentDropZone = observableOf(isOver); + } + }; + UploaderComponent.prototype.onProgress = function () { + this.cdr.detectChanges(); + }; + /** + * Ensure options passed contains the required properties. + * + * @param fileUploadOptions + * The upload-files options object. + */ + UploaderComponent.prototype.checkConfig = function (fileUploadOptions) { + var required = ['url', 'authToken', 'disableMultipart', 'itemAlias']; + var missing = required.filter(function (prop) { + return !((prop in fileUploadOptions) && fileUploadOptions[prop] !== ''); + }); + if (0 < missing.length) { + throw new Error('UploadFiles: Argument is missing the following required properties: ' + missing.join(', ')); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], UploaderComponent.prototype, "dropMsg", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], UploaderComponent.prototype, "dropOverDocumentMsg", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Boolean) + ], UploaderComponent.prototype, "enableDragOverDocument", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Function) + ], UploaderComponent.prototype, "onBeforeUpload", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", UploaderOptions) + ], UploaderComponent.prototype, "uploadFilesOptions", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], UploaderComponent.prototype, "onCompleteItem", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], UploaderComponent.prototype, "onUploadError", void 0); + tslib_1.__decorate([ + HostListener('window:dragover', ['$event']), + tslib_1.__metadata("design:type", Function), + tslib_1.__metadata("design:paramtypes", [Object]), + tslib_1.__metadata("design:returntype", void 0) + ], UploaderComponent.prototype, "onDragOver", null); + UploaderComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-uploader', + templateUrl: 'uploader.component.html', + styleUrls: ['uploader.component.scss'], + changeDetection: ChangeDetectionStrategy.Default, + encapsulation: ViewEncapsulation.Emulated + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, ScrollToService, UploaderService]) + ], UploaderComponent); + return UploaderComponent; +}()); +export { UploaderComponent }; +//# sourceMappingURL=uploader.component.js.map \ No newline at end of file diff --git a/src/app/shared/uploader/uploader.component.js.map b/src/app/shared/uploader/uploader.component.js.map new file mode 100644 index 0000000000..4c877e4536 --- /dev/null +++ b/src/app/shared/uploader/uploader.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"uploader.component.js","sourceRoot":"","sources":["uploader.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,MAAM,EACN,iBAAiB,GAClB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAyB,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEtF,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAUrD;IAsDE,2BAAoB,GAAsB,EAAU,eAAgC,EAAU,eAAgC;QAA1G,QAAG,GAAH,GAAG,CAAmB;QAAU,oBAAe,GAAf,eAAe,CAAiB;QAAU,oBAAe,GAAf,eAAe,CAAiB;QA3B9H;;WAEG;QACO,mBAAc,GAAsB,IAAI,YAAY,EAAO,CAAC;QAEtE;;WAEG;QACO,kBAAa,GAAsB,IAAI,YAAY,EAAO,CAAC;QAI9D,uBAAkB,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACzC,2BAAsB,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAepD,CAAC;IAZD,sCAAU,GAAV,UAAW,KAAU;QAEnB,IAAI,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,EAAE;YAC/E,6BAA6B;YAC7B,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAK,KAAK,CAAC,MAAc,CAAC,OAAO,KAAK,MAAM,EAAE;gBAC5C,IAAI,CAAC,sBAAsB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;aAClD;SACF;IACH,CAAC;IAKD;;OAEG;IACH,oCAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAG,2BAA2B,GAAG,QAAQ,EAAE,CAAC;QAC3D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,YAAY,CAAC;YAC/B,GAAG,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG;YAChC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS;YAC5C,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,CAAC,gBAAgB;YAC1D,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS;YAC5C,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,IAAI,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE;YAC5C,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;SACrC;QACD,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC7B,IAAI,CAAC,OAAO,GAAG,uBAAuB,CAAC;SACxC;QACD,IAAI,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE;YACzC,IAAI,CAAC,mBAAmB,GAAG,uBAAuB,CAAC;SACpD;IACH,CAAC;IAED,2CAAe,GAAf;QAAA,iBA8BC;QA7BC,0EAA0E;QAC1E,IAAI,CAAC,QAAQ,CAAC,iBAAiB,GAAG,CAAC,UAAC,IAAI;YACtC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE;YACpC,IAAI,CAAC,cAAc,GAAG,cAAO,OAAM,CAAA,CAAC,CAAC;SACtC;QACD,IAAI,CAAC,QAAQ,CAAC,kBAAkB,GAAG;YACjC,KAAI,CAAC,cAAc,EAAE,CAAC;YACtB,KAAI,CAAC,sBAAsB,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YAElD,mCAAmC;YACnC,IAAM,MAAM,GAA0B;gBACpC,MAAM,EAAE,KAAI,CAAC,UAAU;aACxB,CAAC;YACF,KAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,UAAC,IAAS,EAAE,QAAa,EAAE,MAAW,EAAE,OAAY;YACjF,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;gBACxB,IAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC1C,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aACxC;QACH,CAAC,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,UAAC,IAAS,EAAE,QAAa,EAAE,MAAW,EAAE,OAAY;YAC9E,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9B,KAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC5B,CAAC,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,cAAM,OAAA,KAAI,CAAC,UAAU,EAAE,EAAjB,CAAiB,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,cAAM,OAAA,KAAI,CAAC,UAAU,EAAE,EAAjB,CAAiB,CAAC;IACzD,CAAC;IAED;;OAEG;IACI,wCAAY,GAAnB,UAAoB,MAAe;QACjC,IAAI,CAAC,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACI,4CAAgB,GAAvB,UAAwB,MAAe;QACrC,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,CAAC,sBAAsB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;SACpD;IACH,CAAC;IAEO,sCAAU,GAAlB;QACE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACK,uCAAW,GAAnB,UAAoB,iBAAsB;QACxC,IAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;QACvE,IAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAC,IAAI;YACnC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,iBAAiB,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,sEAAsE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SAC9G;IACH,CAAC;IAhJQ;QAAR,KAAK,EAAE;;sDAAiB;IAKhB;QAAR,KAAK,EAAE;;kEAA6B;IAK5B;QAAR,KAAK,EAAE;;qEAAiC;IAKhC;QAAR,KAAK,EAAE;;6DAA4B;IAK3B;QAAR,KAAK,EAAE;0CAAqB,eAAe;iEAAC;IAKnC;QAAT,MAAM,EAAE;0CAAiB,YAAY;6DAAgC;IAK5D;QAAT,MAAM,EAAE;0CAAgB,YAAY;4DAAgC;IAQrE;QADC,YAAY,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;uDAU3C;IApDU,iBAAiB;QAR7B,SAAS,CAAC;YACT,QAAQ,EAAE,aAAa;YACvB,WAAW,EAAE,yBAAyB;YACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;YACtC,eAAe,EAAE,uBAAuB,CAAC,OAAO;YAChD,aAAa,EAAE,iBAAiB,CAAC,QAAQ;SAC1C,CAAC;iDAwDyB,iBAAiB,EAA2B,eAAe,EAA2B,eAAe;OAtDnH,iBAAiB,CAuJ7B;IAAD,wBAAC;CAAA,AAvJD,IAuJC;SAvJY,iBAAiB"} \ No newline at end of file diff --git a/src/app/shared/uploader/uploader.service.js b/src/app/shared/uploader/uploader.service.js new file mode 100644 index 0000000000..0fa0663809 --- /dev/null +++ b/src/app/shared/uploader/uploader.service.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +var UploaderService = /** @class */ (function () { + function UploaderService() { + this._overrideDragOverPage = false; + } + UploaderService.prototype.overrideDragOverPage = function () { + this._overrideDragOverPage = true; + }; + UploaderService.prototype.allowDragOverPage = function () { + this._overrideDragOverPage = false; + }; + UploaderService.prototype.isAllowedDragOverPage = function () { + return !this._overrideDragOverPage; + }; + UploaderService = tslib_1.__decorate([ + Injectable() + ], UploaderService); + return UploaderService; +}()); +export { UploaderService }; +//# sourceMappingURL=uploader.service.js.map \ No newline at end of file diff --git a/src/app/shared/uploader/uploader.service.js.map b/src/app/shared/uploader/uploader.service.js.map new file mode 100644 index 0000000000..b055bea6a7 --- /dev/null +++ b/src/app/shared/uploader/uploader.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"uploader.service.js","sourceRoot":"","sources":["uploader.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;IADA;QAEU,0BAAqB,GAAG,KAAK,CAAC;IAaxC,CAAC;IAXQ,8CAAoB,GAA3B;QACE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;IACpC,CAAC;IAEM,2CAAiB,GAAxB;QACE,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;IACrC,CAAC;IAEM,+CAAqB,GAA5B;QACE,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC;IACrC,CAAC;IAbU,eAAe;QAD3B,UAAU,EAAE;OACA,eAAe,CAc3B;IAAD,sBAAC;CAAA,AAdD,IAcC;SAdY,eAAe"} \ No newline at end of file diff --git a/src/app/shared/utils/auto-focus.directive.js b/src/app/shared/utils/auto-focus.directive.js new file mode 100644 index 0000000000..ac441f58cf --- /dev/null +++ b/src/app/shared/utils/auto-focus.directive.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { Directive, ElementRef, Input } from '@angular/core'; +import { isNotEmpty } from '../empty.util'; +/** + * Directive to set focus on an element when it is rendered + */ +var AutoFocusDirective = /** @class */ (function () { + function AutoFocusDirective(el) { + this.el = el; + /** + * Optional input to specify which element in a component should get the focus + * If left empty, the component itself will get the focus + */ + this.autoFocusSelector = undefined; + } + AutoFocusDirective.prototype.ngAfterViewInit = function () { + if (isNotEmpty(this.autoFocusSelector)) { + return this.el.nativeElement.querySelector(this.autoFocusSelector).focus(); + } + else { + return this.el.nativeElement.focus(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], AutoFocusDirective.prototype, "autoFocusSelector", void 0); + AutoFocusDirective = tslib_1.__decorate([ + Directive({ + selector: '[dsAutoFocus]' + }), + tslib_1.__metadata("design:paramtypes", [ElementRef]) + ], AutoFocusDirective); + return AutoFocusDirective; +}()); +export { AutoFocusDirective }; +//# sourceMappingURL=auto-focus.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/auto-focus.directive.js.map b/src/app/shared/utils/auto-focus.directive.js.map new file mode 100644 index 0000000000..408250c221 --- /dev/null +++ b/src/app/shared/utils/auto-focus.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auto-focus.directive.js","sourceRoot":"","sources":["auto-focus.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,UAAU,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C;;GAEG;AAIH;IAQE,4BAAoB,EAAc;QAAd,OAAE,GAAF,EAAE,CAAY;QANlC;;;WAGG;QACM,sBAAiB,GAAW,SAAS,CAAC;IAG/C,CAAC;IAED,4CAAe,GAAf;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;YACtC,OAAO,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC;SAC5E;aAAM;YACL,OAAO,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;SACtC;IACH,CAAC;IAXQ;QAAR,KAAK,EAAE;;iEAAuC;IANpC,kBAAkB;QAH9B,SAAS,CAAC;YACT,QAAQ,EAAE,eAAe;SAC1B,CAAC;iDASwB,UAAU;OARvB,kBAAkB,CAkB9B;IAAD,yBAAC;CAAA,AAlBD,IAkBC;SAlBY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/utils/capitalize.pipe.js b/src/app/shared/utils/capitalize.pipe.js new file mode 100644 index 0000000000..d9d0b0df5b --- /dev/null +++ b/src/app/shared/utils/capitalize.pipe.js @@ -0,0 +1,30 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +var CapitalizePipe = /** @class */ (function () { + /** + * Pipe for capizalizing a string + */ + function CapitalizePipe() { + } + /** + * @param {string} value String to be capitalized + * @returns {string} Capitalized version of the input value + */ + CapitalizePipe.prototype.transform = function (value) { + if (value) { + return value.charAt(0).toUpperCase() + value.slice(1); + } + return value; + }; + CapitalizePipe = tslib_1.__decorate([ + Pipe({ + name: 'dsCapitalize' + }) + /** + * Pipe for capizalizing a string + */ + ], CapitalizePipe); + return CapitalizePipe; +}()); +export { CapitalizePipe }; +//# sourceMappingURL=capitalize.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/capitalize.pipe.js.map b/src/app/shared/utils/capitalize.pipe.js.map new file mode 100644 index 0000000000..f909234e8a --- /dev/null +++ b/src/app/shared/utils/capitalize.pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"capitalize.pipe.js","sourceRoot":"","sources":["capitalize.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAA;AASnD;IAHA;;OAEG;IACH;IAYA,CAAC;IAXC;;;OAGG;IACH,kCAAS,GAAT,UAAU,KAAa;QACrB,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACvD;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAVU,cAAc;QAP1B,IAAI,CAAC;YACJ,IAAI,EAAE,cAAc;SACrB,CAAC;QAEF;;WAEG;OACU,cAAc,CAY1B;IAAD,qBAAC;CAAA,AAZD,IAYC;SAZY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/utils/click-outside.directive.js b/src/app/shared/utils/click-outside.directive.js new file mode 100644 index 0000000000..4ba5d449a1 --- /dev/null +++ b/src/app/shared/utils/click-outside.directive.js @@ -0,0 +1,42 @@ +import * as tslib_1 from "tslib"; +import { Directive, ElementRef, Output, EventEmitter, HostListener } from '@angular/core'; +var ClickOutsideDirective = /** @class */ (function () { + function ClickOutsideDirective(_elementRef) { + this._elementRef = _elementRef; + /** + * Emits null when the user clicks outside of the element + */ + this.dsClickOutside = new EventEmitter(); + } + ClickOutsideDirective.prototype.onClick = function () { + var hostElement = this._elementRef.nativeElement; + var focusElement = hostElement.ownerDocument.activeElement; + var clickedInside = hostElement.contains(focusElement); + if (!clickedInside) { + this.dsClickOutside.emit(null); + } + }; + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], ClickOutsideDirective.prototype, "dsClickOutside", void 0); + tslib_1.__decorate([ + HostListener('document:click'), + tslib_1.__metadata("design:type", Function), + tslib_1.__metadata("design:paramtypes", []), + tslib_1.__metadata("design:returntype", void 0) + ], ClickOutsideDirective.prototype, "onClick", null); + ClickOutsideDirective = tslib_1.__decorate([ + Directive({ + selector: '[dsClickOutside]' + }) + /** + * Directive to detect when the users clicks outside of the element the directive was put on + */ + , + tslib_1.__metadata("design:paramtypes", [ElementRef]) + ], ClickOutsideDirective); + return ClickOutsideDirective; +}()); +export { ClickOutsideDirective }; +//# sourceMappingURL=click-outside.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/click-outside.directive.js.map b/src/app/shared/utils/click-outside.directive.js.map new file mode 100644 index 0000000000..7897d896a4 --- /dev/null +++ b/src/app/shared/utils/click-outside.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"click-outside.directive.js","sourceRoot":"","sources":["click-outside.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAQ1F;IAOE,+BAAoB,WAAuB;QAAvB,gBAAW,GAAX,WAAW,CAAY;QAN3C;;WAEG;QAEI,mBAAc,GAAG,IAAI,YAAY,EAAE,CAAC;IAG3C,CAAC;IAGM,uCAAO,GAAd;QACE,IAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;QACnD,IAAM,YAAY,GAAG,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC;QAC7D,IAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,EAAE;YAClB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAChC;IACH,CAAC;IAbD;QADC,MAAM,EAAE;;iEACkC;IAM3C;QADC,YAAY,CAAC,gBAAgB,CAAC;;;;wDAQ9B;IAlBU,qBAAqB;QANjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;SAC7B,CAAC;QACF;;WAEG;;iDAQgC,UAAU;OAPhC,qBAAqB,CAmBjC;IAAD,4BAAC;CAAA,AAnBD,IAmBC;SAnBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/utils/console.pipe.js b/src/app/shared/utils/console.pipe.js new file mode 100644 index 0000000000..cab3e142a2 --- /dev/null +++ b/src/app/shared/utils/console.pipe.js @@ -0,0 +1,18 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +var ConsolePipe = /** @class */ (function () { + function ConsolePipe() { + } + ConsolePipe.prototype.transform = function (value) { + console.log(value); + return ''; + }; + ConsolePipe = tslib_1.__decorate([ + Pipe({ + name: 'dsConsole' + }) + ], ConsolePipe); + return ConsolePipe; +}()); +export { ConsolePipe }; +//# sourceMappingURL=console.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/console.pipe.js.map b/src/app/shared/utils/console.pipe.js.map new file mode 100644 index 0000000000..f5a70c45d2 --- /dev/null +++ b/src/app/shared/utils/console.pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"console.pipe.js","sourceRoot":"","sources":["console.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAKpD;IAAA;IAKA,CAAC;IAJC,+BAAS,GAAT,UAAU,KAAU;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,EAAE,CAAC;IACZ,CAAC;IAJU,WAAW;QAHvB,IAAI,CAAC;YACJ,IAAI,EAAE,WAAW;SAClB,CAAC;OACW,WAAW,CAKvB;IAAD,kBAAC;CAAA,AALD,IAKC;SALY,WAAW"} \ No newline at end of file diff --git a/src/app/shared/utils/debounce.directive.js b/src/app/shared/utils/debounce.directive.js new file mode 100644 index 0000000000..da9ea0b0d3 --- /dev/null +++ b/src/app/shared/utils/debounce.directive.js @@ -0,0 +1,64 @@ +import * as tslib_1 from "tslib"; +import { distinctUntilChanged, debounceTime, takeUntil } from 'rxjs/operators'; +import { Directive, Input, Output, EventEmitter } from '@angular/core'; +import { NgControl } from '@angular/forms'; +import { Subject } from 'rxjs'; +var DebounceDirective = /** @class */ (function () { + function DebounceDirective(model) { + this.model = model; + /** + * Emits a value when nothing has changed in dsDebounce milliseconds + */ + this.onDebounce = new EventEmitter(); + /** + * The debounce time in milliseconds + */ + this.dsDebounce = 500; + /** + * Subject to unsubscribe from + */ + this.subject = new Subject(); + } + /** + * Start listening to changes of the input field's value changes + * Emit it when the debounceTime is over without new changes + */ + DebounceDirective.prototype.ngOnInit = function () { + var _this = this; + this.model.valueChanges.pipe(takeUntil(this.subject), debounceTime(this.dsDebounce), distinctUntilChanged()) + .subscribe(function (modelValue) { + if (_this.model.dirty) { + _this.onDebounce.emit(modelValue); + } + }); + }; + /** + * Close subject + */ + DebounceDirective.prototype.ngOnDestroy = function () { + this.subject.next(); + this.subject.complete(); + }; + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], DebounceDirective.prototype, "onDebounce", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], DebounceDirective.prototype, "dsDebounce", void 0); + DebounceDirective = tslib_1.__decorate([ + Directive({ + selector: '[ngModel][dsDebounce]', + }) + /** + * Directive for setting a debounce time on an input field + * It will emit the input field's value when no changes were made to this value in a given debounce time + */ + , + tslib_1.__metadata("design:paramtypes", [NgControl]) + ], DebounceDirective); + return DebounceDirective; +}()); +export { DebounceDirective }; +//# sourceMappingURL=debounce.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/debounce.directive.js.map b/src/app/shared/utils/debounce.directive.js.map new file mode 100644 index 0000000000..3c77363a04 --- /dev/null +++ b/src/app/shared/utils/debounce.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"debounce.directive.js","sourceRoot":"","sources":["debounce.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAE,YAAY,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAqB,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAS/B;IAmBE,2BAAmB,KAAgB;QAAhB,UAAK,GAAL,KAAK,CAAW;QAjBnC;;WAEG;QAEI,eAAU,GAAG,IAAI,YAAY,EAAO,CAAC;QAE5C;;WAEG;QAEI,eAAU,GAAG,GAAG,CAAC;QAExB;;WAEG;QACK,YAAO,GAAkB,IAAI,OAAO,EAAQ,CAAC;IAGrD,CAAC;IAED;;;OAGG;IACH,oCAAQ,GAAR;QAAA,iBAUC;QATC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAC1B,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EACvB,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,EAC7B,oBAAoB,EAAE,CAAC;aACtB,SAAS,CAAC,UAAC,UAAU;YACpB,IAAI,KAAI,CAAC,KAAK,CAAC,KAAK,EAAE;gBACpB,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAClC;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,uCAAW,GAAX;QACE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAtCD;QADC,MAAM,EAAE;;yDACmC;IAM5C;QADC,KAAK,EAAE;;yDACgB;IAZb,iBAAiB;QAP7B,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;SAClC,CAAC;QACF;;;WAGG;;iDAoByB,SAAS;OAnBxB,iBAAiB,CA6C7B;IAAD,wBAAC;CAAA,AA7CD,IA6CC;SA7CY,iBAAiB"} \ No newline at end of file diff --git a/src/app/shared/utils/drag-click.directive.js b/src/app/shared/utils/drag-click.directive.js new file mode 100644 index 0000000000..1856c7fedb --- /dev/null +++ b/src/app/shared/utils/drag-click.directive.js @@ -0,0 +1,57 @@ +import * as tslib_1 from "tslib"; +import { Directive, EventEmitter, HostListener, Output } from '@angular/core'; +var DragClickDirective = /** @class */ (function () { + function DragClickDirective() { + /** + * Emits a click event when the click is perceived as an actual click and not a drag + */ + this.actualClick = new EventEmitter(); + } + /** + * When the mouse button is pushed down, register the start time + * @param event Mouse down event + */ + DragClickDirective.prototype.mousedownEvent = function (event) { + this.start = new Date(); + }; + /** + * When the mouse button is let go of, check how long if it was down for + * If the mouse button was down for more than 250ms, don't emit a click event + * @param event Mouse down event + */ + DragClickDirective.prototype.mouseupEvent = function (event) { + var end = new Date(); + var clickTime = end - this.start; + if (clickTime < 250) { + this.actualClick.emit(event); + } + }; + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", Object) + ], DragClickDirective.prototype, "actualClick", void 0); + tslib_1.__decorate([ + HostListener('mousedown', ['$event']), + tslib_1.__metadata("design:type", Function), + tslib_1.__metadata("design:paramtypes", [Object]), + tslib_1.__metadata("design:returntype", void 0) + ], DragClickDirective.prototype, "mousedownEvent", null); + tslib_1.__decorate([ + HostListener('mouseup', ['$event']), + tslib_1.__metadata("design:type", Function), + tslib_1.__metadata("design:paramtypes", [Object]), + tslib_1.__metadata("design:returntype", void 0) + ], DragClickDirective.prototype, "mouseupEvent", null); + DragClickDirective = tslib_1.__decorate([ + Directive({ + selector: '[dsDragClick]' + }) + /** + * Directive for preventing drag events being misinterpret as clicks + * The difference is made using the time the mouse button is pushed down + */ + ], DragClickDirective); + return DragClickDirective; +}()); +export { DragClickDirective }; +//# sourceMappingURL=drag-click.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/drag-click.directive.js.map b/src/app/shared/utils/drag-click.directive.js.map new file mode 100644 index 0000000000..c3ec7a57a0 --- /dev/null +++ b/src/app/shared/utils/drag-click.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"drag-click.directive.js","sourceRoot":"","sources":["drag-click.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAU9E;IARA;QAcE;;WAEG;QACO,gBAAW,GAAG,IAAI,YAAY,EAAE,CAAC;IAwB7C,CAAC;IAtBC;;;OAGG;IAEH,2CAAc,GAAd,UAAe,KAAK;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IAEH,yCAAY,GAAZ,UAAa,KAAK;QAChB,IAAM,GAAG,GAAQ,IAAI,IAAI,EAAE,CAAC;QAC5B,IAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;QACnC,IAAI,SAAS,GAAG,GAAG,EAAE;YACnB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SAC7B;IACH,CAAC;IAvBS;QAAT,MAAM,EAAE;;2DAAkC;IAO3C;QADC,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;4DAGrC;IAQD;QADC,YAAY,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;0DAOnC;IAhCU,kBAAkB;QAR9B,SAAS,CAAC;YACT,QAAQ,EAAE,eAAe;SAC1B,CAAC;QAEF;;;WAGG;OACU,kBAAkB,CAiC9B;IAAD,yBAAC;CAAA,AAjCD,IAiCC;SAjCY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/utils/emphasize.pipe.js b/src/app/shared/utils/emphasize.pipe.js new file mode 100644 index 0000000000..0d2484196a --- /dev/null +++ b/src/app/shared/utils/emphasize.pipe.js @@ -0,0 +1,62 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +var EmphasizePipe = /** @class */ (function () { + function EmphasizePipe() { + /** + * Characters that should be escaped + */ + this.specials = [ + // order matters for these + '-', + '[', + ']' + // order doesn't matter for any of these + , + '/', + '{', + '}', + '(', + ')', + '*', + '+', + '?', + '.', + '\\', + '^', + '$', + '|' + ]; + /** + * Regular expression for escaping the string we're trying to find + */ + this.regex = RegExp('[' + this.specials.join('\\') + ']', 'g'); + } + /** + * + * @param haystack The string which we want to partly highlight + * @param needle The string that should become emphasized in the haystack string + * @returns {any} Transformed haystack with the needle emphasized + */ + EmphasizePipe.prototype.transform = function (haystack, needle) { + var escaped = this.escapeRegExp(needle); + var reg = new RegExp(escaped, 'gi'); + return haystack.replace(reg, '$&'); + }; + /** + * + * @param str Escape special characters in the string we're looking for + * @returns {any} The escaped version of the input string + */ + EmphasizePipe.prototype.escapeRegExp = function (str) { + return str.replace(this.regex, '\\$&'); + }; + EmphasizePipe = tslib_1.__decorate([ + Pipe({ name: 'dsEmphasize' }) + /** + * Pipe for emphasizing a part of a string by surrounding it with tags + */ + ], EmphasizePipe); + return EmphasizePipe; +}()); +export { EmphasizePipe }; +//# sourceMappingURL=emphasize.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/emphasize.pipe.js.map b/src/app/shared/utils/emphasize.pipe.js.map new file mode 100644 index 0000000000..fbdd8cf5df --- /dev/null +++ b/src/app/shared/utils/emphasize.pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"emphasize.pipe.js","sourceRoot":"","sources":["emphasize.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAMpD;IAJA;QAKE;;WAEG;QACH,aAAQ,GAAG;YACT,0BAA0B;YAC1B,GAAG;YACD,GAAG;YACH,GAAG;YACL,wCAAwC;;YACtC,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,IAAI;YACJ,GAAG;YACH,GAAG;YACH,GAAG;SACN,CAAC;QACF;;WAEG;QACH,UAAK,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;IAsB5D,CAAC;IApBC;;;;;OAKG;IACH,iCAAS,GAAT,UAAU,QAAQ,EAAE,MAAM;QACxB,IAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAM,GAAG,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACF,oCAAY,GAAZ,UAAa,GAAG;QACf,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAhDU,aAAa;QAJzB,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QAC9B;;WAEG;OACU,aAAa,CAiDzB;IAAD,oBAAC;CAAA,AAjDD,IAiDC;SAjDY,aAAa"} \ No newline at end of file diff --git a/src/app/shared/utils/encode-decode.util.js b/src/app/shared/utils/encode-decode.util.js new file mode 100644 index 0000000000..8c5bb712c9 --- /dev/null +++ b/src/app/shared/utils/encode-decode.util.js @@ -0,0 +1,11 @@ +/** + * use this to make a Base64 encoded string URL friendly, + * i.e. '+' and '/' are replaced with special percent-encoded hexadecimal sequences + * + * @param {String} str the encoded string + * @returns {String} the URL friendly encoded String + */ +export function Base64EncodeUrl(str) { + return str.replace(/\+/g, '%2B').replace(/\//g, '%2F').replace(/\=/g, '%3D'); +} +//# sourceMappingURL=encode-decode.util.js.map \ No newline at end of file diff --git a/src/app/shared/utils/encode-decode.util.js.map b/src/app/shared/utils/encode-decode.util.js.map new file mode 100644 index 0000000000..b9925f9b88 --- /dev/null +++ b/src/app/shared/utils/encode-decode.util.js.map @@ -0,0 +1 @@ +{"version":3,"file":"encode-decode.util.js","sourceRoot":"","sources":["encode-decode.util.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,0BAA0B,GAAG;IACjC,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/E,CAAC"} \ No newline at end of file diff --git a/src/app/shared/utils/enum-keys-pipe.js b/src/app/shared/utils/enum-keys-pipe.js new file mode 100644 index 0000000000..99fc6f1d6b --- /dev/null +++ b/src/app/shared/utils/enum-keys-pipe.js @@ -0,0 +1,34 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +var EnumKeysPipe = /** @class */ (function () { + /** + * Pipe for parsing all values of an enumeration to an array of key-value pairs + */ + function EnumKeysPipe() { + } + /** + * @param value An enumeration + * @returns {any} Array with all keys and values of the input enumeration + */ + EnumKeysPipe.prototype.transform = function (value) { + var keys = []; + for (var enumMember in value) { + if (!isNaN(parseInt(enumMember, 10))) { + keys.push({ key: +enumMember, value: value[enumMember] }); + } + else { + keys.push({ key: enumMember, value: value[enumMember] }); + } + } + return keys; + }; + EnumKeysPipe = tslib_1.__decorate([ + Pipe({ name: 'dsKeys' }) + /** + * Pipe for parsing all values of an enumeration to an array of key-value pairs + */ + ], EnumKeysPipe); + return EnumKeysPipe; +}()); +export { EnumKeysPipe }; +//# sourceMappingURL=enum-keys-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/enum-keys-pipe.js.map b/src/app/shared/utils/enum-keys-pipe.js.map new file mode 100644 index 0000000000..becc3ab614 --- /dev/null +++ b/src/app/shared/utils/enum-keys-pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"enum-keys-pipe.js","sourceRoot":"","sources":["enum-keys-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAMpD;IAHA;;OAEG;IACH;IAiBA,CAAC;IAfC;;;OAGG;IACH,gCAAS,GAAT,UAAU,KAAK;QACb,IAAM,IAAI,GAAG,EAAE,CAAC;QAChB,KAAK,IAAM,UAAU,IAAI,KAAK,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,EAAE;gBACpC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;aAC3D;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;aAC1D;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAhBU,YAAY;QAJxB,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QACzB;;WAEG;OACU,YAAY,CAiBxB;IAAD,mBAAC;CAAA,AAjBD,IAiBC;SAjBY,YAAY"} \ No newline at end of file diff --git a/src/app/shared/utils/file-size-pipe.js b/src/app/shared/utils/file-size-pipe.js new file mode 100644 index 0000000000..89b893d0de --- /dev/null +++ b/src/app/shared/utils/file-size-pipe.js @@ -0,0 +1,46 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +/* + * Convert bytes into largest possible unit. + * Takes an precision argument that defaults to 2. + * Usage: + * bytes | fileSize:precision + * Example: + * {{ 1024 | fileSize}} + * formats to: 1 KB + */ +var FileSizePipe = /** @class */ (function () { + function FileSizePipe() { + this.units = [ + 'bytes', + 'KiB', + 'MiB', + 'GiB', + 'TiB', + 'PiB' + ]; + } + FileSizePipe.prototype.transform = function (bytes, precision) { + if (bytes === void 0) { bytes = 0; } + if (precision === void 0) { precision = 2; } + var result; + if (isNaN(parseFloat(String(bytes))) || !isFinite(bytes)) { + result = '?'; + } + else { + var unit = 0; + while (bytes >= 1024) { + bytes /= 1024; + unit++; + } + result = bytes.toFixed(+precision) + ' ' + this.units[unit]; + } + return result; + }; + FileSizePipe = tslib_1.__decorate([ + Pipe({ name: 'dsFileSize' }) + ], FileSizePipe); + return FileSizePipe; +}()); +export { FileSizePipe }; +//# sourceMappingURL=file-size-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/file-size-pipe.js.map b/src/app/shared/utils/file-size-pipe.js.map new file mode 100644 index 0000000000..15d74e29d4 --- /dev/null +++ b/src/app/shared/utils/file-size-pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"file-size-pipe.js","sourceRoot":"","sources":["file-size-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAEpD;;;;;;;;GAQG;AAGH;IADA;QAGU,UAAK,GAAa;YACxB,OAAO;YACP,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;SACN,CAAC;IAkBJ,CAAC;IAhBC,gCAAS,GAAT,UAAU,KAAiB,EAAE,SAAqB;QAAxC,sBAAA,EAAA,SAAiB;QAAE,0BAAA,EAAA,aAAqB;QAChD,IAAI,MAAc,CAAC;QACnB,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACxD,MAAM,GAAG,GAAG,CAAC;SACd;aAAM;YACL,IAAI,IAAI,GAAG,CAAC,CAAC;YAEb,OAAO,KAAK,IAAI,IAAI,EAAE;gBACpB,KAAK,IAAI,IAAI,CAAC;gBACd,IAAI,EAAE,CAAC;aACR;YAED,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAE,SAAS,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC9D;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IA1BU,YAAY;QADxB,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;OAChB,YAAY,CA2BxB;IAAD,mBAAC;CAAA,AA3BD,IA2BC;SA3BY,YAAY"} \ No newline at end of file diff --git a/src/app/shared/utils/in-list-validator.directive.js b/src/app/shared/utils/in-list-validator.directive.js new file mode 100644 index 0000000000..47f7bb563b --- /dev/null +++ b/src/app/shared/utils/in-list-validator.directive.js @@ -0,0 +1,36 @@ +import * as tslib_1 from "tslib"; +import { Directive, Input } from '@angular/core'; +import { NG_VALIDATORS } from '@angular/forms'; +import { inListValidator } from './validator.functions'; +/** + * Directive for validating if a ngModel value is in a given list + */ +var InListValidator = /** @class */ (function () { + function InListValidator() { + } + InListValidator_1 = InListValidator; + /** + * The function that checks if the form control's value is currently valid + * @param c The FormControl + */ + InListValidator.prototype.validate = function (c) { + return inListValidator(this.dsInListValidator)(c); + }; + var InListValidator_1; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], InListValidator.prototype, "dsInListValidator", void 0); + InListValidator = InListValidator_1 = tslib_1.__decorate([ + Directive({ + selector: '[ngModel][dsInListValidator]', + // We add our directive to the list of existing validators + providers: [ + { provide: NG_VALIDATORS, useExisting: InListValidator_1, multi: true } + ] + }) + ], InListValidator); + return InListValidator; +}()); +export { InListValidator }; +//# sourceMappingURL=in-list-validator.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/in-list-validator.directive.js.map b/src/app/shared/utils/in-list-validator.directive.js.map new file mode 100644 index 0000000000..ae0c1ef916 --- /dev/null +++ b/src/app/shared/utils/in-list-validator.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"in-list-validator.directive.js","sourceRoot":"","sources":["in-list-validator.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAe,aAAa,EAA+B,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;GAEG;AAQH;IAAA;IAcA,CAAC;wBAdY,eAAe;IAO1B;;;OAGG;IACH,kCAAQ,GAAR,UAAS,CAAc;QACrB,OAAO,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;;IARD;QADC,KAAK,EAAE;;8DACoB;IALjB,eAAe;QAP3B,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,0DAA0D;YAC1D,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAe,EAAE,KAAK,EAAE,IAAI,EAAE;aACtE;SACF,CAAC;OACW,eAAe,CAc3B;IAAD,sBAAC;CAAA,AAdD,IAcC;SAdY,eAAe"} \ No newline at end of file diff --git a/src/app/shared/utils/object-keys-pipe.js b/src/app/shared/utils/object-keys-pipe.js new file mode 100644 index 0000000000..7417d87598 --- /dev/null +++ b/src/app/shared/utils/object-keys-pipe.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +var ObjectKeysPipe = /** @class */ (function () { + /** + * Pipe for parsing all keys of an object to an array of key-value pairs + */ + function ObjectKeysPipe() { + } + /** + * @param value An object + * @returns {any} Array with all keys the input object + */ + ObjectKeysPipe.prototype.transform = function (value, args) { + var keys = []; + Object.keys(value).forEach(function (k) { return keys.push(k); }); + return keys; + }; + ObjectKeysPipe = tslib_1.__decorate([ + Pipe({ name: 'dsObjectKeys' }) + /** + * Pipe for parsing all keys of an object to an array of key-value pairs + */ + ], ObjectKeysPipe); + return ObjectKeysPipe; +}()); +export { ObjectKeysPipe }; +//# sourceMappingURL=object-keys-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/object-keys-pipe.js.map b/src/app/shared/utils/object-keys-pipe.js.map new file mode 100644 index 0000000000..e4c657683f --- /dev/null +++ b/src/app/shared/utils/object-keys-pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-keys-pipe.js","sourceRoot":"","sources":["object-keys-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAiB,IAAI,EAAE,MAAM,eAAe,CAAC;AAMpD;IAHA;;OAEG;IACH;IAWA,CAAC;IATC;;;OAGG;IACH,kCAAS,GAAT,UAAU,KAAK,EAAE,IAAa;QAC5B,IAAM,IAAI,GAAG,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAZ,CAAY,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAVU,cAAc;QAJ1B,IAAI,CAAC,EAAC,IAAI,EAAE,cAAc,EAAC,CAAC;QAC7B;;WAEG;OACU,cAAc,CAW1B;IAAD,qBAAC;CAAA,AAXD,IAWC;SAXY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/utils/object-ngfor.pipe.js b/src/app/shared/utils/object-ngfor.pipe.js new file mode 100644 index 0000000000..b59199c1f9 --- /dev/null +++ b/src/app/shared/utils/object-ngfor.pipe.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +/** + * Pipe that allows to iterate over an object and to access to entry key and value : + * + *
+ * {{obj.key}} - {{obj.value}} + *
+ * + */ +var ObjNgFor = /** @class */ (function () { + function ObjNgFor() { + } + ObjNgFor.prototype.transform = function (value, args) { + if (args === void 0) { args = null; } + return Object.keys(value).map(function (key) { return Object.assign({ key: key }, { value: value[key] }); }); + }; + ObjNgFor = tslib_1.__decorate([ + Pipe({ + name: 'dsObjNgFor' + }) + ], ObjNgFor); + return ObjNgFor; +}()); +export { ObjNgFor }; +//# sourceMappingURL=object-ngfor.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/object-ngfor.pipe.js.map b/src/app/shared/utils/object-ngfor.pipe.js.map new file mode 100644 index 0000000000..dd83e440ce --- /dev/null +++ b/src/app/shared/utils/object-ngfor.pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-ngfor.pipe.js","sourceRoot":"","sources":["object-ngfor.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAEpD;;;;;;;GAOG;AAIH;IAAA;IAIA,CAAC;IAHC,4BAAS,GAAT,UAAU,KAAU,EAAE,IAAkB;QAAlB,qBAAA,EAAA,WAAkB;QACtC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAA,EAAE,EAAE,EAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAC,CAAC,EAA3C,CAA2C,CAAC,CAAC;IACtF,CAAC;IAHU,QAAQ;QAHpB,IAAI,CAAC;YACJ,IAAI,EAAE,YAAY;SACnB,CAAC;OACW,QAAQ,CAIpB;IAAD,eAAC;CAAA,AAJD,IAIC;SAJY,QAAQ"} \ No newline at end of file diff --git a/src/app/shared/utils/object-values-pipe.js b/src/app/shared/utils/object-values-pipe.js new file mode 100644 index 0000000000..1e0f8123c4 --- /dev/null +++ b/src/app/shared/utils/object-values-pipe.js @@ -0,0 +1,27 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +var ObjectValuesPipe = /** @class */ (function () { + /** + * Pipe for parsing all values of an object to an array of values + */ + function ObjectValuesPipe() { + } + /** + * @param value An object + * @returns {any} Array with all values of the input object + */ + ObjectValuesPipe.prototype.transform = function (value, args) { + var values = []; + Object.values(value).forEach(function (v) { return values.push(v); }); + return values; + }; + ObjectValuesPipe = tslib_1.__decorate([ + Pipe({ name: 'dsObjectValues' }) + /** + * Pipe for parsing all values of an object to an array of values + */ + ], ObjectValuesPipe); + return ObjectValuesPipe; +}()); +export { ObjectValuesPipe }; +//# sourceMappingURL=object-values-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/object-values-pipe.js.map b/src/app/shared/utils/object-values-pipe.js.map new file mode 100644 index 0000000000..efbc43b95c --- /dev/null +++ b/src/app/shared/utils/object-values-pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"object-values-pipe.js","sourceRoot":"","sources":["object-values-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAiB,IAAI,EAAE,MAAM,eAAe,CAAC;AAMpD;IAHA;;OAEG;IACH;IAWA,CAAC;IATC;;;OAGG;IACH,oCAAS,GAAT,UAAU,KAAK,EAAE,IAAa;QAC5B,IAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAd,CAAc,CAAC,CAAC;QACpD,OAAO,MAAM,CAAC;IAChB,CAAC;IAVU,gBAAgB;QAJ5B,IAAI,CAAC,EAAC,IAAI,EAAE,gBAAgB,EAAC,CAAC;QAC/B;;WAEG;OACU,gBAAgB,CAW5B;IAAD,uBAAC;CAAA,AAXD,IAWC;SAXY,gBAAgB"} \ No newline at end of file diff --git a/src/app/shared/utils/safe-url-pipe.js b/src/app/shared/utils/safe-url-pipe.js new file mode 100644 index 0000000000..f7351c1bc9 --- /dev/null +++ b/src/app/shared/utils/safe-url-pipe.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +import { DomSanitizer } from '@angular/platform-browser'; +/** + * This pipe explicitly escapes the sanitization of a URL, + * only use this when you are sure the URL is indeed safe + */ +var SafeUrlPipe = /** @class */ (function () { + function SafeUrlPipe(domSanitizer) { + this.domSanitizer = domSanitizer; + } + SafeUrlPipe.prototype.transform = function (url) { + return this.domSanitizer.bypassSecurityTrustResourceUrl(url); + }; + SafeUrlPipe = tslib_1.__decorate([ + Pipe({ name: 'dsSafeUrl' }), + tslib_1.__metadata("design:paramtypes", [DomSanitizer]) + ], SafeUrlPipe); + return SafeUrlPipe; +}()); +export { SafeUrlPipe }; +//# sourceMappingURL=safe-url-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/safe-url-pipe.js.map b/src/app/shared/utils/safe-url-pipe.js.map new file mode 100644 index 0000000000..a60fd2ab30 --- /dev/null +++ b/src/app/shared/utils/safe-url-pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"safe-url-pipe.js","sourceRoot":"","sources":["safe-url-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;GAGG;AAGH;IACE,qBAAoB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAI,CAAC;IACnD,+BAAS,GAAT,UAAU,GAAG;QACX,OAAO,IAAI,CAAC,YAAY,CAAC,8BAA8B,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;IAJU,WAAW;QADvB,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;iDAEQ,YAAY;OADnC,WAAW,CAKvB;IAAD,kBAAC;CAAA,AALD,IAKC;SALY,WAAW"} \ No newline at end of file diff --git a/src/app/shared/utils/truncate.pipe.js b/src/app/shared/utils/truncate.pipe.js new file mode 100644 index 0000000000..62eff60c12 --- /dev/null +++ b/src/app/shared/utils/truncate.pipe.js @@ -0,0 +1,31 @@ +import * as tslib_1 from "tslib"; +import { Pipe } from '@angular/core'; +import { hasValue } from '../empty.util'; +/** + * Pipe to truncate a value in Angular. (Take a substring, starting at 0) + * Default value: 10 + */ +var TruncatePipe = /** @class */ (function () { + function TruncatePipe() { + } + /** + * + */ + TruncatePipe.prototype.transform = function (value, args) { + if (hasValue(value)) { + var limit = (args && args.length > 0) ? parseInt(args[0], 10) : 10; // 10 as default truncate value + return value.length > limit ? value.substring(0, limit) + '...' : value; + } + else { + return value; + } + }; + TruncatePipe = tslib_1.__decorate([ + Pipe({ + name: 'dsTruncate' + }) + ], TruncatePipe); + return TruncatePipe; +}()); +export { TruncatePipe }; +//# sourceMappingURL=truncate.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/truncate.pipe.js.map b/src/app/shared/utils/truncate.pipe.js.map new file mode 100644 index 0000000000..684ba54aaa --- /dev/null +++ b/src/app/shared/utils/truncate.pipe.js.map @@ -0,0 +1 @@ +{"version":3,"file":"truncate.pipe.js","sourceRoot":"","sources":["truncate.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;;GAGG;AAIH;IAAA;IAcA,CAAC;IAZC;;OAEG;IACH,gCAAS,GAAT,UAAU,KAAa,EAAE,IAAc;QACrC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,IAAM,KAAK,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,+BAA+B;YACrG,OAAO,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;SACzE;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAZU,YAAY;QAHxB,IAAI,CAAC;YACJ,IAAI,EAAE,YAAY;SACnB,CAAC;OACW,YAAY,CAcxB;IAAD,mBAAC;CAAA,AAdD,IAcC;SAdY,YAAY"} \ No newline at end of file diff --git a/src/app/shared/utils/validator.functions.js b/src/app/shared/utils/validator.functions.js new file mode 100644 index 0000000000..399e00380b --- /dev/null +++ b/src/app/shared/utils/validator.functions.js @@ -0,0 +1,16 @@ +import { isNotEmpty } from '../empty.util'; +/** + * Returns a validator function to check if the control's value is in a given list + * @param list The list to look in + */ +export function inListValidator(list) { + return function (control) { + var hasValue = isNotEmpty(control.value); + var inList = true; + if (isNotEmpty(list)) { + inList = list.indexOf(control.value) > -1; + } + return (hasValue && inList) ? null : { inList: { value: control.value } }; + }; +} +//# sourceMappingURL=validator.functions.js.map \ No newline at end of file diff --git a/src/app/shared/utils/validator.functions.js.map b/src/app/shared/utils/validator.functions.js.map new file mode 100644 index 0000000000..2946ebd51e --- /dev/null +++ b/src/app/shared/utils/validator.functions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"validator.functions.js","sourceRoot":"","sources":["validator.functions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C;;;GAGG;AACH,MAAM,0BAA0B,IAAc;IAC5C,OAAO,UAAC,OAAwB;QAC9B,IAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;YACpB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3C;QACD,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAA;IAC3E,CAAC,CAAC;AACJ,CAAC"} \ No newline at end of file diff --git a/src/app/shared/utils/var.directive.js b/src/app/shared/utils/var.directive.js new file mode 100644 index 0000000000..d1f9c34878 --- /dev/null +++ b/src/app/shared/utils/var.directive.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core'; +/* tslint:disable:directive-selector */ +var VarDirective = /** @class */ (function () { + function VarDirective(vcRef, templateRef) { + this.vcRef = vcRef; + this.templateRef = templateRef; + this.context = {}; + } + Object.defineProperty(VarDirective.prototype, "ngVar", { + set: function (context) { + this.context.$implicit = this.context.ngVar = context; + this.updateView(); + }, + enumerable: true, + configurable: true + }); + VarDirective.prototype.updateView = function () { + this.vcRef.clear(); + this.vcRef.createEmbeddedView(this.templateRef, this.context); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object), + tslib_1.__metadata("design:paramtypes", [Object]) + ], VarDirective.prototype, "ngVar", null); + VarDirective = tslib_1.__decorate([ + Directive({ + selector: '[ngVar]', + }), + tslib_1.__metadata("design:paramtypes", [ViewContainerRef, TemplateRef]) + ], VarDirective); + return VarDirective; +}()); +export { VarDirective }; +/* tslint:enable:directive-selector */ +//# sourceMappingURL=var.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/var.directive.js.map b/src/app/shared/utils/var.directive.js.map new file mode 100644 index 0000000000..96d6ffa8e4 --- /dev/null +++ b/src/app/shared/utils/var.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"var.directive.js","sourceRoot":"","sources":["var.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEhF,uCAAuC;AAIvC;IASE,sBAAoB,KAAuB,EAAU,WAA6B;QAA9D,UAAK,GAAL,KAAK,CAAkB;QAAU,gBAAW,GAAX,WAAW,CAAkB;QAFlF,YAAO,GAAQ,EAAE,CAAC;IAEmE,CAAC;IAPtF,sBAAI,+BAAK;aAAT,UAAU,OAAY;YACpB,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;YACtD,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;;;OAAA;IAMD,iCAAU,GAAV;QACE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAChE,CAAC;IAZD;QADC,KAAK,EAAE;;;6CAIP;IALU,YAAY;QAHxB,SAAS,CAAC;YACT,QAAQ,EAAE,SAAS;SACpB,CAAC;iDAU2B,gBAAgB,EAAuB,WAAW;OATlE,YAAY,CAexB;IAAD,mBAAC;CAAA,AAfD,IAeC;SAfY,YAAY;AAgBzB,sCAAsC"} \ No newline at end of file diff --git a/src/app/shared/view-mode-switch/view-mode-switch.component.js b/src/app/shared/view-mode-switch/view-mode-switch.component.js new file mode 100644 index 0000000000..d87a82c253 --- /dev/null +++ b/src/app/shared/view-mode-switch/view-mode-switch.component.js @@ -0,0 +1,72 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { SearchService } from '../../+search-page/search-service/search.service'; +import { ViewMode } from '../../core/shared/view-mode.model'; +import { isEmpty } from '../empty.util'; +/** + * Component to switch between list and grid views. + */ +var ViewModeSwitchComponent = /** @class */ (function () { + function ViewModeSwitchComponent(searchService) { + this.searchService = searchService; + this.currentMode = ViewMode.List; + this.viewModeEnum = ViewMode; + } + ViewModeSwitchComponent.prototype.ngOnInit = function () { + var _this = this; + if (isEmpty(this.viewModeList)) { + this.viewModeList = [ViewMode.List, ViewMode.Grid]; + } + this.sub = this.searchService.getViewMode().subscribe(function (viewMode) { + _this.currentMode = viewMode; + }); + }; + ViewModeSwitchComponent.prototype.switchViewTo = function (viewMode) { + this.searchService.setViewMode(viewMode, this.getSearchLinkParts()); + }; + ViewModeSwitchComponent.prototype.ngOnDestroy = function () { + if (this.sub !== undefined) { + this.sub.unsubscribe(); + } + }; + ViewModeSwitchComponent.prototype.isToShow = function (viewMode) { + return this.viewModeList && this.viewModeList.includes(viewMode); + }; + /** + * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true + */ + ViewModeSwitchComponent.prototype.getSearchLink = function () { + if (this.inPlaceSearch) { + return './'; + } + return this.searchService.getSearchLink(); + }; + /** + * @returns {string[]} The base path to the search page, or the current page when inPlaceSearch is true, split in separate pieces + */ + ViewModeSwitchComponent.prototype.getSearchLinkParts = function () { + if (this.searchService) { + return []; + } + return this.getSearchLink().split('/'); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], ViewModeSwitchComponent.prototype, "viewModeList", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ViewModeSwitchComponent.prototype, "inPlaceSearch", void 0); + ViewModeSwitchComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-view-mode-switch', + styleUrls: ['./view-mode-switch.component.scss'], + templateUrl: './view-mode-switch.component.html' + }), + tslib_1.__metadata("design:paramtypes", [SearchService]) + ], ViewModeSwitchComponent); + return ViewModeSwitchComponent; +}()); +export { ViewModeSwitchComponent }; +//# sourceMappingURL=view-mode-switch.component.js.map \ No newline at end of file diff --git a/src/app/shared/view-mode-switch/view-mode-switch.component.js.map b/src/app/shared/view-mode-switch/view-mode-switch.component.js.map new file mode 100644 index 0000000000..b99873a402 --- /dev/null +++ b/src/app/shared/view-mode-switch/view-mode-switch.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"view-mode-switch.component.js","sourceRoot":"","sources":["view-mode-switch.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AAIpE,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AAMH;IAYE,iCAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QAJhD,gBAAW,GAAa,QAAQ,CAAC,IAAI,CAAC;QACtC,iBAAY,GAAG,QAAQ,CAAC;IAIxB,CAAC;IAED,0CAAQ,GAAR;QAAA,iBAQC;QAPC,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;SACpD;QAED,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,UAAC,QAAkB;YACvE,KAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,8CAAY,GAAZ,UAAa,QAAkB;QAC7B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,6CAAW,GAAX;QACE,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE;YAC1B,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IAED,0CAAQ,GAAR,UAAS,QAAkB;QACzB,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACI,+CAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,oDAAkB,GAAzB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAxDQ;QAAR,KAAK,EAAE;;iEAA0B;IAKzB;QAAR,KAAK,EAAE;;kEAAe;IANZ,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,mCAAmC,CAAC;YAChD,WAAW,EAAE,mCAAmC;SACjD,CAAC;iDAamC,aAAa;OAZrC,uBAAuB,CA2DnC;IAAD,8BAAC;CAAA,AA3DD,IA2DC;SA3DY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/view-mode.js b/src/app/shared/view-mode.js new file mode 100644 index 0000000000..e0388064ad --- /dev/null +++ b/src/app/shared/view-mode.js @@ -0,0 +1,12 @@ +/** + * Enum used for defining the view-mode of a set of elements + * List Display the elements in a (vertical) list + * Grid Display the elements in a grid + */ +export var SetViewMode; +(function (SetViewMode) { + SetViewMode["List"] = "list"; + SetViewMode["Grid"] = "grid"; + SetViewMode["Detail"] = "detail"; +})(SetViewMode || (SetViewMode = {})); +//# sourceMappingURL=view-mode.js.map \ No newline at end of file diff --git a/src/app/shared/view-mode.js.map b/src/app/shared/view-mode.js.map new file mode 100644 index 0000000000..f3ad498e92 --- /dev/null +++ b/src/app/shared/view-mode.js.map @@ -0,0 +1 @@ +{"version":3,"file":"view-mode.js","sourceRoot":"","sources":["view-mode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,gCAAiB,CAAA;AACnB,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB"} \ No newline at end of file diff --git a/src/app/store.actions.js b/src/app/store.actions.js new file mode 100644 index 0000000000..4ea7d6d1df --- /dev/null +++ b/src/app/store.actions.js @@ -0,0 +1,15 @@ +import { type } from './shared/ngrx/type'; +export var StoreActionTypes = { + REHYDRATE: type('dspace/ngrx/REHYDRATE'), + REPLAY: type('dspace/ngrx/REPLAY') +}; +var StoreAction = /** @class */ (function () { + // tslint:disable-next-line:no-shadowed-variable + function StoreAction(type, payload) { + this.type = type; + this.payload = payload; + } + return StoreAction; +}()); +export { StoreAction }; +//# sourceMappingURL=store.actions.js.map \ No newline at end of file diff --git a/src/app/store.actions.js.map b/src/app/store.actions.js.map new file mode 100644 index 0000000000..d50b60afed --- /dev/null +++ b/src/app/store.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"store.actions.js","sourceRoot":"","sources":["store.actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAI1C,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC9B,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC;IACxC,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC;CACnC,CAAC;AAEF;IAGE,gDAAgD;IAChD,qBAAY,IAAY,EAAE,OAA4B;QACpD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IACH,kBAAC;AAAD,CAAC,AARD,IAQC"} \ No newline at end of file diff --git a/src/app/store.effects.js b/src/app/store.effects.js new file mode 100644 index 0000000000..e0f28cf43c --- /dev/null +++ b/src/app/store.effects.js @@ -0,0 +1,37 @@ +import * as tslib_1 from "tslib"; +import { of as observableOf } from 'rxjs'; +import { map } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { Store } from '@ngrx/store'; +import { Actions, Effect, ofType } from '@ngrx/effects'; +import { StoreActionTypes } from './store.actions'; +import { HostWindowResizeAction } from './shared/host-window.actions'; +var StoreEffects = /** @class */ (function () { + function StoreEffects(actions, store) { + this.actions = actions; + this.store = store; + this.replay = this.actions.pipe(ofType(StoreActionTypes.REPLAY), map(function (replayAction) { + // TODO: should be able to replay all actions before the browser attempts to + // replayAction.payload.forEach((action: Action) => { + // this.store.dispatch(action); + // }); + return observableOf({}); + })); + this.resize = this.actions.pipe(ofType(StoreActionTypes.REPLAY, StoreActionTypes.REHYDRATE), map(function () { return new HostWindowResizeAction(window.innerWidth, window.innerHeight); })); + } + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], StoreEffects.prototype, "replay", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], StoreEffects.prototype, "resize", void 0); + StoreEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions, Store]) + ], StoreEffects); + return StoreEffects; +}()); +export { StoreEffects }; +//# sourceMappingURL=store.effects.js.map \ No newline at end of file diff --git a/src/app/store.effects.js.map b/src/app/store.effects.js.map new file mode 100644 index 0000000000..19d4491819 --- /dev/null +++ b/src/app/store.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"store.effects.js","sourceRoot":"","sources":["store.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAU,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAGtE;IAiBE,sBAAoB,OAAgB,EAAU,KAAsB;QAAhD,YAAO,GAAP,OAAO,CAAS;QAAU,UAAK,GAAL,KAAK,CAAiB;QAfvC,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CACrD,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAC/B,GAAG,CAAC,UAAC,YAAoB;YACvB,4EAA4E;YAC5E,qDAAqD;YACrD,iCAAiC;YACjC,MAAM;YACN,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC,CAAC;QAEI,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAClC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,SAAS,CAAC,EAC3D,GAAG,CAAC,cAAM,OAAA,IAAI,sBAAsB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,EAAjE,CAAiE,CAAC,CAC7E,CAAC;IAIF,CAAC;IAjB4B;QAA5B,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;;gDAQtB;IAEI;QAAT,MAAM,EAAE;;gDAGP;IAfS,YAAY;QADxB,UAAU,EAAE;iDAkBkB,OAAO,EAAiB,KAAK;OAjB/C,YAAY,CAqBxB;IAAD,mBAAC;CAAA,AArBD,IAqBC;SArBY,YAAY"} \ No newline at end of file diff --git a/src/app/submission/edit/submission-edit.component.js b/src/app/submission/edit/submission-edit.component.js new file mode 100644 index 0000000000..7b15c66572 --- /dev/null +++ b/src/app/submission/edit/submission-edit.component.js @@ -0,0 +1,91 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { filter, switchMap } from 'rxjs/operators'; +import { TranslateService } from '@ngx-translate/core'; +import { hasValue, isEmpty, isNotNull } from '../../shared/empty.util'; +import { SubmissionService } from '../submission.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +/** + * This component allows to edit an existing workspaceitem/workflowitem. + */ +var SubmissionEditComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} changeDetectorRef + * @param {NotificationsService} notificationsService + * @param {ActivatedRoute} route + * @param {Router} router + * @param {SubmissionService} submissionService + * @param {TranslateService} translate + */ + function SubmissionEditComponent(changeDetectorRef, notificationsService, route, router, submissionService, translate) { + this.changeDetectorRef = changeDetectorRef; + this.notificationsService = notificationsService; + this.route = route; + this.router = router; + this.submissionService = submissionService; + this.translate = translate; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subs = []; + } + /** + * Retrieve workspaceitem/workflowitem from server and initialize all instance variables + */ + SubmissionEditComponent.prototype.ngOnInit = function () { + var _this = this; + this.subs.push(this.route.paramMap.pipe(switchMap(function (params) { return _this.submissionService.retrieveSubmission(params.get('id')); }), + // NOTE new submission is retrieved on the browser side only, so get null on server side rendering + filter(function (submissionObjectRD) { return isNotNull(submissionObjectRD); })).subscribe(function (submissionObjectRD) { + if (submissionObjectRD.hasSucceeded) { + if (isEmpty(submissionObjectRD.payload)) { + _this.notificationsService.info(null, _this.translate.get('submission.general.cannot_submit')); + _this.router.navigate(['/mydspace']); + } + else { + _this.submissionId = submissionObjectRD.payload.id.toString(); + _this.collectionId = submissionObjectRD.payload.collection.id; + _this.selfUrl = submissionObjectRD.payload.self; + _this.sections = submissionObjectRD.payload.sections; + _this.submissionDefinition = submissionObjectRD.payload.submissionDefinition; + _this.changeDetectorRef.detectChanges(); + } + } + else { + if (submissionObjectRD.error.statusCode === 404) { + // redirect to not found page + _this.router.navigate(['/404'], { skipLocationChange: true }); + } + // TODO handle generic error + } + })); + }; + /** + * Unsubscribe from all subscriptions + */ + SubmissionEditComponent.prototype.ngOnDestroy = function () { + this.subs + .filter(function (sub) { return hasValue(sub); }) + .forEach(function (sub) { return sub.unsubscribe(); }); + }; + SubmissionEditComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-edit', + styleUrls: ['./submission-edit.component.scss'], + templateUrl: './submission-edit.component.html' + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + NotificationsService, + ActivatedRoute, + Router, + SubmissionService, + TranslateService]) + ], SubmissionEditComponent); + return SubmissionEditComponent; +}()); +export { SubmissionEditComponent }; +//# sourceMappingURL=submission-edit.component.js.map \ No newline at end of file diff --git a/src/app/submission/edit/submission-edit.component.js.map b/src/app/submission/edit/submission-edit.component.js.map new file mode 100644 index 0000000000..7cd5c8b0f2 --- /dev/null +++ b/src/app/submission/edit/submission-edit.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-edit.component.js","sourceRoot":"","sources":["submission-edit.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/form/collection/submission-form-collection.component.js b/src/app/submission/form/collection/submission-form-collection.component.js new file mode 100644 index 0000000000..654917ebd0 --- /dev/null +++ b/src/app/submission/form/collection/submission-form-collection.component.js @@ -0,0 +1,206 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, EventEmitter, HostListener, Input, Output } from '@angular/core'; +import { FormControl } from '@angular/forms'; +import { BehaviorSubject, combineLatest, of as observableOf } from 'rxjs'; +import { debounceTime, distinctUntilChanged, filter, find, flatMap, map, mergeMap, reduce, startWith } from 'rxjs/operators'; +import { CommunityDataService } from '../../../core/data/community-data.service'; +import { hasValue, isEmpty, isNotEmpty } from '../../../shared/empty.util'; +import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner'; +import { JsonPatchOperationsBuilder } from '../../../core/json-patch/builder/json-patch-operations-builder'; +import { SubmissionService } from '../../submission.service'; +import { SubmissionJsonPatchOperationsService } from '../../../core/submission/submission-json-patch-operations.service'; +/** + * This component allows to show the current collection the submission belonging to and to change it. + */ +var SubmissionFormCollectionComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} cdr + * @param {CommunityDataService} communityDataService + * @param {JsonPatchOperationsBuilder} operationsBuilder + * @param {SubmissionJsonPatchOperationsService} operationsService + * @param {SubmissionService} submissionService + */ + function SubmissionFormCollectionComponent(cdr, communityDataService, operationsBuilder, operationsService, submissionService) { + this.cdr = cdr; + this.communityDataService = communityDataService; + this.operationsBuilder = operationsBuilder; + this.operationsService = operationsService; + this.submissionService = submissionService; + /** + * An event fired when a different collection is selected. + * Event's payload equals to new SubmissionObject. + */ + this.collectionChange = new EventEmitter(); + /** + * A boolean representing if this dropdown button is disabled + * @type {BehaviorSubject} + */ + this.disabled$ = new BehaviorSubject(true); + /** + * The search form control + * @type {FormControl} + */ + this.searchField = new FormControl(); + /** + * A boolean representing if dropdown list is scrollable to the bottom + * @type {boolean} + */ + this.scrollableBottom = false; + /** + * A boolean representing if dropdown list is scrollable to the top + * @type {boolean} + */ + this.scrollableTop = false; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subs = []; + } + /** + * Method called on mousewheel event, it prevent the page scroll + * when arriving at the top/bottom of dropdown menu + * + * @param event + * mousewheel event + */ + SubmissionFormCollectionComponent.prototype.onMousewheel = function (event) { + if (event.wheelDelta > 0 && this.scrollableTop) { + event.preventDefault(); + } + if (event.wheelDelta < 0 && this.scrollableBottom) { + event.preventDefault(); + } + }; + /** + * Check if dropdown scrollbar is at the top or bottom of the dropdown list + * + * @param event + */ + SubmissionFormCollectionComponent.prototype.onScroll = function (event) { + this.scrollableBottom = (event.target.scrollTop + event.target.clientHeight === event.target.scrollHeight); + this.scrollableTop = (event.target.scrollTop === 0); + }; + /** + * Initialize collection list + */ + SubmissionFormCollectionComponent.prototype.ngOnChanges = function (changes) { + var _this = this; + if (hasValue(changes.currentCollectionId) + && hasValue(changes.currentCollectionId.currentValue)) { + this.selectedCollectionId = this.currentCollectionId; + // @TODO replace with search/top browse endpoint + // @TODO implement community/subcommunity hierarchy + var communities$ = this.communityDataService.findAll().pipe(find(function (communities) { return isNotEmpty(communities.payload); }), mergeMap(function (communities) { return communities.payload.page; })); + var listCollection$ = communities$.pipe(flatMap(function (communityData) { + return communityData.collections.pipe(find(function (collections) { return !collections.isResponsePending && collections.hasSucceeded; }), mergeMap(function (collections) { return collections.payload.page; }), filter(function (collectionData) { return isNotEmpty(collectionData); }), map(function (collectionData) { return ({ + communities: [{ id: communityData.id, name: communityData.name }], + collection: { id: collectionData.id, name: collectionData.name } + }); })); + }), reduce(function (acc, value) { return acc.concat(value); }, []), startWith([])); + this.selectedCollectionName$ = communities$.pipe(flatMap(function (communityData) { + return communityData.collections.pipe(find(function (collections) { return !collections.isResponsePending && collections.hasSucceeded; }), mergeMap(function (collections) { return collections.payload.page; }), filter(function (collectionData) { return isNotEmpty(collectionData); }), filter(function (collectionData) { return collectionData.id === _this.selectedCollectionId; }), map(function (collectionData) { return collectionData.name; })); + }), startWith('')); + var searchTerm$ = this.searchField.valueChanges.pipe(debounceTime(200), distinctUntilChanged(), startWith('')); + this.searchListCollection$ = combineLatest(searchTerm$, listCollection$).pipe(map(function (_a) { + var searchTerm = _a[0], listCollection = _a[1]; + _this.disabled$.next(isEmpty(listCollection)); + if (isEmpty(searchTerm)) { + return listCollection; + } + else { + return listCollection.filter(function (v) { return v.collection.name.toLowerCase().indexOf(searchTerm.toLowerCase()) > -1; }).slice(0, 5); + } + })); + } + }; + /** + * Initialize all instance variables + */ + SubmissionFormCollectionComponent.prototype.ngOnInit = function () { + this.pathCombiner = new JsonPatchOperationPathCombiner('sections', 'collection'); + }; + /** + * Unsubscribe from all subscriptions + */ + SubmissionFormCollectionComponent.prototype.ngOnDestroy = function () { + this.subs.filter(function (sub) { return hasValue(sub); }).forEach(function (sub) { return sub.unsubscribe(); }); + }; + /** + * Emit a [collectionChange] event when a new collection is selected from list + * + * @param event + * the selected [CollectionListEntryItem] + */ + SubmissionFormCollectionComponent.prototype.onSelect = function (event) { + var _this = this; + this.searchField.reset(); + this.disabled$.next(true); + this.operationsBuilder.replace(this.pathCombiner.getPath(), event.collection.id, true); + this.subs.push(this.operationsService.jsonPatchByResourceID(this.submissionService.getSubmissionObjectLinkName(), this.submissionId, 'sections', 'collection') + .subscribe(function (submissionObject) { + _this.selectedCollectionId = event.collection.id; + _this.selectedCollectionName$ = observableOf(event.collection.name); + _this.collectionChange.emit(submissionObject[0]); + _this.submissionService.changeSubmissionCollection(_this.submissionId, event.collection.id); + _this.disabled$.next(false); + _this.cdr.detectChanges(); + })); + }; + /** + * Reset search form control on dropdown menu close + */ + SubmissionFormCollectionComponent.prototype.onClose = function () { + this.searchField.reset(); + }; + /** + * Reset search form control when dropdown menu is closed + * + * @param isOpen + * Representing if the dropdown menu is open or not. + */ + SubmissionFormCollectionComponent.prototype.toggled = function (isOpen) { + if (!isOpen) { + this.searchField.reset(); + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionFormCollectionComponent.prototype, "currentCollectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionFormCollectionComponent.prototype, "currentDefinition", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SubmissionFormCollectionComponent.prototype, "submissionId", void 0); + tslib_1.__decorate([ + Output(), + tslib_1.__metadata("design:type", EventEmitter) + ], SubmissionFormCollectionComponent.prototype, "collectionChange", void 0); + tslib_1.__decorate([ + HostListener('mousewheel', ['$event']), + tslib_1.__metadata("design:type", Function), + tslib_1.__metadata("design:paramtypes", [Object]), + tslib_1.__metadata("design:returntype", void 0) + ], SubmissionFormCollectionComponent.prototype, "onMousewheel", null); + SubmissionFormCollectionComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-form-collection', + styleUrls: ['./submission-form-collection.component.scss'], + templateUrl: './submission-form-collection.component.html' + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + CommunityDataService, + JsonPatchOperationsBuilder, + SubmissionJsonPatchOperationsService, + SubmissionService]) + ], SubmissionFormCollectionComponent); + return SubmissionFormCollectionComponent; +}()); +export { SubmissionFormCollectionComponent }; +//# sourceMappingURL=submission-form-collection.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/collection/submission-form-collection.component.js.map b/src/app/submission/form/collection/submission-form-collection.component.js.map new file mode 100644 index 0000000000..8ceb4bbb25 --- /dev/null +++ b/src/app/submission/form/collection/submission-form-collection.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-form-collection.component.js","sourceRoot":"","sources":["submission-form-collection.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,KAAK,EAGL,MAAM,EAEP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAc,EAAE,IAAI,YAAY,EAAgB,MAAM,MAAM,CAAC;AACpG,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,MAAM,EACN,IAAI,EACJ,OAAO,EACP,GAAG,EACH,QAAQ,EACR,MAAM,EACN,SAAS,EACV,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE3E,OAAO,EAAE,8BAA8B,EAAE,MAAM,qEAAqE,CAAC;AACrH,OAAO,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAC;AAE5G,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAE,oCAAoC,EAAE,MAAM,mEAAmE,CAAC;AAkBzH;;GAEG;AAMH;IAgFE;;;;;;;;OAQG;IACH,2CAAsB,GAAsB,EACxB,oBAA0C,EAC1C,iBAA6C,EAC7C,iBAAuD,EACvD,iBAAoC;QAJlC,QAAG,GAAH,GAAG,CAAmB;QACxB,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,sBAAiB,GAAjB,iBAAiB,CAA4B;QAC7C,sBAAiB,GAAjB,iBAAiB,CAAsC;QACvD,sBAAiB,GAAjB,iBAAiB,CAAmB;QAzExD;;;WAGG;QACO,qBAAgB,GAAmC,IAAI,YAAY,EAAoB,CAAC;QAElG;;;WAGG;QACI,cAAS,GAAG,IAAI,eAAe,CAAU,IAAI,CAAC,CAAC;QAEtD;;;WAGG;QACI,gBAAW,GAAgB,IAAI,WAAW,EAAE,CAAC;QA0BpD;;;WAGG;QACK,qBAAgB,GAAG,KAAK,CAAC;QAEjC;;;WAGG;QACK,kBAAa,GAAG,KAAK,CAAC;QAE9B;;;WAGG;QACK,SAAI,GAAmB,EAAE,CAAC;IAgBlC,CAAC;IAED;;;;;;OAMG;IACqC,wDAAY,GAAZ,UAAa,KAAK;QACxD,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE;YAC9C,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;QACD,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACjD,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;IACH,CAAC;IAED;;;;OAIG;IACH,oDAAQ,GAAR,UAAS,KAAK;QACZ,IAAI,CAAC,gBAAgB,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,KAAK,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC3G,IAAI,CAAC,aAAa,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,uDAAW,GAAX,UAAY,OAAsB;QAAlC,iBAwDC;QAvDC,IAAI,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAAC;eACpC,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE;YACvD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAErD,gDAAgD;YAChD,mDAAmD;YACnD,IAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC,IAAI,CAC3D,IAAI,CAAC,UAAC,WAAiD,IAAK,OAAA,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,EAA/B,CAA+B,CAAC,EAC5F,QAAQ,CAAC,UAAC,WAAiD,IAAK,OAAA,WAAW,CAAC,OAAO,CAAC,IAAI,EAAxB,CAAwB,CAAC,CAAC,CAAC;YAE7F,IAAM,eAAe,GAAG,YAAY,CAAC,IAAI,CACvC,OAAO,CAAC,UAAC,aAAwB;gBAC/B,OAAO,aAAa,CAAC,WAAW,CAAC,IAAI,CACnC,IAAI,CAAC,UAAC,WAAkD,IAAK,OAAA,CAAC,WAAW,CAAC,iBAAiB,IAAI,WAAW,CAAC,YAAY,EAA1D,CAA0D,CAAC,EACxH,QAAQ,CAAC,UAAC,WAAkD,IAAK,OAAA,WAAW,CAAC,OAAO,CAAC,IAAI,EAAxB,CAAwB,CAAC,EAC1F,MAAM,CAAC,UAAC,cAA0B,IAAK,OAAA,UAAU,CAAC,cAAc,CAAC,EAA1B,CAA0B,CAAC,EAClE,GAAG,CAAC,UAAC,cAA0B,IAAK,OAAA,CAAC;oBACnC,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC;oBACjE,UAAU,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE;iBACjE,CAAC,EAHkC,CAGlC,CAAC,CACJ,CAAC;YACJ,CAAC,CAAC,EACF,MAAM,CAAC,UAAC,GAAQ,EAAE,KAAU,IAAK,OAAI,GAAG,QAAK,KAAK,GAAjB,CAAkB,EAAE,EAAE,CAAC,EACxD,SAAS,CAAC,EAAE,CAAC,CACd,CAAC;YAEF,IAAI,CAAC,uBAAuB,GAAG,YAAY,CAAC,IAAI,CAC9C,OAAO,CAAC,UAAC,aAAwB;gBAC/B,OAAO,aAAa,CAAC,WAAW,CAAC,IAAI,CACnC,IAAI,CAAC,UAAC,WAAkD,IAAK,OAAA,CAAC,WAAW,CAAC,iBAAiB,IAAI,WAAW,CAAC,YAAY,EAA1D,CAA0D,CAAC,EACxH,QAAQ,CAAC,UAAC,WAAkD,IAAK,OAAA,WAAW,CAAC,OAAO,CAAC,IAAI,EAAxB,CAAwB,CAAC,EAC1F,MAAM,CAAC,UAAC,cAA0B,IAAK,OAAA,UAAU,CAAC,cAAc,CAAC,EAA1B,CAA0B,CAAC,EAClE,MAAM,CAAC,UAAC,cAA0B,IAAK,OAAA,cAAc,CAAC,EAAE,KAAK,KAAI,CAAC,oBAAoB,EAA/C,CAA+C,CAAC,EACvF,GAAG,CAAC,UAAC,cAA0B,IAAK,OAAA,cAAc,CAAC,IAAI,EAAnB,CAAmB,CAAC,CACzD,CAAC;YACJ,CAAC,CAAC,EACF,SAAS,CAAC,EAAE,CAAC,CACd,CAAC;YAEF,IAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CACpD,YAAY,CAAC,GAAG,CAAC,EACjB,oBAAoB,EAAE,EACtB,SAAS,CAAC,EAAE,CAAC,CACd,CAAC;YAEF,IAAI,CAAC,qBAAqB,GAAG,aAAa,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC,IAAI,CAC3E,GAAG,CAAC,UAAC,EAA4B;oBAA3B,kBAAU,EAAE,sBAAc;gBAC9B,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC7C,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;oBACvB,OAAO,cAAc,CAAC;iBACvB;qBAAM;oBACL,OAAO,cAAc,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,EAAtE,CAAsE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;iBACxH;YACH,CAAC,CAAC,CAAC,CAAC;SACP;IACH,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,8BAA8B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACnF,CAAC;IAED;;OAEG;IACH,uDAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,GAAG,CAAC,EAAb,CAAa,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,WAAW,EAAE,EAAjB,CAAiB,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACH,oDAAQ,GAAR,UAAS,KAAK;QAAd,iBAkBC;QAjBC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACvF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CACzD,IAAI,CAAC,iBAAiB,CAAC,2BAA2B,EAAE,EACpD,IAAI,CAAC,YAAY,EACjB,UAAU,EACV,YAAY,CAAC;aACZ,SAAS,CAAC,UAAC,gBAAoC;YAC9C,KAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,KAAI,CAAC,uBAAuB,GAAG,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACnE,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,KAAI,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,KAAI,CAAC,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC1F,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,KAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC3B,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,mDAAO,GAAP;QACE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACH,mDAAO,GAAP,UAAQ,MAAe;QACrB,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;SAC1B;IACH,CAAC;IA1OQ;QAAR,KAAK,EAAE;;kFAA6B;IAM5B;QAAR,KAAK,EAAE;;gFAA2B;IAM1B;QAAR,KAAK,EAAE;;2EAAc;IAMZ;QAAT,MAAM,EAAE;0CAAmB,YAAY;+EAA0D;IA+E1D;QAAvC,YAAY,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;yEAOtC;IA9GU,iCAAiC;QAL7C,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,SAAS,EAAE,CAAC,6CAA6C,CAAC;YAC1D,WAAW,EAAE,6CAA6C;SAC3D,CAAC;iDA0F2B,iBAAiB;YACF,oBAAoB;YACvB,0BAA0B;YAC1B,oCAAoC;YACpC,iBAAiB;OA7F7C,iCAAiC,CAiP7C;IAAD,wCAAC;CAAA,AAjPD,IAiPC;SAjPY,iCAAiC"} \ No newline at end of file diff --git a/src/app/submission/form/footer/submission-form-footer.component.js b/src/app/submission/form/footer/submission-form-footer.component.js new file mode 100644 index 0000000000..5deed53113 --- /dev/null +++ b/src/app/submission/form/footer/submission-form-footer.component.js @@ -0,0 +1,88 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { map } from 'rxjs/operators'; +import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; +import { SubmissionRestService } from '../../../core/submission/submission-rest.service'; +import { SubmissionService } from '../../submission.service'; +import { SubmissionScopeType } from '../../../core/submission/submission-scope-type'; +import { isNotEmpty } from '../../../shared/empty.util'; +/** + * This component represents submission form footer bar. + */ +var SubmissionFormFooterComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {NgbModal} modalService + * @param {SubmissionRestService} restService + * @param {SubmissionService} submissionService + */ + function SubmissionFormFooterComponent(modalService, restService, submissionService) { + this.modalService = modalService; + this.restService = restService; + this.submissionService = submissionService; + /** + * A boolean representing if submission form is valid or not + * @type {Observable} + */ + this.submissionIsInvalid = observableOf(true); + } + /** + * Initialize all instance variables + */ + SubmissionFormFooterComponent.prototype.ngOnChanges = function (changes) { + if (isNotEmpty(this.submissionId)) { + this.submissionIsInvalid = this.submissionService.getSubmissionStatus(this.submissionId).pipe(map(function (isValid) { return isValid === false; })); + this.processingSaveStatus = this.submissionService.getSubmissionSaveProcessingStatus(this.submissionId); + this.processingDepositStatus = this.submissionService.getSubmissionDepositProcessingStatus(this.submissionId); + this.showDepositAndDiscard = observableOf(this.submissionService.getSubmissionScope() === SubmissionScopeType.WorkspaceItem); + } + }; + /** + * Dispatch a submission save action + */ + SubmissionFormFooterComponent.prototype.save = function (event) { + this.submissionService.dispatchSave(this.submissionId); + }; + /** + * Dispatch a submission save for later action + */ + SubmissionFormFooterComponent.prototype.saveLater = function (event) { + this.submissionService.dispatchSaveForLater(this.submissionId); + }; + /** + * Dispatch a submission deposit action + */ + SubmissionFormFooterComponent.prototype.deposit = function (event) { + this.submissionService.dispatchDeposit(this.submissionId); + }; + /** + * Dispatch a submission discard action + */ + SubmissionFormFooterComponent.prototype.confirmDiscard = function (content) { + var _this = this; + this.modalService.open(content).result.then(function (result) { + if (result === 'ok') { + _this.submissionService.dispatchDiscard(_this.submissionId); + } + }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionFormFooterComponent.prototype, "submissionId", void 0); + SubmissionFormFooterComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-form-footer', + styleUrls: ['./submission-form-footer.component.scss'], + templateUrl: './submission-form-footer.component.html' + }), + tslib_1.__metadata("design:paramtypes", [NgbModal, + SubmissionRestService, + SubmissionService]) + ], SubmissionFormFooterComponent); + return SubmissionFormFooterComponent; +}()); +export { SubmissionFormFooterComponent }; +//# sourceMappingURL=submission-form-footer.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/footer/submission-form-footer.component.js.map b/src/app/submission/form/footer/submission-form-footer.component.js.map new file mode 100644 index 0000000000..18e2f2d481 --- /dev/null +++ b/src/app/submission/form/footer/submission-form-footer.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-form-footer.component.js","sourceRoot":"","sources":["submission-form-footer.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAA4B,MAAM,eAAe,CAAC;AAE3E,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kDAAkD,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD;;GAEG;AAMH;IAgCE;;;;;;OAMG;IACH,uCAAoB,YAAsB,EACtB,WAAkC,EAClC,iBAAoC;QAFpC,iBAAY,GAAZ,YAAY,CAAU;QACtB,gBAAW,GAAX,WAAW,CAAuB;QAClC,sBAAiB,GAAjB,iBAAiB,CAAmB;QAfxD;;;WAGG;QACK,wBAAmB,GAAwB,YAAY,CAAC,IAAI,CAAC,CAAC;IAYtE,CAAC;IAED;;OAEG;IACH,mDAAW,GAAX,UAAY,OAAsB;QAChC,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YACjC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAC3F,GAAG,CAAC,UAAC,OAAgB,IAAK,OAAA,OAAO,KAAK,KAAK,EAAjB,CAAiB,CAAC,CAC7C,CAAC;YAEF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,iCAAiC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACxG,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,CAAC,oCAAoC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC9G,IAAI,CAAC,qBAAqB,GAAG,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,mBAAmB,CAAC,aAAa,CAAC,CAAC;SAC9H;IACH,CAAC;IAED;;OAEG;IACH,4CAAI,GAAJ,UAAK,KAAK;QACR,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,iDAAS,GAAT,UAAU,KAAK;QACb,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACI,+CAAO,GAAd,UAAe,KAAK;QAClB,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACI,sDAAc,GAArB,UAAsB,OAAO;QAA7B,iBAQC;QAPC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CACzC,UAAC,MAAM;YACL,IAAI,MAAM,KAAK,IAAI,EAAE;gBACnB,KAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,KAAI,CAAC,YAAY,CAAC,CAAA;aAC1D;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IArFQ;QAAR,KAAK,EAAE;;uEAAsB;IANnB,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;iDAwCkC,QAAQ;YACT,qBAAqB;YACf,iBAAiB;OAzC7C,6BAA6B,CA4FzC;IAAD,oCAAC;CAAA,AA5FD,IA4FC;SA5FY,6BAA6B"} \ No newline at end of file diff --git a/src/app/submission/form/section-add/submission-form-section-add.component.js b/src/app/submission/form/section-add/submission-form-section-add.component.js new file mode 100644 index 0000000000..86caab8914 --- /dev/null +++ b/src/app/submission/form/section-add/submission-form-section-add.component.js @@ -0,0 +1,57 @@ +import * as tslib_1 from "tslib"; +import { Component, Input, } from '@angular/core'; +import { map } from 'rxjs/operators'; +import { SectionsService } from '../../sections/sections.service'; +import { HostWindowService } from '../../../shared/host-window.service'; +import { SubmissionService } from '../../submission.service'; +/** + * This component allow to add any new section to submission form + */ +var SubmissionFormSectionAddComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {SectionsService} sectionService + * @param {SubmissionService} submissionService + * @param {HostWindowService} windowService + */ + function SubmissionFormSectionAddComponent(sectionService, submissionService, windowService) { + this.sectionService = sectionService; + this.submissionService = submissionService; + this.windowService = windowService; + } + /** + * Initialize all instance variables + */ + SubmissionFormSectionAddComponent.prototype.ngOnInit = function () { + this.sectionList$ = this.submissionService.getDisabledSectionsList(this.submissionId); + this.hasSections$ = this.sectionList$.pipe(map(function (list) { return list.length > 0; })); + }; + /** + * Dispatch an action to add a new section + */ + SubmissionFormSectionAddComponent.prototype.addSection = function (sectionId) { + this.sectionService.addSection(this.submissionId, sectionId); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionFormSectionAddComponent.prototype, "collectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionFormSectionAddComponent.prototype, "submissionId", void 0); + SubmissionFormSectionAddComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-form-section-add', + styleUrls: ['./submission-form-section-add.component.scss'], + templateUrl: './submission-form-section-add.component.html' + }), + tslib_1.__metadata("design:paramtypes", [SectionsService, + SubmissionService, + HostWindowService]) + ], SubmissionFormSectionAddComponent); + return SubmissionFormSectionAddComponent; +}()); +export { SubmissionFormSectionAddComponent }; +//# sourceMappingURL=submission-form-section-add.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/section-add/submission-form-section-add.component.js.map b/src/app/submission/form/section-add/submission-form-section-add.component.js.map new file mode 100644 index 0000000000..a31408c7fd --- /dev/null +++ b/src/app/submission/form/section-add/submission-form-section-add.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-form-section-add.component.js","sourceRoot":"","sources":["submission-form-section-add.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,GAAW,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D;;GAEG;AAMH;IA0BE;;;;;;OAMG;IACH,2CAAoB,cAA+B,EAC/B,iBAAoC,EACrC,aAAgC;QAF/B,mBAAc,GAAd,cAAc,CAAiB;QAC/B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACrC,kBAAa,GAAb,aAAa,CAAmB;IACnD,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CACxC,GAAG,CAAC,UAAC,IAAyB,IAAK,OAAA,IAAI,CAAC,MAAM,GAAG,CAAC,EAAf,CAAe,CAAC,CACpD,CAAA;IACH,CAAC;IAED;;OAEG;IACH,sDAAU,GAAV,UAAW,SAAS;QAClB,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IA/CQ;QAAR,KAAK,EAAE;;2EAAsB;IAMrB;QAAR,KAAK,EAAE;;2EAAsB;IAZnB,iCAAiC;QAL7C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAE,8CAA8C,CAAE;YAC7D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAkCoC,eAAe;YACZ,iBAAiB;YACtB,iBAAiB;OAnCxC,iCAAiC,CAsD7C;IAAD,wCAAC;CAAA,AAtDD,IAsDC;SAtDY,iCAAiC"} \ No newline at end of file diff --git a/src/app/submission/form/submission-form.component.js b/src/app/submission/form/submission-form.component.js new file mode 100644 index 0000000000..086421219a --- /dev/null +++ b/src/app/submission/form/submission-form.component.js @@ -0,0 +1,158 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, Input } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { distinctUntilChanged, filter, flatMap, map } from 'rxjs/operators'; +import { hasValue, isNotEmpty } from '../../shared/empty.util'; +import { WorkspaceitemSectionsObject } from '../../core/submission/models/workspaceitem-sections.model'; +import { SubmissionDefinitionsModel } from '../../core/config/models/config-submission-definitions.model'; +import { SubmissionService } from '../submission.service'; +import { AuthService } from '../../core/auth/auth.service'; +import { HALEndpointService } from '../../core/shared/hal-endpoint.service'; +/** + * This component represents the submission form. + */ +var SubmissionFormComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {AuthService} authService + * @param {ChangeDetectorRef} changeDetectorRef + * @param {HALEndpointService} halService + * @param {SubmissionService} submissionService + */ + function SubmissionFormComponent(authService, changeDetectorRef, halService, submissionService) { + this.authService = authService; + this.changeDetectorRef = changeDetectorRef; + this.halService = halService; + this.submissionService = submissionService; + /** + * A boolean representing if a submission form is pending + * @type {Observable} + */ + this.loading = observableOf(true); + /** + * The uploader configuration options + * @type {UploaderOptions} + */ + this.uploadFilesOptions = { + url: '', + authToken: null, + disableMultipart: false, + itemAlias: null + }; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subs = []; + this.isActive = true; + } + /** + * Initialize all instance variables and retrieve form configuration + */ + SubmissionFormComponent.prototype.ngOnChanges = function (changes) { + var _this = this; + if (this.collectionId && this.submissionId) { + this.isActive = true; + // retrieve submission's section list + this.submissionSections = this.submissionService.getSubmissionObject(this.submissionId).pipe(filter(function () { return _this.isActive; }), map(function (submission) { return submission.isLoading; }), map(function (isLoading) { return isLoading; }), distinctUntilChanged(), flatMap(function (isLoading) { + if (!isLoading) { + return _this.getSectionsList(); + } + else { + return observableOf([]); + } + })); + // check if is submission loading + this.loading = this.submissionService.getSubmissionObject(this.submissionId).pipe(filter(function () { return _this.isActive; }), map(function (submission) { return submission.isLoading; }), map(function (isLoading) { return isLoading; }), distinctUntilChanged()); + // init submission state + this.subs.push(this.halService.getEndpoint('workspaceitems').pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged()) + .subscribe(function (endpointURL) { + _this.uploadFilesOptions.authToken = _this.authService.buildAuthHeader(); + _this.uploadFilesOptions.url = endpointURL.concat("/" + _this.submissionId); + _this.definitionId = _this.submissionDefinition.name; + _this.submissionService.dispatchInit(_this.collectionId, _this.submissionId, _this.selfUrl, _this.submissionDefinition, _this.sections, null); + _this.changeDetectorRef.detectChanges(); + })); + // start auto save + this.submissionService.startAutoSave(this.submissionId); + } + }; + /** + * Unsubscribe from all subscriptions, destroy instance variables + * and reset submission state + */ + SubmissionFormComponent.prototype.ngOnDestroy = function () { + this.isActive = false; + this.submissionService.stopAutoSave(); + this.submissionService.resetAllSubmissionObjects(); + this.subs + .filter(function (subscription) { return hasValue(subscription); }) + .forEach(function (subscription) { return subscription.unsubscribe(); }); + }; + /** + * On collection change reset submission state in case of it has a different + * submission definition + * + * @param submissionObject + * new submission object + */ + SubmissionFormComponent.prototype.onCollectionChange = function (submissionObject) { + this.collectionId = submissionObject.collection.id; + if (this.definitionId !== submissionObject.submissionDefinition.name) { + this.sections = submissionObject.sections; + this.submissionDefinition = submissionObject.submissionDefinition; + this.definitionId = this.submissionDefinition.name; + this.submissionService.resetSubmissionObject(this.collectionId, this.submissionId, submissionObject.self, this.submissionDefinition, this.sections); + } + else { + this.changeDetectorRef.detectChanges(); + } + }; + /** + * Check if submission form is loading + */ + SubmissionFormComponent.prototype.isLoading = function () { + return this.loading; + }; + /** + * Check if submission form is loading + */ + SubmissionFormComponent.prototype.getSectionsList = function () { + return this.submissionService.getSubmissionSections(this.submissionId).pipe(filter(function (sections) { return isNotEmpty(sections); }), map(function (sections) { return sections; })); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionFormComponent.prototype, "collectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", WorkspaceitemSectionsObject) + ], SubmissionFormComponent.prototype, "sections", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionFormComponent.prototype, "selfUrl", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SubmissionDefinitionsModel) + ], SubmissionFormComponent.prototype, "submissionDefinition", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionFormComponent.prototype, "submissionId", void 0); + SubmissionFormComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-form', + styleUrls: ['./submission-form.component.scss'], + templateUrl: './submission-form.component.html', + }), + tslib_1.__metadata("design:paramtypes", [AuthService, + ChangeDetectorRef, + HALEndpointService, + SubmissionService]) + ], SubmissionFormComponent); + return SubmissionFormComponent; +}()); +export { SubmissionFormComponent }; +//# sourceMappingURL=submission-form.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/submission-form.component.js.map b/src/app/submission/form/submission-form.component.js.map new file mode 100644 index 0000000000..0632de842a --- /dev/null +++ b/src/app/submission/form/submission-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-form.component.js","sourceRoot":"","sources":["submission-form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/form/submission-upload-files/submission-upload-files.component.js b/src/app/submission/form/submission-upload-files/submission-upload-files.component.js new file mode 100644 index 0000000000..f65c017f5e --- /dev/null +++ b/src/app/submission/form/submission-upload-files/submission-upload-files.component.js @@ -0,0 +1,155 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { TranslateService } from '@ngx-translate/core'; +import { of as observableOf } from 'rxjs'; +import { first } from 'rxjs/operators'; +import { SectionsService } from '../../sections/sections.service'; +import { hasValue, isEmpty, isNotEmpty } from '../../../shared/empty.util'; +import { normalizeSectionData } from '../../../core/submission/submission-response-parsing.service'; +import { SubmissionService } from '../../submission.service'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { UploaderOptions } from '../../../shared/uploader/uploader-options.model'; +import parseSectionErrors from '../../utils/parseSectionErrors'; +import { SubmissionJsonPatchOperationsService } from '../../../core/submission/submission-json-patch-operations.service'; +/** + * This component represents the drop zone that provides to add files to the submission. + */ +var SubmissionUploadFilesComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {NotificationsService} notificationsService + * @param {SubmissionJsonPatchOperationsService} operationsService + * @param {SectionsService} sectionService + * @param {SubmissionService} submissionService + * @param {TranslateService} translate + */ + function SubmissionUploadFilesComponent(notificationsService, operationsService, sectionService, submissionService, translate) { + var _this = this; + this.notificationsService = notificationsService; + this.operationsService = operationsService; + this.sectionService = sectionService; + this.submissionService = submissionService; + this.translate = translate; + /** + * A boolean representing if is possible to active drop zone over the document page + * @type {boolean} + */ + this.enableDragOverDocument = true; + /** + * i18n message label + * @type {string} + */ + this.dropOverDocumentMsg = 'submission.sections.upload.drop-message'; + /** + * i18n message label + * @type {string} + */ + this.dropMsg = 'submission.sections.upload.drop-message'; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subs = []; + /** + * A boolean representing if upload functionality is enabled + * @type {boolean} + */ + this.uploadEnabled = observableOf(false); + /** + * Save submission before to upload a file + */ + this.onBeforeUpload = function () { + var sub = _this.operationsService.jsonPatchByResourceType(_this.submissionService.getSubmissionObjectLinkName(), _this.submissionId, 'sections') + .subscribe(); + _this.subs.push(sub); + return sub; + }; + } + /** + * Check if upload functionality is enabled + */ + SubmissionUploadFilesComponent.prototype.ngOnChanges = function () { + this.uploadEnabled = this.sectionService.isSectionAvailable(this.submissionId, this.sectionId); + }; + /** + * Parse the submission object retrieved from REST after upload + * + * @param workspaceitem + * The submission object retrieved from REST + */ + SubmissionUploadFilesComponent.prototype.onCompleteItem = function (workspaceitem) { + var _this = this; + // Checks if upload section is enabled so do upload + this.subs.push(this.uploadEnabled + .pipe(first()) + .subscribe(function (isUploadEnabled) { + if (isUploadEnabled) { + var sections_1 = workspaceitem.sections; + var errors = workspaceitem.errors; + var errorsList_1 = parseSectionErrors(errors); + if (sections_1 && isNotEmpty(sections_1)) { + Object.keys(sections_1) + .forEach(function (sectionId) { + var sectionData = normalizeSectionData(sections_1[sectionId]); + var sectionErrors = errorsList_1[sectionId]; + if (sectionId === 'upload') { + // Look for errors on upload + if ((isEmpty(sectionErrors))) { + _this.notificationsService.success(null, _this.translate.get('submission.sections.upload.upload-successful')); + } + else { + _this.notificationsService.error(null, _this.translate.get('submission.sections.upload.upload-failed')); + } + } + _this.sectionService.updateSectionData(_this.submissionId, sectionId, sectionData, sectionErrors); + }); + } + } + })); + }; + /** + * Show error notification on upload fails + */ + SubmissionUploadFilesComponent.prototype.onUploadError = function () { + this.notificationsService.error(null, this.translate.get('submission.sections.upload.upload-failed')); + }; + /** + * Unsubscribe from all subscriptions + */ + SubmissionUploadFilesComponent.prototype.ngOnDestroy = function () { + this.subs + .filter(function (subscription) { return hasValue(subscription); }) + .forEach(function (subscription) { return subscription.unsubscribe(); }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionUploadFilesComponent.prototype, "collectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionUploadFilesComponent.prototype, "submissionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionUploadFilesComponent.prototype, "sectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", UploaderOptions) + ], SubmissionUploadFilesComponent.prototype, "uploadFilesOptions", void 0); + SubmissionUploadFilesComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-upload-files', + templateUrl: './submission-upload-files.component.html', + }), + tslib_1.__metadata("design:paramtypes", [NotificationsService, + SubmissionJsonPatchOperationsService, + SectionsService, + SubmissionService, + TranslateService]) + ], SubmissionUploadFilesComponent); + return SubmissionUploadFilesComponent; +}()); +export { SubmissionUploadFilesComponent }; +//# sourceMappingURL=submission-upload-files.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/submission-upload-files/submission-upload-files.component.js.map b/src/app/submission/form/submission-upload-files/submission-upload-files.component.js.map new file mode 100644 index 0000000000..b34e999553 --- /dev/null +++ b/src/app/submission/form/submission-upload-files/submission-upload-files.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-upload-files.component.js","sourceRoot":"","sources":["submission-upload-files.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.actions.js b/src/app/submission/objects/submission-objects.actions.js new file mode 100644 index 0000000000..34cf2a3b7f --- /dev/null +++ b/src/app/submission/objects/submission-objects.actions.js @@ -0,0 +1,588 @@ +import { type } from '../../shared/ngrx/type'; +/** + * For each action type in an action group, make a simple + * enum object for all of this group's action types. + * + * The 'type' utility function coerces strings into string + * literal types and runs a simple check to guarantee all + * action types in the application are unique. + */ +export var SubmissionObjectActionTypes = { + // Section types + INIT_SUBMISSION_FORM: type('dspace/submission/INIT_SUBMISSION_FORM'), + RESET_SUBMISSION_FORM: type('dspace/submission/RESET_SUBMISSION_FORM'), + CANCEL_SUBMISSION_FORM: type('dspace/submission/CANCEL_SUBMISSION_FORM'), + COMPLETE_INIT_SUBMISSION_FORM: type('dspace/submission/COMPLETE_INIT_SUBMISSION_FORM'), + SAVE_FOR_LATER_SUBMISSION_FORM: type('dspace/submission/SAVE_FOR_LATER_SUBMISSION_FORM'), + SAVE_FOR_LATER_SUBMISSION_FORM_SUCCESS: type('dspace/submission/SAVE_FOR_LATER_SUBMISSION_FORM_SUCCESS'), + SAVE_FOR_LATER_SUBMISSION_FORM_ERROR: type('dspace/submission/SAVE_FOR_LATER_SUBMISSION_FORM_ERROR'), + SAVE_SUBMISSION_FORM: type('dspace/submission/SAVE_SUBMISSION_FORM'), + SAVE_SUBMISSION_FORM_SUCCESS: type('dspace/submission/SAVE_SUBMISSION_FORM_SUCCESS'), + SAVE_SUBMISSION_FORM_ERROR: type('dspace/submission/SAVE_SUBMISSION_FORM_ERROR'), + SAVE_SUBMISSION_SECTION_FORM: type('dspace/submission/SAVE_SUBMISSION_SECTION_FORM'), + SAVE_SUBMISSION_SECTION_FORM_SUCCESS: type('dspace/submission/SAVE_SUBMISSION_SECTION_FORM_SUCCESS'), + SAVE_SUBMISSION_SECTION_FORM_ERROR: type('dspace/submission/SAVE_SUBMISSION_SECTION_FORM_ERROR'), + CHANGE_SUBMISSION_COLLECTION: type('dspace/submission/CHANGE_SUBMISSION_COLLECTION'), + SET_ACTIVE_SECTION: type('dspace/submission/SET_ACTIVE_SECTION'), + INIT_SECTION: type('dspace/submission/INIT_SECTION'), + ENABLE_SECTION: type('dspace/submission/ENABLE_SECTION'), + DISABLE_SECTION: type('dspace/submission/DISABLE_SECTION'), + SECTION_STATUS_CHANGE: type('dspace/submission/SECTION_STATUS_CHANGE'), + SECTION_LOADING_STATUS_CHANGE: type('dspace/submission/SECTION_LOADING_STATUS_CHANGE'), + UPLOAD_SECTION_DATA: type('dspace/submission/UPLOAD_SECTION_DATA'), + SAVE_AND_DEPOSIT_SUBMISSION: type('dspace/submission/SAVE_AND_DEPOSIT_SUBMISSION'), + DEPOSIT_SUBMISSION: type('dspace/submission/DEPOSIT_SUBMISSION'), + DEPOSIT_SUBMISSION_SUCCESS: type('dspace/submission/DEPOSIT_SUBMISSION_SUCCESS'), + DEPOSIT_SUBMISSION_ERROR: type('dspace/submission/DEPOSIT_SUBMISSION_ERROR'), + DISCARD_SUBMISSION: type('dspace/submission/DISCARD_SUBMISSION'), + DISCARD_SUBMISSION_SUCCESS: type('dspace/submission/DISCARD_SUBMISSION_SUCCESS'), + DISCARD_SUBMISSION_ERROR: type('dspace/submission/DISCARD_SUBMISSION_ERROR'), + // Upload file types + NEW_FILE: type('dspace/submission/NEW_FILE'), + EDIT_FILE_DATA: type('dspace/submission/EDIT_FILE_DATA'), + DELETE_FILE: type('dspace/submission/DELETE_FILE'), + // Errors + ADD_SECTION_ERROR: type('dspace/submission/ADD_SECTION_ERROR'), + DELETE_SECTION_ERROR: type('dspace/submission/DELETE_SECTION_ERROR'), + REMOVE_SECTION_ERRORS: type('dspace/submission/REMOVE_SECTION_ERRORS'), +}; +/* tslint:disable:max-classes-per-file */ +/** + * Insert a new error of type SubmissionSectionError into the given section + * @param {string} submissionId + * @param {string} sectionId + * @param {SubmissionSectionError} error + */ +var InertSectionErrorsAction = /** @class */ (function () { + function InertSectionErrorsAction(submissionId, sectionId, error) { + this.type = SubmissionObjectActionTypes.ADD_SECTION_ERROR; + this.payload = { submissionId: submissionId, sectionId: sectionId, error: error }; + } + return InertSectionErrorsAction; +}()); +export { InertSectionErrorsAction }; +/** + * Delete a SubmissionSectionError from the given section + * @param {string} submissionId + * @param {string} sectionId + * @param {string | SubmissionSectionError} error + */ +var DeleteSectionErrorsAction = /** @class */ (function () { + function DeleteSectionErrorsAction(submissionId, sectionId, errors) { + this.type = SubmissionObjectActionTypes.DELETE_SECTION_ERROR; + this.payload = { submissionId: submissionId, sectionId: sectionId, errors: errors }; + } + return DeleteSectionErrorsAction; +}()); +export { DeleteSectionErrorsAction }; +// Section actions +var InitSectionAction = /** @class */ (function () { + /** + * Create a new InitSectionAction + * + * @param submissionId + * the submission's ID to remove + * @param sectionId + * the section's ID to add + * @param header + * the section's header + * @param config + * the section's config + * @param mandatory + * the section's mandatory + * @param sectionType + * the section's type + * @param visibility + * the section's visibility + * @param enabled + * the section's enabled state + * @param data + * the section's data + * @param errors + * the section's errors + */ + function InitSectionAction(submissionId, sectionId, header, config, mandatory, sectionType, visibility, enabled, data, errors) { + this.type = SubmissionObjectActionTypes.INIT_SECTION; + this.payload = { submissionId: submissionId, sectionId: sectionId, header: header, config: config, mandatory: mandatory, sectionType: sectionType, visibility: visibility, enabled: enabled, data: data, errors: errors }; + } + return InitSectionAction; +}()); +export { InitSectionAction }; +var EnableSectionAction = /** @class */ (function () { + /** + * Create a new EnableSectionAction + * + * @param submissionId + * the submission's ID to remove + * @param sectionId + * the section's ID to add + */ + function EnableSectionAction(submissionId, sectionId) { + this.type = SubmissionObjectActionTypes.ENABLE_SECTION; + this.payload = { submissionId: submissionId, sectionId: sectionId }; + } + return EnableSectionAction; +}()); +export { EnableSectionAction }; +var DisableSectionAction = /** @class */ (function () { + /** + * Create a new DisableSectionAction + * + * @param submissionId + * the submission's ID to remove + * @param sectionId + * the section's ID to remove + */ + function DisableSectionAction(submissionId, sectionId) { + this.type = SubmissionObjectActionTypes.DISABLE_SECTION; + this.payload = { submissionId: submissionId, sectionId: sectionId }; + } + return DisableSectionAction; +}()); +export { DisableSectionAction }; +var UpdateSectionDataAction = /** @class */ (function () { + /** + * Create a new EnableSectionAction + * + * @param submissionId + * the submission's ID to remove + * @param sectionId + * the section's ID to add + * @param data + * the section's data + * @param errors + * the section's errors + */ + function UpdateSectionDataAction(submissionId, sectionId, data, errors) { + this.type = SubmissionObjectActionTypes.UPLOAD_SECTION_DATA; + this.payload = { submissionId: submissionId, sectionId: sectionId, data: data, errors: errors }; + } + return UpdateSectionDataAction; +}()); +export { UpdateSectionDataAction }; +var RemoveSectionErrorsAction = /** @class */ (function () { + /** + * Create a new RemoveSectionErrorsAction + * + * @param submissionId + * the submission's ID to remove + * @param sectionId + * the section's ID to add + */ + function RemoveSectionErrorsAction(submissionId, sectionId) { + this.type = SubmissionObjectActionTypes.REMOVE_SECTION_ERRORS; + this.payload = { submissionId: submissionId, sectionId: sectionId }; + } + return RemoveSectionErrorsAction; +}()); +export { RemoveSectionErrorsAction }; +// Submission actions +var CompleteInitSubmissionFormAction = /** @class */ (function () { + /** + * Create a new CompleteInitSubmissionFormAction + * + * @param submissionId + * the submission's ID + */ + function CompleteInitSubmissionFormAction(submissionId) { + this.type = SubmissionObjectActionTypes.COMPLETE_INIT_SUBMISSION_FORM; + this.payload = { submissionId: submissionId }; + } + return CompleteInitSubmissionFormAction; +}()); +export { CompleteInitSubmissionFormAction }; +var InitSubmissionFormAction = /** @class */ (function () { + /** + * Create a new InitSubmissionFormAction + * + * @param collectionId + * the collection's Id where to deposit + * @param submissionId + * the submission's ID + * @param selfUrl + * the submission object url + * @param submissionDefinition + * the submission's sections definition + * @param sections + * the submission's sections + * @param errors + * the submission's sections errors + */ + function InitSubmissionFormAction(collectionId, submissionId, selfUrl, submissionDefinition, sections, errors) { + this.type = SubmissionObjectActionTypes.INIT_SUBMISSION_FORM; + this.payload = { collectionId: collectionId, submissionId: submissionId, selfUrl: selfUrl, submissionDefinition: submissionDefinition, sections: sections, errors: errors }; + } + return InitSubmissionFormAction; +}()); +export { InitSubmissionFormAction }; +var SaveForLaterSubmissionFormAction = /** @class */ (function () { + /** + * Create a new SaveForLaterSubmissionFormAction + * + * @param submissionId + * the submission's ID + */ + function SaveForLaterSubmissionFormAction(submissionId) { + this.type = SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM; + this.payload = { submissionId: submissionId }; + } + return SaveForLaterSubmissionFormAction; +}()); +export { SaveForLaterSubmissionFormAction }; +var SaveForLaterSubmissionFormSuccessAction = /** @class */ (function () { + /** + * Create a new SaveForLaterSubmissionFormSuccessAction + * + * @param submissionId + * the submission's ID + * @param submissionObject + * the submission's Object + */ + function SaveForLaterSubmissionFormSuccessAction(submissionId, submissionObject) { + this.type = SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM_SUCCESS; + this.payload = { submissionId: submissionId, submissionObject: submissionObject }; + } + return SaveForLaterSubmissionFormSuccessAction; +}()); +export { SaveForLaterSubmissionFormSuccessAction }; +var SaveForLaterSubmissionFormErrorAction = /** @class */ (function () { + /** + * Create a new SaveForLaterSubmissionFormErrorAction + * + * @param submissionId + * the submission's ID + */ + function SaveForLaterSubmissionFormErrorAction(submissionId) { + this.type = SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM_ERROR; + this.payload = { submissionId: submissionId }; + } + return SaveForLaterSubmissionFormErrorAction; +}()); +export { SaveForLaterSubmissionFormErrorAction }; +var SaveSubmissionFormAction = /** @class */ (function () { + /** + * Create a new SaveSubmissionFormAction + * + * @param submissionId + * the submission's ID + */ + function SaveSubmissionFormAction(submissionId) { + this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM; + this.payload = { submissionId: submissionId }; + } + return SaveSubmissionFormAction; +}()); +export { SaveSubmissionFormAction }; +var SaveSubmissionFormSuccessAction = /** @class */ (function () { + /** + * Create a new SaveSubmissionFormSuccessAction + * + * @param submissionId + * the submission's ID + * @param submissionObject + * the submission's Object + */ + function SaveSubmissionFormSuccessAction(submissionId, submissionObject) { + this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_SUCCESS; + this.payload = { submissionId: submissionId, submissionObject: submissionObject }; + } + return SaveSubmissionFormSuccessAction; +}()); +export { SaveSubmissionFormSuccessAction }; +var SaveSubmissionFormErrorAction = /** @class */ (function () { + /** + * Create a new SaveSubmissionFormErrorAction + * + * @param submissionId + * the submission's ID + */ + function SaveSubmissionFormErrorAction(submissionId) { + this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_ERROR; + this.payload = { submissionId: submissionId }; + } + return SaveSubmissionFormErrorAction; +}()); +export { SaveSubmissionFormErrorAction }; +var SaveSubmissionSectionFormAction = /** @class */ (function () { + /** + * Create a new SaveSubmissionSectionFormAction + * + * @param submissionId + * the submission's ID + * @param sectionId + * the section's ID + */ + function SaveSubmissionSectionFormAction(submissionId, sectionId) { + this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM; + this.payload = { submissionId: submissionId, sectionId: sectionId }; + } + return SaveSubmissionSectionFormAction; +}()); +export { SaveSubmissionSectionFormAction }; +var SaveSubmissionSectionFormSuccessAction = /** @class */ (function () { + /** + * Create a new SaveSubmissionSectionFormSuccessAction + * + * @param submissionId + * the submission's ID + * @param submissionObject + * the submission's Object + */ + function SaveSubmissionSectionFormSuccessAction(submissionId, submissionObject) { + this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_SUCCESS; + this.payload = { submissionId: submissionId, submissionObject: submissionObject }; + } + return SaveSubmissionSectionFormSuccessAction; +}()); +export { SaveSubmissionSectionFormSuccessAction }; +var SaveSubmissionSectionFormErrorAction = /** @class */ (function () { + /** + * Create a new SaveSubmissionFormErrorAction + * + * @param submissionId + * the submission's ID + */ + function SaveSubmissionSectionFormErrorAction(submissionId) { + this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_ERROR; + this.payload = { submissionId: submissionId }; + } + return SaveSubmissionSectionFormErrorAction; +}()); +export { SaveSubmissionSectionFormErrorAction }; +var ResetSubmissionFormAction = /** @class */ (function () { + /** + * Create a new ResetSubmissionFormAction + * + * @param collectionId + * the collection's Id where to deposit + * @param submissionId + * the submission's ID + * @param selfUrl + * the submission object url + * @param sections + * the submission's sections + * @param submissionDefinition + * the submission's form definition + */ + function ResetSubmissionFormAction(collectionId, submissionId, selfUrl, sections, submissionDefinition) { + this.type = SubmissionObjectActionTypes.RESET_SUBMISSION_FORM; + this.payload = { collectionId: collectionId, submissionId: submissionId, selfUrl: selfUrl, sections: sections, submissionDefinition: submissionDefinition }; + } + return ResetSubmissionFormAction; +}()); +export { ResetSubmissionFormAction }; +var CancelSubmissionFormAction = /** @class */ (function () { + function CancelSubmissionFormAction() { + this.type = SubmissionObjectActionTypes.CANCEL_SUBMISSION_FORM; + } + return CancelSubmissionFormAction; +}()); +export { CancelSubmissionFormAction }; +var ChangeSubmissionCollectionAction = /** @class */ (function () { + /** + * Create a new ChangeSubmissionCollectionAction + * + * @param submissionId + * the submission's ID + * @param collectionId + * the new collection's ID + */ + function ChangeSubmissionCollectionAction(submissionId, collectionId) { + this.type = SubmissionObjectActionTypes.CHANGE_SUBMISSION_COLLECTION; + this.payload = { submissionId: submissionId, collectionId: collectionId }; + } + return ChangeSubmissionCollectionAction; +}()); +export { ChangeSubmissionCollectionAction }; +var SaveAndDepositSubmissionAction = /** @class */ (function () { + /** + * Create a new SaveAndDepositSubmissionAction + * + * @param submissionId + * the submission's ID to deposit + */ + function SaveAndDepositSubmissionAction(submissionId) { + this.type = SubmissionObjectActionTypes.SAVE_AND_DEPOSIT_SUBMISSION; + this.payload = { submissionId: submissionId }; + } + return SaveAndDepositSubmissionAction; +}()); +export { SaveAndDepositSubmissionAction }; +var DepositSubmissionAction = /** @class */ (function () { + /** + * Create a new DepositSubmissionAction + * + * @param submissionId + * the submission's ID to deposit + */ + function DepositSubmissionAction(submissionId) { + this.type = SubmissionObjectActionTypes.DEPOSIT_SUBMISSION; + this.payload = { submissionId: submissionId }; + } + return DepositSubmissionAction; +}()); +export { DepositSubmissionAction }; +var DepositSubmissionSuccessAction = /** @class */ (function () { + /** + * Create a new DepositSubmissionSuccessAction + * + * @param submissionId + * the submission's ID to deposit + */ + function DepositSubmissionSuccessAction(submissionId) { + this.type = SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_SUCCESS; + this.payload = { submissionId: submissionId }; + } + return DepositSubmissionSuccessAction; +}()); +export { DepositSubmissionSuccessAction }; +var DepositSubmissionErrorAction = /** @class */ (function () { + /** + * Create a new DepositSubmissionErrorAction + * + * @param submissionId + * the submission's ID to deposit + */ + function DepositSubmissionErrorAction(submissionId) { + this.type = SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_ERROR; + this.payload = { submissionId: submissionId }; + } + return DepositSubmissionErrorAction; +}()); +export { DepositSubmissionErrorAction }; +var DiscardSubmissionAction = /** @class */ (function () { + /** + * Create a new DiscardSubmissionAction + * + * @param submissionId + * the submission's ID to discard + */ + function DiscardSubmissionAction(submissionId) { + this.type = SubmissionObjectActionTypes.DISCARD_SUBMISSION; + this.payload = { submissionId: submissionId }; + } + return DiscardSubmissionAction; +}()); +export { DiscardSubmissionAction }; +var DiscardSubmissionSuccessAction = /** @class */ (function () { + /** + * Create a new DiscardSubmissionSuccessAction + * + * @param submissionId + * the submission's ID to discard + */ + function DiscardSubmissionSuccessAction(submissionId) { + this.type = SubmissionObjectActionTypes.DISCARD_SUBMISSION_SUCCESS; + this.payload = { submissionId: submissionId }; + } + return DiscardSubmissionSuccessAction; +}()); +export { DiscardSubmissionSuccessAction }; +var DiscardSubmissionErrorAction = /** @class */ (function () { + /** + * Create a new DiscardSubmissionErrorAction + * + * @param submissionId + * the submission's ID to discard + */ + function DiscardSubmissionErrorAction(submissionId) { + this.type = SubmissionObjectActionTypes.DISCARD_SUBMISSION_ERROR; + this.payload = { submissionId: submissionId }; + } + return DiscardSubmissionErrorAction; +}()); +export { DiscardSubmissionErrorAction }; +var SectionStatusChangeAction = /** @class */ (function () { + /** + * Change the section validity status + * + * @param submissionId + * the submission's ID + * @param sectionId + * the section's ID to change + * @param status + * the section validity status (true if is valid) + */ + function SectionStatusChangeAction(submissionId, sectionId, status) { + this.type = SubmissionObjectActionTypes.SECTION_STATUS_CHANGE; + this.payload = { submissionId: submissionId, sectionId: sectionId, status: status }; + } + return SectionStatusChangeAction; +}()); +export { SectionStatusChangeAction }; +var SetActiveSectionAction = /** @class */ (function () { + /** + * Create a new SetActiveSectionAction + * + * @param submissionId + * the submission's ID + * @param sectionId + * the section's ID to active + */ + function SetActiveSectionAction(submissionId, sectionId) { + this.type = SubmissionObjectActionTypes.SET_ACTIVE_SECTION; + this.payload = { submissionId: submissionId, sectionId: sectionId }; + } + return SetActiveSectionAction; +}()); +export { SetActiveSectionAction }; +// Upload file actions +var NewUploadedFileAction = /** @class */ (function () { + /** + * Add a new uploaded file + * + * @param submissionId + * the submission's ID + * @param sectionId + * the section's ID + * @param fileId + * the file's ID + * @param data + * the metadata of the new bitstream + */ + function NewUploadedFileAction(submissionId, sectionId, fileId, data) { + this.type = SubmissionObjectActionTypes.NEW_FILE; + this.payload = { submissionId: submissionId, sectionId: sectionId, fileId: fileId, data: data }; + } + return NewUploadedFileAction; +}()); +export { NewUploadedFileAction }; +var EditFileDataAction = /** @class */ (function () { + /** + * Edit a file data + * + * @param submissionId + * the submission's ID + * @param sectionId + * the section's ID + * @param fileId + * the file's ID + * @param data + * the metadata of the new bitstream + */ + function EditFileDataAction(submissionId, sectionId, fileId, data) { + this.type = SubmissionObjectActionTypes.EDIT_FILE_DATA; + this.payload = { submissionId: submissionId, sectionId: sectionId, fileId: fileId, data: data }; + } + return EditFileDataAction; +}()); +export { EditFileDataAction }; +var DeleteUploadedFileAction = /** @class */ (function () { + /** + * Delete a uploaded file + * + * @param submissionId + * the submission's ID + * @param sectionId + * the section's ID + * @param fileId + * the file's ID + */ + function DeleteUploadedFileAction(submissionId, sectionId, fileId) { + this.type = SubmissionObjectActionTypes.DELETE_FILE; + this.payload = { submissionId: submissionId, sectionId: sectionId, fileId: fileId }; + } + return DeleteUploadedFileAction; +}()); +export { DeleteUploadedFileAction }; +//# sourceMappingURL=submission-objects.actions.js.map \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.actions.js.map b/src/app/submission/objects/submission-objects.actions.js.map new file mode 100644 index 0000000000..d4c512a1c4 --- /dev/null +++ b/src/app/submission/objects/submission-objects.actions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-objects.actions.js","sourceRoot":"","sources":["submission-objects.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.effects.js b/src/app/submission/objects/submission-objects.effects.js new file mode 100644 index 0000000000..f9cbab38f8 --- /dev/null +++ b/src/app/submission/objects/submission-objects.effects.js @@ -0,0 +1,273 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { Actions, Effect, ofType } from '@ngrx/effects'; +import { from as observableFrom, of as observableOf } from 'rxjs'; +import { catchError, map, mergeMap, switchMap, tap, withLatestFrom } from 'rxjs/operators'; +import { Store } from '@ngrx/store'; +import { union } from 'lodash'; +import { CompleteInitSubmissionFormAction, DepositSubmissionAction, DepositSubmissionErrorAction, DepositSubmissionSuccessAction, DiscardSubmissionErrorAction, DiscardSubmissionSuccessAction, InitSectionAction, InitSubmissionFormAction, SaveForLaterSubmissionFormSuccessAction, SaveSubmissionFormErrorAction, SaveSubmissionFormSuccessAction, SaveSubmissionSectionFormErrorAction, SaveSubmissionSectionFormSuccessAction, SubmissionObjectActionTypes, UpdateSectionDataAction } from './submission-objects.actions'; +import { SectionsService } from '../sections/sections.service'; +import { isEmpty, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; +import { SubmissionService } from '../submission.service'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { TranslateService } from '@ngx-translate/core'; +import parseSectionErrors from '../utils/parseSectionErrors'; +import { SectionsType } from '../sections/sections-type'; +import { SubmissionJsonPatchOperationsService } from '../../core/submission/submission-json-patch-operations.service'; +var SubmissionObjectEffects = /** @class */ (function () { + function SubmissionObjectEffects(actions$, notificationsService, operationsService, sectionService, store$, submissionService, translate) { + var _this = this; + this.actions$ = actions$; + this.notificationsService = notificationsService; + this.operationsService = operationsService; + this.sectionService = sectionService; + this.store$ = store$; + this.submissionService = submissionService; + this.translate = translate; + /** + * Dispatch a [InitSectionAction] for every submission sections and dispatch a [CompleteInitSubmissionFormAction] + */ + this.loadForm$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.INIT_SUBMISSION_FORM), map(function (action) { + var definition = action.payload.submissionDefinition; + var mappedActions = []; + definition.sections.page.forEach(function (sectionDefinition) { + var sectionId = sectionDefinition._links.self.substr(sectionDefinition._links.self.lastIndexOf('/') + 1); + var config = sectionDefinition._links.config || ''; + var enabled = (sectionDefinition.mandatory) || (isNotEmpty(action.payload.sections) && action.payload.sections.hasOwnProperty(sectionId)); + var sectionData = (isNotUndefined(action.payload.sections) && isNotUndefined(action.payload.sections[sectionId])) ? action.payload.sections[sectionId] : Object.create(null); + var sectionErrors = null; + mappedActions.push(new InitSectionAction(action.payload.submissionId, sectionId, sectionDefinition.header, config, sectionDefinition.mandatory, sectionDefinition.sectionType, sectionDefinition.visibility, enabled, sectionData, sectionErrors)); + }); + return { action: action, definition: definition, mappedActions: mappedActions }; + }), mergeMap(function (result) { + return observableFrom(result.mappedActions.concat(new CompleteInitSubmissionFormAction(result.action.payload.submissionId))); + })); + /** + * Dispatch a [InitSubmissionFormAction] + */ + this.resetForm$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.RESET_SUBMISSION_FORM), map(function (action) { + return new InitSubmissionFormAction(action.payload.collectionId, action.payload.submissionId, action.payload.selfUrl, action.payload.submissionDefinition, action.payload.sections, null); + })); + /** + * Dispatch a [SaveSubmissionFormSuccessAction] or a [SaveSubmissionFormErrorAction] on error + */ + this.saveSubmission$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM), switchMap(function (action) { + return _this.operationsService.jsonPatchByResourceType(_this.submissionService.getSubmissionObjectLinkName(), action.payload.submissionId, 'sections').pipe(map(function (response) { return new SaveSubmissionFormSuccessAction(action.payload.submissionId, response); }), catchError(function () { return observableOf(new SaveSubmissionFormErrorAction(action.payload.submissionId)); })); + })); + /** + * Dispatch a [SaveForLaterSubmissionFormSuccessAction] or a [SaveSubmissionFormErrorAction] on error + */ + this.saveForLaterSubmission$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM), switchMap(function (action) { + return _this.operationsService.jsonPatchByResourceType(_this.submissionService.getSubmissionObjectLinkName(), action.payload.submissionId, 'sections').pipe(map(function (response) { return new SaveForLaterSubmissionFormSuccessAction(action.payload.submissionId, response); }), catchError(function () { return observableOf(new SaveSubmissionFormErrorAction(action.payload.submissionId)); })); + })); + /** + * Call parseSaveResponse and dispatch actions + */ + this.saveSubmissionSuccess$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_SUCCESS, SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_SUCCESS), withLatestFrom(this.store$), map(function (_a) { + var action = _a[0], currentState = _a[1]; + return _this.parseSaveResponse(currentState.submission.objects[action.payload.submissionId], action.payload.submissionObject, action.payload.submissionId); + }), mergeMap(function (actions) { return observableFrom(actions); })); + /** + * Dispatch a [SaveSubmissionSectionFormSuccessAction] or a [SaveSubmissionSectionFormErrorAction] on error + */ + this.saveSection$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM), switchMap(function (action) { + return _this.operationsService.jsonPatchByResourceID(_this.submissionService.getSubmissionObjectLinkName(), action.payload.submissionId, 'sections', action.payload.sectionId).pipe(map(function (response) { return new SaveSubmissionSectionFormSuccessAction(action.payload.submissionId, response); }), catchError(function () { return observableOf(new SaveSubmissionSectionFormErrorAction(action.payload.submissionId)); })); + })); + /** + * Show a notification on error + */ + this.saveError$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_ERROR, SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_ERROR), withLatestFrom(this.store$), tap(function () { return _this.notificationsService.error(null, _this.translate.get('submission.sections.general.save_error_notice')); })); + /** + * Call parseSaveResponse and dispatch actions or dispatch [SaveSubmissionFormErrorAction] on error + */ + this.saveAndDeposit$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_AND_DEPOSIT_SUBMISSION), withLatestFrom(this.store$), switchMap(function (_a) { + var action = _a[0], currentState = _a[1]; + return _this.operationsService.jsonPatchByResourceType(_this.submissionService.getSubmissionObjectLinkName(), action.payload.submissionId, 'sections').pipe(map(function (response) { + if (_this.canDeposit(response)) { + return new DepositSubmissionAction(action.payload.submissionId); + } + else { + _this.notificationsService.warning(null, _this.translate.get('submission.sections.general.sections_not_valid')); + return _this.parseSaveResponse(currentState.submission.objects[action.payload.submissionId], response, action.payload.submissionId); + } + }), catchError(function () { return observableOf(new SaveSubmissionFormErrorAction(action.payload.submissionId)); })); + })); + /** + * Dispatch a [DepositSubmissionSuccessAction] or a [DepositSubmissionErrorAction] on error + */ + this.depositSubmission$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DEPOSIT_SUBMISSION), withLatestFrom(this.store$), switchMap(function (_a) { + var action = _a[0], state = _a[1]; + return _this.submissionService.depositSubmission(state.submission.objects[action.payload.submissionId].selfUrl).pipe(map(function () { return new DepositSubmissionSuccessAction(action.payload.submissionId); }), catchError(function () { return observableOf(new DepositSubmissionErrorAction(action.payload.submissionId)); })); + })); + /** + * Show a notification on success and redirect to MyDSpace page + */ + this.saveForLaterSubmissionSuccess$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM_SUCCESS), tap(function () { return _this.notificationsService.success(null, _this.translate.get('submission.sections.general.save_success_notice')); }), tap(function () { return _this.submissionService.redirectToMyDSpace(); })); + /** + * Show a notification on success and redirect to MyDSpace page + */ + this.depositSubmissionSuccess$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_SUCCESS), tap(function () { return _this.notificationsService.success(null, _this.translate.get('submission.sections.general.deposit_success_notice')); }), tap(function () { return _this.submissionService.redirectToMyDSpace(); })); + /** + * Show a notification on error + */ + this.depositSubmissionError$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_ERROR), tap(function () { return _this.notificationsService.error(null, _this.translate.get('submission.sections.general.deposit_error_notice')); })); + /** + * Dispatch a [DiscardSubmissionSuccessAction] or a [DiscardSubmissionErrorAction] on error + */ + this.discardSubmission$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DISCARD_SUBMISSION), switchMap(function (action) { + return _this.submissionService.discardSubmission(action.payload.submissionId).pipe(map(function () { return new DiscardSubmissionSuccessAction(action.payload.submissionId); }), catchError(function () { return observableOf(new DiscardSubmissionErrorAction(action.payload.submissionId)); })); + })); + /** + * Show a notification on success and redirect to MyDSpace page + */ + this.discardSubmissionSuccess$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DISCARD_SUBMISSION_SUCCESS), tap(function () { return _this.notificationsService.success(null, _this.translate.get('submission.sections.general.discard_success_notice')); }), tap(function () { return _this.submissionService.redirectToMyDSpace(); })); + /** + * Show a notification on error + */ + this.discardSubmissionError$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DISCARD_SUBMISSION_ERROR), tap(function () { return _this.notificationsService.error(null, _this.translate.get('submission.sections.general.discard_error_notice')); })); + } + /** + * Check if the submission object retrieved from REST haven't section errors + * + * @param response + * The submission object retrieved from REST + */ + SubmissionObjectEffects.prototype.canDeposit = function (response) { + var canDeposit = true; + if (isNotEmpty(response)) { + response.forEach(function (item) { + var errors = item.errors; + if (errors && !isEmpty(errors)) { + canDeposit = false; + } + }); + } + return canDeposit; + }; + /** + * Parse the submission object retrieved from REST and return actions to dispatch + * + * @param currentState + * The current SubmissionObjectEntry + * @param response + * The submission object retrieved from REST + * @param submissionId + * The submission id + * @param notify + * A boolean that indicate if show notification or not + * @return SubmissionObjectAction[] + * List of SubmissionObjectAction to dispatch + */ + SubmissionObjectEffects.prototype.parseSaveResponse = function (currentState, response, submissionId, notify) { + var _this = this; + if (notify === void 0) { notify = true; } + var mappedActions = []; + if (isNotEmpty(response)) { + if (notify) { + this.notificationsService.success(null, this.translate.get('submission.sections.general.save_success_notice')); + } + response.forEach(function (item) { + var errorsList = Object.create({}); + var errors = item.errors; + if (errors && !isEmpty(errors)) { + // to avoid dispatching an action for every error, create an array of errors per section + errorsList = parseSectionErrors(errors); + if (notify) { + _this.notificationsService.warning(null, _this.translate.get('submission.sections.general.sections_not_valid')); + } + } + var sections = (item.sections && isNotEmpty(item.sections)) ? item.sections : {}; + var sectionsKeys = union(Object.keys(sections), Object.keys(errorsList)); + for (var _i = 0, sectionsKeys_1 = sectionsKeys; _i < sectionsKeys_1.length; _i++) { + var sectionId = sectionsKeys_1[_i]; + var sectionErrors = errorsList[sectionId] || []; + var sectionData = sections[sectionId] || {}; + // When Upload section is disabled, add to submission only if there are files + if (currentState.sections[sectionId].sectionType === SectionsType.Upload + && isEmpty(sectionData.files) + && !currentState.sections[sectionId].enabled) { + continue; + } + if (notify && !currentState.sections[sectionId].enabled) { + _this.submissionService.notifyNewSection(submissionId, sectionId, currentState.sections[sectionId].sectionType); + } + mappedActions.push(new UpdateSectionDataAction(submissionId, sectionId, sectionData, sectionErrors)); + } + }); + } + return mappedActions; + }; + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "loadForm$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "resetForm$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "saveSubmission$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "saveForLaterSubmission$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "saveSubmissionSuccess$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "saveSection$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "saveError$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "saveAndDeposit$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "depositSubmission$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "saveForLaterSubmissionSuccess$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "depositSubmissionSuccess$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "depositSubmissionError$", void 0); + tslib_1.__decorate([ + Effect(), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "discardSubmission$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "discardSubmissionSuccess$", void 0); + tslib_1.__decorate([ + Effect({ dispatch: false }), + tslib_1.__metadata("design:type", Object) + ], SubmissionObjectEffects.prototype, "discardSubmissionError$", void 0); + SubmissionObjectEffects = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Actions, + NotificationsService, + SubmissionJsonPatchOperationsService, + SectionsService, + Store, + SubmissionService, + TranslateService]) + ], SubmissionObjectEffects); + return SubmissionObjectEffects; +}()); +export { SubmissionObjectEffects }; +//# sourceMappingURL=submission-objects.effects.js.map \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.effects.js.map b/src/app/submission/objects/submission-objects.effects.js.map new file mode 100644 index 0000000000..5b7289d37b --- /dev/null +++ b/src/app/submission/objects/submission-objects.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-objects.effects.js","sourceRoot":"","sources":["submission-objects.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.reducer.js b/src/app/submission/objects/submission-objects.reducer.js new file mode 100644 index 0000000000..efb0d114d0 --- /dev/null +++ b/src/app/submission/objects/submission-objects.reducer.js @@ -0,0 +1,617 @@ +import { hasValue, isNotEmpty, isNotNull, isUndefined } from '../../shared/empty.util'; +import { differenceWith, findKey, isEqual, uniqWith } from 'lodash'; +import { SubmissionObjectActionTypes } from './submission-objects.actions'; +var initialState = Object.create({}); +export function submissionObjectReducer(state, action) { + if (state === void 0) { state = initialState; } + switch (action.type) { + // submission form actions + case SubmissionObjectActionTypes.COMPLETE_INIT_SUBMISSION_FORM: { + return completeInit(state, action); + } + case SubmissionObjectActionTypes.INIT_SUBMISSION_FORM: { + return initSubmission(state, action); + } + case SubmissionObjectActionTypes.RESET_SUBMISSION_FORM: { + return resetSubmission(state, action); + } + case SubmissionObjectActionTypes.CANCEL_SUBMISSION_FORM: { + return initialState; + } + case SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM: + case SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM: + case SubmissionObjectActionTypes.SAVE_AND_DEPOSIT_SUBMISSION: + case SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM: { + return saveSubmission(state, action); + } + case SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_SUCCESS: + case SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_SUCCESS: + case SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_ERROR: + case SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM_ERROR: + case SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_ERROR: { + return completeSave(state, action); + } + case SubmissionObjectActionTypes.CHANGE_SUBMISSION_COLLECTION: { + return changeCollection(state, action); + } + case SubmissionObjectActionTypes.DEPOSIT_SUBMISSION: { + return startDeposit(state, action); + } + case SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_SUCCESS: { + return initialState; + } + case SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_ERROR: { + return endDeposit(state, action); + } + case SubmissionObjectActionTypes.DISCARD_SUBMISSION: { + return state; + } + case SubmissionObjectActionTypes.DISCARD_SUBMISSION_SUCCESS: { + return initialState; + } + case SubmissionObjectActionTypes.DISCARD_SUBMISSION_ERROR: { + return state; + } + case SubmissionObjectActionTypes.SET_ACTIVE_SECTION: { + return setActiveSection(state, action); + } + // Section actions + case SubmissionObjectActionTypes.INIT_SECTION: { + return initSection(state, action); + } + case SubmissionObjectActionTypes.ENABLE_SECTION: { + return changeSectionState(state, action, true); + } + case SubmissionObjectActionTypes.UPLOAD_SECTION_DATA: { + return updateSectionData(state, action); + } + case SubmissionObjectActionTypes.DISABLE_SECTION: { + return changeSectionState(state, action, false); + } + case SubmissionObjectActionTypes.SECTION_STATUS_CHANGE: { + return setIsValid(state, action); + } + // Files actions + case SubmissionObjectActionTypes.NEW_FILE: { + return newFile(state, action); + } + case SubmissionObjectActionTypes.EDIT_FILE_DATA: { + return editFileData(state, action); + } + case SubmissionObjectActionTypes.DELETE_FILE: { + return deleteFile(state, action); + } + // errors actions + case SubmissionObjectActionTypes.ADD_SECTION_ERROR: { + return addError(state, action); + } + case SubmissionObjectActionTypes.DELETE_SECTION_ERROR: { + return removeError(state, action); + } + case SubmissionObjectActionTypes.REMOVE_SECTION_ERRORS: { + return removeSectionErrors(state, action); + } + default: { + return state; + } + } +} +// ------ Submission error functions ------ // +var removeError = function (state, action) { + var _a, _b; + var _c = action.payload, submissionId = _c.submissionId, sectionId = _c.sectionId, errors = _c.errors; + if (hasValue(state[submissionId].sections[sectionId])) { + var filteredErrors = void 0; + if (Array.isArray(errors)) { + filteredErrors = differenceWith(errors, errors, isEqual); + } + else { + filteredErrors = state[submissionId].sections[sectionId].errors + .filter(function (currentError) { return currentError.path !== errors.path || !isEqual(currentError, errors); }); + } + return Object.assign({}, state, (_a = {}, + _a[submissionId] = Object.assign({}, state[submissionId], { + sections: Object.assign({}, state[submissionId].sections, (_b = {}, + _b[sectionId] = Object.assign({}, state[submissionId].sections[sectionId], { + errors: filteredErrors + }), + _b)) + }), + _a)); + } + else { + return state; + } +}; +var addError = function (state, action) { + var _a, _b; + var _c = action.payload, submissionId = _c.submissionId, sectionId = _c.sectionId, error = _c.error; + if (hasValue(state[submissionId].sections[sectionId])) { + var errors = uniqWith(state[submissionId].sections[sectionId].errors.concat(error), isEqual); + return Object.assign({}, state, (_a = {}, + _a[submissionId] = Object.assign({}, state[submissionId], { + activeSection: state[action.payload.submissionId].activeSection, sections: Object.assign({}, state[submissionId].sections, (_b = {}, + _b[sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { + errors: errors + }), + _b)), + }), + _a)); + } + else { + return state; + } +}; +/** + * Remove all section's errors. + * + * @param state + * the current state + * @param action + * an RemoveSectionErrorsAction + * @return SubmissionObjectState + * the new state, with the section's errors updated. + */ +function removeSectionErrors(state, action) { + var _a, _b; + if (isNotEmpty(state[action.payload.submissionId]) + && isNotEmpty(state[action.payload.submissionId].sections[action.payload.sectionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, + _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { + errors: [] + }), + _b)) + }), + _a)); + } + else { + return state; + } +} +// ------ Submission functions ------ // +/** + * Init a SubmissionObjectState. + * + * @param state + * the current state + * @param action + * an InitSubmissionFormAction | ResetSubmissionFormAction + * @return SubmissionObjectState + * the new state, with the section removed. + */ +function initSubmission(state, action) { + var newState = Object.assign({}, state); + newState[action.payload.submissionId] = { + collection: action.payload.collectionId, + definition: action.payload.submissionDefinition.name, + selfUrl: action.payload.selfUrl, + activeSection: null, + sections: Object.create(null), + isLoading: true, + savePending: false, + depositPending: false, + }; + return newState; +} +/** + * Reset submission. + * + * @param state + * the current state + * @param action + * an ResetSubmissionFormAction + * @return SubmissionObjectState + * the new state, with the section removed. + */ +function resetSubmission(state, action) { + var _a; + if (hasValue(state[action.payload.submissionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + sections: Object.create(null), + isLoading: true + }), + _a)); + } + else { + return state; + } +} +/** + * Set submission loading to false. + * + * @param state + * the current state + * @param action + * an CompleteInitSubmissionFormAction + * @return SubmissionObjectState + * the new state, with the section removed. + */ +function completeInit(state, action) { + var _a; + if (hasValue(state[action.payload.submissionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + isLoading: false + }), + _a)); + } + else { + return state; + } +} +/** + * Set submission save flag to true + * + * @param state + * the current state + * @param action + * an SaveSubmissionFormAction | SaveSubmissionSectionFormAction + * | SaveForLaterSubmissionFormAction | SaveAndDepositSubmissionAction + * @return SubmissionObjectState + * the new state, with the flag set to true. + */ +function saveSubmission(state, action) { + var _a; + if (hasValue(state[action.payload.submissionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + activeSection: state[action.payload.submissionId].activeSection, + sections: state[action.payload.submissionId].sections, + isLoading: state[action.payload.submissionId].isLoading, + savePending: true, + }), + _a)); + } + else { + return state; + } +} +/** + * Set submission save flag to false. + * + * @param state + * the current state + * @param action + * an SaveSubmissionFormSuccessAction | SaveForLaterSubmissionFormSuccessAction + * | SaveSubmissionSectionFormSuccessAction | SaveSubmissionFormErrorAction + * | SaveForLaterSubmissionFormErrorAction | SaveSubmissionSectionFormErrorAction + * @return SubmissionObjectState + * the new state, with the flag set to false. + */ +function completeSave(state, action) { + var _a; + if (hasValue(state[action.payload.submissionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + savePending: false, + }), + _a)); + } + else { + return state; + } +} +/** + * Set deposit flag to true + * + * @param state + * the current state + * @param action + * an DepositSubmissionAction + * @return SubmissionObjectState + * the new state, with the deposit flag changed. + */ +function startDeposit(state, action) { + var _a; + if (hasValue(state[action.payload.submissionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + savePending: false, + depositPending: true, + }), + _a)); + } + else { + return state; + } +} +/** + * Set deposit flag to false + * + * @param state + * the current state + * @param action + * an DepositSubmissionSuccessAction or DepositSubmissionErrorAction + * @return SubmissionObjectState + * the new state, with the deposit flag changed. + */ +function endDeposit(state, action) { + var _a; + if (hasValue(state[action.payload.submissionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + depositPending: false, + }), + _a)); + } + else { + return state; + } +} +/** + * Init a SubmissionObjectState. + * + * @param state + * the current state + * @param action + * an InitSubmissionFormAction + * @return SubmissionObjectState + * the new state, with the section removed. + */ +function changeCollection(state, action) { + var _a; + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + collection: action.payload.collectionId + }), + _a)); +} +// ------ Section functions ------ // +/** + * Set submission active section. + * + * @param state + * the current state + * @param action + * an SetActiveSectionAction + * @return SubmissionObjectState + * the new state, with the active section. + */ +function setActiveSection(state, action) { + var _a; + if (hasValue(state[action.payload.submissionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + activeSection: action.payload.sectionId, + sections: state[action.payload.submissionId].sections, + isLoading: state[action.payload.submissionId].isLoading, + savePending: state[action.payload.submissionId].savePending, + }), + _a)); + } + else { + return state; + } +} +/** + * Set a section enabled. + * + * @param state + * the current state + * @param action + * an InitSectionAction + * @return SubmissionObjectState + * the new state, with the section removed. + */ +function initSection(state, action) { + var _a, _b; + if (hasValue(state[action.payload.submissionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, + _b[action.payload.sectionId] = { + header: action.payload.header, + config: action.payload.config, + mandatory: action.payload.mandatory, + sectionType: action.payload.sectionType, + visibility: action.payload.visibility, + collapsed: false, + enabled: action.payload.enabled, + data: action.payload.data, + errors: action.payload.errors || [], + isLoading: false, + isValid: false + }, + _b)) + }), + _a)); + } + else { + return state; + } +} +/** + * Update section's data. + * + * @param state + * the current state + * @param action + * an UpdateSectionDataAction + * @return SubmissionObjectState + * the new state, with the section's data updated. + */ +function updateSectionData(state, action) { + var _a, _b; + if (isNotEmpty(state[action.payload.submissionId]) + && isNotEmpty(state[action.payload.submissionId].sections[action.payload.sectionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, + _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { + enabled: true, + data: action.payload.data, + errors: action.payload.errors + }), + _b)) + }), + _a)); + } + else { + return state; + } +} +/** + * Set a section state. + * + * @param state + * the current state + * @param action + * an DisableSectionAction + * @param enabled + * enabled or disabled section. + * @return SubmissionObjectState + * the new state, with the section removed. + */ +function changeSectionState(state, action, enabled) { + var _a, _b; + if (hasValue(state[action.payload.submissionId].sections[action.payload.sectionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + // sections: deleteProperty(state[ action.payload.submissionId ].sections, action.payload.sectionId), + sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, + _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { + enabled: enabled + }), + _b)) + }), + _a)); + } + else { + return state; + } +} +/** + * Set the section validity. + * + * @param state + * the current state + * @param action + * an SectionStatusChangeAction + * @return SubmissionObjectState + * the new state, with the section new validity status. + */ +function setIsValid(state, action) { + var _a, _b; + if (isNotEmpty(state[action.payload.submissionId]) && hasValue(state[action.payload.submissionId].sections[action.payload.sectionId])) { + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + sections: Object.assign({}, state[action.payload.submissionId].sections, Object.assign({}, (_b = {}, + _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { + isValid: action.payload.status + }), + _b))) + }), + _a)); + } + else { + return state; + } +} +// ------ Upload file functions ------ // +/** + * Set a new file. + * + * @param state + * the current state + * @param action + * a NewUploadedFileAction action + * @return SubmissionObjectState + * the new state, with the new file. + */ +function newFile(state, action) { + var _a, _b; + var filesData = state[action.payload.submissionId].sections[action.payload.sectionId].data; + var newData; + if (isUndefined(filesData.files)) { + newData = { + files: [action.payload.data] + }; + } + else { + newData = filesData; + newData.files.push(action.payload.data); + } + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, + _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { + enabled: true, + data: newData + }), + _b)) + }), + _a)); +} +/** + * Edit a file. + * + * @param state + * the current state + * @param action + * a EditFileDataAction action + * @return SubmissionObjectState + * the new state, with the edited file. + */ +function editFileData(state, action) { + var _a, _b; + var filesData = state[action.payload.submissionId].sections[action.payload.sectionId].data; + if (hasValue(filesData.files)) { + var fileIndex = findKey(filesData.files, { uuid: action.payload.fileId }); + if (isNotNull(fileIndex)) { + var newData = Array.from(filesData.files); + newData[fileIndex] = action.payload.data; + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + activeSection: state[action.payload.submissionId].activeSection, + sections: Object.assign({}, state[action.payload.submissionId].sections, Object.assign({}, (_b = {}, + _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { + data: Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId].data, { + files: newData + }) + }), + _b))), + isLoading: state[action.payload.submissionId].isLoading, + savePending: state[action.payload.submissionId].savePending, + }), + _a)); + } + } + return state; +} +/** + * Delete a file. + * + * @param state + * the current state + * @param action + * a DeleteUploadedFileAction action + * @return SubmissionObjectState + * the new state, with the file removed. + */ +function deleteFile(state, action) { + var _a, _b; + var filesData = state[action.payload.submissionId].sections[action.payload.sectionId].data; + if (hasValue(filesData.files)) { + var fileIndex = findKey(filesData.files, { uuid: action.payload.fileId }); + if (isNotNull(fileIndex)) { + var newData = Array.from(filesData.files); + newData.splice(fileIndex, 1); + return Object.assign({}, state, (_a = {}, + _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { + sections: Object.assign({}, state[action.payload.submissionId].sections, Object.assign({}, (_b = {}, + _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { + data: Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId].data, { + files: newData + }) + }), + _b))) + }), + _a)); + } + } + return state; +} +//# sourceMappingURL=submission-objects.reducer.js.map \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.reducer.js.map b/src/app/submission/objects/submission-objects.reducer.js.map new file mode 100644 index 0000000000..c27d97f32b --- /dev/null +++ b/src/app/submission/objects/submission-objects.reducer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-objects.reducer.js","sourceRoot":"","sources":["submission-objects.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/container/section-container.component.js b/src/app/submission/sections/container/section-container.component.js new file mode 100644 index 0000000000..3434aaef2c --- /dev/null +++ b/src/app/submission/sections/container/section-container.component.js @@ -0,0 +1,81 @@ +import * as tslib_1 from "tslib"; +import { Component, Injector, Input, ViewChild } from '@angular/core'; +import { SectionsDirective } from '../sections.directive'; +import { rendersSectionType } from '../sections-decorator'; +import { AlertType } from '../../../shared/alert/aletr-type'; +/** + * This component represents a section that contains the submission license form. + */ +var SubmissionSectionContainerComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {Injector} injector + */ + function SubmissionSectionContainerComponent(injector) { + this.injector = injector; + /** + * The AlertType enumeration + * @type {AlertType} + */ + this.AlertTypeEnum = AlertType; + } + /** + * Initialize all instance variables + */ + SubmissionSectionContainerComponent.prototype.ngOnInit = function () { + var _this = this; + this.objectInjector = Injector.create({ + providers: [ + { provide: 'collectionIdProvider', useFactory: function () { return (_this.collectionId); }, deps: [] }, + { provide: 'sectionDataProvider', useFactory: function () { return (_this.sectionData); }, deps: [] }, + { provide: 'submissionIdProvider', useFactory: function () { return (_this.submissionId); }, deps: [] }, + ], + parent: this.injector + }); + }; + /** + * Remove section from submission form + * + * @param event + * the event emitted + */ + SubmissionSectionContainerComponent.prototype.removeSection = function (event) { + event.preventDefault(); + event.stopPropagation(); + this.sectionRef.removeSection(this.submissionId, this.sectionData.id); + }; + /** + * Find the correct component based on the section's type + */ + SubmissionSectionContainerComponent.prototype.getSectionContent = function () { + return rendersSectionType(this.sectionData.sectionType); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionContainerComponent.prototype, "collectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SubmissionSectionContainerComponent.prototype, "sectionData", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionContainerComponent.prototype, "submissionId", void 0); + tslib_1.__decorate([ + ViewChild('sectionRef'), + tslib_1.__metadata("design:type", SectionsDirective) + ], SubmissionSectionContainerComponent.prototype, "sectionRef", void 0); + SubmissionSectionContainerComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-section-container', + templateUrl: './section-container.component.html', + styleUrls: ['./section-container.component.scss'] + }), + tslib_1.__metadata("design:paramtypes", [Injector]) + ], SubmissionSectionContainerComponent); + return SubmissionSectionContainerComponent; +}()); +export { SubmissionSectionContainerComponent }; +//# sourceMappingURL=section-container.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/container/section-container.component.js.map b/src/app/submission/sections/container/section-container.component.js.map new file mode 100644 index 0000000000..798d209204 --- /dev/null +++ b/src/app/submission/sections/container/section-container.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-container.component.js","sourceRoot":"","sources":["section-container.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,SAAS,EAAE,MAAM,eAAe,CAAC;AAE9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAE7D;;GAEG;AAMH;IAqCE;;;;OAIG;IACH,6CAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;QAtBtC;;;WAGG;QACI,kBAAa,GAAG,SAAS,CAAC;IAmBjC,CAAC;IAED;;OAEG;IACH,sDAAQ,GAAR;QAAA,iBASC;QARC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE;gBACT,EAAC,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,YAAY,CAAC,EAAnB,CAAmB,EAAE,IAAI,EAAE,EAAE,EAAC;gBAClF,EAAC,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,WAAW,CAAC,EAAlB,CAAkB,EAAE,IAAI,EAAE,EAAE,EAAC;gBAChF,EAAC,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,YAAY,CAAC,EAAnB,CAAmB,EAAE,IAAI,EAAE,EAAE,EAAC;aACnF;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,2DAAa,GAApB,UAAqB,KAAK;QACxB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,+DAAiB,GAAjB;QACE,OAAO,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;IAtEQ;QAAR,KAAK,EAAE;;6EAAsB;IAMrB;QAAR,KAAK,EAAE;;4EAAgC;IAM/B;QAAR,KAAK,EAAE;;6EAAsB;IAiBL;QAAxB,SAAS,CAAC,YAAY,CAAC;0CAAa,iBAAiB;2EAAC;IAnC5C,mCAAmC;QAL/C,SAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,WAAW,EAAE,oCAAoC;YACjD,SAAS,EAAE,CAAC,oCAAoC,CAAC;SAClD,CAAC;iDA2C8B,QAAQ;OA1C3B,mCAAmC,CA6E/C;IAAD,0CAAC;CAAA,AA7ED,IA6EC;SA7EY,mCAAmC"} \ No newline at end of file diff --git a/src/app/submission/sections/form/section-form-operations.service.js b/src/app/submission/sections/form/section-form-operations.service.js new file mode 100644 index 0000000000..03f5238222 --- /dev/null +++ b/src/app/submission/sections/form/section-form-operations.service.js @@ -0,0 +1,372 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { isEqual, isObject } from 'lodash'; +import { DYNAMIC_FORM_CONTROL_TYPE_ARRAY, DYNAMIC_FORM_CONTROL_TYPE_GROUP } from '@ng-dynamic-forms/core'; +import { isNotEmpty, isNotNull, isNotUndefined, isNull, isUndefined } from '../../../shared/empty.util'; +import { JsonPatchOperationsBuilder } from '../../../core/json-patch/builder/json-patch-operations-builder'; +import { FormFieldLanguageValueObject } from '../../../shared/form/builder/models/form-field-language-value.model'; +import { AuthorityValue } from '../../../core/integration/models/authority.value'; +import { FormBuilderService } from '../../../shared/form/builder/form-builder.service'; +import { FormFieldMetadataValueObject } from '../../../shared/form/builder/models/form-field-metadata-value.model'; +/** + * The service handling all form section operations + */ +var SectionFormOperationsService = /** @class */ (function () { + /** + * Initialize service variables + * + * @param {FormBuilderService} formBuilder + * @param {JsonPatchOperationsBuilder} operationsBuilder + */ + function SectionFormOperationsService(formBuilder, operationsBuilder) { + this.formBuilder = formBuilder; + this.operationsBuilder = operationsBuilder; + } + /** + * Dispatch properly method based on form operation type + * + * @param pathCombiner + * the [[JsonPatchOperationPathCombiner]] object for the specified operation + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @param previousValue + * the [[FormFieldPreviousValueObject]] for the specified operation + * @param hasStoredValue + * representing if field value related to the specified operation has stored value + */ + SectionFormOperationsService.prototype.dispatchOperationsFromEvent = function (pathCombiner, event, previousValue, hasStoredValue) { + switch (event.type) { + case 'remove': + this.dispatchOperationsFromRemoveEvent(pathCombiner, event, previousValue); + break; + case 'change': + this.dispatchOperationsFromChangeEvent(pathCombiner, event, previousValue, hasStoredValue); + break; + default: + break; + } + }; + /** + * Return index if specified field is part of fields array + * + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @return number + * the array index is part of array, zero otherwise + */ + SectionFormOperationsService.prototype.getArrayIndexFromEvent = function (event) { + var fieldIndex; + if (isNotEmpty(event)) { + if (isNull(event.context)) { + // Check whether model is part of an Array of group + if (this.isPartOfArrayOfGroup(event.model)) { + fieldIndex = event.model.parent.parent.index; + } + } + else { + fieldIndex = event.context.index; + } + } + // if field index is undefined model is not part of array of fields + return isNotUndefined(fieldIndex) ? fieldIndex : 0; + }; + /** + * Check if specified model is part of array of group + * + * @param model + * the [[DynamicFormControlModel]] model + * @return boolean + * true if is part of array, false otherwise + */ + SectionFormOperationsService.prototype.isPartOfArrayOfGroup = function (model) { + return (isNotNull(model.parent) + && model.parent.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP + && model.parent.parent + && model.parent.parent.context + && model.parent.parent.context.type === DYNAMIC_FORM_CONTROL_TYPE_ARRAY); + }; + /** + * Return a map for the values of a Qualdrop field + * + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @return Map + * the map of values + */ + SectionFormOperationsService.prototype.getQualdropValueMap = function (event) { + var metadataValueMap = new Map(); + var context = this.formBuilder.isQualdropGroup(event.model) + ? event.model.parent.context + : event.model.parent.parent.context; + context.groups.forEach(function (arrayModel) { + var groupModel = arrayModel.group[0]; + var metadataValueList = metadataValueMap.get(groupModel.qualdropId) ? metadataValueMap.get(groupModel.qualdropId) : []; + if (groupModel.value) { + metadataValueList.push(groupModel.value); + metadataValueMap.set(groupModel.qualdropId, metadataValueList); + } + }); + return metadataValueMap; + }; + /** + * Return the absolute path for the field interesting in the specified operation + * + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @return string + * the field path + */ + SectionFormOperationsService.prototype.getFieldPathFromEvent = function (event) { + var fieldIndex = this.getArrayIndexFromEvent(event); + var fieldId = this.getFieldPathSegmentedFromChangeEvent(event); + return (isNotUndefined(fieldIndex)) ? fieldId + '/' + fieldIndex : fieldId; + }; + /** + * Return the absolute path for the Qualdrop field interesting in the specified operation + * + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @return string + * the field path + */ + SectionFormOperationsService.prototype.getQualdropItemPathFromEvent = function (event) { + var fieldIndex = this.getArrayIndexFromEvent(event); + var metadataValueMap = new Map(); + var path = null; + var context = this.formBuilder.isQualdropGroup(event.model) + ? event.model.parent.context + : event.model.parent.parent.context; + context.groups.forEach(function (arrayModel, index) { + var groupModel = arrayModel.group[0]; + var metadataValueList = metadataValueMap.get(groupModel.qualdropId) ? metadataValueMap.get(groupModel.qualdropId) : []; + if (groupModel.value) { + metadataValueList.push(groupModel.value); + metadataValueMap.set(groupModel.qualdropId, metadataValueList); + } + if (index === fieldIndex) { + path = groupModel.qualdropId + '/' + (metadataValueMap.get(groupModel.qualdropId).length - 1); + } + }); + return path; + }; + /** + * Return the segmented path for the field interesting in the specified change operation + * + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @return string + * the field path + */ + SectionFormOperationsService.prototype.getFieldPathSegmentedFromChangeEvent = function (event) { + var fieldId; + if (this.formBuilder.isQualdropGroup(event.model)) { + fieldId = event.model.qualdropId; + } + else if (this.formBuilder.isQualdropGroup(event.model.parent)) { + fieldId = event.model.parent.qualdropId; + } + else { + fieldId = this.formBuilder.getId(event.model); + } + return fieldId; + }; + /** + * Return the value of the field interesting in the specified change operation + * + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @return any + * the field value + */ + SectionFormOperationsService.prototype.getFieldValueFromChangeEvent = function (event) { + var fieldValue; + var value = event.model.value; + if (this.formBuilder.isModelInCustomGroup(event.model)) { + fieldValue = event.model.parent.value; + } + else if (this.formBuilder.isRelationGroup(event.model)) { + fieldValue = event.model.getGroupValue(); + } + else if (event.model.hasLanguages) { + var language_1 = event.model.language; + if (event.model.hasAuthority) { + if (Array.isArray(value)) { + value.forEach(function (authority, index) { + authority = Object.assign(new AuthorityValue(), authority, { language: language_1 }); + value[index] = authority; + }); + fieldValue = value; + } + else { + fieldValue = Object.assign(new AuthorityValue(), value, { language: language_1 }); + } + } + else { + // Language without Authority (input, textArea) + fieldValue = new FormFieldMetadataValueObject(value, language_1); + } + } + else if (value instanceof FormFieldLanguageValueObject || value instanceof AuthorityValue || isObject(value)) { + fieldValue = value; + } + else { + fieldValue = new FormFieldMetadataValueObject(value); + } + return fieldValue; + }; + /** + * Return a map for the values of an array of field + * + * @param items + * the list of items + * @return Map + * the map of values + */ + SectionFormOperationsService.prototype.getValueMap = function (items) { + var metadataValueMap = new Map(); + items.forEach(function (item) { + Object.keys(item) + .forEach(function (key) { + var metadataValueList = metadataValueMap.get(key) ? metadataValueMap.get(key) : []; + metadataValueList.push(item[key]); + metadataValueMap.set(key, metadataValueList); + }); + }); + return metadataValueMap; + }; + /** + * Handle form remove operations + * + * @param pathCombiner + * the [[JsonPatchOperationPathCombiner]] object for the specified operation + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @param previousValue + * the [[FormFieldPreviousValueObject]] for the specified operation + */ + SectionFormOperationsService.prototype.dispatchOperationsFromRemoveEvent = function (pathCombiner, event, previousValue) { + var path = this.getFieldPathFromEvent(event); + var value = this.getFieldValueFromChangeEvent(event); + if (this.formBuilder.isQualdropGroup(event.model)) { + this.dispatchOperationsFromMap(this.getQualdropValueMap(event), pathCombiner, event, previousValue); + } + else if (isNotEmpty(value)) { + this.operationsBuilder.remove(pathCombiner.getPath(path)); + } + }; + /** + * Handle form change operations + * + * @param pathCombiner + * the [[JsonPatchOperationPathCombiner]] object for the specified operation + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @param previousValue + * the [[FormFieldPreviousValueObject]] for the specified operation + * @param hasStoredValue + * representing if field value related to the specified operation has stored value + */ + SectionFormOperationsService.prototype.dispatchOperationsFromChangeEvent = function (pathCombiner, event, previousValue, hasStoredValue) { + var path = this.getFieldPathFromEvent(event); + var segmentedPath = this.getFieldPathSegmentedFromChangeEvent(event); + var value = this.getFieldValueFromChangeEvent(event); + // Detect which operation must be dispatched + if (this.formBuilder.isQualdropGroup(event.model.parent)) { + // It's a qualdrup model + this.dispatchOperationsFromMap(this.getQualdropValueMap(event), pathCombiner, event, previousValue); + } + else if (this.formBuilder.isRelationGroup(event.model)) { + // It's a relation model + this.dispatchOperationsFromMap(this.getValueMap(value), pathCombiner, event, previousValue); + } + else if (this.formBuilder.hasArrayGroupValue(event.model)) { + // Model has as value an array, so dispatch an add operation with entire block of values + this.operationsBuilder.add(pathCombiner.getPath(segmentedPath), value, true); + } + else if (previousValue.isPathEqual(this.formBuilder.getPath(event.model)) || hasStoredValue) { + // Here model has a previous value changed or stored in the server + if (!value.hasValue()) { + // New value is empty, so dispatch a remove operation + if (this.getArrayIndexFromEvent(event) === 0) { + this.operationsBuilder.remove(pathCombiner.getPath(segmentedPath)); + } + else { + this.operationsBuilder.remove(pathCombiner.getPath(path)); + } + } + else { + // New value is not equal from the previous one, so dispatch a replace operation + this.operationsBuilder.replace(pathCombiner.getPath(path), value); + } + previousValue.delete(); + } + else if (value.hasValue()) { + // Here model has no previous value but a new one + if (isUndefined(this.getArrayIndexFromEvent(event)) + || this.getArrayIndexFromEvent(event) === 0) { + // Model is single field or is part of an array model but is the first item, + // so dispatch an add operation that initialize the values of a specific metadata + this.operationsBuilder.add(pathCombiner.getPath(segmentedPath), value, true); + } + else { + // Model is part of an array model but is not the first item, + // so dispatch an add operation that add a value to an existent metadata + this.operationsBuilder.add(pathCombiner.getPath(path), value); + } + } + }; + /** + * Handle form operations interesting a field with a map as value + * + * @param valueMap + * map of values + * @param pathCombiner + * the [[JsonPatchOperationPathCombiner]] object for the specified operation + * @param event + * the [[DynamicFormControlEvent]] for the specified operation + * @param previousValue + * the [[FormFieldPreviousValueObject]] for the specified operation + */ + SectionFormOperationsService.prototype.dispatchOperationsFromMap = function (valueMap, pathCombiner, event, previousValue) { + var _this = this; + var currentValueMap = valueMap; + if (event.type === 'remove') { + var path = this.getQualdropItemPathFromEvent(event); + this.operationsBuilder.remove(pathCombiner.getPath(path)); + } + else { + if (previousValue.isPathEqual(this.formBuilder.getPath(event.model))) { + previousValue.value.forEach(function (entry, index) { + var currentValue = currentValueMap.get(index); + if (currentValue) { + if (!isEqual(entry, currentValue)) { + _this.operationsBuilder.add(pathCombiner.getPath(index), currentValue, true); + } + currentValueMap.delete(index); + } + else if (!currentValue) { + _this.operationsBuilder.remove(pathCombiner.getPath(index)); + } + }); + } + currentValueMap.forEach(function (entry, index) { + if (entry.length === 1 && isNull(entry[0])) { + // The last item of the group has been deleted so make a remove op + _this.operationsBuilder.remove(pathCombiner.getPath(index)); + } + else { + _this.operationsBuilder.add(pathCombiner.getPath(index), entry, true); + } + }); + } + previousValue.delete(); + }; + SectionFormOperationsService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [FormBuilderService, + JsonPatchOperationsBuilder]) + ], SectionFormOperationsService); + return SectionFormOperationsService; +}()); +export { SectionFormOperationsService }; +//# sourceMappingURL=section-form-operations.service.js.map \ No newline at end of file diff --git a/src/app/submission/sections/form/section-form-operations.service.js.map b/src/app/submission/sections/form/section-form-operations.service.js.map new file mode 100644 index 0000000000..32d8584381 --- /dev/null +++ b/src/app/submission/sections/form/section-form-operations.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-form-operations.service.js","sourceRoot":"","sources":["section-form-operations.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/form/section-form.component.js b/src/app/submission/sections/form/section-form.component.js new file mode 100644 index 0000000000..63ab31a6d0 --- /dev/null +++ b/src/app/submission/sections/form/section-form.component.js @@ -0,0 +1,319 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, Inject, ViewChild } from '@angular/core'; +import { distinctUntilChanged, filter, find, flatMap, map, take, tap } from 'rxjs/operators'; +import { TranslateService } from '@ngx-translate/core'; +import { isEqual } from 'lodash'; +import { FormBuilderService } from '../../../shared/form/builder/form-builder.service'; +import { FormComponent } from '../../../shared/form/form.component'; +import { FormService } from '../../../shared/form/form.service'; +import { SectionModelComponent } from '../models/section.model'; +import { SubmissionFormsConfigService } from '../../../core/config/submission-forms-config.service'; +import { hasValue, isNotEmpty, isUndefined } from '../../../shared/empty.util'; +import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner'; +import { FormFieldPreviousValueObject } from '../../../shared/form/builder/models/form-field-previous-value-object'; +import { GLOBAL_CONFIG } from '../../../../config'; +import { renderSectionFor } from '../sections-decorator'; +import { SectionsType } from '../sections-type'; +import { SubmissionService } from '../../submission.service'; +import { SectionFormOperationsService } from './section-form-operations.service'; +import { NotificationsService } from '../../../shared/notifications/notifications.service'; +import { SectionsService } from '../sections.service'; +import { difference } from '../../../shared/object.util'; +/** + * This component represents a section that contains a Form. + */ +var SubmissionSectionformComponent = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionSectionformComponent, _super); + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} cdr + * @param {FormBuilderService} formBuilderService + * @param {SectionFormOperationsService} formOperationsService + * @param {FormService} formService + * @param {SubmissionFormsConfigService} formConfigService + * @param {NotificationsService} notificationsService + * @param {SectionsService} sectionService + * @param {SubmissionService} submissionService + * @param {TranslateService} translate + * @param {GlobalConfig} EnvConfig + * @param {string} injectedCollectionId + * @param {SectionDataObject} injectedSectionData + * @param {string} injectedSubmissionId + */ + function SubmissionSectionformComponent(cdr, formBuilderService, formOperationsService, formService, formConfigService, notificationsService, sectionService, submissionService, translate, EnvConfig, injectedCollectionId, injectedSectionData, injectedSubmissionId) { + var _this = _super.call(this, injectedCollectionId, injectedSectionData, injectedSubmissionId) || this; + _this.cdr = cdr; + _this.formBuilderService = formBuilderService; + _this.formOperationsService = formOperationsService; + _this.formService = formService; + _this.formConfigService = formConfigService; + _this.notificationsService = notificationsService; + _this.sectionService = sectionService; + _this.submissionService = submissionService; + _this.translate = translate; + _this.EnvConfig = EnvConfig; + _this.injectedCollectionId = injectedCollectionId; + _this.injectedSectionData = injectedSectionData; + _this.injectedSubmissionId = injectedSubmissionId; + /** + * A boolean representing if this section is updating + * @type {boolean} + */ + _this.isUpdating = false; + /** + * A boolean representing if this section is loading + * @type {boolean} + */ + _this.isLoading = true; + /** + * The form data + * @type {any} + */ + _this.formData = Object.create({}); + /** + * The [FormFieldPreviousValueObject] object + * @type {FormFieldPreviousValueObject} + */ + _this.previousValue = new FormFieldPreviousValueObject(); + /** + * The list of Subscription + * @type {Array} + */ + _this.subs = []; + return _this; + } + /** + * Initialize all instance variables and retrieve form configuration + */ + SubmissionSectionformComponent.prototype.onSectionInit = function () { + var _this = this; + this.pathCombiner = new JsonPatchOperationPathCombiner('sections', this.sectionData.id); + this.formId = this.formService.getUniqueId(this.sectionData.id); + this.formConfigService.getConfigByHref(this.sectionData.config).pipe(map(function (configData) { return configData.payload; }), tap(function (config) { return _this.formConfig = config; }), flatMap(function () { return _this.sectionService.getSectionData(_this.submissionId, _this.sectionData.id); }), take(1)) + .subscribe(function (sectionData) { + if (isUndefined(_this.formModel)) { + _this.sectionData.errors = []; + // Is the first loading so init form + _this.initForm(sectionData); + _this.sectionData.data = sectionData; + _this.subscriptions(); + _this.isLoading = false; + _this.cdr.detectChanges(); + } + }); + }; + /** + * Unsubscribe from all subscriptions + */ + SubmissionSectionformComponent.prototype.onSectionDestroy = function () { + this.subs + .filter(function (subscription) { return hasValue(subscription); }) + .forEach(function (subscription) { return subscription.unsubscribe(); }); + }; + /** + * Get section status + * + * @return Observable + * the section status + */ + SubmissionSectionformComponent.prototype.getSectionStatus = function () { + return this.formService.isValid(this.formId); + }; + /** + * Check if the section data has been enriched by the server + * + * @param sectionData + * the section data retrieved from the server + */ + SubmissionSectionformComponent.prototype.hasMetadataEnrichment = function (sectionData) { + var diffResult = []; + // compare current form data state with section data retrieved from store + var diffObj = difference(sectionData, this.formData); + // iterate over differences to check whether they are actually different + Object.keys(diffObj) + .forEach(function (key) { + diffObj[key].forEach(function (value) { + if (value.hasOwnProperty('value')) { + diffResult.push(value); + } + }); + }); + return isNotEmpty(diffResult); + }; + /** + * Initialize form model + * + * @param sectionData + * the section data retrieved from the server + */ + SubmissionSectionformComponent.prototype.initForm = function (sectionData) { + try { + this.formModel = this.formBuilderService.modelFromConfiguration(this.formConfig, this.collectionId, sectionData, this.submissionService.getSubmissionScope()); + } + catch (e) { + var msg = this.translate.instant('error.submission.sections.init-form-error') + e.toString(); + var sectionError = { + message: msg, + path: '/sections/' + this.sectionData.id + }; + this.sectionService.setSectionError(this.submissionId, this.sectionData.id, sectionError); + } + }; + /** + * Update form model + * + * @param sectionData + * the section data retrieved from the server + * @param errors + * the section errors retrieved from the server + */ + SubmissionSectionformComponent.prototype.updateForm = function (sectionData, errors) { + if (isNotEmpty(sectionData) && !isEqual(sectionData, this.sectionData.data)) { + this.sectionData.data = sectionData; + if (this.hasMetadataEnrichment(sectionData)) { + var msg = this.translate.instant('submission.sections.general.metadata-extracted', { sectionId: this.sectionData.id }); + this.notificationsService.info(null, msg, null, true); + this.isUpdating = true; + this.formModel = null; + this.cdr.detectChanges(); + this.initForm(sectionData); + this.checksForErrors(errors); + this.isUpdating = false; + this.cdr.detectChanges(); + } + else if (isNotEmpty(errors) || isNotEmpty(this.sectionData.errors)) { + this.checksForErrors(errors); + } + } + else if (isNotEmpty(errors) || isNotEmpty(this.sectionData.errors)) { + this.checksForErrors(errors); + } + }; + /** + * Check if there are form validation error retrieved from server + * + * @param errors + * the section errors retrieved from the server + */ + SubmissionSectionformComponent.prototype.checksForErrors = function (errors) { + var _this = this; + this.formService.isFormInitialized(this.formId).pipe(find(function (status) { return status === true && !_this.isUpdating; })) + .subscribe(function () { + _this.sectionService.checkSectionErrors(_this.submissionId, _this.sectionData.id, _this.formId, errors, _this.sectionData.errors); + _this.sectionData.errors = errors; + _this.cdr.detectChanges(); + }); + }; + /** + * Initialize all subscriptions + */ + SubmissionSectionformComponent.prototype.subscriptions = function () { + var _this = this; + this.subs.push( + /** + * Subscribe to form's data + */ + this.formService.getFormData(this.formId).pipe(distinctUntilChanged()) + .subscribe(function (formData) { + _this.formData = formData; + }), + /** + * Subscribe to section state + */ + this.sectionService.getSectionState(this.submissionId, this.sectionData.id).pipe(filter(function (sectionState) { + return isNotEmpty(sectionState) && (isNotEmpty(sectionState.data) || isNotEmpty(sectionState.errors)); + }), distinctUntilChanged()) + .subscribe(function (sectionState) { + _this.updateForm(sectionState.data, sectionState.errors); + })); + }; + /** + * Method called when a form dfChange event is fired. + * Dispatch form operations based on changes. + * + * @param event + * the [[DynamicFormControlEvent]] emitted + */ + SubmissionSectionformComponent.prototype.onChange = function (event) { + this.formOperationsService.dispatchOperationsFromEvent(this.pathCombiner, event, this.previousValue, this.hasStoredValue(this.formBuilderService.getId(event.model), this.formOperationsService.getArrayIndexFromEvent(event))); + var metadata = this.formOperationsService.getFieldPathSegmentedFromChangeEvent(event); + var value = this.formOperationsService.getFieldValueFromChangeEvent(event); + if (this.EnvConfig.submission.autosave.metadata.indexOf(metadata) !== -1 && isNotEmpty(value)) { + this.submissionService.dispatchSave(this.submissionId); + } + }; + /** + * Method called when a form dfFocus event is fired. + * Initialize [FormFieldPreviousValueObject] instance. + * + * @param event + * the [[DynamicFormControlEvent]] emitted + */ + SubmissionSectionformComponent.prototype.onFocus = function (event) { + var value = this.formOperationsService.getFieldValueFromChangeEvent(event); + var path = this.formBuilderService.getPath(event.model); + if (this.formBuilderService.hasMappedGroupValue(event.model)) { + this.previousValue.path = path; + this.previousValue.value = this.formOperationsService.getQualdropValueMap(event); + } + else if (isNotEmpty(value) && ((typeof value === 'object' && isNotEmpty(value.value)) || (typeof value === 'string'))) { + this.previousValue.path = path; + this.previousValue.value = value; + } + }; + /** + * Method called when a form remove event is fired. + * Dispatch form operations based on changes. + * + * @param event + * the [[DynamicFormControlEvent]] emitted + */ + SubmissionSectionformComponent.prototype.onRemove = function (event) { + this.formOperationsService.dispatchOperationsFromEvent(this.pathCombiner, event, this.previousValue, this.hasStoredValue(this.formBuilderService.getId(event.model), this.formOperationsService.getArrayIndexFromEvent(event))); + }; + /** + * Check if the specified form field has already a value stored + * + * @param fieldId + * the section data retrieved from the serverù + * @param index + * the section data retrieved from the server + */ + SubmissionSectionformComponent.prototype.hasStoredValue = function (fieldId, index) { + if (isNotEmpty(this.sectionData.data)) { + return this.sectionData.data.hasOwnProperty(fieldId) && isNotEmpty(this.sectionData.data[fieldId][index]); + } + else { + return false; + } + }; + tslib_1.__decorate([ + ViewChild('formRef'), + tslib_1.__metadata("design:type", FormComponent) + ], SubmissionSectionformComponent.prototype, "formRef", void 0); + SubmissionSectionformComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-section-form', + styleUrls: ['./section-form.component.scss'], + templateUrl: './section-form.component.html', + }), + renderSectionFor(SectionsType.SubmissionForm), + tslib_1.__param(9, Inject(GLOBAL_CONFIG)), + tslib_1.__param(10, Inject('collectionIdProvider')), + tslib_1.__param(11, Inject('sectionDataProvider')), + tslib_1.__param(12, Inject('submissionIdProvider')), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + FormBuilderService, + SectionFormOperationsService, + FormService, + SubmissionFormsConfigService, + NotificationsService, + SectionsService, + SubmissionService, + TranslateService, Object, String, Object, String]) + ], SubmissionSectionformComponent); + return SubmissionSectionformComponent; +}(SectionModelComponent)); +export { SubmissionSectionformComponent }; +//# sourceMappingURL=section-form.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/form/section-form.component.js.map b/src/app/submission/sections/form/section-form.component.js.map new file mode 100644 index 0000000000..cf4ecd0805 --- /dev/null +++ b/src/app/submission/sections/form/section-form.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-form.component.js","sourceRoot":"","sources":["section-form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/license/section-license.component.js b/src/app/submission/sections/license/section-license.component.js new file mode 100644 index 0000000000..e76ada3324 --- /dev/null +++ b/src/app/submission/sections/license/section-license.component.js @@ -0,0 +1,180 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, Inject, ViewChild } from '@angular/core'; +import { distinctUntilChanged, filter, find, flatMap, map, startWith, take } from 'rxjs/operators'; +import { SectionModelComponent } from '../models/section.model'; +import { JsonPatchOperationsBuilder } from '../../../core/json-patch/builder/json-patch-operations-builder'; +import { CollectionDataService } from '../../../core/data/collection-data.service'; +import { hasValue, isNotEmpty, isNotNull, isNotUndefined } from '../../../shared/empty.util'; +import { SECTION_LICENSE_FORM_LAYOUT, SECTION_LICENSE_FORM_MODEL } from './section-license.model'; +import { FormBuilderService } from '../../../shared/form/builder/form-builder.service'; +import { FormService } from '../../../shared/form/form.service'; +import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner'; +import { SectionsType } from '../sections-type'; +import { renderSectionFor } from '../sections-decorator'; +import { SubmissionService } from '../../submission.service'; +import { SectionsService } from '../sections.service'; +import { SectionFormOperationsService } from '../form/section-form-operations.service'; +import { FormComponent } from '../../../shared/form/form.component'; +/** + * This component represents a section that contains the submission license form. + */ +var SubmissionSectionLicenseComponent = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionSectionLicenseComponent, _super); + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} changeDetectorRef + * @param {CollectionDataService} collectionDataService + * @param {FormBuilderService} formBuilderService + * @param {SectionFormOperationsService} formOperationsService + * @param {FormService} formService + * @param {JsonPatchOperationsBuilder} operationsBuilder + * @param {SectionsService} sectionService + * @param {SubmissionService} submissionService + * @param {string} injectedCollectionId + * @param {SectionDataObject} injectedSectionData + * @param {string} injectedSubmissionId + */ + function SubmissionSectionLicenseComponent(changeDetectorRef, collectionDataService, formBuilderService, formOperationsService, formService, operationsBuilder, sectionService, submissionService, injectedCollectionId, injectedSectionData, injectedSubmissionId) { + var _this = _super.call(this, injectedCollectionId, injectedSectionData, injectedSubmissionId) || this; + _this.changeDetectorRef = changeDetectorRef; + _this.collectionDataService = collectionDataService; + _this.formBuilderService = formBuilderService; + _this.formOperationsService = formOperationsService; + _this.formService = formService; + _this.operationsBuilder = operationsBuilder; + _this.sectionService = sectionService; + _this.submissionService = submissionService; + _this.injectedCollectionId = injectedCollectionId; + _this.injectedSectionData = injectedSectionData; + _this.injectedSubmissionId = injectedSubmissionId; + /** + * The [[DynamicFormLayout]] object + * @type {DynamicFormLayout} + */ + _this.formLayout = SECTION_LICENSE_FORM_LAYOUT; + /** + * A boolean representing if to show form submit and cancel buttons + * @type {boolean} + */ + _this.displaySubmit = false; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + _this.subs = []; + return _this; + } + /** + * Initialize all instance variables and retrieve submission license + */ + SubmissionSectionLicenseComponent.prototype.onSectionInit = function () { + var _this = this; + this.pathCombiner = new JsonPatchOperationPathCombiner('sections', this.sectionData.id); + this.formId = this.formService.getUniqueId(this.sectionData.id); + this.formModel = this.formBuilderService.fromJSON(SECTION_LICENSE_FORM_MODEL); + var model = this.formBuilderService.findById('granted', this.formModel); + // Retrieve license accepted status + if (this.sectionData.data.granted) { + model.valueUpdates.next(true); + } + else { + model.valueUpdates.next(false); + } + this.licenseText$ = this.collectionDataService.findById(this.collectionId).pipe(filter(function (collectionData) { return isNotUndefined((collectionData.payload)); }), flatMap(function (collectionData) { return collectionData.payload.license; }), find(function (licenseData) { return isNotUndefined((licenseData.payload)); }), map(function (licenseData) { return licenseData.payload.text; }), startWith('')); + this.subs.push( + // Disable checkbox whether it's in workflow or item scope + this.sectionService.isSectionReadOnly(this.submissionId, this.sectionData.id, this.submissionService.getSubmissionScope()).pipe(take(1), filter(function (isReadOnly) { return isReadOnly; })) + .subscribe(function () { + model.disabledUpdates.next(true); + }), this.sectionService.getSectionErrors(this.submissionId, this.sectionData.id).pipe(filter(function (errors) { return isNotEmpty(errors); }), distinctUntilChanged()) + .subscribe(function (errors) { + // parse errors + var newErrors = errors.map(function (error) { + // When the error path is only on the section, + // replace it with the path to the form field to display error also on the form + if (error.path === '/sections/license') { + // check whether license is not accepted + if (!model.checked) { + return Object.assign({}, error, { path: '/sections/license/granted' }); + } + else { + return null; + } + } + else { + return error; + } + }).filter(function (error) { return isNotNull(error); }); + if (isNotEmpty(newErrors)) { + _this.sectionService.checkSectionErrors(_this.submissionId, _this.sectionData.id, _this.formId, newErrors); + _this.sectionData.errors = errors; + } + else { + // Remove any section's errors + _this.sectionService.dispatchRemoveSectionErrors(_this.submissionId, _this.sectionData.id); + } + _this.changeDetectorRef.detectChanges(); + })); + }; + /** + * Get section status + * + * @return Observable + * the section status + */ + SubmissionSectionLicenseComponent.prototype.getSectionStatus = function () { + var model = this.formBuilderService.findById('granted', this.formModel); + return model.valueUpdates.pipe(map(function (value) { return value === true; }), startWith(model.value)); + }; + /** + * Method called when a form dfChange event is fired. + * Dispatch form operations based on changes. + */ + SubmissionSectionLicenseComponent.prototype.onChange = function (event) { + var path = this.formOperationsService.getFieldPathSegmentedFromChangeEvent(event); + var value = this.formOperationsService.getFieldValueFromChangeEvent(event); + if (value) { + this.operationsBuilder.add(this.pathCombiner.getPath(path), value.value.toString(), false, true); + // Remove any section's errors + this.sectionService.dispatchRemoveSectionErrors(this.submissionId, this.sectionData.id); + } + else { + this.operationsBuilder.remove(this.pathCombiner.getPath(path)); + } + }; + /** + * Unsubscribe from all subscriptions + */ + SubmissionSectionLicenseComponent.prototype.onSectionDestroy = function () { + this.subs + .filter(function (subscription) { return hasValue(subscription); }) + .forEach(function (subscription) { return subscription.unsubscribe(); }); + }; + tslib_1.__decorate([ + ViewChild('formRef'), + tslib_1.__metadata("design:type", FormComponent) + ], SubmissionSectionLicenseComponent.prototype, "formRef", void 0); + SubmissionSectionLicenseComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-section-license', + styleUrls: ['./section-license.component.scss'], + templateUrl: './section-license.component.html', + }), + renderSectionFor(SectionsType.License), + tslib_1.__param(8, Inject('collectionIdProvider')), + tslib_1.__param(9, Inject('sectionDataProvider')), + tslib_1.__param(10, Inject('submissionIdProvider')), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + CollectionDataService, + FormBuilderService, + SectionFormOperationsService, + FormService, + JsonPatchOperationsBuilder, + SectionsService, + SubmissionService, String, Object, String]) + ], SubmissionSectionLicenseComponent); + return SubmissionSectionLicenseComponent; +}(SectionModelComponent)); +export { SubmissionSectionLicenseComponent }; +//# sourceMappingURL=section-license.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/license/section-license.component.js.map b/src/app/submission/sections/license/section-license.component.js.map new file mode 100644 index 0000000000..8903c8d5b8 --- /dev/null +++ b/src/app/submission/sections/license/section-license.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-license.component.js","sourceRoot":"","sources":["section-license.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/license/section-license.model.js b/src/app/submission/sections/license/section-license.model.js new file mode 100644 index 0000000000..e1f3cb796c --- /dev/null +++ b/src/app/submission/sections/license/section-license.model.js @@ -0,0 +1,26 @@ +export var SECTION_LICENSE_FORM_LAYOUT = { + granted: { + element: { + container: 'custom-control custom-checkbox pl-1', + control: 'custom-control-input', + label: 'custom-control-label pt-1' + } + } +}; +export var SECTION_LICENSE_FORM_MODEL = [ + { + id: 'granted', + label: 'I confirm the license above', + required: true, + value: false, + validators: { + required: null + }, + errorMessages: { + required: 'You must accept the license', + notgranted: 'You must accept the license' + }, + type: 'CHECKBOX', + } +]; +//# sourceMappingURL=section-license.model.js.map \ No newline at end of file diff --git a/src/app/submission/sections/license/section-license.model.js.map b/src/app/submission/sections/license/section-license.model.js.map new file mode 100644 index 0000000000..526cc61c58 --- /dev/null +++ b/src/app/submission/sections/license/section-license.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-license.model.js","sourceRoot":"","sources":["section-license.model.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,IAAM,2BAA2B,GAAG;IAEzC,OAAO,EAAE;QACP,OAAO,EAAE;YACP,SAAS,EAAE,qCAAqC;YAChD,OAAO,EAAE,sBAAsB;YAC/B,KAAK,EAAE,2BAA2B;SACnC;KACF;CACF,CAAC;AAEF,MAAM,CAAC,IAAM,0BAA0B,GAAG;IACxC;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,6BAA6B;QACpC,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE;YACV,QAAQ,EAAE,IAAI;SACf;QACD,aAAa,EAAE;YACb,QAAQ,EAAE,6BAA6B;YACvC,UAAU,EAAE,6BAA6B;SAC1C;QACD,IAAI,EAAE,UAAU;KACjB;CACF,CAAC"} \ No newline at end of file diff --git a/src/app/submission/sections/models/section-data.model.js b/src/app/submission/sections/models/section-data.model.js new file mode 100644 index 0000000000..eb0b06de2e --- /dev/null +++ b/src/app/submission/sections/models/section-data.model.js @@ -0,0 +1 @@ +//# sourceMappingURL=section-data.model.js.map \ No newline at end of file diff --git a/src/app/submission/sections/models/section-data.model.js.map b/src/app/submission/sections/models/section-data.model.js.map new file mode 100644 index 0000000000..567af326b4 --- /dev/null +++ b/src/app/submission/sections/models/section-data.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-data.model.js","sourceRoot":"","sources":["section-data.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/submission/sections/models/section.model.js b/src/app/submission/sections/models/section.model.js new file mode 100644 index 0000000000..187cc4c306 --- /dev/null +++ b/src/app/submission/sections/models/section.model.js @@ -0,0 +1,59 @@ +import * as tslib_1 from "tslib"; +import { Inject } from '@angular/core'; +import { filter, startWith } from 'rxjs/operators'; +import { hasValue, isNotUndefined } from '../../../shared/empty.util'; +/** + * An abstract model class for a submission edit form section. + */ +var SectionModelComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {string} injectedCollectionId + * @param {SectionDataObject} injectedSectionData + * @param {string} injectedSubmissionId + */ + function SectionModelComponent(injectedCollectionId, injectedSectionData, injectedSubmissionId) { + this.injectedCollectionId = injectedCollectionId; + this.injectedSectionData = injectedSectionData; + this.injectedSubmissionId = injectedSubmissionId; + this.collectionId = injectedCollectionId; + this.sectionData = injectedSectionData; + this.submissionId = injectedSubmissionId; + } + /** + * Call abstract methods on component init + */ + SectionModelComponent.prototype.ngOnInit = function () { + this.onSectionInit(); + this.updateSectionStatus(); + }; + /** + * Subscribe to section status + */ + SectionModelComponent.prototype.updateSectionStatus = function () { + var _this = this; + this.sectionStatusSub = this.getSectionStatus().pipe(filter(function (sectionStatus) { return isNotUndefined(sectionStatus); }), startWith(true)) + .subscribe(function (sectionStatus) { + _this.sectionService.setSectionStatus(_this.submissionId, _this.sectionData.id, sectionStatus); + }); + }; + /** + * Unsubscribe from all subscriptions and Call abstract methods on component destroy + */ + SectionModelComponent.prototype.ngOnDestroy = function () { + if (hasValue(this.sectionStatusSub)) { + this.sectionStatusSub.unsubscribe(); + } + this.onSectionDestroy(); + }; + SectionModelComponent = tslib_1.__decorate([ + tslib_1.__param(0, Inject('collectionIdProvider')), + tslib_1.__param(1, Inject('sectionDataProvider')), + tslib_1.__param(2, Inject('submissionIdProvider')), + tslib_1.__metadata("design:paramtypes", [String, Object, String]) + ], SectionModelComponent); + return SectionModelComponent; +}()); +export { SectionModelComponent }; +//# sourceMappingURL=section.model.js.map \ No newline at end of file diff --git a/src/app/submission/sections/models/section.model.js.map b/src/app/submission/sections/models/section.model.js.map new file mode 100644 index 0000000000..5ef727c430 --- /dev/null +++ b/src/app/submission/sections/models/section.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section.model.js","sourceRoot":"","sources":["section.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAInD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAMtE;;GAEG;AACH;IAiCE;;;;;;OAMG;IACH,+BAA0D,oBAA4B,EAC7B,mBAAsC,EACrC,oBAA4B;QAF5B,yBAAoB,GAApB,oBAAoB,CAAQ;QAC7B,wBAAmB,GAAnB,mBAAmB,CAAmB;QACrC,yBAAoB,GAApB,oBAAoB,CAAQ;QACpF,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,mBAAmB,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,wCAAQ,GAAR;QACE,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IA4BD;;OAEG;IACO,mDAAmB,GAA7B;QAAA,iBAOC;QANC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAClD,MAAM,CAAC,UAAC,aAAsB,IAAK,OAAA,cAAc,CAAC,aAAa,CAAC,EAA7B,CAA6B,CAAC,EACjE,SAAS,CAAC,IAAI,CAAC,CAAC;aACf,SAAS,CAAC,UAAC,aAAsB;YAChC,KAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAI,CAAC,YAAY,EAAE,KAAI,CAAC,WAAW,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAC9F,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,2CAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;YACnC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;SACrC;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAtGmB,qBAAqB;QAwCrB,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;QAC9B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAC7B,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;;OA1C9B,qBAAqB,CAuG1C;IAAD,4BAAC;CAAA,AAvGD,IAuGC;SAvGqB,qBAAqB"} \ No newline at end of file diff --git a/src/app/submission/sections/sections-decorator.js b/src/app/submission/sections/sections-decorator.js new file mode 100644 index 0000000000..05691450a1 --- /dev/null +++ b/src/app/submission/sections/sections-decorator.js @@ -0,0 +1,13 @@ +var submissionSectionsMap = new Map(); +export function renderSectionFor(sectionType) { + return function decorator(objectElement) { + if (!objectElement) { + return; + } + submissionSectionsMap.set(sectionType, objectElement); + }; +} +export function rendersSectionType(sectionType) { + return submissionSectionsMap.get(sectionType); +} +//# sourceMappingURL=sections-decorator.js.map \ No newline at end of file diff --git a/src/app/submission/sections/sections-decorator.js.map b/src/app/submission/sections/sections-decorator.js.map new file mode 100644 index 0000000000..7a701d3a29 --- /dev/null +++ b/src/app/submission/sections/sections-decorator.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sections-decorator.js","sourceRoot":"","sources":["sections-decorator.ts"],"names":[],"mappings":"AAGA,IAAM,qBAAqB,GAAG,IAAI,GAAG,EAAE,CAAC;AACxC,MAAM,2BAA2B,WAAyB;IACxD,OAAO,mBAAmB,aAAkB;QAC1C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,6BAA6B,WAAyB;IAC1D,OAAO,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AAChD,CAAC"} \ No newline at end of file diff --git a/src/app/submission/sections/sections-type.js b/src/app/submission/sections/sections-type.js new file mode 100644 index 0000000000..571af6569e --- /dev/null +++ b/src/app/submission/sections/sections-type.js @@ -0,0 +1,9 @@ +export var SectionsType; +(function (SectionsType) { + SectionsType["SubmissionForm"] = "submission-form"; + SectionsType["Upload"] = "upload"; + SectionsType["License"] = "license"; + SectionsType["CcLicense"] = "cclicense"; + SectionsType["collection"] = "collection"; +})(SectionsType || (SectionsType = {})); +//# sourceMappingURL=sections-type.js.map \ No newline at end of file diff --git a/src/app/submission/sections/sections-type.js.map b/src/app/submission/sections/sections-type.js.map new file mode 100644 index 0000000000..b69fa60447 --- /dev/null +++ b/src/app/submission/sections/sections-type.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sections-type.js","sourceRoot":"","sources":["sections-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,kDAAkC,CAAA;IAClC,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,uCAAuB,CAAA;IACvB,yCAAyB,CAAA;AAC3B,CAAC,EANW,YAAY,KAAZ,YAAY,QAMvB"} \ No newline at end of file diff --git a/src/app/submission/sections/sections.directive.js b/src/app/submission/sections/sections.directive.js new file mode 100644 index 0000000000..852def2db5 --- /dev/null +++ b/src/app/submission/sections/sections.directive.js @@ -0,0 +1,255 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Directive, Input } from '@angular/core'; +import { map } from 'rxjs/operators'; +import { uniq } from 'lodash'; +import { SectionsService } from './sections.service'; +import { hasValue, isNotEmpty, isNotNull } from '../../shared/empty.util'; +import parseSectionErrorPaths from '../utils/parseSectionErrorPaths'; +import { SubmissionService } from '../submission.service'; +/** + * Directive for handling generic section functionality + */ +var SectionsDirective = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} changeDetectorRef + * @param {SubmissionService} submissionService + * @param {SectionsService} sectionService + */ + function SectionsDirective(changeDetectorRef, submissionService, sectionService) { + this.changeDetectorRef = changeDetectorRef; + this.submissionService = submissionService; + this.sectionService = sectionService; + /** + * A boolean representing if section is mandatory + * @type {boolean} + */ + this.mandatory = true; + /** + * The list of generic errors related to the section + * @type {Array} + */ + this.genericSectionErrors = []; + /** + * The list of all errors related to the element belonging to this section + * @type {Array} + */ + this.allSectionErrors = []; + /** + * A boolean representing if section is active + * @type {boolean} + */ + this.active = true; + /** + * A boolean representing the panel collapsible state: opened (true) or closed (false) + * @type {boolean} + */ + this.sectionState = this.mandatory; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subs = []; + } + /** + * Initialize instance variables + */ + SectionsDirective.prototype.ngOnInit = function () { + var _this = this; + this.valid = this.sectionService.isSectionValid(this.submissionId, this.sectionId).pipe(map(function (valid) { + if (valid) { + _this.resetErrors(); + } + return valid; + })); + this.subs.push(this.sectionService.getSectionState(this.submissionId, this.sectionId).pipe(map(function (state) { return state.errors; })) + .subscribe(function (errors) { + if (isNotEmpty(errors)) { + errors.forEach(function (errorItem) { + var parsedErrors = parseSectionErrorPaths(errorItem.path); + parsedErrors.forEach(function (error) { + if (!error.fieldId) { + _this.genericSectionErrors = uniq(_this.genericSectionErrors.concat(errorItem.message)); + } + else { + _this.allSectionErrors.push(errorItem.message); + } + }); + }); + } + else { + _this.resetErrors(); + } + }), this.submissionService.getActiveSectionId(this.submissionId) + .subscribe(function (activeSectionId) { + var previousActive = _this.active; + _this.active = (activeSectionId === _this.sectionId); + if (previousActive !== _this.active) { + _this.changeDetectorRef.detectChanges(); + // If section is no longer active dispatch save action + if (!_this.active && isNotNull(activeSectionId)) { + _this.submissionService.dispatchSave(_this.submissionId); + } + } + })); + this.enabled = this.sectionService.isSectionEnabled(this.submissionId, this.sectionId); + }; + /** + * Unsubscribe from all subscriptions + */ + SectionsDirective.prototype.ngOnDestroy = function () { + this.subs + .filter(function (subscription) { return hasValue(subscription); }) + .forEach(function (subscription) { return subscription.unsubscribe(); }); + }; + /** + * Change section state + * + * @param event + * the event emitted + */ + SectionsDirective.prototype.sectionChange = function (event) { + this.sectionState = event.nextState; + }; + /** + * Check if section panel is open + * + * @returns {boolean} + * Returns true when section panel is open + */ + SectionsDirective.prototype.isOpen = function () { + return this.sectionState; + }; + /** + * Check if section is mandatory + * + * @returns {boolean} + * Returns true when section is mandatory + */ + SectionsDirective.prototype.isMandatory = function () { + return this.mandatory; + }; + /** + * Check if section panel is active + * + * @returns {boolean} + * Returns true when section panel is active + */ + SectionsDirective.prototype.isSectionActive = function () { + return this.active; + }; + /** + * Check if section is enabled + * + * @returns {Observable} + * Emits true whenever section is enabled + */ + SectionsDirective.prototype.isEnabled = function () { + return this.enabled; + }; + /** + * Check if section is valid + * + * @returns {Observable} + * Emits true whenever section is valid + */ + SectionsDirective.prototype.isValid = function () { + return this.valid; + }; + /** + * Remove section panel from submission form + * + * @param submissionId + * the submission id + * @param sectionId + * the section id + * @returns {Observable} + * Emits true whenever section is valid + */ + SectionsDirective.prototype.removeSection = function (submissionId, sectionId) { + this.sectionService.removeSection(submissionId, sectionId); + }; + /** + * Check if section has only generic errors + * + * @returns {boolean} + * Returns true when section has only generic errors + */ + SectionsDirective.prototype.hasGenericErrors = function () { + return this.genericSectionErrors && this.genericSectionErrors.length > 0; + }; + /** + * Check if section has errors + * + * @returns {boolean} + * Returns true when section has errors + */ + SectionsDirective.prototype.hasErrors = function () { + return (this.genericSectionErrors && this.genericSectionErrors.length > 0) || + (this.allSectionErrors && this.allSectionErrors.length > 0); + }; + /** + * Return section errors + * + * @returns {Array} + * Returns section errors list + */ + SectionsDirective.prototype.getErrors = function () { + return this.genericSectionErrors; + }; + /** + * Set form focus to this section panel + * + * @param event + * The event emitted + */ + SectionsDirective.prototype.setFocus = function (event) { + if (!this.active) { + this.submissionService.setActiveSection(this.submissionId, this.sectionId); + } + }; + /** + * Remove error from list + * + * @param index + * The error array key + */ + SectionsDirective.prototype.removeError = function (index) { + this.genericSectionErrors.splice(index); + }; + /** + * Remove all errors from list + */ + SectionsDirective.prototype.resetErrors = function () { + if (isNotEmpty(this.genericSectionErrors)) { + this.sectionService.dispatchRemoveSectionErrors(this.submissionId, this.sectionId); + } + this.genericSectionErrors = []; + this.allSectionErrors = []; + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], SectionsDirective.prototype, "mandatory", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SectionsDirective.prototype, "sectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SectionsDirective.prototype, "submissionId", void 0); + SectionsDirective = tslib_1.__decorate([ + Directive({ + selector: '[dsSection]', + exportAs: 'sectionRef' + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + SubmissionService, + SectionsService]) + ], SectionsDirective); + return SectionsDirective; +}()); +export { SectionsDirective }; +//# sourceMappingURL=sections.directive.js.map \ No newline at end of file diff --git a/src/app/submission/sections/sections.directive.js.map b/src/app/submission/sections/sections.directive.js.map new file mode 100644 index 0000000000..7fe4660110 --- /dev/null +++ b/src/app/submission/sections/sections.directive.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sections.directive.js","sourceRoot":"","sources":["sections.directive.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/sections.service.js b/src/app/submission/sections/sections.service.js new file mode 100644 index 0000000000..53c2a72c1f --- /dev/null +++ b/src/app/submission/sections/sections.service.js @@ -0,0 +1,309 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { combineLatest } from 'rxjs'; +import { distinctUntilChanged, filter, map, take } from 'rxjs/operators'; +import { Store } from '@ngrx/store'; +import { TranslateService } from '@ngx-translate/core'; +import { ScrollToService } from '@nicky-lenaers/ngx-scroll-to'; +import { isEqual } from 'lodash'; +import { hasValue, isEmpty, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; +import { DisableSectionAction, EnableSectionAction, InertSectionErrorsAction, RemoveSectionErrorsAction, SectionStatusChangeAction, UpdateSectionDataAction } from '../objects/submission-objects.actions'; +import { submissionObjectFromIdSelector, submissionSectionDataFromIdSelector, submissionSectionErrorsFromIdSelector, submissionSectionFromIdSelector } from '../selectors'; +import { SubmissionScopeType } from '../../core/submission/submission-scope-type'; +import parseSectionErrorPaths from '../utils/parseSectionErrorPaths'; +import { FormAddError, FormClearErrorsAction, FormRemoveErrorAction } from '../../shared/form/form.actions'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { SubmissionService } from '../submission.service'; +/** + * A service that provides methods used in submission process. + */ +var SectionsService = /** @class */ (function () { + /** + * Initialize service variables + * @param {NotificationsService} notificationsService + * @param {ScrollToService} scrollToService + * @param {SubmissionService} submissionService + * @param {Store} store + * @param {TranslateService} translate + */ + function SectionsService(notificationsService, scrollToService, submissionService, store, translate) { + this.notificationsService = notificationsService; + this.scrollToService = scrollToService; + this.submissionService = submissionService; + this.store = store; + this.translate = translate; + } + /** + * Compare the list of the current section errors with the previous one, + * and dispatch actions to add/remove to/from the section state + * + * @param submissionId + * The submission id + * @param sectionId + * The workspaceitem self url + * @param formId + * The [SubmissionDefinitionsModel] that define submission configuration + * @param currentErrors + * The [SubmissionSectionError] that define submission sections init data + * @param prevErrors + * The [SubmissionSectionError] that define submission sections init errors + */ + SectionsService.prototype.checkSectionErrors = function (submissionId, sectionId, formId, currentErrors, prevErrors) { + var _this = this; + if (prevErrors === void 0) { prevErrors = []; } + // Remove previous error list if the current is empty + if (isEmpty(currentErrors)) { + this.store.dispatch(new RemoveSectionErrorsAction(submissionId, sectionId)); + this.store.dispatch(new FormClearErrorsAction(formId)); + } + else if (!isEqual(currentErrors, prevErrors)) { // compare previous error list with the current one + var dispatchedErrors_1 = []; + // Itereate over the current error list + currentErrors.forEach(function (error) { + var errorPaths = parseSectionErrorPaths(error.path); + errorPaths.forEach(function (path) { + if (path.fieldId) { + var fieldId = path.fieldId.replace(/\./g, '_'); + // Dispatch action to add form error to the state; + var formAddErrorAction = new FormAddError(formId, fieldId, path.fieldIndex, error.message); + _this.store.dispatch(formAddErrorAction); + dispatchedErrors_1.push(fieldId); + } + }); + }); + // Itereate over the previous error list + prevErrors.forEach(function (error) { + var errorPaths = parseSectionErrorPaths(error.path); + errorPaths.forEach(function (path) { + if (path.fieldId) { + var fieldId = path.fieldId.replace(/\./g, '_'); + if (!dispatchedErrors_1.includes(fieldId)) { + // Dispatch action to remove form error from the state; + var formRemoveErrorAction = new FormRemoveErrorAction(formId, fieldId, path.fieldIndex); + _this.store.dispatch(formRemoveErrorAction); + } + } + }); + }); + } + }; + /** + * Dispatch a new [RemoveSectionErrorsAction] + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + */ + SectionsService.prototype.dispatchRemoveSectionErrors = function (submissionId, sectionId) { + this.store.dispatch(new RemoveSectionErrorsAction(submissionId, sectionId)); + }; + /** + * Return the data object for the specified section + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @return Observable + * observable of [WorkspaceitemSectionDataType] + */ + SectionsService.prototype.getSectionData = function (submissionId, sectionId) { + return this.store.select(submissionSectionDataFromIdSelector(submissionId, sectionId)).pipe(distinctUntilChanged()); + }; + /** + * Return the error list object data for the specified section + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @return Observable + * observable of array of [SubmissionSectionError] + */ + SectionsService.prototype.getSectionErrors = function (submissionId, sectionId) { + return this.store.select(submissionSectionErrorsFromIdSelector(submissionId, sectionId)).pipe(distinctUntilChanged()); + }; + /** + * Return the state object for the specified section + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @return Observable + * observable of [SubmissionSectionObject] + */ + SectionsService.prototype.getSectionState = function (submissionId, sectionId) { + return this.store.select(submissionSectionFromIdSelector(submissionId, sectionId)).pipe(filter(function (sectionObj) { return hasValue(sectionObj); }), map(function (sectionObj) { return sectionObj; }), distinctUntilChanged()); + }; + /** + * Check if a given section is valid + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @return Observable + * Emits true whenever a given section should be valid + */ + SectionsService.prototype.isSectionValid = function (submissionId, sectionId) { + return this.store.select(submissionSectionFromIdSelector(submissionId, sectionId)).pipe(filter(function (sectionObj) { return hasValue(sectionObj); }), map(function (sectionObj) { return sectionObj.isValid; }), distinctUntilChanged()); + }; + /** + * Check if a given section is active + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @return Observable + * Emits true whenever a given section should be active + */ + SectionsService.prototype.isSectionActive = function (submissionId, sectionId) { + return this.submissionService.getActiveSectionId(submissionId).pipe(map(function (activeSectionId) { return sectionId === activeSectionId; }), distinctUntilChanged()); + }; + /** + * Check if a given section is enabled + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @return Observable + * Emits true whenever a given section should be enabled + */ + SectionsService.prototype.isSectionEnabled = function (submissionId, sectionId) { + return this.store.select(submissionSectionFromIdSelector(submissionId, sectionId)).pipe(filter(function (sectionObj) { return hasValue(sectionObj); }), map(function (sectionObj) { return sectionObj.enabled; }), distinctUntilChanged()); + }; + /** + * Check if a given section is a read only section + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param submissionScope + * The submission scope + * @return Observable + * Emits true whenever a given section should be read only + */ + SectionsService.prototype.isSectionReadOnly = function (submissionId, sectionId, submissionScope) { + return this.store.select(submissionSectionFromIdSelector(submissionId, sectionId)).pipe(filter(function (sectionObj) { return hasValue(sectionObj); }), map(function (sectionObj) { + return isNotEmpty(sectionObj.visibility) + && sectionObj.visibility.other === 'READONLY' + && submissionScope !== SubmissionScopeType.WorkspaceItem; + }), distinctUntilChanged()); + }; + /** + * Check if a given section is a read only available + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @return Observable + * Emits true whenever a given section should be available + */ + SectionsService.prototype.isSectionAvailable = function (submissionId, sectionId) { + return this.store.select(submissionObjectFromIdSelector(submissionId)).pipe(filter(function (submissionState) { return isNotUndefined(submissionState); }), map(function (submissionState) { + return isNotUndefined(submissionState.sections) && isNotUndefined(submissionState.sections[sectionId]); + }), distinctUntilChanged()); + }; + /** + * Dispatch a new [EnableSectionAction] to add a new section and move page target to it + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + */ + SectionsService.prototype.addSection = function (submissionId, sectionId) { + this.store.dispatch(new EnableSectionAction(submissionId, sectionId)); + var config = { + target: sectionId, + offset: -70 + }; + this.scrollToService.scrollTo(config); + }; + /** + * Dispatch a new [DisableSectionAction] to remove section + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + */ + SectionsService.prototype.removeSection = function (submissionId, sectionId) { + this.store.dispatch(new DisableSectionAction(submissionId, sectionId)); + }; + /** + * Dispatch a new [UpdateSectionDataAction] to update section state with new data and errors + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param data + * The section data + * @param errors + * The list of section errors + */ + SectionsService.prototype.updateSectionData = function (submissionId, sectionId, data, errors) { + var _this = this; + if (errors === void 0) { errors = []; } + if (isNotEmpty(data)) { + var isAvailable$ = this.isSectionAvailable(submissionId, sectionId); + var isEnabled$ = this.isSectionEnabled(submissionId, sectionId); + combineLatest(isAvailable$, isEnabled$).pipe(take(1), filter(function (_a) { + var available = _a[0], enabled = _a[1]; + return available; + })) + .subscribe(function (_a) { + var available = _a[0], enabled = _a[1]; + if (!enabled) { + var msg = _this.translate.instant('submission.sections.general.metadata-extracted-new-section', { sectionId: sectionId }); + _this.notificationsService.info(null, msg, null, true); + } + _this.store.dispatch(new UpdateSectionDataAction(submissionId, sectionId, data, errors)); + }); + } + }; + /** + * Dispatch a new [InertSectionErrorsAction] to update section state with new error + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param error + * The section error + */ + SectionsService.prototype.setSectionError = function (submissionId, sectionId, error) { + this.store.dispatch(new InertSectionErrorsAction(submissionId, sectionId, error)); + }; + /** + * Dispatch a new [SectionStatusChangeAction] to update section state with new status + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param status + * The section status + */ + SectionsService.prototype.setSectionStatus = function (submissionId, sectionId, status) { + this.store.dispatch(new SectionStatusChangeAction(submissionId, sectionId, status)); + }; + SectionsService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [NotificationsService, + ScrollToService, + SubmissionService, + Store, + TranslateService]) + ], SectionsService); + return SectionsService; +}()); +export { SectionsService }; +//# sourceMappingURL=sections.service.js.map \ No newline at end of file diff --git a/src/app/submission/sections/sections.service.js.map b/src/app/submission/sections/sections.service.js.map new file mode 100644 index 0000000000..1393518efb --- /dev/null +++ b/src/app/submission/sections/sections.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"sections.service.js","sourceRoot":"","sources":["sections.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js b/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js new file mode 100644 index 0000000000..d0228caf1f --- /dev/null +++ b/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js @@ -0,0 +1,57 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { find } from 'rxjs/operators'; +import { GroupEpersonService } from '../../../../core/eperson/group-eperson.service'; +import { isEmpty } from '../../../../shared/empty.util'; +/** + * This component represents a badge that describe an access condition + */ +var SubmissionSectionUploadAccessConditionsComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {GroupEpersonService} groupService + */ + function SubmissionSectionUploadAccessConditionsComponent(groupService) { + this.groupService = groupService; + /** + * The list of access conditions + * @type {Array} + */ + this.accessConditionsList = []; + } + /** + * Retrieve access conditions list + */ + SubmissionSectionUploadAccessConditionsComponent.prototype.ngOnInit = function () { + var _this = this; + this.accessConditions.forEach(function (accessCondition) { + if (isEmpty(accessCondition.name)) { + _this.groupService.findById(accessCondition.groupUUID).pipe(find(function (rd) { return !rd.isResponsePending && rd.hasSucceeded; })) + .subscribe(function (rd) { + var group = rd.payload; + var accessConditionEntry = Object.assign({}, accessCondition); + accessConditionEntry.name = group.name; + _this.accessConditionsList.push(accessConditionEntry); + }); + } + else { + _this.accessConditionsList.push(accessCondition); + } + }); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], SubmissionSectionUploadAccessConditionsComponent.prototype, "accessConditions", void 0); + SubmissionSectionUploadAccessConditionsComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-section-upload-access-conditions', + templateUrl: './submission-section-upload-access-conditions.component.html', + }), + tslib_1.__metadata("design:paramtypes", [GroupEpersonService]) + ], SubmissionSectionUploadAccessConditionsComponent); + return SubmissionSectionUploadAccessConditionsComponent; +}()); +export { SubmissionSectionUploadAccessConditionsComponent }; +//# sourceMappingURL=submission-section-upload-access-conditions.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js.map b/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js.map new file mode 100644 index 0000000000..09d1d8ee63 --- /dev/null +++ b/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-section-upload-access-conditions.component.js","sourceRoot":"","sources":["submission-section-upload-access-conditions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAErF,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAIxD;;GAEG;AAKH;IAcE;;;;OAIG;IACH,0DAAoB,YAAiC;QAAjC,iBAAY,GAAZ,YAAY,CAAqB;QAXrD;;;WAGG;QACI,yBAAoB,GAAG,EAAE,CAAC;IAOuB,CAAC;IAEzD;;OAEG;IACH,mEAAQ,GAAR;QAAA,iBAeC;QAdC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,UAAC,eAA+B;YAC5D,IAAI,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;gBACjC,KAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,IAAI,CACxD,IAAI,CAAC,UAAC,EAAqB,IAAK,OAAA,CAAC,EAAE,CAAC,iBAAiB,IAAI,EAAE,CAAC,YAAY,EAAxC,CAAwC,CAAC,CAAC;qBACzE,SAAS,CAAC,UAAC,EAAqB;oBAC/B,IAAM,KAAK,GAAU,EAAE,CAAC,OAAO,CAAC;oBAChC,IAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;oBAChE,oBAAoB,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;oBACvC,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAA;aACL;iBAAM;gBACL,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aACjD;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAjCQ;QAAR,KAAK,EAAE;;8FAAoC;IANjC,gDAAgD;QAJ5D,SAAS,CAAC;YACT,QAAQ,EAAE,gDAAgD;YAC1D,WAAW,EAAE,8DAA8D;SAC5E,CAAC;iDAoBkC,mBAAmB;OAnB1C,gDAAgD,CAwC5D;IAAD,uDAAC;CAAA,AAxCD,IAwCC;SAxCY,gDAAgD"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js new file mode 100644 index 0000000000..3c4237efe9 --- /dev/null +++ b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js @@ -0,0 +1,287 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, Input, ViewChild } from '@angular/core'; +import { DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER, DynamicDatePickerModel, DynamicFormArrayModel, DynamicFormGroupModel, DynamicSelectModel } from '@ng-dynamic-forms/core'; +import { WorkspaceitemSectionUploadFileObject } from '../../../../../core/submission/models/workspaceitem-section-upload-file.model'; +import { FormBuilderService } from '../../../../../shared/form/builder/form-builder.service'; +import { BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_CONFIG, BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_LAYOUT, BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_CONFIG, BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_LAYOUT, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_CONFIG, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_LAYOUT, BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_CONFIG, BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_LAYOUT, BITSTREAM_FORM_ACCESS_CONDITION_TYPE_CONFIG, BITSTREAM_FORM_ACCESS_CONDITION_TYPE_LAYOUT, BITSTREAM_METADATA_FORM_GROUP_CONFIG, BITSTREAM_METADATA_FORM_GROUP_LAYOUT } from './section-upload-file-edit.model'; +import { POLICY_DEFAULT_WITH_LIST } from '../../section-upload.component'; +import { isNotEmpty, isNotUndefined } from '../../../../../shared/empty.util'; +import { SubmissionFormsModel } from '../../../../../core/config/models/config-submission-forms.model'; +import { SubmissionService } from '../../../../submission.service'; +import { FormService } from '../../../../../shared/form/form.service'; +import { FormComponent } from '../../../../../shared/form/form.component'; +/** + * This component represents the edit form for bitstream + */ +var SubmissionSectionUploadFileEditComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} cdr + * @param {FormBuilderService} formBuilderService + * @param {FormService} formService + * @param {SubmissionService} submissionService + */ + function SubmissionSectionUploadFileEditComponent(cdr, formBuilderService, formService, submissionService) { + this.cdr = cdr; + this.formBuilderService = formBuilderService; + this.formService = formService; + this.submissionService = submissionService; + } + /** + * Dispatch form model init + */ + SubmissionSectionUploadFileEditComponent.prototype.ngOnChanges = function () { + if (this.fileData && this.formId) { + this.formModel = this.buildFileEditForm(); + this.cdr.detectChanges(); + } + }; + /** + * Initialize form model + */ + SubmissionSectionUploadFileEditComponent.prototype.buildFileEditForm = function () { + var configDescr = Object.assign({}, this.configMetadataForm.rows[0].fields[0]); + configDescr.repeatable = false; + var configForm = Object.assign({}, this.configMetadataForm, { + fields: Object.assign([], this.configMetadataForm.rows[0].fields[0], [ + this.configMetadataForm.rows[0].fields[0], + configDescr + ]) + }); + var formModel = []; + var metadataGroupModelConfig = Object.assign({}, BITSTREAM_METADATA_FORM_GROUP_CONFIG); + metadataGroupModelConfig.group = this.formBuilderService.modelFromConfiguration(configForm, this.collectionId, this.fileData.metadata, this.submissionService.getSubmissionScope()); + formModel.push(new DynamicFormGroupModel(metadataGroupModelConfig, BITSTREAM_METADATA_FORM_GROUP_LAYOUT)); + var accessConditionTypeModelConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_TYPE_CONFIG); + var accessConditionsArrayConfig = Object.assign({}, BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_CONFIG); + var accessConditionTypeOptions = []; + if (this.collectionPolicyType === POLICY_DEFAULT_WITH_LIST) { + for (var _i = 0, _a = this.availableAccessConditionOptions; _i < _a.length; _i++) { + var accessCondition = _a[_i]; + accessConditionTypeOptions.push({ + label: accessCondition.name, + value: accessCondition.name + }); + } + accessConditionTypeModelConfig.options = accessConditionTypeOptions; + // Dynamically assign of relation in config. For startdate, endDate, groups. + var hasStart_1 = []; + var hasEnd_1 = []; + var hasGroups_1 = []; + this.availableAccessConditionOptions.forEach(function (condition) { + var showStart = condition.hasStartDate === true; + var showEnd = condition.hasEndDate === true; + var showGroups = showStart || showEnd; + if (showStart) { + hasStart_1.push({ id: 'name', value: condition.name }); + } + if (showEnd) { + hasEnd_1.push({ id: 'name', value: condition.name }); + } + if (showGroups) { + hasGroups_1.push({ id: 'name', value: condition.name }); + } + }); + var confStart_1 = { relation: [{ action: 'ENABLE', connective: 'OR', when: hasStart_1 }] }; + var confEnd_1 = { relation: [{ action: 'ENABLE', connective: 'OR', when: hasEnd_1 }] }; + var confGroup_1 = { relation: [{ action: 'ENABLE', connective: 'OR', when: hasGroups_1 }] }; + accessConditionsArrayConfig.groupFactory = function () { + var type = new DynamicSelectModel(accessConditionTypeModelConfig, BITSTREAM_FORM_ACCESS_CONDITION_TYPE_LAYOUT); + var startDateConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_CONFIG, confStart_1); + var endDateConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_CONFIG, confEnd_1); + var groupsConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_CONFIG, confGroup_1); + var startDate = new DynamicDatePickerModel(startDateConfig, BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_LAYOUT); + var endDate = new DynamicDatePickerModel(endDateConfig, BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_LAYOUT); + var groups = new DynamicSelectModel(groupsConfig, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_LAYOUT); + return [type, startDate, endDate, groups]; + }; + // Number of access conditions blocks in form + accessConditionsArrayConfig.initialCount = isNotEmpty(this.fileData.accessConditions) ? this.fileData.accessConditions.length : 1; + formModel.push(new DynamicFormArrayModel(accessConditionsArrayConfig, BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_LAYOUT)); + } + this.initModelData(formModel); + return formModel; + }; + /** + * Initialize form model values + * + * @param formModel + * The form model + */ + SubmissionSectionUploadFileEditComponent.prototype.initModelData = function (formModel) { + var _this = this; + this.fileData.accessConditions.forEach(function (accessCondition, index) { + Array.of('name', 'groupUUID', 'startDate', 'endDate') + .filter(function (key) { return accessCondition.hasOwnProperty(key); }) + .forEach(function (key) { + var metadataModel = _this.formBuilderService.findById(key, formModel, index); + if (metadataModel) { + if (key === 'groupUUID' && _this.availableAccessConditionGroups.get(accessCondition.name)) { + _this.availableAccessConditionGroups.get(accessCondition.name).forEach(function (group) { + metadataModel.options.push({ + label: group.name, + value: group.uuid + }); + }); + } + if (metadataModel.type === DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER) { + var date = new Date(accessCondition[key]); + metadataModel.value = { + year: date.getFullYear(), + month: date.getMonth() + 1, + day: date.getDate() + }; + } + else { + metadataModel.value = accessCondition[key]; + } + } + }); + }); + }; + /** + * Dispatch form model update when changing an access condition + * + * @param event + * The event emitted + */ + SubmissionSectionUploadFileEditComponent.prototype.onChange = function (event) { + if (event.model.id === 'name') { + this.setOptions(event.model, event.control); + } + }; + /** + * Update `startDate`, 'groupUUID' and 'endDate' model + * + * @param model + * The [[DynamicFormControlModel]] object + * @param control + * The [[FormControl]] object + */ + SubmissionSectionUploadFileEditComponent.prototype.setOptions = function (model, control) { + var accessCondition = null; + this.availableAccessConditionOptions.filter(function (element) { return element.name === control.value; }) + .forEach(function (element) { return accessCondition = element; }); + if (isNotEmpty(accessCondition)) { + var showGroups = accessCondition.hasStartDate === true || accessCondition.hasEndDate === true; + var groupControl = control.parent.get('groupUUID'); + var startDateControl = control.parent.get('startDate'); + var endDateControl = control.parent.get('endDate'); + // Clear previous state + groupControl.markAsUntouched(); + startDateControl.markAsUntouched(); + endDateControl.markAsUntouched(); + // Clear previous values + if (showGroups) { + groupControl.setValue(null); + } + else { + groupControl.clearValidators(); + groupControl.setValue(accessCondition.groupUUID); + } + startDateControl.setValue(null); + control.parent.markAsDirty(); + endDateControl.setValue(null); + if (showGroups) { + if (isNotUndefined(accessCondition.groupUUID) || isNotUndefined(accessCondition.selectGroupUUID)) { + var groupOptions_1 = []; + if (isNotUndefined(this.availableAccessConditionGroups.get(accessCondition.name))) { + var groupModel = this.formBuilderService.findById('groupUUID', model.parent.group); + this.availableAccessConditionGroups.get(accessCondition.name).forEach(function (group) { + groupOptions_1.push({ + label: group.name, + value: group.uuid + }); + }); + // Due to a bug can't dynamically change the select options, so replace the model with a new one + var confGroup = { relation: groupModel.relation }; + var groupsConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_CONFIG, confGroup); + groupsConfig.options = groupOptions_1; + model.parent.group.pop(); + model.parent.group.push(new DynamicSelectModel(groupsConfig, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_LAYOUT)); + } + } + if (accessCondition.hasStartDate) { + var startDateModel = this.formBuilderService.findById('startDate', model.parent.group); + var min = new Date(accessCondition.maxStartDate); + startDateModel.max = { + year: min.getFullYear(), + month: min.getMonth() + 1, + day: min.getDate() + }; + } + if (accessCondition.hasEndDate) { + var endDateModel = this.formBuilderService.findById('endDate', model.parent.group); + var max = new Date(accessCondition.maxEndDate); + endDateModel.max = { + year: max.getFullYear(), + month: max.getMonth() + 1, + day: max.getDate() + }; + } + } + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], SubmissionSectionUploadFileEditComponent.prototype, "availableAccessConditionOptions", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Map) + ], SubmissionSectionUploadFileEditComponent.prototype, "availableAccessConditionGroups", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileEditComponent.prototype, "collectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], SubmissionSectionUploadFileEditComponent.prototype, "collectionPolicyType", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SubmissionFormsModel) + ], SubmissionSectionUploadFileEditComponent.prototype, "configMetadataForm", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", WorkspaceitemSectionUploadFileObject) + ], SubmissionSectionUploadFileEditComponent.prototype, "fileData", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileEditComponent.prototype, "fileId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileEditComponent.prototype, "fileIndex", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileEditComponent.prototype, "formId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileEditComponent.prototype, "sectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileEditComponent.prototype, "submissionId", void 0); + tslib_1.__decorate([ + ViewChild('formRef'), + tslib_1.__metadata("design:type", FormComponent) + ], SubmissionSectionUploadFileEditComponent.prototype, "formRef", void 0); + SubmissionSectionUploadFileEditComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-section-upload-file-edit', + templateUrl: './section-upload-file-edit.component.html', + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + FormBuilderService, + FormService, + SubmissionService]) + ], SubmissionSectionUploadFileEditComponent); + return SubmissionSectionUploadFileEditComponent; +}()); +export { SubmissionSectionUploadFileEditComponent }; +//# sourceMappingURL=section-upload-file-edit.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js.map b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js.map new file mode 100644 index 0000000000..c72f7a44cd --- /dev/null +++ b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-upload-file-edit.component.js","sourceRoot":"","sources":["section-upload-file-edit.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js new file mode 100644 index 0000000000..e980ef7ab0 --- /dev/null +++ b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js @@ -0,0 +1,125 @@ +export var BITSTREAM_METADATA_FORM_GROUP_CONFIG = { + id: 'metadata', + group: [] +}; +export var BITSTREAM_METADATA_FORM_GROUP_LAYOUT = { + element: { + container: 'form-group', + label: 'col-form-label' + }, + grid: { + label: 'col-sm-3' + } +}; +export var BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_CONFIG = { + id: 'accessConditions', + groupFactory: null, +}; +export var BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_LAYOUT = { + grid: { + group: 'form-row' + } +}; +export var BITSTREAM_FORM_ACCESS_CONDITION_TYPE_CONFIG = { + id: 'name', + label: 'submission.sections.upload.form.access-condition-label', + options: [] +}; +export var BITSTREAM_FORM_ACCESS_CONDITION_TYPE_LAYOUT = { + element: { + container: 'p-0', + label: 'col-form-label' + }, + grid: { + host: 'col-md-10' + } +}; +export var BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_CONFIG = { + id: 'startDate', + label: 'submission.sections.upload.form.from-label', + placeholder: 'submission.sections.upload.form.from-placeholder', + inline: false, + toggleIcon: 'far fa-calendar-alt', + relation: [ + { + action: 'ENABLE', + connective: 'OR', + when: [] + } + ], + required: true, + validators: { + required: null + }, + errorMessages: { + required: 'submission.sections.upload.form.date-required' + } +}; +export var BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_LAYOUT = { + element: { + container: 'p-0', + label: 'col-form-label' + }, + grid: { + host: 'col-md-4' + } +}; +export var BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_CONFIG = { + id: 'endDate', + label: 'submission.sections.upload.form.until-label', + placeholder: 'submission.sections.upload.form.until-placeholder', + inline: false, + toggleIcon: 'far fa-calendar-alt', + relation: [ + { + action: 'ENABLE', + connective: 'OR', + when: [] + } + ], + required: true, + validators: { + required: null + }, + errorMessages: { + required: 'submission.sections.upload.form.date-required' + } +}; +export var BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_LAYOUT = { + element: { + container: 'p-0', + label: 'col-form-label' + }, + grid: { + host: 'col-md-4' + } +}; +export var BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_CONFIG = { + id: 'groupUUID', + label: 'submission.sections.upload.form.group-label', + options: [], + relation: [ + { + action: 'ENABLE', + connective: 'OR', + when: [] + } + ], + required: true, + validators: { + required: null + }, + errorMessages: { + required: 'submission.sections.upload.form.group-required' + } +}; +export var BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_LAYOUT = { + element: { + container: 'p-0', + label: 'col-form-label' + }, + grid: { + host: 'col-sm-10' + } +}; +//# sourceMappingURL=section-upload-file-edit.model.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js.map b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js.map new file mode 100644 index 0000000000..0cc39f354a --- /dev/null +++ b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-upload-file-edit.model.js","sourceRoot":"","sources":["section-upload-file-edit.model.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/section-upload-file.component.js b/src/app/submission/sections/upload/file/section-upload-file.component.js new file mode 100644 index 0000000000..c5e68506ae --- /dev/null +++ b/src/app/submission/sections/upload/file/section-upload-file.component.js @@ -0,0 +1,260 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, Input, ViewChild } from '@angular/core'; +import { BehaviorSubject } from 'rxjs'; +import { filter, first, flatMap, take } from 'rxjs/operators'; +import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; +import { SectionUploadService } from '../section-upload.service'; +import { isNotEmpty, isNotNull, isNotUndefined } from '../../../../shared/empty.util'; +import { FormService } from '../../../../shared/form/form.service'; +import { JsonPatchOperationsBuilder } from '../../../../core/json-patch/builder/json-patch-operations-builder'; +import { JsonPatchOperationPathCombiner } from '../../../../core/json-patch/builder/json-patch-operation-path-combiner'; +import { SubmissionFormsModel } from '../../../../core/config/models/config-submission-forms.model'; +import { deleteProperty } from '../../../../shared/object.util'; +import { dateToISOFormat } from '../../../../shared/date.util'; +import { SubmissionService } from '../../../submission.service'; +import { FileService } from '../../../../core/shared/file.service'; +import { HALEndpointService } from '../../../../core/shared/hal-endpoint.service'; +import { SubmissionJsonPatchOperationsService } from '../../../../core/submission/submission-json-patch-operations.service'; +import { SubmissionSectionUploadFileEditComponent } from './edit/section-upload-file-edit.component'; +/** + * This component represents a single bitstream contained in the submission + */ +var SubmissionSectionUploadFileComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} cdr + * @param {FileService} fileService + * @param {FormService} formService + * @param {HALEndpointService} halService + * @param {NgbModal} modalService + * @param {JsonPatchOperationsBuilder} operationsBuilder + * @param {SubmissionJsonPatchOperationsService} operationsService + * @param {SubmissionService} submissionService + * @param {SectionUploadService} uploadService + */ + function SubmissionSectionUploadFileComponent(cdr, fileService, formService, halService, modalService, operationsBuilder, operationsService, submissionService, uploadService) { + this.cdr = cdr; + this.fileService = fileService; + this.formService = formService; + this.halService = halService; + this.modalService = modalService; + this.operationsBuilder = operationsBuilder; + this.operationsService = operationsService; + this.submissionService = submissionService; + this.uploadService = uploadService; + /** + * A boolean representing if a submission delete operation is pending + * @type {BehaviorSubject} + */ + this.processingDelete$ = new BehaviorSubject(false); + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subscriptions = []; + this.readMode = true; + } + /** + * Retrieve bitstream's metadata + */ + SubmissionSectionUploadFileComponent.prototype.ngOnChanges = function () { + var _this = this; + if (this.availableAccessConditionOptions && this.availableAccessConditionGroups) { + // Retrieve file state + this.subscriptions.push(this.uploadService + .getFileData(this.submissionId, this.sectionId, this.fileId).pipe(filter(function (bitstream) { return isNotUndefined(bitstream); })) + .subscribe(function (bitstream) { + _this.fileData = bitstream; + })); + } + }; + /** + * Initialize instance variables + */ + SubmissionSectionUploadFileComponent.prototype.ngOnInit = function () { + this.formId = this.formService.getUniqueId(this.fileId); + this.pathCombiner = new JsonPatchOperationPathCombiner('sections', this.sectionId, 'files', this.fileIndex); + }; + /** + * Delete bitstream from submission + */ + SubmissionSectionUploadFileComponent.prototype.deleteFile = function () { + var _this = this; + this.operationsBuilder.remove(this.pathCombiner.getPath()); + this.subscriptions.push(this.operationsService.jsonPatchByResourceID(this.submissionService.getSubmissionObjectLinkName(), this.submissionId, this.pathCombiner.rootElement, this.pathCombiner.subRootElement) + .subscribe(function () { + _this.uploadService.removeUploadedFile(_this.submissionId, _this.sectionId, _this.fileId); + _this.processingDelete$.next(false); + })); + }; + /** + * Show confirmation dialog for delete + */ + SubmissionSectionUploadFileComponent.prototype.confirmDelete = function (content) { + var _this = this; + this.modalService.open(content).result.then(function (result) { + if (result === 'ok') { + _this.processingDelete$.next(true); + _this.deleteFile(); + } + }); + }; + /** + * Perform bitstream download + */ + SubmissionSectionUploadFileComponent.prototype.downloadBitstreamFile = function () { + var _this = this; + this.halService.getEndpoint('bitstreams').pipe(first()) + .subscribe(function (url) { + var fileUrl = url + "/" + _this.fileData.uuid + "/content"; + _this.fileService.downloadFile(fileUrl); + }); + }; + /** + * Save bitstream metadata + * + * @param event + * the click event emitted + */ + SubmissionSectionUploadFileComponent.prototype.saveBitstreamData = function (event) { + var _this = this; + event.preventDefault(); + // validate form + this.formService.validateAllFormFields(this.fileEditComp.formRef.formGroup); + this.subscriptions.push(this.formService.isValid(this.formId).pipe(take(1), filter(function (isValid) { return isValid; }), flatMap(function () { return _this.formService.getFormData(_this.formId); }), take(1), flatMap(function (formData) { + // collect bitstream metadata + Object.keys((formData.metadata)) + .filter(function (key) { return isNotEmpty(formData.metadata[key]); }) + .forEach(function (key) { + var metadataKey = key.replace(/_/g, '.'); + var path = "metadata/" + metadataKey; + _this.operationsBuilder.add(_this.pathCombiner.getPath(path), formData.metadata[key], true); + }); + var accessConditionsToSave = []; + formData.accessConditions + .filter(function (accessCondition) { return isNotEmpty(accessCondition); }) + .forEach(function (accessCondition) { + var accessConditionOpt; + _this.availableAccessConditionOptions + .filter(function (element) { return isNotNull(accessCondition.name) && element.name === accessCondition.name[0].value; }) + .forEach(function (element) { return accessConditionOpt = element; }); + if (accessConditionOpt) { + if (accessConditionOpt.hasStartDate !== true && accessConditionOpt.hasEndDate !== true) { + accessConditionOpt = deleteProperty(accessConditionOpt, 'hasStartDate'); + accessConditionOpt = deleteProperty(accessConditionOpt, 'hasEndDate'); + accessConditionsToSave.push(accessConditionOpt); + } + else { + accessConditionOpt = Object.assign({}, accessCondition); + accessConditionOpt.name = _this.retrieveValueFromField(accessCondition.name); + accessConditionOpt.groupUUID = _this.retrieveValueFromField(accessCondition.groupUUID); + if (accessCondition.startDate) { + var startDate = _this.retrieveValueFromField(accessCondition.startDate); + accessConditionOpt.startDate = dateToISOFormat(startDate); + accessConditionOpt = deleteProperty(accessConditionOpt, 'endDate'); + } + if (accessCondition.endDate) { + var endDate = _this.retrieveValueFromField(accessCondition.endDate); + accessConditionOpt.endDate = dateToISOFormat(endDate); + accessConditionOpt = deleteProperty(accessConditionOpt, 'startDate'); + } + accessConditionsToSave.push(accessConditionOpt); + } + } + }); + if (isNotEmpty(accessConditionsToSave)) { + _this.operationsBuilder.add(_this.pathCombiner.getPath('accessConditions'), accessConditionsToSave, true); + } + // dispatch a PATCH request to save metadata + return _this.operationsService.jsonPatchByResourceID(_this.submissionService.getSubmissionObjectLinkName(), _this.submissionId, _this.pathCombiner.rootElement, _this.pathCombiner.subRootElement); + })).subscribe(function (result) { + if (result[0].sections.upload) { + Object.keys(result[0].sections.upload.files) + .filter(function (key) { return result[0].sections.upload.files[key].uuid === _this.fileId; }) + .forEach(function (key) { return _this.uploadService.updateFileData(_this.submissionId, _this.sectionId, _this.fileId, result[0].sections.upload.files[key]); }); + } + _this.switchMode(); + })); + }; + /** + * Retrieve field value + * + * @param field + * the specified field object + */ + SubmissionSectionUploadFileComponent.prototype.retrieveValueFromField = function (field) { + var temp = Array.isArray(field) ? field[0] : field; + return (temp) ? temp.value : undefined; + }; + /** + * Switch from edit form to metadata view + */ + SubmissionSectionUploadFileComponent.prototype.switchMode = function () { + this.readMode = !this.readMode; + this.cdr.detectChanges(); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Array) + ], SubmissionSectionUploadFileComponent.prototype, "availableAccessConditionOptions", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Map) + ], SubmissionSectionUploadFileComponent.prototype, "availableAccessConditionGroups", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileComponent.prototype, "collectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Number) + ], SubmissionSectionUploadFileComponent.prototype, "collectionPolicyType", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", SubmissionFormsModel) + ], SubmissionSectionUploadFileComponent.prototype, "configMetadataForm", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileComponent.prototype, "fileId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileComponent.prototype, "fileIndex", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileComponent.prototype, "fileName", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileComponent.prototype, "sectionId", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", String) + ], SubmissionSectionUploadFileComponent.prototype, "submissionId", void 0); + tslib_1.__decorate([ + ViewChild(SubmissionSectionUploadFileEditComponent), + tslib_1.__metadata("design:type", SubmissionSectionUploadFileEditComponent) + ], SubmissionSectionUploadFileComponent.prototype, "fileEditComp", void 0); + SubmissionSectionUploadFileComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-upload-section-file', + styleUrls: ['./section-upload-file.component.scss'], + templateUrl: './section-upload-file.component.html', + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + FileService, + FormService, + HALEndpointService, + NgbModal, + JsonPatchOperationsBuilder, + SubmissionJsonPatchOperationsService, + SubmissionService, + SectionUploadService]) + ], SubmissionSectionUploadFileComponent); + return SubmissionSectionUploadFileComponent; +}()); +export { SubmissionSectionUploadFileComponent }; +//# sourceMappingURL=section-upload-file.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/section-upload-file.component.js.map b/src/app/submission/sections/upload/file/section-upload-file.component.js.map new file mode 100644 index 0000000000..a45af6fbd2 --- /dev/null +++ b/src/app/submission/sections/upload/file/section-upload-file.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-upload-file.component.js","sourceRoot":"","sources":["section-upload-file.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js b/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js new file mode 100644 index 0000000000..76aa8a8f8f --- /dev/null +++ b/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js @@ -0,0 +1,60 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { WorkspaceitemSectionUploadFileObject } from '../../../../../core/submission/models/workspaceitem-section-upload-file.model'; +import { isNotEmpty } from '../../../../../shared/empty.util'; +import { Metadata } from '../../../../../core/shared/metadata.utils'; +/** + * This component allow to show bitstream's metadata + */ +var SubmissionSectionUploadFileViewComponent = /** @class */ (function () { + function SubmissionSectionUploadFileViewComponent() { + /** + * The [[MetadataMap]] object + * @type {MetadataMap} + */ + this.metadata = Object.create({}); + /** + * The bitstream's title key + * @type {string} + */ + this.fileTitleKey = 'Title'; + /** + * The bitstream's description key + * @type {string} + */ + this.fileDescrKey = 'Description'; + } + /** + * Initialize instance variables + */ + SubmissionSectionUploadFileViewComponent.prototype.ngOnInit = function () { + if (isNotEmpty(this.fileData.metadata)) { + this.metadata[this.fileTitleKey] = Metadata.all(this.fileData.metadata, 'dc.title'); + this.metadata[this.fileDescrKey] = Metadata.all(this.fileData.metadata, 'dc.description'); + } + }; + /** + * Gets all matching metadata in the map(s) + * + * @param metadataKey + * The metadata key(s) in scope + * @returns {MetadataValue[]} + * The matching values + */ + SubmissionSectionUploadFileViewComponent.prototype.getAllMetadataValue = function (metadataKey) { + return Metadata.all(this.metadata, metadataKey); + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", WorkspaceitemSectionUploadFileObject) + ], SubmissionSectionUploadFileViewComponent.prototype, "fileData", void 0); + SubmissionSectionUploadFileViewComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-section-upload-file-view', + templateUrl: './section-upload-file-view.component.html', + }) + ], SubmissionSectionUploadFileViewComponent); + return SubmissionSectionUploadFileViewComponent; +}()); +export { SubmissionSectionUploadFileViewComponent }; +//# sourceMappingURL=section-upload-file-view.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js.map b/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js.map new file mode 100644 index 0000000000..29b2730000 --- /dev/null +++ b/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-upload-file-view.component.js","sourceRoot":"","sources":["section-upload-file-view.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,oCAAoC,EAAE,MAAM,+EAA+E,CAAC;AACrI,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AAGrE;;GAEG;AAKH;IAJA;QAYE;;;WAGG;QACI,aAAQ,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEjD;;;WAGG;QACI,iBAAY,GAAG,OAAO,CAAC;QAE9B;;;WAGG;QACI,iBAAY,GAAG,aAAa,CAAC;IAuBtC,CAAC;IArBC;;OAEG;IACH,2DAAQ,GAAR;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACpF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;SAC3F;IACH,CAAC;IAED;;;;;;;OAOG;IACH,sEAAmB,GAAnB,UAAoB,WAAmB;QACrC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAClD,CAAC;IAxCQ;QAAR,KAAK,EAAE;0CAAW,oCAAoC;8EAAC;IAN7C,wCAAwC;QAJpD,SAAS,CAAC;YACT,QAAQ,EAAE,wCAAwC;YAClD,WAAW,EAAE,2CAA2C;SACzD,CAAC;OACW,wCAAwC,CA+CpD;IAAD,+CAAC;CAAA,AA/CD,IA+CC;SA/CY,wCAAwC"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/section-upload.component.js b/src/app/submission/sections/upload/section-upload.component.js new file mode 100644 index 0000000000..07c5765774 --- /dev/null +++ b/src/app/submission/sections/upload/section-upload.component.js @@ -0,0 +1,207 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, Inject } from '@angular/core'; +import { combineLatest } from 'rxjs'; +import { distinctUntilChanged, filter, find, flatMap, map, reduce, take, tap } from 'rxjs/operators'; +import { SectionModelComponent } from '../models/section.model'; +import { hasValue, isNotEmpty, isNotUndefined, isUndefined } from '../../../shared/empty.util'; +import { SectionUploadService } from './section-upload.service'; +import { CollectionDataService } from '../../../core/data/collection-data.service'; +import { GroupEpersonService } from '../../../core/eperson/group-eperson.service'; +import { SubmissionUploadsConfigService } from '../../../core/config/submission-uploads-config.service'; +import { SectionsType } from '../sections-type'; +import { renderSectionFor } from '../sections-decorator'; +import { AlertType } from '../../../shared/alert/aletr-type'; +import { SectionsService } from '../sections.service'; +import { SubmissionService } from '../../submission.service'; +export var POLICY_DEFAULT_NO_LIST = 1; // Banner1 +export var POLICY_DEFAULT_WITH_LIST = 2; // Banner2 +/** + * This component represents a section that contains submission's bitstreams + */ +var SubmissionSectionUploadComponent = /** @class */ (function (_super) { + tslib_1.__extends(SubmissionSectionUploadComponent, _super); + /** + * Initialize instance variables + * + * @param {SectionUploadService} bitstreamService + * @param {ChangeDetectorRef} changeDetectorRef + * @param {CollectionDataService} collectionDataService + * @param {GroupEpersonService} groupService + * @param {SectionsService} sectionService + * @param {SubmissionService} submissionService + * @param {SubmissionUploadsConfigService} uploadsConfigService + * @param {SectionDataObject} injectedSectionData + * @param {string} injectedSubmissionId + */ + function SubmissionSectionUploadComponent(bitstreamService, changeDetectorRef, collectionDataService, groupService, sectionService, submissionService, uploadsConfigService, injectedSectionData, injectedSubmissionId) { + var _this = _super.call(this, undefined, injectedSectionData, injectedSubmissionId) || this; + _this.bitstreamService = bitstreamService; + _this.changeDetectorRef = changeDetectorRef; + _this.collectionDataService = collectionDataService; + _this.groupService = groupService; + _this.sectionService = sectionService; + _this.submissionService = submissionService; + _this.uploadsConfigService = uploadsConfigService; + _this.injectedSectionData = injectedSectionData; + _this.injectedSubmissionId = injectedSubmissionId; + /** + * The AlertType enumeration + * @type {AlertType} + */ + _this.AlertTypeEnum = AlertType; + /** + * The array containing the keys of file list array + * @type {Array} + */ + _this.fileIndexes = []; + /** + * The file list + * @type {Array} + */ + _this.fileList = []; + /** + * The array containing the name of the files + * @type {Array} + */ + _this.fileNames = []; + /** + * Default access conditions of this collection + * @type {Array} + */ + _this.collectionDefaultAccessConditions = []; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + _this.subs = []; + return _this; + } + /** + * Initialize all instance variables and retrieve collection default access conditions + */ + SubmissionSectionUploadComponent.prototype.onSectionInit = function () { + var _this = this; + var config$ = this.uploadsConfigService.getConfigByHref(this.sectionData.config).pipe(map(function (config) { return config.payload; })); + // retrieve configuration for the bitstream's metadata form + this.configMetadataForm$ = config$.pipe(take(1), map(function (config) { return config.metadata; })); + this.subs.push(this.submissionService.getSubmissionObject(this.submissionId).pipe(filter(function (submissionObject) { return isNotUndefined(submissionObject) && !submissionObject.isLoading; }), filter(function (submissionObject) { return isUndefined(_this.collectionId) || _this.collectionId !== submissionObject.collection; }), tap(function (submissionObject) { return _this.collectionId = submissionObject.collection; }), flatMap(function (submissionObject) { return _this.collectionDataService.findById(submissionObject.collection); }), find(function (rd) { return isNotUndefined((rd.payload)); }), tap(function (collectionRemoteData) { return _this.collectionName = collectionRemoteData.payload.name; }), flatMap(function (collectionRemoteData) { + return _this.collectionDataService.findByHref(collectionRemoteData.payload._links.defaultAccessConditions); + }), find(function (defaultAccessConditionsRemoteData) { + return defaultAccessConditionsRemoteData.hasSucceeded; + }), tap(function (defaultAccessConditionsRemoteData) { + if (isNotEmpty(defaultAccessConditionsRemoteData.payload)) { + _this.collectionDefaultAccessConditions = Array.isArray(defaultAccessConditionsRemoteData.payload) + ? defaultAccessConditionsRemoteData.payload : [defaultAccessConditionsRemoteData.payload]; + } + }), flatMap(function () { return config$; }), take(1), flatMap(function (config) { + _this.availableAccessConditionOptions = isNotEmpty(config.accessConditionOptions) ? config.accessConditionOptions : []; + _this.collectionPolicyType = _this.availableAccessConditionOptions.length > 0 + ? POLICY_DEFAULT_WITH_LIST + : POLICY_DEFAULT_NO_LIST; + _this.availableGroups = new Map(); + var mapGroups$ = []; + // Retrieve Groups for accessCondition Policies + _this.availableAccessConditionOptions.forEach(function (accessCondition) { + if (accessCondition.hasEndDate === true || accessCondition.hasStartDate === true) { + if (accessCondition.groupUUID) { + mapGroups$.push(_this.groupService.findById(accessCondition.groupUUID).pipe(find(function (rd) { return !rd.isResponsePending && rd.hasSucceeded; }), map(function (rd) { return ({ + accessCondition: accessCondition.name, + groups: [rd.payload] + }); }))); + } + else if (accessCondition.selectGroupUUID) { + mapGroups$.push(_this.groupService.findById(accessCondition.selectGroupUUID).pipe(find(function (rd) { return !rd.isResponsePending && rd.hasSucceeded; }), flatMap(function (group) { return group.payload.groups; }), find(function (rd) { return !rd.isResponsePending && rd.hasSucceeded; }), map(function (rd) { return ({ + accessCondition: accessCondition.name, + groups: rd.payload.page + }); }))); + } + } + }); + return mapGroups$; + }), flatMap(function (entry) { return entry; }), reduce(function (acc, entry) { + acc.push(entry); + return acc; + }, [])).subscribe(function (entries) { + entries.forEach(function (entry) { + _this.availableGroups.set(entry.accessCondition, entry.groups); + }); + _this.changeDetectorRef.detectChanges(); + }), + // retrieve submission's bitstreams from state + combineLatest(this.configMetadataForm$, this.bitstreamService.getUploadedFileList(this.submissionId, this.sectionData.id)).pipe(filter(function (_a) { + var configMetadataForm = _a[0], fileList = _a[1]; + return isNotEmpty(configMetadataForm) && isNotUndefined(fileList); + }), distinctUntilChanged()) + .subscribe(function (_a) { + var configMetadataForm = _a[0], fileList = _a[1]; + _this.fileList = []; + _this.fileIndexes = []; + _this.fileNames = []; + _this.changeDetectorRef.detectChanges(); + if (isNotUndefined(fileList) && fileList.length > 0) { + fileList.forEach(function (file) { + _this.fileList.push(file); + _this.fileIndexes.push(file.uuid); + _this.fileNames.push(_this.getFileName(configMetadataForm, file)); + }); + } + _this.changeDetectorRef.detectChanges(); + })); + }; + /** + * Return file name from metadata + * + * @param configMetadataForm + * the bitstream's form configuration + * @param fileData + * the file metadata + */ + SubmissionSectionUploadComponent.prototype.getFileName = function (configMetadataForm, fileData) { + var metadataName = configMetadataForm.rows[0].fields[0].selectableMetadata[0].metadata; + var title; + if (isNotEmpty(fileData.metadata) && isNotEmpty(fileData.metadata[metadataName])) { + title = fileData.metadata[metadataName][0].display; + } + else { + title = fileData.uuid; + } + return title; + }; + /** + * Get section status + * + * @return Observable + * the section status + */ + SubmissionSectionUploadComponent.prototype.getSectionStatus = function () { + return this.bitstreamService.getUploadedFileList(this.submissionId, this.sectionData.id).pipe(map(function (fileList) { return (isNotUndefined(fileList) && fileList.length > 0); })); + }; + /** + * Method provided by Angular. Invoked when the instance is destroyed. + */ + SubmissionSectionUploadComponent.prototype.onSectionDestroy = function () { + this.subs + .filter(function (subscription) { return hasValue(subscription); }) + .forEach(function (subscription) { return subscription.unsubscribe(); }); + }; + SubmissionSectionUploadComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-section-upload', + styleUrls: ['./section-upload.component.scss'], + templateUrl: './section-upload.component.html', + }), + renderSectionFor(SectionsType.Upload), + tslib_1.__param(7, Inject('sectionDataProvider')), + tslib_1.__param(8, Inject('submissionIdProvider')), + tslib_1.__metadata("design:paramtypes", [SectionUploadService, + ChangeDetectorRef, + CollectionDataService, + GroupEpersonService, + SectionsService, + SubmissionService, + SubmissionUploadsConfigService, Object, String]) + ], SubmissionSectionUploadComponent); + return SubmissionSectionUploadComponent; +}(SectionModelComponent)); +export { SubmissionSectionUploadComponent }; +//# sourceMappingURL=section-upload.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/section-upload.component.js.map b/src/app/submission/sections/upload/section-upload.component.js.map new file mode 100644 index 0000000000..7b8a53c7c9 --- /dev/null +++ b/src/app/submission/sections/upload/section-upload.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-upload.component.js","sourceRoot":"","sources":["section-upload.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/section-upload.service.js b/src/app/submission/sections/upload/section-upload.service.js new file mode 100644 index 0000000000..e2b740509a --- /dev/null +++ b/src/app/submission/sections/upload/section-upload.service.js @@ -0,0 +1,119 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { distinctUntilChanged, filter, map } from 'rxjs/operators'; +import { Store } from '@ngrx/store'; +import { DeleteUploadedFileAction, EditFileDataAction, NewUploadedFileAction } from '../../objects/submission-objects.actions'; +import { submissionUploadedFileFromUuidSelector, submissionUploadedFilesFromIdSelector } from '../../selectors'; +import { isUndefined } from '../../../shared/empty.util'; +/** + * A service that provides methods to handle submission's bitstream state. + */ +var SectionUploadService = /** @class */ (function () { + /** + * Initialize service variables + * + * @param {Store} store + */ + function SectionUploadService(store) { + this.store = store; + } + /** + * Return submission's bitstream list from state + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @returns {Array} + * Returns submission's bitstream list + */ + SectionUploadService.prototype.getUploadedFileList = function (submissionId, sectionId) { + return this.store.select(submissionUploadedFilesFromIdSelector(submissionId, sectionId)).pipe(map(function (state) { return state; }), distinctUntilChanged()); + }; + /** + * Return bitstream's metadata + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param fileUUID + * The bitstream UUID + * @returns {Observable} + * Emits bitstream's metadata + */ + SectionUploadService.prototype.getFileData = function (submissionId, sectionId, fileUUID) { + return this.store.select(submissionUploadedFilesFromIdSelector(submissionId, sectionId)).pipe(filter(function (state) { return !isUndefined(state); }), map(function (state) { + var fileState; + Object.keys(state) + .filter(function (key) { return state[key].uuid === fileUUID; }) + .forEach(function (key) { return fileState = state[key]; }); + return fileState; + }), distinctUntilChanged()); + }; + /** + * Return bitstream's default policies + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param fileUUID + * The bitstream UUID + * @returns {Observable} + * Emits bitstream's default policies + */ + SectionUploadService.prototype.getDefaultPolicies = function (submissionId, sectionId, fileUUID) { + return this.store.select(submissionUploadedFileFromUuidSelector(submissionId, sectionId, fileUUID)).pipe(map(function (state) { return state; }), distinctUntilChanged()); + }; + /** + * Add a new bitstream to the state + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param fileUUID + * The bitstream UUID + * @param data + * The [[WorkspaceitemSectionUploadFileObject]] object + */ + SectionUploadService.prototype.addUploadedFile = function (submissionId, sectionId, fileUUID, data) { + this.store.dispatch(new NewUploadedFileAction(submissionId, sectionId, fileUUID, data)); + }; + /** + * Update bitstream metadata into the state + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param fileUUID + * The bitstream UUID + * @param data + * The [[WorkspaceitemSectionUploadFileObject]] object + */ + SectionUploadService.prototype.updateFileData = function (submissionId, sectionId, fileUUID, data) { + this.store.dispatch(new EditFileDataAction(submissionId, sectionId, fileUUID, data)); + }; + /** + * Remove bitstream from the state + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param fileUUID + * The bitstream UUID + */ + SectionUploadService.prototype.removeUploadedFile = function (submissionId, sectionId, fileUUID) { + this.store.dispatch(new DeleteUploadedFileAction(submissionId, sectionId, fileUUID)); + }; + SectionUploadService = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [Store]) + ], SectionUploadService); + return SectionUploadService; +}()); +export { SectionUploadService }; +//# sourceMappingURL=section-upload.service.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/section-upload.service.js.map b/src/app/submission/sections/upload/section-upload.service.js.map new file mode 100644 index 0000000000..0fc84f6554 --- /dev/null +++ b/src/app/submission/sections/upload/section-upload.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"section-upload.service.js","sourceRoot":"","sources":["section-upload.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/selectors.js b/src/app/submission/selectors.js new file mode 100644 index 0000000000..b3e4548de9 --- /dev/null +++ b/src/app/submission/selectors.js @@ -0,0 +1,57 @@ +import { createSelector } from '@ngrx/store'; +import { hasValue } from '../shared/empty.util'; +import { submissionSelector } from './submission.reducers'; +/** + * Export a function to return a subset of the state by key + */ +export function keySelector(parentSelector, subState, key) { + return createSelector(parentSelector, function (state) { + if (hasValue(state) && hasValue(state[subState])) { + return state[subState][key]; + } + else { + return undefined; + } + }); +} +/** + * Export a function to return a subset of the state + */ +export function subStateSelector(parentSelector, subState) { + return createSelector(parentSelector, function (state) { + if (hasValue(state) && hasValue(state[subState])) { + return state[subState]; + } + else { + return undefined; + } + }); +} +export function submissionObjectFromIdSelector(submissionId) { + return keySelector(submissionSelector, 'objects', submissionId); +} +export function submissionObjectSectionsFromIdSelector(submissionId) { + var submissionObjectSelector = submissionObjectFromIdSelector(submissionId); + return subStateSelector(submissionObjectSelector, 'sections'); +} +export function submissionUploadedFilesFromIdSelector(submissionId, sectionId) { + var sectionDataSelector = submissionSectionDataFromIdSelector(submissionId, sectionId); + return subStateSelector(sectionDataSelector, 'files'); +} +export function submissionUploadedFileFromUuidSelector(submissionId, sectionId, uuid) { + var filesSelector = submissionSectionDataFromIdSelector(submissionId, sectionId); + return keySelector(filesSelector, 'files', uuid); +} +export function submissionSectionFromIdSelector(submissionId, sectionId) { + var submissionIdSelector = submissionObjectFromIdSelector(submissionId); + return keySelector(submissionIdSelector, 'sections', sectionId); +} +export function submissionSectionDataFromIdSelector(submissionId, sectionId) { + var submissionIdSelector = submissionSectionFromIdSelector(submissionId, sectionId); + return subStateSelector(submissionIdSelector, 'data'); +} +export function submissionSectionErrorsFromIdSelector(submissionId, sectionId) { + var submissionIdSelector = submissionSectionFromIdSelector(submissionId, sectionId); + return subStateSelector(submissionIdSelector, 'errors'); +} +//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/submission/selectors.js.map b/src/app/submission/selectors.js.map new file mode 100644 index 0000000000..8c321c9ca9 --- /dev/null +++ b/src/app/submission/selectors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAA8B,MAAM,aAAa,CAAC;AAEzE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAmB,MAAM,uBAAuB,CAAC;AAG5E;;GAEG;AACH,MAAM,sBAA4B,cAAkC,EAAE,QAAgB,EAAE,GAAW;IACjG,OAAO,cAAc,CAAC,cAAc,EAAE,UAAC,KAAQ;QAC7C,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE;YAChD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;SAC7B;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,2BAAiC,cAAkC,EAAE,QAAgB;IACzF,OAAO,cAAc,CAAC,cAAc,EAAE,UAAC,KAAQ;QAC7C,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE;YAChD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC;SACxB;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,yCAAyC,YAAoB;IACjE,OAAO,WAAW,CAAyC,kBAAkB,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AAC1G,CAAC;AAED,MAAM,iDAAiD,YAAoB;IACzE,IAAM,wBAAwB,GAAG,8BAA8B,CAAC,YAAY,CAAC,CAAC;IAC9E,OAAO,gBAAgB,CAAyC,wBAAwB,EAAE,UAAU,CAAC,CAAC;AACxG,CAAC;AAED,MAAM,gDAAgD,YAAoB,EAAE,SAAiB;IAC3F,IAAM,mBAAmB,GAAG,mCAAmC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACzF,OAAO,gBAAgB,CAAyC,mBAAmB,EAAE,OAAO,CAAC,CAAC;AAChG,CAAC;AAED,MAAM,iDAAiD,YAAoB,EAAE,SAAiB,EAAE,IAAY;IAC1G,IAAM,aAAa,GAAI,mCAAmC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACpF,OAAO,WAAW,CAAuB,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,0CAA0C,YAAoB,EAAE,SAAiB;IACrF,IAAM,oBAAoB,GAAI,8BAA8B,CAAC,YAAY,CAAC,CAAC;IAC3E,OAAO,WAAW,CAAyC,oBAAoB,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;AAC1G,CAAC;AAED,MAAM,8CAA8C,YAAoB,EAAE,SAAiB;IACzF,IAAM,oBAAoB,GAAI,+BAA+B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACvF,OAAO,gBAAgB,CAA2C,oBAAoB,EAAE,MAAM,CAAC,CAAC;AAClG,CAAC;AAED,MAAM,gDAAgD,YAAoB,EAAE,SAAiB;IAC3F,IAAM,oBAAoB,GAAI,+BAA+B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACvF,OAAO,gBAAgB,CAA2C,oBAAoB,EAAE,QAAQ,CAAC,CAAC;AACpG,CAAC"} \ No newline at end of file diff --git a/src/app/submission/server-submission.service.js b/src/app/submission/server-submission.service.js new file mode 100644 index 0000000000..56aa61a376 --- /dev/null +++ b/src/app/submission/server-submission.service.js @@ -0,0 +1,52 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { of as observableOf } from 'rxjs'; +import { SubmissionService } from './submission.service'; +/** + * Instance of SubmissionService used on SSR. + */ +var ServerSubmissionService = /** @class */ (function (_super) { + tslib_1.__extends(ServerSubmissionService, _super); + function ServerSubmissionService() { + return _super !== null && _super.apply(this, arguments) || this; + } + /** + * Override createSubmission parent method to return an empty observable + * + * @return Observable + * observable of SubmissionObject + */ + ServerSubmissionService.prototype.createSubmission = function () { + return observableOf(null); + }; + /** + * Override retrieveSubmission parent method to return an empty observable + * + * @return Observable + * observable of SubmissionObject + */ + ServerSubmissionService.prototype.retrieveSubmission = function (submissionId) { + return observableOf(null); + }; + /** + * Override startAutoSave parent method and return without doing anything + * + * @param submissionId + * The submission id + */ + ServerSubmissionService.prototype.startAutoSave = function (submissionId) { + return; + }; + /** + * Override startAutoSave parent method and return without doing anything + */ + ServerSubmissionService.prototype.stopAutoSave = function () { + return; + }; + ServerSubmissionService = tslib_1.__decorate([ + Injectable() + ], ServerSubmissionService); + return ServerSubmissionService; +}(SubmissionService)); +export { ServerSubmissionService }; +//# sourceMappingURL=server-submission.service.js.map \ No newline at end of file diff --git a/src/app/submission/server-submission.service.js.map b/src/app/submission/server-submission.service.js.map new file mode 100644 index 0000000000..e3d78e3367 --- /dev/null +++ b/src/app/submission/server-submission.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-submission.service.js","sourceRoot":"","sources":["server-submission.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD;;GAEG;AAEH;IAA6C,mDAAiB;IAA9D;;IAsCA,CAAC;IApCC;;;;;OAKG;IACH,kDAAgB,GAAhB;QACE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,oDAAkB,GAAlB,UAAmB,YAAY;QAC7B,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,+CAAa,GAAb,UAAc,YAAY;QACxB,OAAO;IACT,CAAC;IAED;;OAEG;IACH,8CAAY,GAAZ;QACE,OAAO;IACT,CAAC;IArCU,uBAAuB;QADnC,UAAU,EAAE;OACA,uBAAuB,CAsCnC;IAAD,8BAAC;CAAA,AAtCD,CAA6C,iBAAiB,GAsC7D;SAtCY,uBAAuB"} \ No newline at end of file diff --git a/src/app/submission/submission.effects.js b/src/app/submission/submission.effects.js new file mode 100644 index 0000000000..27706d2fb2 --- /dev/null +++ b/src/app/submission/submission.effects.js @@ -0,0 +1,5 @@ +import { SubmissionObjectEffects } from './objects/submission-objects.effects'; +export var submissionEffects = [ + SubmissionObjectEffects +]; +//# sourceMappingURL=submission.effects.js.map \ No newline at end of file diff --git a/src/app/submission/submission.effects.js.map b/src/app/submission/submission.effects.js.map new file mode 100644 index 0000000000..71137addc9 --- /dev/null +++ b/src/app/submission/submission.effects.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission.effects.js","sourceRoot":"","sources":["submission.effects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC/B,uBAAuB;CACxB,CAAC"} \ No newline at end of file diff --git a/src/app/submission/submission.module.js b/src/app/submission/submission.module.js new file mode 100644 index 0000000000..fa7dac0b7c --- /dev/null +++ b/src/app/submission/submission.module.js @@ -0,0 +1,88 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { TranslateModule } from '@ngx-translate/core'; +import { CoreModule } from '../core/core.module'; +import { SharedModule } from '../shared/shared.module'; +import { SubmissionSectionformComponent } from './sections/form/section-form.component'; +import { SectionsDirective } from './sections/sections.directive'; +import { SectionsService } from './sections/sections.service'; +import { SubmissionFormCollectionComponent } from './form/collection/submission-form-collection.component'; +import { SubmissionFormFooterComponent } from './form/footer/submission-form-footer.component'; +import { SubmissionFormComponent } from './form/submission-form.component'; +import { SubmissionFormSectionAddComponent } from './form/section-add/submission-form-section-add.component'; +import { SubmissionSectionContainerComponent } from './sections/container/section-container.component'; +import { CommonModule } from '@angular/common'; +import { StoreModule } from '@ngrx/store'; +import { EffectsModule } from '@ngrx/effects'; +import { submissionReducers } from './submission.reducers'; +import { submissionEffects } from './submission.effects'; +import { SubmissionSectionUploadComponent } from './sections/upload/section-upload.component'; +import { SectionUploadService } from './sections/upload/section-upload.service'; +import { SubmissionUploadFilesComponent } from './form/submission-upload-files/submission-upload-files.component'; +import { SubmissionSectionLicenseComponent } from './sections/license/section-license.component'; +import { SubmissionUploadsConfigService } from '../core/config/submission-uploads-config.service'; +import { SubmissionEditComponent } from './edit/submission-edit.component'; +import { SubmissionSectionUploadFileComponent } from './sections/upload/file/section-upload-file.component'; +import { SubmissionSectionUploadFileEditComponent } from './sections/upload/file/edit/section-upload-file-edit.component'; +import { SubmissionSectionUploadFileViewComponent } from './sections/upload/file/view/section-upload-file-view.component'; +import { SubmissionSectionUploadAccessConditionsComponent } from './sections/upload/accessConditions/submission-section-upload-access-conditions.component'; +import { SubmissionSubmitComponent } from './submit/submission-submit.component'; +var SubmissionModule = /** @class */ (function () { + /** + * This module handles all components that are necessary for the submission process + */ + function SubmissionModule() { + } + SubmissionModule = tslib_1.__decorate([ + NgModule({ + imports: [ + CommonModule, + CoreModule, + SharedModule, + StoreModule.forFeature('submission', submissionReducers, {}), + EffectsModule.forFeature(submissionEffects), + TranslateModule + ], + declarations: [ + SubmissionSectionUploadAccessConditionsComponent, + SubmissionSectionUploadComponent, + SubmissionSectionformComponent, + SubmissionSectionLicenseComponent, + SectionsDirective, + SubmissionSectionContainerComponent, + SubmissionEditComponent, + SubmissionFormSectionAddComponent, + SubmissionFormCollectionComponent, + SubmissionFormComponent, + SubmissionFormFooterComponent, + SubmissionSubmitComponent, + SubmissionUploadFilesComponent, + SubmissionSectionUploadFileComponent, + SubmissionSectionUploadFileEditComponent, + SubmissionSectionUploadFileViewComponent + ], + entryComponents: [ + SubmissionSectionUploadComponent, + SubmissionSectionformComponent, + SubmissionSectionLicenseComponent, + SubmissionSectionContainerComponent + ], + exports: [ + SubmissionEditComponent, + SubmissionFormComponent, + SubmissionSubmitComponent + ], + providers: [ + SectionUploadService, + SectionsService, + SubmissionUploadsConfigService + ] + }) + /** + * This module handles all components that are necessary for the submission process + */ + ], SubmissionModule); + return SubmissionModule; +}()); +export { SubmissionModule }; +//# sourceMappingURL=submission.module.js.map \ No newline at end of file diff --git a/src/app/submission/submission.module.js.map b/src/app/submission/submission.module.js.map new file mode 100644 index 0000000000..4a421ea1c2 --- /dev/null +++ b/src/app/submission/submission.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission.module.js","sourceRoot":"","sources":["submission.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,iCAAiC,EAAE,MAAM,wDAAwD,CAAC;AAC3G,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,iCAAiC,EAAE,MAAM,0DAA0D,CAAC;AAC7G,OAAO,EAAE,mCAAmC,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gCAAgC,EAAE,MAAM,4CAA4C,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,EAAE,iCAAiC,EAAE,MAAM,8CAA8C,CAAC;AACjG,OAAO,EAAE,8BAA8B,EAAE,MAAM,kDAAkD,CAAC;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,oCAAoC,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,wCAAwC,EAAE,MAAM,gEAAgE,CAAC;AAC1H,OAAO,EAAE,wCAAwC,EAAE,MAAM,gEAAgE,CAAC;AAC1H,OAAO,EAAE,gDAAgD,EAAE,MAAM,0FAA0F,CAAC;AAC5J,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAiDjF;IAHA;;OAEG;IACH;IACA,CAAC;IADY,gBAAgB;QA/C5B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,UAAU;gBACV,YAAY;gBACZ,WAAW,CAAC,UAAU,CAAC,YAAY,EAAE,kBAAkB,EAAE,EAAE,CAAC;gBAC5D,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC;gBAC3C,eAAe;aAChB;YACD,YAAY,EAAE;gBACZ,gDAAgD;gBAChD,gCAAgC;gBAChC,8BAA8B;gBAC9B,iCAAiC;gBACjC,iBAAiB;gBACjB,mCAAmC;gBACnC,uBAAuB;gBACvB,iCAAiC;gBACjC,iCAAiC;gBACjC,uBAAuB;gBACvB,6BAA6B;gBAC7B,yBAAyB;gBACzB,8BAA8B;gBAC9B,oCAAoC;gBACpC,wCAAwC;gBACxC,wCAAwC;aACzC;YACD,eAAe,EAAE;gBACf,gCAAgC;gBAChC,8BAA8B;gBAC9B,iCAAiC;gBACjC,mCAAmC;aAAC;YACtC,OAAO,EAAE;gBACP,uBAAuB;gBACvB,uBAAuB;gBACvB,yBAAyB;aAC1B;YACD,SAAS,EAAE;gBACT,oBAAoB;gBACpB,eAAe;gBACf,8BAA8B;aAC/B;SACF,CAAC;QAEF;;WAEG;OACU,gBAAgB,CAC5B;IAAD,uBAAC;CAAA,AADD,IACC;SADY,gBAAgB"} \ No newline at end of file diff --git a/src/app/submission/submission.reducers.js b/src/app/submission/submission.reducers.js new file mode 100644 index 0000000000..884658462d --- /dev/null +++ b/src/app/submission/submission.reducers.js @@ -0,0 +1,7 @@ +import { createFeatureSelector } from '@ngrx/store'; +import { submissionObjectReducer } from './objects/submission-objects.reducer'; +export var submissionReducers = { + objects: submissionObjectReducer, +}; +export var submissionSelector = createFeatureSelector('submission'); +//# sourceMappingURL=submission.reducers.js.map \ No newline at end of file diff --git a/src/app/submission/submission.reducers.js.map b/src/app/submission/submission.reducers.js.map new file mode 100644 index 0000000000..4344de474d --- /dev/null +++ b/src/app/submission/submission.reducers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission.reducers.js","sourceRoot":"","sources":["submission.reducers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEtE,OAAO,EACL,uBAAuB,EAExB,MAAM,sCAAsC,CAAC;AAS9C,MAAM,CAAC,IAAM,kBAAkB,GAAsC;IACnE,OAAO,EAAE,uBAAuB;CACjC,CAAC;AAEF,MAAM,CAAC,IAAM,kBAAkB,GAAG,qBAAqB,CAAkB,YAAY,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/submission/submission.service.js b/src/app/submission/submission.service.js new file mode 100644 index 0000000000..588d138ae9 --- /dev/null +++ b/src/app/submission/submission.service.js @@ -0,0 +1,448 @@ +import * as tslib_1 from "tslib"; +import { Inject, Injectable } from '@angular/core'; +import { HttpHeaders } from '@angular/common/http'; +import { Router } from '@angular/router'; +import { of as observableOf, timer as observableTimer } from 'rxjs'; +import { catchError, distinctUntilChanged, filter, find, first, map, startWith } from 'rxjs/operators'; +import { Store } from '@ngrx/store'; +import { TranslateService } from '@ngx-translate/core'; +import { submissionSelector } from './submission.reducers'; +import { hasValue, isEmpty, isNotUndefined } from '../shared/empty.util'; +import { CancelSubmissionFormAction, ChangeSubmissionCollectionAction, DiscardSubmissionAction, InitSubmissionFormAction, ResetSubmissionFormAction, SaveAndDepositSubmissionAction, SaveForLaterSubmissionFormAction, SaveSubmissionFormAction, SaveSubmissionSectionFormAction, SetActiveSectionAction } from './objects/submission-objects.actions'; +import { submissionObjectFromIdSelector } from './selectors'; +import { GLOBAL_CONFIG } from '../../config'; +import { SubmissionRestService } from '../core/submission/submission-rest.service'; +import { SubmissionScopeType } from '../core/submission/submission-scope-type'; +import { RouteService } from '../shared/services/route.service'; +import { NotificationsService } from '../shared/notifications/notifications.service'; +import { RemoteData } from '../core/data/remote-data'; +import { RemoteDataError } from '../core/data/remote-data-error'; +/** + * A service that provides methods used in submission process. + */ +var SubmissionService = /** @class */ (function () { + /** + * Initialize service variables + * @param {GlobalConfig} EnvConfig + * @param {NotificationsService} notificationsService + * @param {SubmissionRestService} restService + * @param {Router} router + * @param {RouteService} routeService + * @param {Store} store + * @param {TranslateService} translate + */ + function SubmissionService(EnvConfig, notificationsService, restService, router, routeService, store, translate) { + this.EnvConfig = EnvConfig; + this.notificationsService = notificationsService; + this.restService = restService; + this.router = router; + this.routeService = routeService; + this.store = store; + this.translate = translate; + } + /** + * Dispatch a new [ChangeSubmissionCollectionAction] + * + * @param submissionId + * The submission id + * @param collectionId + * The collection id + */ + SubmissionService.prototype.changeSubmissionCollection = function (submissionId, collectionId) { + this.store.dispatch(new ChangeSubmissionCollectionAction(submissionId, collectionId)); + }; + /** + * Perform a REST call to create a new workspaceitem and return response + * + * @return Observable + * observable of SubmissionObject + */ + SubmissionService.prototype.createSubmission = function () { + return this.restService.postToEndpoint('workspaceitems', {}).pipe(map(function (workspaceitem) { return workspaceitem[0]; }), catchError(function () { return observableOf({}); })); + }; + /** + * Perform a REST call to deposit a workspaceitem and return response + * + * @param selfUrl + * The workspaceitem self url + * @return Observable + * observable of SubmissionObject + */ + SubmissionService.prototype.depositSubmission = function (selfUrl) { + var options = Object.create({}); + var headers = new HttpHeaders(); + headers = headers.append('Content-Type', 'text/uri-list'); + options.headers = headers; + return this.restService.postToEndpoint('workflowitems', selfUrl, null, options); + }; + /** + * Perform a REST call to delete a workspaceitem and return response + * + * @param submissionId + * The submission id + * @return Observable + * observable of SubmissionObject + */ + SubmissionService.prototype.discardSubmission = function (submissionId) { + return this.restService.deleteById(submissionId); + }; + /** + * Dispatch a new [InitSubmissionFormAction] + * + * @param collectionId + * The collection id + * @param submissionId + * The submission id + * @param selfUrl + * The workspaceitem self url + * @param submissionDefinition + * The [SubmissionDefinitionsModel] that define submission configuration + * @param sections + * The [WorkspaceitemSectionsObject] that define submission sections init data + * @param errors + * The [SubmissionSectionError] that define submission sections init errors + */ + SubmissionService.prototype.dispatchInit = function (collectionId, submissionId, selfUrl, submissionDefinition, sections, errors) { + this.store.dispatch(new InitSubmissionFormAction(collectionId, submissionId, selfUrl, submissionDefinition, sections, errors)); + }; + /** + * Dispatch a new [SaveAndDepositSubmissionAction] + * + * @param submissionId + * The submission id + */ + SubmissionService.prototype.dispatchDeposit = function (submissionId) { + this.store.dispatch(new SaveAndDepositSubmissionAction(submissionId)); + }; + /** + * Dispatch a new [DiscardSubmissionAction] + * + * @param submissionId + * The submission id + */ + SubmissionService.prototype.dispatchDiscard = function (submissionId) { + this.store.dispatch(new DiscardSubmissionAction(submissionId)); + }; + /** + * Dispatch a new [SaveSubmissionFormAction] + * + * @param submissionId + * The submission id + */ + SubmissionService.prototype.dispatchSave = function (submissionId) { + this.store.dispatch(new SaveSubmissionFormAction(submissionId)); + }; + /** + * Dispatch a new [SaveForLaterSubmissionFormAction] + * + * @param submissionId + * The submission id + */ + SubmissionService.prototype.dispatchSaveForLater = function (submissionId) { + this.store.dispatch(new SaveForLaterSubmissionFormAction(submissionId)); + }; + /** + * Dispatch a new [SaveSubmissionSectionFormAction] + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + */ + SubmissionService.prototype.dispatchSaveSection = function (submissionId, sectionId) { + this.store.dispatch(new SaveSubmissionSectionFormAction(submissionId, sectionId)); + }; + /** + * Return the id of the current focused section for the specified submission + * + * @param submissionId + * The submission id + * @return Observable + * observable of section id + */ + SubmissionService.prototype.getActiveSectionId = function (submissionId) { + return this.getSubmissionObject(submissionId).pipe(map(function (submission) { return submission.activeSection; })); + }; + /** + * Return the [SubmissionObjectEntry] for the specified submission + * + * @param submissionId + * The submission id + * @return Observable + * observable of SubmissionObjectEntry + */ + SubmissionService.prototype.getSubmissionObject = function (submissionId) { + return this.store.select(submissionObjectFromIdSelector(submissionId)).pipe(filter(function (submission) { return isNotUndefined(submission); })); + }; + /** + * Return a list of the active [SectionDataObject] belonging to the specified submission + * + * @param submissionId + * The submission id + * @return Observable + * observable with the list of active submission's sections + */ + SubmissionService.prototype.getSubmissionSections = function (submissionId) { + var _this = this; + return this.getSubmissionObject(submissionId).pipe(find(function (submission) { return isNotUndefined(submission.sections) && !submission.isLoading; }), map(function (submission) { return submission.sections; }), map(function (sections) { + var availableSections = []; + Object.keys(sections) + .filter(function (sectionId) { return !_this.isSectionHidden(sections[sectionId]); }) + .forEach(function (sectionId) { + var sectionObject = Object.create({}); + sectionObject.config = sections[sectionId].config; + sectionObject.mandatory = sections[sectionId].mandatory; + sectionObject.data = sections[sectionId].data; + sectionObject.errors = sections[sectionId].errors; + sectionObject.header = sections[sectionId].header; + sectionObject.id = sectionId; + sectionObject.sectionType = sections[sectionId].sectionType; + availableSections.push(sectionObject); + }); + return availableSections; + }), startWith([]), distinctUntilChanged()); + }; + /** + * Return a list of the disabled [SectionDataObject] belonging to the specified submission + * + * @param submissionId + * The submission id + * @return Observable + * observable with the list of disabled submission's sections + */ + SubmissionService.prototype.getDisabledSectionsList = function (submissionId) { + var _this = this; + return this.getSubmissionObject(submissionId).pipe(filter(function (submission) { return isNotUndefined(submission.sections) && !submission.isLoading; }), map(function (submission) { return submission.sections; }), map(function (sections) { + var disabledSections = []; + Object.keys(sections) + .filter(function (sectionId) { return !_this.isSectionHidden(sections[sectionId]); }) + .filter(function (sectionId) { return !sections[sectionId].enabled; }) + .forEach(function (sectionId) { + var sectionObject = Object.create({}); + sectionObject.header = sections[sectionId].header; + sectionObject.id = sectionId; + disabledSections.push(sectionObject); + }); + return disabledSections; + }), startWith([]), distinctUntilChanged()); + }; + /** + * Return the correct REST endpoint link path depending on the page route + * + * @return string + * link path + */ + SubmissionService.prototype.getSubmissionObjectLinkName = function () { + var url = this.router.routerState.snapshot.url; + if (url.startsWith('/workspaceitems') || url.startsWith('/submit')) { + return 'workspaceitems'; + } + else if (url.startsWith('/workflowitems')) { + return 'workflowitems'; + } + else { + return 'edititems'; + } + }; + /** + * Return the submission scope + * + * @return SubmissionScopeType + * the SubmissionScopeType + */ + SubmissionService.prototype.getSubmissionScope = function () { + var scope; + switch (this.getSubmissionObjectLinkName()) { + case 'workspaceitems': + scope = SubmissionScopeType.WorkspaceItem; + break; + case 'workflowitems': + scope = SubmissionScopeType.WorkflowItem; + break; + } + return scope; + }; + /** + * Return the validity status of the submission + * + * @param submissionId + * The submission id + * @return Observable + * observable with submission validity status + */ + SubmissionService.prototype.getSubmissionStatus = function (submissionId) { + var _this = this; + return this.store.select(submissionSelector).pipe(map(function (submissions) { return submissions.objects[submissionId]; }), filter(function (item) { return isNotUndefined(item) && isNotUndefined(item.sections); }), map(function (item) { return item.sections; }), map(function (sections) { + var states = []; + if (isNotUndefined(sections)) { + Object.keys(sections) + .filter(function (sectionId) { return sections.hasOwnProperty(sectionId); }) + .filter(function (sectionId) { return !_this.isSectionHidden(sections[sectionId]); }) + .filter(function (sectionId) { return sections[sectionId].enabled; }) + .filter(function (sectionId) { return sections[sectionId].isValid === false; }) + .forEach(function (sectionId) { + states.push(sections[sectionId].isValid); + }); + } + return !isEmpty(sections) && isEmpty(states); + }), distinctUntilChanged(), startWith(false)); + }; + /** + * Return the save processing status of the submission + * + * @param submissionId + * The submission id + * @return Observable + * observable with submission save processing status + */ + SubmissionService.prototype.getSubmissionSaveProcessingStatus = function (submissionId) { + return this.getSubmissionObject(submissionId).pipe(map(function (state) { return state.savePending; }), distinctUntilChanged(), startWith(false)); + }; + /** + * Return the deposit processing status of the submission + * + * @param submissionId + * The submission id + * @return Observable + * observable with submission deposit processing status + */ + SubmissionService.prototype.getSubmissionDepositProcessingStatus = function (submissionId) { + return this.getSubmissionObject(submissionId).pipe(map(function (state) { return state.depositPending; }), distinctUntilChanged(), startWith(false)); + }; + /** + * Return the visibility status of the specified section + * + * @param sectionData + * The section data + * @return boolean + * true if section is hidden, false otherwise + */ + SubmissionService.prototype.isSectionHidden = function (sectionData) { + return (isNotUndefined(sectionData.visibility) + && sectionData.visibility.main === 'HIDDEN' + && sectionData.visibility.other === 'HIDDEN'); + }; + /** + * Return the loading status of the submission + * + * @param submissionId + * The submission id + * @return Observable + * observable with submission loading status + */ + SubmissionService.prototype.isSubmissionLoading = function (submissionId) { + return this.getSubmissionObject(submissionId).pipe(map(function (submission) { return submission.isLoading; }), distinctUntilChanged()); + }; + /** + * Show a notification when a new section is added to submission form + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + * @param sectionType + * The section type + */ + SubmissionService.prototype.notifyNewSection = function (submissionId, sectionId, sectionType) { + var m = this.translate.instant('submission.sections.general.metadata-extracted-new-section', { sectionId: sectionId }); + this.notificationsService.info(null, m, null, true); + }; + /** + * Redirect to MyDspace page + */ + SubmissionService.prototype.redirectToMyDSpace = function () { + var _this = this; + this.routeService.getPreviousUrl().pipe(first()).subscribe(function (previousUrl) { + if (isEmpty(previousUrl) || !previousUrl.startsWith('/mydspace')) { + _this.router.navigate(['/mydspace']); + } + else { + _this.router.navigateByUrl(previousUrl); + } + }); + }; + /** + * Dispatch a new [CancelSubmissionFormAction] + */ + SubmissionService.prototype.resetAllSubmissionObjects = function () { + this.store.dispatch(new CancelSubmissionFormAction()); + }; + /** + * Dispatch a new [ResetSubmissionFormAction] + * + * @param collectionId + * The collection id + * @param submissionId + * The submission id + * @param selfUrl + * The workspaceitem self url + * @param submissionDefinition + * The [SubmissionDefinitionsModel] that define submission configuration + * @param sections + * The [WorkspaceitemSectionsObject] that define submission sections init data + */ + SubmissionService.prototype.resetSubmissionObject = function (collectionId, submissionId, selfUrl, submissionDefinition, sections) { + this.store.dispatch(new ResetSubmissionFormAction(collectionId, submissionId, selfUrl, sections, submissionDefinition)); + }; + /** + * Perform a REST call to retrieve an existing workspaceitem/workflowitem and return response + * + * @return Observable> + * observable of RemoteData + */ + SubmissionService.prototype.retrieveSubmission = function (submissionId) { + return this.restService.getDataById(this.getSubmissionObjectLinkName(), submissionId).pipe(find(function (submissionObjects) { return isNotUndefined(submissionObjects); }), map(function (submissionObjects) { return new RemoteData(false, false, true, null, submissionObjects[0]); }), catchError(function (errorResponse) { + return observableOf(new RemoteData(false, false, false, new RemoteDataError(errorResponse.statusCode, errorResponse.statusText, errorResponse.errorMessage), null)); + })); + }; + /** + * Dispatch a new [SetActiveSectionAction] + * + * @param submissionId + * The submission id + * @param sectionId + * The section id + */ + SubmissionService.prototype.setActiveSection = function (submissionId, sectionId) { + this.store.dispatch(new SetActiveSectionAction(submissionId, sectionId)); + }; + /** + * Allow to save automatically the submission + * + * @param submissionId + * The submission id + */ + SubmissionService.prototype.startAutoSave = function (submissionId) { + var _this = this; + this.stopAutoSave(); + // AUTOSAVE submission + // Retrieve interval from config and convert to milliseconds + var duration = this.EnvConfig.submission.autosave.timer * (1000 * 60); + // Dispatch save action after given duration + this.timer$ = observableTimer(duration, duration); + this.autoSaveSub = this.timer$ + .subscribe(function () { return _this.store.dispatch(new SaveSubmissionFormAction(submissionId)); }); + }; + /** + * Unsubscribe subscription to timer + */ + SubmissionService.prototype.stopAutoSave = function () { + if (hasValue(this.autoSaveSub)) { + this.autoSaveSub.unsubscribe(); + this.autoSaveSub = null; + } + }; + SubmissionService = tslib_1.__decorate([ + Injectable(), + tslib_1.__param(0, Inject(GLOBAL_CONFIG)), + tslib_1.__metadata("design:paramtypes", [Object, NotificationsService, + SubmissionRestService, + Router, + RouteService, + Store, + TranslateService]) + ], SubmissionService); + return SubmissionService; +}()); +export { SubmissionService }; +//# sourceMappingURL=submission.service.js.map \ No newline at end of file diff --git a/src/app/submission/submission.service.js.map b/src/app/submission/submission.service.js.map new file mode 100644 index 0000000000..80389d58f0 --- /dev/null +++ b/src/app/submission/submission.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission.service.js","sourceRoot":"","sources":["submission.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/submit/submission-submit.component.js b/src/app/submission/submit/submission-submit.component.js new file mode 100644 index 0000000000..bb16f3ae38 --- /dev/null +++ b/src/app/submission/submit/submission-submit.component.js @@ -0,0 +1,85 @@ +import * as tslib_1 from "tslib"; +import { ChangeDetectorRef, Component, ViewContainerRef } from '@angular/core'; +import { Router } from '@angular/router'; +import { hasValue, isEmpty, isNotNull } from '../../shared/empty.util'; +import { TranslateService } from '@ngx-translate/core'; +import { NotificationsService } from '../../shared/notifications/notifications.service'; +import { SubmissionService } from '../submission.service'; +/** + * This component allows to submit a new workspaceitem. + */ +var SubmissionSubmitComponent = /** @class */ (function () { + /** + * Initialize instance variables + * + * @param {ChangeDetectorRef} changeDetectorRef + * @param {NotificationsService} notificationsService + * @param {SubmissionService} submissioService + * @param {Router} router + * @param {TranslateService} translate + * @param {ViewContainerRef} viewContainerRef + */ + function SubmissionSubmitComponent(changeDetectorRef, notificationsService, router, submissioService, translate, viewContainerRef) { + this.changeDetectorRef = changeDetectorRef; + this.notificationsService = notificationsService; + this.router = router; + this.submissioService = submissioService; + this.translate = translate; + this.viewContainerRef = viewContainerRef; + /** + * Array to track all subscriptions and unsubscribe them onDestroy + * @type {Array} + */ + this.subs = []; + } + /** + * Create workspaceitem on the server and initialize all instance variables + */ + SubmissionSubmitComponent.prototype.ngOnInit = function () { + var _this = this; + // NOTE execute the code on the browser side only, otherwise it is executed twice + this.subs.push(this.submissioService.createSubmission() + .subscribe(function (submissionObject) { + // NOTE new submission is created on the browser side only + if (isNotNull(submissionObject)) { + if (isEmpty(submissionObject)) { + _this.notificationsService.info(null, _this.translate.get('submission.general.cannot_submit')); + _this.router.navigate(['/mydspace']); + } + else { + _this.collectionId = submissionObject.collection.id; + _this.selfUrl = submissionObject.self; + _this.submissionDefinition = submissionObject.submissionDefinition; + _this.submissionId = submissionObject.id; + _this.changeDetectorRef.detectChanges(); + } + } + })); + }; + /** + * Unsubscribe from all subscriptions + */ + SubmissionSubmitComponent.prototype.ngOnDestroy = function () { + this.subs + .filter(function (subscription) { return hasValue(subscription); }) + .forEach(function (subscription) { return subscription.unsubscribe(); }); + this.viewContainerRef.clear(); + this.changeDetectorRef.markForCheck(); + }; + SubmissionSubmitComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-submission-submit', + styleUrls: ['./submission-submit.component.scss'], + templateUrl: './submission-submit.component.html' + }), + tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, + NotificationsService, + Router, + SubmissionService, + TranslateService, + ViewContainerRef]) + ], SubmissionSubmitComponent); + return SubmissionSubmitComponent; +}()); +export { SubmissionSubmitComponent }; +//# sourceMappingURL=submission-submit.component.js.map \ No newline at end of file diff --git a/src/app/submission/submit/submission-submit.component.js.map b/src/app/submission/submit/submission-submit.component.js.map new file mode 100644 index 0000000000..91ead0ea3d --- /dev/null +++ b/src/app/submission/submit/submission-submit.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-submit.component.js","sourceRoot":"","sources":["submission-submit.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAqB,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAI1D;;GAEG;AAMH;IAgCE;;;;;;;;;OASG;IACH,mCAAoB,iBAAoC,EACpC,oBAA0C,EAC1C,MAAc,EACd,gBAAmC,EACnC,SAA2B,EAC3B,gBAAkC;QALlC,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,WAAM,GAAN,MAAM,CAAQ;QACd,qBAAgB,GAAhB,gBAAgB,CAAmB;QACnC,cAAS,GAAT,SAAS,CAAkB;QAC3B,qBAAgB,GAAhB,gBAAgB,CAAkB;QArBtD;;;WAGG;QACO,SAAI,GAAmB,EAAE,CAAC;IAkBpC,CAAC;IAED;;OAEG;IACH,4CAAQ,GAAR;QAAA,iBAoBC;QAnBC,iFAAiF;QACjF,IAAI,CAAC,IAAI,CAAC,IAAI,CACZ,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE;aACrC,SAAS,CAAC,UAAC,gBAAkC;YAC5C,0DAA0D;YAC1D,IAAI,SAAS,CAAC,gBAAgB,CAAC,EAAE;gBAC/B,IAAI,OAAO,CAAC,gBAAgB,CAAC,EAAE;oBAC7B,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC,CAAC;oBAC7F,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;iBACrC;qBAAM;oBACL,KAAI,CAAC,YAAY,GAAI,gBAAgB,CAAC,UAAyB,CAAC,EAAE,CAAC;oBACnE,KAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC;oBACrC,KAAI,CAAC,oBAAoB,GAAI,gBAAgB,CAAC,oBAAmD,CAAC;oBAClG,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC,EAAE,CAAC;oBACxC,KAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;iBACxC;aACF;QACH,CAAC,CAAC,CACL,CAAA;IACH,CAAC;IAED;;OAEG;IACH,+CAAW,GAAX;QACE,IAAI,CAAC,IAAI;aACN,MAAM,CAAC,UAAC,YAAY,IAAK,OAAA,QAAQ,CAAC,YAAY,CAAC,EAAtB,CAAsB,CAAC;aAChD,OAAO,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,WAAW,EAAE,EAA1B,CAA0B,CAAC,CAAC;QAEzD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IArFU,yBAAyB;QALrC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;iDA2CuC,iBAAiB;YACd,oBAAoB;YAClC,MAAM;YACI,iBAAiB;YACxB,gBAAgB;YACT,gBAAgB;OA/C3C,yBAAyB,CAuFrC;IAAD,gCAAC;CAAA,AAvFD,IAuFC;SAvFY,yBAAyB"} \ No newline at end of file diff --git a/src/app/submission/utils/parseSectionErrorPaths.js b/src/app/submission/utils/parseSectionErrorPaths.js new file mode 100644 index 0000000000..cc2e9be4da --- /dev/null +++ b/src/app/submission/utils/parseSectionErrorPaths.js @@ -0,0 +1,30 @@ +import { hasValue } from '../../shared/empty.util'; +var regex = /([^\/]+)/g; +// const regex = /\/sections\/(.*)\/(.*)\/(.*)/; +var regexShort = /\/sections\/(.*)/; +/** + * The following method accept an array of section path strings and return a path object + * @param {string | string[]} path + * @returns {SectionErrorPath[]} + */ +var parseSectionErrorPaths = function (path) { + var paths = typeof path === 'string' ? [path] : path; + return paths.map(function (item) { + if (item.match(regex) && item.match(regex).length > 2) { + return { + sectionId: item.match(regex)[1], + fieldId: item.match(regex)[2], + fieldIndex: hasValue(item.match(regex)[3]) ? +item.match(regex)[3] : 0, + originalPath: item, + }; + } + else { + return { + sectionId: item.match(regexShort)[1], + originalPath: item, + }; + } + }); +}; +export default parseSectionErrorPaths; +//# sourceMappingURL=parseSectionErrorPaths.js.map \ No newline at end of file diff --git a/src/app/submission/utils/parseSectionErrorPaths.js.map b/src/app/submission/utils/parseSectionErrorPaths.js.map new file mode 100644 index 0000000000..888d195168 --- /dev/null +++ b/src/app/submission/utils/parseSectionErrorPaths.js.map @@ -0,0 +1 @@ +{"version":3,"file":"parseSectionErrorPaths.js","sourceRoot":"","sources":["parseSectionErrorPaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AA4BnD,IAAM,KAAK,GAAG,WAAW,CAAC;AAC1B,gDAAgD;AAChD,IAAM,UAAU,GAAG,kBAAkB,CAAC;AAEtC;;;;GAIG;AACH,IAAM,sBAAsB,GAAG,UAAC,IAAuB;IACrD,IAAM,KAAK,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEvD,OAAO,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI;QAClB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACrD,OAAO;gBACL,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC7B,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtE,YAAY,EAAE,IAAI;aACnB,CAAC;SACH;aAAM;YACL,OAAO;gBACL,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACpC,YAAY,EAAE,IAAI;aACnB,CAAC;SACH;IAEH,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,sBAAsB,CAAC"} \ No newline at end of file diff --git a/src/app/submission/utils/parseSectionErrors.js b/src/app/submission/utils/parseSectionErrors.js new file mode 100644 index 0000000000..b8aaab9b7f --- /dev/null +++ b/src/app/submission/utils/parseSectionErrors.js @@ -0,0 +1,23 @@ +import { default as parseSectionErrorPaths } from './parseSectionErrorPaths'; +/** + * the following method accept an array of SubmissionObjectError and return a section errors object + * @param {errors: SubmissionObjectError[]} errors + * @returns {any} + */ +var parseSectionErrors = function (errors) { + if (errors === void 0) { errors = []; } + var errorsList = Object.create({}); + errors.forEach(function (error) { + var paths = parseSectionErrorPaths(error.paths); + paths.forEach(function (path) { + var sectionError = { path: path.originalPath, message: error.message }; + if (!errorsList[path.sectionId]) { + errorsList[path.sectionId] = []; + } + errorsList[path.sectionId].push(sectionError); + }); + }); + return errorsList; +}; +export default parseSectionErrors; +//# sourceMappingURL=parseSectionErrors.js.map \ No newline at end of file diff --git a/src/app/submission/utils/parseSectionErrors.js.map b/src/app/submission/utils/parseSectionErrors.js.map new file mode 100644 index 0000000000..5e12f3df64 --- /dev/null +++ b/src/app/submission/utils/parseSectionErrors.js.map @@ -0,0 +1 @@ +{"version":3,"file":"parseSectionErrors.js","sourceRoot":"","sources":["parseSectionErrors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAoB,MAAM,0BAA0B,CAAC;AAE/F;;;;GAIG;AACH,IAAM,kBAAkB,GAAG,UAAC,MAAoC;IAApC,uBAAA,EAAA,WAAoC;IAC9D,IAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAErC,MAAM,CAAC,OAAO,CAAC,UAAC,KAA4B;QAC1C,IAAM,KAAK,GAAuB,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEtE,KAAK,CAAC,OAAO,CAAC,UAAC,IAAsB;YACnC,IAAM,YAAY,GAAG,EAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAC,CAAC;YACvE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBAC/B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;aACjC;YACD,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"} \ No newline at end of file diff --git a/src/app/thumbnail/thumbnail.component.js b/src/app/thumbnail/thumbnail.component.js new file mode 100644 index 0000000000..d7f5b9b50d --- /dev/null +++ b/src/app/thumbnail/thumbnail.component.js @@ -0,0 +1,46 @@ +import * as tslib_1 from "tslib"; +import { Component, Input } from '@angular/core'; +import { Bitstream } from '../core/shared/bitstream.model'; +import { hasValue } from '../shared/empty.util'; +/** + * This component renders a given Bitstream as a thumbnail. + * One input parameter of type Bitstream is expected. + * If no Bitstream is provided, a holderjs image will be rendered instead. + */ +var ThumbnailComponent = /** @class */ (function () { + function ThumbnailComponent() { + /** + * The default 'holder.js' image + */ + this.defaultImage = 'data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2293%22%20height%3D%22120%22%20viewBox%3D%220%200%2093%20120%22%20preserveAspectRatio%3D%22none%22%3E%3C!--%0ASource%20URL%3A%20holder.js%2F93x120%3Ftext%3DNo%20Thumbnail%0ACreated%20with%20Holder.js%202.8.2.%0ALearn%20more%20at%20http%3A%2F%2Fholderjs.com%0A(c)%202012-2015%20Ivan%20Malopinsky%20-%20http%3A%2F%2Fimsky.co%0A--%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%3C!%5BCDATA%5B%23holder_1543e460b05%20text%20%7B%20fill%3A%23AAAAAA%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A10pt%20%7D%20%5D%5D%3E%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1543e460b05%22%3E%3Crect%20width%3D%2293%22%20height%3D%22120%22%20fill%3D%22%23EEEEEE%22%2F%3E%3Cg%3E%3Ctext%20x%3D%2235.6171875%22%20y%3D%2257%22%3ENo%3C%2Ftext%3E%3Ctext%20x%3D%2210.8125%22%20y%3D%2272%22%3EThumbnail%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E'; + } + ThumbnailComponent.prototype.errorHandler = function (event) { + event.currentTarget.src = this.defaultImage; + }; + ThumbnailComponent.prototype.ngOnInit = function () { + if (hasValue(this.thumbnail) && this.thumbnail.content) { + this.src = this.thumbnail.content; + } + else { + this.src = this.defaultImage; + } + }; + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Bitstream) + ], ThumbnailComponent.prototype, "thumbnail", void 0); + tslib_1.__decorate([ + Input(), + tslib_1.__metadata("design:type", Object) + ], ThumbnailComponent.prototype, "defaultImage", void 0); + ThumbnailComponent = tslib_1.__decorate([ + Component({ + selector: 'ds-thumbnail', + styleUrls: ['./thumbnail.component.scss'], + templateUrl: './thumbnail.component.html' + }) + ], ThumbnailComponent); + return ThumbnailComponent; +}()); +export { ThumbnailComponent }; +//# sourceMappingURL=thumbnail.component.js.map \ No newline at end of file diff --git a/src/app/thumbnail/thumbnail.component.js.map b/src/app/thumbnail/thumbnail.component.js.map new file mode 100644 index 0000000000..98a9a8010a --- /dev/null +++ b/src/app/thumbnail/thumbnail.component.js.map @@ -0,0 +1 @@ +{"version":3,"file":"thumbnail.component.js","sourceRoot":"","sources":["thumbnail.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;;;GAIG;AAOH;IALA;QASE;;WAEG;QACM,iBAAY,GAAI,++BAA++B,CAAC;IAe3gC,CAAC;IAZC,yCAAY,GAAZ,UAAa,KAAK;QAChB,KAAK,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED,qCAAQ,GAAR;QACI,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;YACtD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SACnC;aAAM;YACL,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAA;SAC7B;IACL,CAAC;IAlBQ;QAAR,KAAK,EAAE;0CAAY,SAAS;yDAAC;IAKrB;QAAR,KAAK,EAAE;;4DAAigC;IAP9/B,kBAAkB;QAL9B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;SAC1C,CAAC;OACW,kBAAkB,CAsB9B;IAAD,yBAAC;CAAA,AAtBD,IAsBC;SAtBY,kBAAkB"} \ No newline at end of file diff --git a/src/backend/api.js b/src/backend/api.js new file mode 100644 index 0000000000..109e94a529 --- /dev/null +++ b/src/backend/api.js @@ -0,0 +1,169 @@ +var Router = require('express').Router; +var util = require('util'); +// Our API for demos only +import { fakeDataBase } from './db'; +import { fakeDemoRedisCache } from './cache'; +import COMMUNITIES from './data/communities.json'; +import COLLECTIONS from './data/collections.json'; +import ITEMS from './data/items.json'; +import BUNDLES from './data/bundles.json'; +import BITSTREAMS from './data/bitstreams.json'; +// you would use cookies/token etc +var USER_ID = 'f9d98cf1-1b96-464e-8755-bcc2a5c09077'; // hardcoded as an example +// Our API for demos only +export function serverApi(req, res) { + var key = USER_ID + '/data.json'; + var cache = fakeDemoRedisCache.get(key); + if (cache !== undefined) { + console.log('/data.json Cache Hit'); + return res.json(cache); + } + console.log('/data.json Cache Miss'); + fakeDataBase.get() + .then(function (data) { + fakeDemoRedisCache.set(key, data); + return data; + }) + .then(function (data) { return res.json(data); }); +} +function toHALResponse(req, data, included) { + var result = { + _embedded: data, + _links: { + self: req.protocol + '://' + req.get('host') + req.originalUrl + } + }; + if (included && Array.isArray(included) && included.length > 0) { + Object.assign(result, { + included: included + }); + } + return result; +} +export function createMockApi() { + var router = Router(); + router.route('/communities').get(function (req, res) { + console.log('GET'); + // 70ms latency + setTimeout(function () { + res.json(toHALResponse(req, COMMUNITIES)); + }, 0); + }); + router.param('community_id', function (req, res, next, communityId) { + // ensure correct prop type + var id = req.params.community_id; + try { + req.community_id = id; + req.community = COMMUNITIES.communities.find(function (community) { + return community.id === id; + }); + next(); + } + catch (e) { + next(new Error('failed to load community')); + } + }); + router.route('/communities/:community_id').get(function (req, res) { + res.json(toHALResponse(req, req.community)); + }); + router.route('/collections').get(function (req, res) { + console.log('GET'); + // 70ms latency + setTimeout(function () { + res.json(toHALResponse(req, COLLECTIONS)); + }, 0); + }); + router.param('collection_id', function (req, res, next, collectionId) { + // ensure correct prop type + var id = req.params.collection_id; + try { + req.collection_id = id; + req.collection = COLLECTIONS.collections.find(function (collection) { + return collection.id === id; + }); + next(); + } + catch (e) { + next(new Error('failed to load collection')); + } + }); + router.route('/collections/:collection_id').get(function (req, res) { + res.json(toHALResponse(req, req.collection)); + }); + router.route('/items').get(function (req, res) { + console.log('GET'); + // 70ms latency + setTimeout(function () { + res.json(toHALResponse(req, ITEMS)); + }, 0); + }); + router.param('item_id', function (req, res, next, itemId) { + // ensure correct prop type + var id = req.params.item_id; + try { + req.item_id = id; + req.item = ITEMS.items.find(function (item) { + return item.id === id; + }); + next(); + } + catch (e) { + next(new Error('failed to load item')); + } + }); + router.route('/items/:item_id').get(function (req, res) { + res.json(toHALResponse(req, req.item)); + }); + router.route('/bundles').get(function (req, res) { + console.log('GET'); + // 70ms latency + setTimeout(function () { + res.json(toHALResponse(req, BUNDLES)); + }, 0); + }); + router.param('bundle_id', function (req, res, next, bundleId) { + // ensure correct prop type + var id = req.params.bundle_id; + try { + req.bundle_id = id; + req.bundle = BUNDLES.bundles.find(function (bundle) { + return bundle.id === id; + }); + next(); + } + catch (e) { + next(new Error('failed to load item')); + } + }); + router.route('/bundles/:bundle_id').get(function (req, res) { + // console.log('GET', util.inspect(req.bundle, { colors: true })); + res.json(toHALResponse(req, req.bundle)); + }); + router.route('/bitstreams').get(function (req, res) { + console.log('GET'); + // 70ms latency + setTimeout(function () { + res.json(toHALResponse(req, BITSTREAMS)); + }, 0); + }); + router.param('bitstream_id', function (req, res, next, bitstreamId) { + // ensure correct prop type + var id = req.params.bitstream_id; + try { + req.bitstream_id = id; + req.bitstream = BITSTREAMS.bitstreams.find(function (bitstream) { + return bitstream.id === id; + }); + next(); + } + catch (e) { + next(new Error('failed to load item')); + } + }); + router.route('/bitstreams/:bitstream_id').get(function (req, res) { + // console.log('GET', util.inspect(req.bitstream, { colors: true })); + res.json(toHALResponse(req, req.bitstream)); + }); + return router; +} +//# sourceMappingURL=api.js.map \ No newline at end of file diff --git a/src/backend/api.js.map b/src/backend/api.js.map new file mode 100644 index 0000000000..d9f71a4c99 --- /dev/null +++ b/src/backend/api.js.map @@ -0,0 +1 @@ +{"version":3,"file":"api.js","sourceRoot":"","sources":["api.ts"],"names":[],"mappings":"AAAQ,IAAA,kCAAM,CAAwB;AACtC,IAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAE7B,yBAAyB;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAGhD,kCAAkC;AAClC,IAAM,OAAO,GAAG,sCAAsC,CAAC,CAAC,0BAA0B;AAElF,yBAAyB;AACzB,MAAM,oBAAoB,GAAG,EAAE,GAAG;IAChC,IAAM,GAAG,GAAG,OAAO,GAAG,YAAY,CAAC;IACnC,IAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxB;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAErC,YAAY,CAAC,GAAG,EAAE;SACf,IAAI,CAAC,UAAC,IAAI;QACT,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;SACD,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAd,CAAc,CAAC,CAAC;AACpC,CAAC;AAED,uBAAuB,GAAG,EAAE,IAAI,EAAE,QAAS;IACzC,IAAM,MAAM,GAAG;QACb,SAAS,EAAE,IAAI;QACf,MAAM,EAAE;YACN,IAAI,EAAE,GAAG,CAAC,QAAQ,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW;SAC/D;KACF,CAAC;IACF,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;YACpB,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;KACJ;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM;IAEJ,IAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;QAC5C,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW;QACvD,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;QACnC,IAAI;YACF,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;YACtB,GAAG,CAAC,SAAS,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,SAAS;gBACrD,OAAO,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;SAC7C;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACtD,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;QAC5C,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY;QACzD,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC;QACpC,IAAI;YACF,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC;YACvB,GAAG,CAAC,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,UAAU;gBACvD,OAAO,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACvD,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QACtC,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM;QAC7C,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI;YACF,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAC,IAAI;gBAC/B,OAAO,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;YACxB,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;SACxC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QAC3C,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;QACxC,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ;QACjD,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;QAChC,IAAI;YACF,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC;YACnB,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAC,MAAM;gBACvC,OAAO,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;YAC1B,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;SACxC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QAC/C,kEAAkE;QAClE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;QAC3C,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW;QACvD,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;QACnC,IAAI;YACF,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;YACtB,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,UAAC,SAAS;gBACnD,OAAO,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;SACxC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACrD,qEAAqE;QACrE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"} \ No newline at end of file diff --git a/src/backend/cache.js b/src/backend/cache.js new file mode 100644 index 0000000000..2adbf6e512 --- /dev/null +++ b/src/backend/cache.js @@ -0,0 +1,16 @@ +var _fakeLRUcount = 0; +export var fakeDemoRedisCache = { + _cache: {}, + get: function (key) { + var cache = fakeDemoRedisCache._cache[key]; + _fakeLRUcount++; + if (_fakeLRUcount >= 10) { + fakeDemoRedisCache.clear(); + _fakeLRUcount = 0; + } + return cache; + }, + set: function (key, data) { return fakeDemoRedisCache._cache[key] = data; }, + clear: function () { return fakeDemoRedisCache._cache = {}; } +}; +//# sourceMappingURL=cache.js.map \ No newline at end of file diff --git a/src/backend/cache.js.map b/src/backend/cache.js.map new file mode 100644 index 0000000000..d27248f43c --- /dev/null +++ b/src/backend/cache.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cache.js","sourceRoot":"","sources":["cache.ts"],"names":[],"mappings":"AAAA,IAAI,aAAa,GAAG,CAAC,CAAC;AACtB,MAAM,CAAC,IAAM,kBAAkB,GAAG;IAChC,MAAM,EAAE,EAAE;IACV,GAAG,EAAE,UAAC,GAAG;QACP,IAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7C,aAAa,EAAE,CAAC;QAChB,IAAI,aAAa,IAAI,EAAE,EAAE;YACvB,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,aAAa,GAAG,CAAC,CAAC;SACnB;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,GAAG,EAAE,UAAC,GAAG,EAAE,IAAI,IAAK,OAAA,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAArC,CAAqC;IACzD,KAAK,EAAE,cAAM,OAAA,kBAAkB,CAAC,MAAM,GAAG,EAAE,EAA9B,CAA8B;CAC5C,CAAC"} \ No newline at end of file diff --git a/src/backend/db.js b/src/backend/db.js new file mode 100644 index 0000000000..54e1b8635e --- /dev/null +++ b/src/backend/db.js @@ -0,0 +1,8 @@ +// Our API for demos only +export var fakeDataBase = { + get: function () { + var res = { data: 'This fake data came from the db on the server.' }; + return Promise.resolve(res); + } +}; +//# sourceMappingURL=db.js.map \ No newline at end of file diff --git a/src/backend/db.js.map b/src/backend/db.js.map new file mode 100644 index 0000000000..214fa61364 --- /dev/null +++ b/src/backend/db.js.map @@ -0,0 +1 @@ +{"version":3,"file":"db.js","sourceRoot":"","sources":["db.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,MAAM,CAAC,IAAM,YAAY,GAAG;IAC1B,GAAG;QACD,IAAM,GAAG,GAAG,EAAE,IAAI,EAAE,gDAAgD,EAAE,CAAC;QACvE,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;CACF,CAAC"} \ No newline at end of file diff --git a/src/config.js.map b/src/config.js.map new file mode 100644 index 0000000000..eeaa79165f --- /dev/null +++ b/src/config.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config.js","sourceRoot":"","sources":["config.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/config/auto-sync-config.interface.js b/src/config/auto-sync-config.interface.js new file mode 100644 index 0000000000..c7efb560b1 --- /dev/null +++ b/src/config/auto-sync-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=auto-sync-config.interface.js.map \ No newline at end of file diff --git a/src/config/auto-sync-config.interface.js.map b/src/config/auto-sync-config.interface.js.map new file mode 100644 index 0000000000..398d6a3b0e --- /dev/null +++ b/src/config/auto-sync-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"auto-sync-config.interface.js","sourceRoot":"","sources":["auto-sync-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/browse-by-config.interface.js b/src/config/browse-by-config.interface.js new file mode 100644 index 0000000000..5c7c416033 --- /dev/null +++ b/src/config/browse-by-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=browse-by-config.interface.js.map \ No newline at end of file diff --git a/src/config/browse-by-config.interface.js.map b/src/config/browse-by-config.interface.js.map new file mode 100644 index 0000000000..954efb57ed --- /dev/null +++ b/src/config/browse-by-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browse-by-config.interface.js","sourceRoot":"","sources":["browse-by-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/cache-config.interface.js b/src/config/cache-config.interface.js new file mode 100644 index 0000000000..c888233eef --- /dev/null +++ b/src/config/cache-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=cache-config.interface.js.map \ No newline at end of file diff --git a/src/config/cache-config.interface.js.map b/src/config/cache-config.interface.js.map new file mode 100644 index 0000000000..457d12e998 --- /dev/null +++ b/src/config/cache-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cache-config.interface.js","sourceRoot":"","sources":["cache-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/config.interface.js b/src/config/config.interface.js new file mode 100644 index 0000000000..77cd154139 --- /dev/null +++ b/src/config/config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=config.interface.js.map \ No newline at end of file diff --git a/src/config/config.interface.js.map b/src/config/config.interface.js.map new file mode 100644 index 0000000000..3cd0463779 --- /dev/null +++ b/src/config/config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"config.interface.js","sourceRoot":"","sources":["config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/form-config.interfaces.js b/src/config/form-config.interfaces.js new file mode 100644 index 0000000000..495560d9f4 --- /dev/null +++ b/src/config/form-config.interfaces.js @@ -0,0 +1 @@ +//# sourceMappingURL=form-config.interfaces.js.map \ No newline at end of file diff --git a/src/config/form-config.interfaces.js.map b/src/config/form-config.interfaces.js.map new file mode 100644 index 0000000000..b4a9268f52 --- /dev/null +++ b/src/config/form-config.interfaces.js.map @@ -0,0 +1 @@ +{"version":3,"file":"form-config.interfaces.js","sourceRoot":"","sources":["form-config.interfaces.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/global-config.interface.js b/src/config/global-config.interface.js new file mode 100644 index 0000000000..41269a9a04 --- /dev/null +++ b/src/config/global-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=global-config.interface.js.map \ No newline at end of file diff --git a/src/config/global-config.interface.js.map b/src/config/global-config.interface.js.map new file mode 100644 index 0000000000..8efc1ef8c7 --- /dev/null +++ b/src/config/global-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"global-config.interface.js","sourceRoot":"","sources":["global-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/item-page-config.interface.js b/src/config/item-page-config.interface.js new file mode 100644 index 0000000000..532f8adf59 --- /dev/null +++ b/src/config/item-page-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=item-page-config.interface.js.map \ No newline at end of file diff --git a/src/config/item-page-config.interface.js.map b/src/config/item-page-config.interface.js.map new file mode 100644 index 0000000000..6072d59a34 --- /dev/null +++ b/src/config/item-page-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item-page-config.interface.js","sourceRoot":"","sources":["item-page-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/lang-config.interface.js b/src/config/lang-config.interface.js new file mode 100644 index 0000000000..5cc007d8c3 --- /dev/null +++ b/src/config/lang-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=lang-config.interface.js.map \ No newline at end of file diff --git a/src/config/lang-config.interface.js.map b/src/config/lang-config.interface.js.map new file mode 100644 index 0000000000..3e866516f9 --- /dev/null +++ b/src/config/lang-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"lang-config.interface.js","sourceRoot":"","sources":["lang-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/notifications-config.interfaces.js b/src/config/notifications-config.interfaces.js new file mode 100644 index 0000000000..e48d062de7 --- /dev/null +++ b/src/config/notifications-config.interfaces.js @@ -0,0 +1 @@ +//# sourceMappingURL=notifications-config.interfaces.js.map \ No newline at end of file diff --git a/src/config/notifications-config.interfaces.js.map b/src/config/notifications-config.interfaces.js.map new file mode 100644 index 0000000000..905d1b3748 --- /dev/null +++ b/src/config/notifications-config.interfaces.js.map @@ -0,0 +1 @@ +{"version":3,"file":"notifications-config.interfaces.js","sourceRoot":"","sources":["notifications-config.interfaces.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/server-config.interface.js b/src/config/server-config.interface.js new file mode 100644 index 0000000000..64efc0d513 --- /dev/null +++ b/src/config/server-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=server-config.interface.js.map \ No newline at end of file diff --git a/src/config/server-config.interface.js.map b/src/config/server-config.interface.js.map new file mode 100644 index 0000000000..043d6151ff --- /dev/null +++ b/src/config/server-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-config.interface.js","sourceRoot":"","sources":["server-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/submission-config.interface.js b/src/config/submission-config.interface.js new file mode 100644 index 0000000000..9b594514bd --- /dev/null +++ b/src/config/submission-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=submission-config.interface.js.map \ No newline at end of file diff --git a/src/config/submission-config.interface.js.map b/src/config/submission-config.interface.js.map new file mode 100644 index 0000000000..1a7258ce6b --- /dev/null +++ b/src/config/submission-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"submission-config.interface.js","sourceRoot":"","sources":["submission-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/universal-config.interface.js b/src/config/universal-config.interface.js new file mode 100644 index 0000000000..6f30188d10 --- /dev/null +++ b/src/config/universal-config.interface.js @@ -0,0 +1 @@ +//# sourceMappingURL=universal-config.interface.js.map \ No newline at end of file diff --git a/src/config/universal-config.interface.js.map b/src/config/universal-config.interface.js.map new file mode 100644 index 0000000000..998472c2f6 --- /dev/null +++ b/src/config/universal-config.interface.js.map @@ -0,0 +1 @@ +{"version":3,"file":"universal-config.interface.js","sourceRoot":"","sources":["universal-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/main.browser.js b/src/main.browser.js new file mode 100644 index 0000000000..6e0957d874 --- /dev/null +++ b/src/main.browser.js @@ -0,0 +1,41 @@ +import 'zone.js/dist/zone'; +import 'reflect-metadata'; +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; +import { bootloader } from '@angularclass/bootloader'; +import { load as loadWebFont } from 'webfontloader'; +import { hasValue, isNotEmpty } from './app/shared/empty.util'; +import { BrowserAppModule } from './modules/app/browser-app.module'; +import { ENV_CONFIG } from './config'; +if (ENV_CONFIG.production) { + enableProdMode(); +} +export function main() { + // Load fonts async + // https://github.com/typekit/webfontloader#configuration + loadWebFont({ + google: { + families: ['Droid Sans'] + } + }); + addGoogleAnalytics(); + return platformBrowserDynamic().bootstrapModule(BrowserAppModule, { preserveWhitespaces: true }); +} +function addGoogleAnalytics() { + // Add google analytics if key is present in config + var trackingId = ENV_CONFIG.gaTrackingId; + if (isNotEmpty(trackingId)) { + var keyScript = document.createElement('script'); + keyScript.innerHTML = "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),\n m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)\n })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');" + + 'ga(\'create\', \'' + ENV_CONFIG.gaTrackingId + '\', \'auto\');'; + document.body.appendChild(keyScript); + } +} +// support async tag or hmr +if (hasValue(ENV_CONFIG.universal) && ENV_CONFIG.universal.preboot === false) { + bootloader(main); +} +else { + document.addEventListener('DOMContentLoaded', function () { return bootloader(main); }); +} +//# sourceMappingURL=main.browser.js.map \ No newline at end of file diff --git a/src/main.browser.js.map b/src/main.browser.js.map new file mode 100644 index 0000000000..9d38538972 --- /dev/null +++ b/src/main.browser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"main.browser.js","sourceRoot":"","sources":["main.browser.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC;AAC3B,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,IAAI,UAAU,CAAC,UAAU,EAAE;IACzB,cAAc,EAAE,CAAC;CAClB;AAED,MAAM;IACJ,mBAAmB;IACnB,yDAAyD;IACzD,WAAW,CAAC;QACV,MAAM,EAAE;YACN,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF,CAAC,CAAC;IAEH,kBAAkB,EAAE,CAAC;IAErB,OAAO,sBAAsB,EAAE,CAAC,eAAe,CAAC,gBAAgB,EAAE,EAAC,mBAAmB,EAAC,IAAI,EAAC,CAAC,CAAC;AAChG,CAAC;AAED;IACE,mDAAmD;IACnD,IAAM,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC;IAC3C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;QAC1B,IAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACnD,SAAS,CAAC,SAAS,GAAK,uZAGmF;cACvG,mBAAmB,GAAG,UAAU,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;KACtC;AACH,CAAC;AAED,2BAA2B;AAC3B,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;IAC5E,UAAU,CAAC,IAAI,CAAC,CAAC;CAClB;KAAM;IACL,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,cAAM,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,CAAC;CACvE"} \ No newline at end of file diff --git a/src/main.server.js b/src/main.server.js new file mode 100644 index 0000000000..976eb5803c --- /dev/null +++ b/src/main.server.js @@ -0,0 +1,4 @@ +import { startServer } from './server'; +import { ServerAppModule } from './modules/app/server-app.module'; +startServer(ServerAppModule); +//# sourceMappingURL=main.server.js.map \ No newline at end of file diff --git a/src/main.server.js.map b/src/main.server.js.map new file mode 100644 index 0000000000..e59e7a37a2 --- /dev/null +++ b/src/main.server.js.map @@ -0,0 +1 @@ +{"version":3,"file":"main.server.js","sourceRoot":"","sources":["main.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,WAAW,CAAC,eAAe,CAAC,CAAC"} \ No newline at end of file diff --git a/src/modules/app/browser-app.module.js b/src/modules/app/browser-app.module.js new file mode 100644 index 0000000000..60bc96b56f --- /dev/null +++ b/src/modules/app/browser-app.module.js @@ -0,0 +1,85 @@ +import * as tslib_1 from "tslib"; +import { HttpClient, HttpClientModule } from '@angular/common/http'; +import { NgModule } from '@angular/core'; +import { BrowserModule, makeStateKey, TransferState } from '@angular/platform-browser'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { RouterModule } from '@angular/router'; +import { REQUEST } from '@nguniversal/express-engine/tokens'; +import { TranslateLoader, TranslateModule } from '@ngx-translate/core'; +import { TranslateHttpLoader } from '@ngx-translate/http-loader'; +import { IdlePreload, IdlePreloadModule } from 'angular-idle-preload'; +import { AppComponent } from '../../app/app.component'; +import { AppModule } from '../../app/app.module'; +import { DSpaceBrowserTransferStateModule } from '../transfer-state/dspace-browser-transfer-state.module'; +import { DSpaceTransferState } from '../transfer-state/dspace-transfer-state.service'; +import { ClientCookieService } from '../../app/shared/services/client-cookie.service'; +import { CookieService } from '../../app/shared/services/cookie.service'; +import { AuthService } from '../../app/core/auth/auth.service'; +import { Angulartics2Module } from 'angulartics2'; +import { Angulartics2GoogleAnalytics } from 'angulartics2/ga'; +import { SubmissionService } from '../../app/submission/submission.service'; +export var REQ_KEY = makeStateKey('req'); +export function createTranslateLoader(http) { + return new TranslateHttpLoader(http, 'assets/i18n/', '.json'); +} +export function getRequest(transferState) { + return transferState.get(REQ_KEY, {}); +} +var BrowserAppModule = /** @class */ (function () { + function BrowserAppModule(transferState) { + this.transferState = transferState; + this.transferState.transfer(); + } + BrowserAppModule = tslib_1.__decorate([ + NgModule({ + bootstrap: [AppComponent], + imports: [ + BrowserModule.withServerTransition({ + appId: 'dspace-angular' + }), + HttpClientModule, + // forRoot ensures the providers are only created once + IdlePreloadModule.forRoot(), + RouterModule.forRoot([], { + // enableTracing: true, + useHash: false, + preloadingStrategy: IdlePreload + }), + Angulartics2Module.forRoot([Angulartics2GoogleAnalytics]), + BrowserAnimationsModule, + DSpaceBrowserTransferStateModule, + TranslateModule.forRoot({ + loader: { + provide: TranslateLoader, + useFactory: (createTranslateLoader), + deps: [HttpClient] + } + }), + AppModule + ], + providers: [ + { + provide: REQUEST, + useFactory: getRequest, + deps: [TransferState] + }, + { + provide: AuthService, + useClass: AuthService + }, + { + provide: CookieService, + useClass: ClientCookieService + }, + { + provide: SubmissionService, + useClass: SubmissionService + } + ] + }), + tslib_1.__metadata("design:paramtypes", [DSpaceTransferState]) + ], BrowserAppModule); + return BrowserAppModule; +}()); +export { BrowserAppModule }; +//# sourceMappingURL=browser-app.module.js.map \ No newline at end of file diff --git a/src/modules/app/browser-app.module.js.map b/src/modules/app/browser-app.module.js.map new file mode 100644 index 0000000000..fbe8922fc1 --- /dev/null +++ b/src/modules/app/browser-app.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"browser-app.module.js","sourceRoot":"","sources":["browser-app.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/modules/app/server-app.module.js b/src/modules/app/server-app.module.js new file mode 100644 index 0000000000..38ab19c0e2 --- /dev/null +++ b/src/modules/app/server-app.module.js @@ -0,0 +1,75 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { BrowserModule } from '@angular/platform-browser'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; +import { ServerModule } from '@angular/platform-server'; +import { RouterModule } from '@angular/router'; +import { TranslateLoader, TranslateModule } from '@ngx-translate/core'; +import { AppComponent } from '../../app/app.component'; +import { AppModule } from '../../app/app.module'; +import { DSpaceServerTransferStateModule } from '../transfer-state/dspace-server-transfer-state.module'; +import { DSpaceTransferState } from '../transfer-state/dspace-transfer-state.service'; +import { TranslateUniversalLoader } from '../translate-universal-loader'; +import { CookieService } from '../../app/shared/services/cookie.service'; +import { ServerCookieService } from '../../app/shared/services/server-cookie.service'; +import { AuthService } from '../../app/core/auth/auth.service'; +import { ServerAuthService } from '../../app/core/auth/server-auth.service'; +import { Angulartics2GoogleAnalytics } from 'angulartics2/ga'; +import { AngularticsMock } from '../../app/shared/mocks/mock-angulartics.service'; +import { SubmissionService } from '../../app/submission/submission.service'; +import { ServerSubmissionService } from '../../app/submission/server-submission.service'; +export function createTranslateLoader() { + return new TranslateUniversalLoader('dist/assets/i18n/', '.json'); +} +var ServerAppModule = /** @class */ (function () { + function ServerAppModule(transferState) { + this.transferState = transferState; + this.transferState.transfer(); + } + ServerAppModule = tslib_1.__decorate([ + NgModule({ + bootstrap: [AppComponent], + imports: [ + BrowserModule.withServerTransition({ + appId: 'dspace-angular' + }), + RouterModule.forRoot([], { + useHash: false + }), + NoopAnimationsModule, + DSpaceServerTransferStateModule, + TranslateModule.forRoot({ + loader: { + provide: TranslateLoader, + useFactory: (createTranslateLoader), + deps: [] + } + }), + ServerModule, + AppModule + ], + providers: [ + { + provide: Angulartics2GoogleAnalytics, + useClass: AngularticsMock + }, + { + provide: AuthService, + useClass: ServerAuthService + }, + { + provide: CookieService, + useClass: ServerCookieService + }, + { + provide: SubmissionService, + useClass: ServerSubmissionService + }, + ] + }), + tslib_1.__metadata("design:paramtypes", [DSpaceTransferState]) + ], ServerAppModule); + return ServerAppModule; +}()); +export { ServerAppModule }; +//# sourceMappingURL=server-app.module.js.map \ No newline at end of file diff --git a/src/modules/app/server-app.module.js.map b/src/modules/app/server-app.module.js.map new file mode 100644 index 0000000000..0e08849b48 --- /dev/null +++ b/src/modules/app/server-app.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server-app.module.js","sourceRoot":"","sources":["server-app.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,uDAAuD,CAAC;AACxG,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAEtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAE5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAEzF,MAAM;IACJ,OAAO,IAAI,wBAAwB,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AA0CD;IACE,yBACU,aAAkC;QAAlC,kBAAa,GAAb,aAAa,CAAqB;QAE1C,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IALU,eAAe;QAxC3B,QAAQ,CAAC;YACR,SAAS,EAAE,CAAC,YAAY,CAAC;YACzB,OAAO,EAAE;gBACP,aAAa,CAAC,oBAAoB,CAAC;oBACjC,KAAK,EAAE,gBAAgB;iBACxB,CAAC;gBACF,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE;oBACvB,OAAO,EAAE,KAAK;iBACf,CAAC;gBACF,oBAAoB;gBACpB,+BAA+B;gBAC/B,eAAe,CAAC,OAAO,CAAC;oBACtB,MAAM,EAAE;wBACN,OAAO,EAAE,eAAe;wBACxB,UAAU,EAAE,CAAC,qBAAqB,CAAC;wBACnC,IAAI,EAAE,EAAE;qBACT;iBACF,CAAC;gBACF,YAAY;gBACZ,SAAS;aACV;YACD,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,2BAA2B;oBACpC,QAAQ,EAAE,eAAe;iBAC1B;gBACD;oBACE,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,iBAAiB;iBAC5B;gBACD;oBACE,OAAO,EAAE,aAAa;oBACtB,QAAQ,EAAE,mBAAmB;iBAC9B;gBACD;oBACE,OAAO,EAAE,iBAAiB;oBAC1B,QAAQ,EAAE,uBAAuB;iBAClC;aACF;SACF,CAAC;iDAGyB,mBAAmB;OAFjC,eAAe,CAM3B;IAAD,sBAAC;CAAA,AAND,IAMC;SANY,eAAe"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-browser-transfer-state.module.js b/src/modules/transfer-state/dspace-browser-transfer-state.module.js new file mode 100644 index 0000000000..5e64af701d --- /dev/null +++ b/src/modules/transfer-state/dspace-browser-transfer-state.module.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { BrowserTransferStateModule } from '@angular/platform-browser'; +import { DSpaceBrowserTransferState } from './dspace-browser-transfer-state.service'; +import { DSpaceTransferState } from './dspace-transfer-state.service'; +var DSpaceBrowserTransferStateModule = /** @class */ (function () { + function DSpaceBrowserTransferStateModule() { + } + DSpaceBrowserTransferStateModule = tslib_1.__decorate([ + NgModule({ + imports: [ + BrowserTransferStateModule + ], + providers: [ + { provide: DSpaceTransferState, useClass: DSpaceBrowserTransferState } + ] + }) + ], DSpaceBrowserTransferStateModule); + return DSpaceBrowserTransferStateModule; +}()); +export { DSpaceBrowserTransferStateModule }; +//# sourceMappingURL=dspace-browser-transfer-state.module.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-browser-transfer-state.module.js.map b/src/modules/transfer-state/dspace-browser-transfer-state.module.js.map new file mode 100644 index 0000000000..6ec3b7eefe --- /dev/null +++ b/src/modules/transfer-state/dspace-browser-transfer-state.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-browser-transfer-state.module.js","sourceRoot":"","sources":["dspace-browser-transfer-state.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAUtE;IAAA;IAEA,CAAC;IAFY,gCAAgC;QAR5C,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,0BAA0B;aAC3B;YACD,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,0BAA0B,EAAE;aACvE;SACF,CAAC;OACW,gCAAgC,CAE5C;IAAD,uCAAC;CAAA,AAFD,IAEC;SAFY,gCAAgC"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-browser-transfer-state.service.js b/src/modules/transfer-state/dspace-browser-transfer-state.service.js new file mode 100644 index 0000000000..774e8d1790 --- /dev/null +++ b/src/modules/transfer-state/dspace-browser-transfer-state.service.js @@ -0,0 +1,21 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { StoreAction, StoreActionTypes } from '../../app/store.actions'; +import { DSpaceTransferState } from './dspace-transfer-state.service'; +var DSpaceBrowserTransferState = /** @class */ (function (_super) { + tslib_1.__extends(DSpaceBrowserTransferState, _super); + function DSpaceBrowserTransferState() { + return _super !== null && _super.apply(this, arguments) || this; + } + DSpaceBrowserTransferState.prototype.transfer = function () { + var state = this.transferState.get(DSpaceTransferState.NGRX_STATE, null); + this.transferState.remove(DSpaceTransferState.NGRX_STATE); + this.store.dispatch(new StoreAction(StoreActionTypes.REHYDRATE, state)); + }; + DSpaceBrowserTransferState = tslib_1.__decorate([ + Injectable() + ], DSpaceBrowserTransferState); + return DSpaceBrowserTransferState; +}(DSpaceTransferState)); +export { DSpaceBrowserTransferState }; +//# sourceMappingURL=dspace-browser-transfer-state.service.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-browser-transfer-state.service.js.map b/src/modules/transfer-state/dspace-browser-transfer-state.service.js.map new file mode 100644 index 0000000000..b3f9e66d28 --- /dev/null +++ b/src/modules/transfer-state/dspace-browser-transfer-state.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-browser-transfer-state.service.js","sourceRoot":"","sources":["dspace-browser-transfer-state.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGtE;IAAgD,sDAAmB;IAAnE;;IAMA,CAAC;IALC,6CAAQ,GAAR;QACE,IAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAM,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAChF,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAC1E,CAAC;IALU,0BAA0B;QADtC,UAAU,EAAE;OACA,0BAA0B,CAMtC;IAAD,iCAAC;CAAA,AAND,CAAgD,mBAAmB,GAMlE;SANY,0BAA0B"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-server-transfer-state.module.js b/src/modules/transfer-state/dspace-server-transfer-state.module.js new file mode 100644 index 0000000000..25e4fbad35 --- /dev/null +++ b/src/modules/transfer-state/dspace-server-transfer-state.module.js @@ -0,0 +1,22 @@ +import * as tslib_1 from "tslib"; +import { NgModule } from '@angular/core'; +import { ServerTransferStateModule } from '@angular/platform-server'; +import { DSpaceServerTransferState } from './dspace-server-transfer-state.service'; +import { DSpaceTransferState } from './dspace-transfer-state.service'; +var DSpaceServerTransferStateModule = /** @class */ (function () { + function DSpaceServerTransferStateModule() { + } + DSpaceServerTransferStateModule = tslib_1.__decorate([ + NgModule({ + imports: [ + ServerTransferStateModule + ], + providers: [ + { provide: DSpaceTransferState, useClass: DSpaceServerTransferState } + ] + }) + ], DSpaceServerTransferStateModule); + return DSpaceServerTransferStateModule; +}()); +export { DSpaceServerTransferStateModule }; +//# sourceMappingURL=dspace-server-transfer-state.module.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-server-transfer-state.module.js.map b/src/modules/transfer-state/dspace-server-transfer-state.module.js.map new file mode 100644 index 0000000000..e404b85d9f --- /dev/null +++ b/src/modules/transfer-state/dspace-server-transfer-state.module.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-server-transfer-state.module.js","sourceRoot":"","sources":["dspace-server-transfer-state.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAUtE;IAAA;IAEA,CAAC;IAFY,+BAA+B;QAR3C,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,yBAAyB;aAC1B;YACD,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,yBAAyB,EAAE;aACtE;SACF,CAAC;OACW,+BAA+B,CAE3C;IAAD,sCAAC;CAAA,AAFD,IAEC;SAFY,+BAA+B"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-server-transfer-state.service.js b/src/modules/transfer-state/dspace-server-transfer-state.service.js new file mode 100644 index 0000000000..01dccefa1d --- /dev/null +++ b/src/modules/transfer-state/dspace-server-transfer-state.service.js @@ -0,0 +1,26 @@ +import * as tslib_1 from "tslib"; +import { take } from 'rxjs/operators'; +import { Injectable } from '@angular/core'; +import { DSpaceTransferState } from './dspace-transfer-state.service'; +var DSpaceServerTransferState = /** @class */ (function (_super) { + tslib_1.__extends(DSpaceServerTransferState, _super); + function DSpaceServerTransferState() { + return _super !== null && _super.apply(this, arguments) || this; + } + DSpaceServerTransferState.prototype.transfer = function () { + var _this = this; + this.transferState.onSerialize(DSpaceTransferState.NGRX_STATE, function () { + var state; + _this.store.pipe(take(1)).subscribe(function (saveState) { + state = saveState; + }); + return state; + }); + }; + DSpaceServerTransferState = tslib_1.__decorate([ + Injectable() + ], DSpaceServerTransferState); + return DSpaceServerTransferState; +}(DSpaceTransferState)); +export { DSpaceServerTransferState }; +//# sourceMappingURL=dspace-server-transfer-state.service.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-server-transfer-state.service.js.map b/src/modules/transfer-state/dspace-server-transfer-state.service.js.map new file mode 100644 index 0000000000..d29d9a3a81 --- /dev/null +++ b/src/modules/transfer-state/dspace-server-transfer-state.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-server-transfer-state.service.js","sourceRoot":"","sources":["dspace-server-transfer-state.service.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGtE;IAA+C,qDAAmB;IAAlE;;IAWA,CAAC;IAVC,4CAAQ,GAAR;QAAA,iBASC;QARC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,mBAAmB,CAAC,UAAU,EAAE;YAC7D,IAAI,KAAK,CAAC;YACV,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,SAAc;gBAChD,KAAK,GAAG,SAAS,CAAC;YACpB,CAAC,CAAC,CAAC;YAEH,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAVU,yBAAyB;QADrC,UAAU,EAAE;OACA,yBAAyB,CAWrC;IAAD,gCAAC;CAAA,AAXD,CAA+C,mBAAmB,GAWjE;SAXY,yBAAyB"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-transfer-state.service.js b/src/modules/transfer-state/dspace-transfer-state.service.js new file mode 100644 index 0000000000..434e48201e --- /dev/null +++ b/src/modules/transfer-state/dspace-transfer-state.service.js @@ -0,0 +1,19 @@ +import * as tslib_1 from "tslib"; +import { Injectable } from '@angular/core'; +import { makeStateKey, TransferState } from '@angular/platform-browser'; +import { Store } from '@ngrx/store'; +var DSpaceTransferState = /** @class */ (function () { + function DSpaceTransferState(transferState, store) { + this.transferState = transferState; + this.store = store; + } + DSpaceTransferState.NGRX_STATE = makeStateKey('NGRX_STATE'); + DSpaceTransferState = tslib_1.__decorate([ + Injectable(), + tslib_1.__metadata("design:paramtypes", [TransferState, + Store]) + ], DSpaceTransferState); + return DSpaceTransferState; +}()); +export { DSpaceTransferState }; +//# sourceMappingURL=dspace-transfer-state.service.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-transfer-state.service.js.map b/src/modules/transfer-state/dspace-transfer-state.service.js.map new file mode 100644 index 0000000000..88c5123d45 --- /dev/null +++ b/src/modules/transfer-state/dspace-transfer-state.service.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dspace-transfer-state.service.js","sourceRoot":"","sources":["dspace-transfer-state.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC;IAIE,6BACY,aAA4B,EAC5B,KAAsB;QADtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,UAAK,GAAL,KAAK,CAAiB;IAElC,CAAC;IANgB,8BAAU,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IAFrC,mBAAmB;QADxC,UAAU,EAAE;iDAMgB,aAAa;YACrB,KAAK;OANJ,mBAAmB,CAWxC;IAAD,0BAAC;CAAA,AAXD,IAWC;SAXqB,mBAAmB"} \ No newline at end of file diff --git a/src/modules/translate-universal-loader.js b/src/modules/translate-universal-loader.js new file mode 100644 index 0000000000..6cac95a730 --- /dev/null +++ b/src/modules/translate-universal-loader.js @@ -0,0 +1,20 @@ +import { Observable } from 'rxjs'; +import * as fs from 'fs'; +var TranslateUniversalLoader = /** @class */ (function () { + function TranslateUniversalLoader(prefix, suffix) { + if (prefix === void 0) { prefix = 'dist/assets/i18n/'; } + if (suffix === void 0) { suffix = '.json'; } + this.prefix = prefix; + this.suffix = suffix; + } + TranslateUniversalLoader.prototype.getTranslation = function (lang) { + var _this = this; + return Observable.create(function (observer) { + observer.next(JSON.parse(fs.readFileSync("" + _this.prefix + lang + _this.suffix, 'utf8'))); + observer.complete(); + }); + }; + return TranslateUniversalLoader; +}()); +export { TranslateUniversalLoader }; +//# sourceMappingURL=translate-universal-loader.js.map \ No newline at end of file diff --git a/src/modules/translate-universal-loader.js.map b/src/modules/translate-universal-loader.js.map new file mode 100644 index 0000000000..eb0c1e40f4 --- /dev/null +++ b/src/modules/translate-universal-loader.js.map @@ -0,0 +1 @@ +{"version":3,"file":"translate-universal-loader.js","sourceRoot":"","sources":["translate-universal-loader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB;IAEE,kCAAoB,MAAoC,EAAU,MAAwB;QAAtE,uBAAA,EAAA,4BAAoC;QAAU,uBAAA,EAAA,gBAAwB;QAAtE,WAAM,GAAN,MAAM,CAA8B;QAAU,WAAM,GAAN,MAAM,CAAkB;IAAI,CAAC;IAExF,iDAAc,GAArB,UAAsB,IAAY;QAAlC,iBAKC;QAJC,OAAO,UAAU,CAAC,MAAM,CAAC,UAAC,QAAa;YACrC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,KAAG,KAAI,CAAC,MAAM,GAAG,IAAI,GAAG,KAAI,CAAC,MAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1F,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAEH,+BAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/routes.js b/src/routes.js new file mode 100644 index 0000000000..296b892486 --- /dev/null +++ b/src/routes.js @@ -0,0 +1,16 @@ +export var ROUTES = [ + 'home', + 'items/:id', + 'login', + 'logout', + 'collections/:id', + 'communities/:id', + 'login', + 'logout', + 'search', + 'submit', + 'workspaceitems/:id/edit', + 'workflowitems/:id/edit', + '**' +]; +//# sourceMappingURL=routes.js.map \ No newline at end of file diff --git a/src/routes.js.map b/src/routes.js.map new file mode 100644 index 0000000000..85ad1043f9 --- /dev/null +++ b/src/routes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"routes.js","sourceRoot":"","sources":["routes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,MAAM,GAAa;IAC9B,MAAM;IACN,WAAW;IACX,OAAO;IACP,QAAQ;IACR,iBAAiB;IACjB,iBAAiB;IACjB,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,yBAAyB;IACzB,wBAAwB;IACxB,IAAI;CACL,CAAC"} \ No newline at end of file diff --git a/src/server.js b/src/server.js new file mode 100644 index 0000000000..4090403129 --- /dev/null +++ b/src/server.js @@ -0,0 +1,129 @@ +import 'zone.js/dist/zone-node'; +import 'reflect-metadata'; +import 'rxjs'; +import * as fs from 'fs'; +import * as pem from 'pem'; +import * as https from 'https'; +import * as morgan from 'morgan'; +import * as express from 'express'; +import * as bodyParser from 'body-parser'; +import * as compression from 'compression'; +import * as cookieParser from 'cookie-parser'; +import { enableProdMode } from '@angular/core'; +import { ngExpressEngine } from '@nguniversal/express-engine'; +import { ROUTES } from './routes'; +import { ENV_CONFIG } from './config'; +import { REQUEST, RESPONSE } from '@nguniversal/express-engine/tokens'; +export function startServer(bootstrap) { + var app = express(); + if (ENV_CONFIG.production) { + enableProdMode(); + app.use(compression()); + } + app.use(morgan('dev')); + app.use(cookieParser()); + app.use(bodyParser.json()); + app.engine('html', function (_, options, callback) { + return ngExpressEngine({ + bootstrap: bootstrap, + providers: [ + { + provide: REQUEST, + useValue: options.req, + }, + { + provide: RESPONSE, + useValue: options.req.res, + }, + ], + })(_, options, callback); + }); + app.set('view engine', 'html'); + app.set('views', 'src'); + function cacheControl(req, res, next) { + // instruct browser to revalidate + res.header('Cache-Control', ENV_CONFIG.cache.control || 'max-age=60'); + next(); + } + app.use('/', cacheControl, express.static('dist', { index: false })); + // TODO: either remove or update mock backend + // app.get('/data.json', serverApi); + // app.use('/api', createMockApi()); + function ngApp(req, res) { + function onHandleError(parentZoneDelegate, currentZone, targetZone, error) { + if (!res._headerSent) { + console.warn('Error in SSR, serving for direct CSR'); + res.sendFile('index.csr.html', { root: './src' }); + } + } + if (ENV_CONFIG.universal.preboot) { + Zone.current.fork({ name: 'CSR fallback', onHandleError: onHandleError }).run(function () { + res.render('../dist/index', { + req: req, + res: res, + preboot: ENV_CONFIG.universal.preboot, + async: ENV_CONFIG.universal.async, + time: ENV_CONFIG.universal.time, + baseUrl: ENV_CONFIG.ui.nameSpace, + originUrl: ENV_CONFIG.ui.baseUrl, + requestUrl: req.originalUrl + }); + }); + } + else { + console.log('Universal off, serving for direct CSR'); + res.sendFile('index.csr.html', { root: './src' }); + } + } + ROUTES.forEach(function (route) { + app.get(route, ngApp); + }); + function serverStarted() { + console.log("[" + new Date().toTimeString() + "] Listening at " + ENV_CONFIG.ui.baseUrl); + } + function createHttpsServer(keys) { + https.createServer({ + key: keys.serviceKey, + cert: keys.certificate + }, app).listen(ENV_CONFIG.ui.port, ENV_CONFIG.ui.host, function () { + serverStarted(); + }); + } + if (ENV_CONFIG.ui.ssl) { + var serviceKey = void 0; + try { + serviceKey = fs.readFileSync('./config/ssl/key.pem'); + } + catch (e) { + console.warn('Service key not found at ./config/ssl/key.pem'); + } + var certificate = void 0; + try { + certificate = fs.readFileSync('./config/ssl/cert.pem'); + } + catch (e) { + console.warn('Certificate not found at ./config/ssl/key.pem'); + } + if (serviceKey && certificate) { + createHttpsServer({ + serviceKey: serviceKey, + certificate: certificate + }); + } + else { + process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'; + pem.createCertificate({ + days: 1, + selfSigned: true + }, function (error, keys) { + createHttpsServer(keys); + }); + } + } + else { + app.listen(ENV_CONFIG.ui.port, ENV_CONFIG.ui.host, function () { + serverStarted(); + }); + } +} +//# sourceMappingURL=server.js.map \ No newline at end of file diff --git a/src/server.js.map b/src/server.js.map new file mode 100644 index 0000000000..8dbac3e4ea --- /dev/null +++ b/src/server.js.map @@ -0,0 +1 @@ +{"version":3,"file":"server.js","sourceRoot":"","sources":["server.ts"],"names":[],"mappings":"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"} \ No newline at end of file From 6b25dcfa70ee9a02b2854b00a885efef7f5793e0 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 09:16:25 +0200 Subject: [PATCH 002/171] Added Actions for ssoLogin to auth.actions.ts --- src/app/core/auth/auth.actions.ts | 40 ++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/src/app/core/auth/auth.actions.ts b/src/app/core/auth/auth.actions.ts index d0969d38d4..f54ceea686 100644 --- a/src/app/core/auth/auth.actions.ts +++ b/src/app/core/auth/auth.actions.ts @@ -17,6 +17,9 @@ export const AuthActionTypes = { AUTHENTICATED_SUCCESS: type('dspace/auth/AUTHENTICATED_SUCCESS'), CHECK_AUTHENTICATION_TOKEN: type('dspace/auth/CHECK_AUTHENTICATION_TOKEN'), CHECK_AUTHENTICATION_TOKEN_ERROR: type('dspace/auth/CHECK_AUTHENTICATION_TOKEN_ERROR'), + RETRIEVE_AUTH_METHODS: type('dspace/auth/RETRIEVE_AUTH_METHODS'), + RETRIEVE_AUTH_METHODS_SUCCESS: type('dspace/auth/RETRIEVE_AUTH_METHODS_SUCCESS'), + RETRIEVE_AUTH_METHODS_ERROR: type('dspace/auth/RETRIEVE_AUTH_METHODS_ERROR'), REDIRECT_TOKEN_EXPIRED: type('dspace/auth/REDIRECT_TOKEN_EXPIRED'), REDIRECT_AUTHENTICATION_REQUIRED: type('dspace/auth/REDIRECT_AUTHENTICATION_REQUIRED'), REFRESH_TOKEN: type('dspace/auth/REFRESH_TOKEN'), @@ -308,6 +311,38 @@ export class ResetAuthenticationMessagesAction implements Action { public type: string = AuthActionTypes.RESET_MESSAGES; } +/** + * Check if token is already present upon initial load. + * @class CheckAuthenticationTokenAction + * @implements {Action} + */ +export class RetrieveAuthMethodsAction implements Action { + public type: string = AuthActionTypes.RETRIEVE_AUTH_METHODS; +} + +/** + * Check if token is already present upon initial load. + * @class CheckAuthenticationTokenAction + * @implements {Action} + */ +export class RetrieveAuthMethodsSuccessAction implements Action { + public type: string = AuthActionTypes.RETRIEVE_AUTH_METHODS_SUCCESS; + payload: string; + + constructor(location: string) { + this.payload = location; + } +} + +/** + * Check if token is already present upon initial load. + * @class CheckAuthenticationTokenAction + * @implements {Action} + */ +export class RetrieveAuthMethodsErrorAction implements Action { + public type: string = AuthActionTypes.RETRIEVE_AUTH_METHODS_ERROR; +} + /** * Change the redirect url. * @class SetRedirectUrlAction @@ -343,4 +378,7 @@ export type AuthActions | RegistrationErrorAction | RegistrationSuccessAction | AddAuthenticationMessageAction - | ResetAuthenticationMessagesAction; + | ResetAuthenticationMessagesAction + | RetrieveAuthMethodsAction + | RetrieveAuthMethodsSuccessAction + | RetrieveAuthMethodsErrorAction; From 10085ccf413c4b959c7efd83f29f37ee1074a95c Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 09:45:44 +0200 Subject: [PATCH 003/171] Added effect retrieveMethods$ --- src/config/auth-config.interfaces.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 src/config/auth-config.interfaces.ts diff --git a/src/config/auth-config.interfaces.ts b/src/config/auth-config.interfaces.ts new file mode 100644 index 0000000000..cc3d97c6b8 --- /dev/null +++ b/src/config/auth-config.interfaces.ts @@ -0,0 +1,10 @@ +import { Config } from './config.interface'; + +export interface AuthTarget { + host: string; + page: string; +} + +export interface AuthConfig extends Config { + target: AuthTarget; +} From 70d95b47648e0c8d6f4618e95b3f716a954f7122 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 09:57:52 +0200 Subject: [PATCH 004/171] Changed auth-interceptor: location used to makeAuthStatusObject() --- src/app/core/auth/auth.actions.ts | 1 + src/app/core/auth/auth.effects.ts | 15 +++- src/app/core/auth/auth.interceptor.ts | 6 +- src/app/core/auth/auth.service.ts | 100 +++++++++++++++++--------- src/config/global-config.interface.ts | 2 + 5 files changed, 88 insertions(+), 36 deletions(-) diff --git a/src/app/core/auth/auth.actions.ts b/src/app/core/auth/auth.actions.ts index f54ceea686..c2ab855aad 100644 --- a/src/app/core/auth/auth.actions.ts +++ b/src/app/core/auth/auth.actions.ts @@ -311,6 +311,7 @@ export class ResetAuthenticationMessagesAction implements Action { public type: string = AuthActionTypes.RESET_MESSAGES; } +// Next three Actions are used by shibboleth login /** * Check if token is already present upon initial load. * @class CheckAuthenticationTokenAction diff --git a/src/app/core/auth/auth.effects.ts b/src/app/core/auth/auth.effects.ts index 1e68802af8..fa314b5bc2 100644 --- a/src/app/core/auth/auth.effects.ts +++ b/src/app/core/auth/auth.effects.ts @@ -26,7 +26,7 @@ import { RefreshTokenSuccessAction, RegistrationAction, RegistrationErrorAction, - RegistrationSuccessAction + RegistrationSuccessAction, RetrieveAuthMethodsErrorAction, RetrieveAuthMethodsSuccessAction } from './auth.actions'; import { EPerson } from '../eperson/models/eperson.model'; import { AuthStatus } from './models/auth-status.model'; @@ -169,6 +169,19 @@ export class AuthEffects { tap(() => this.authService.redirectToLoginWhenTokenExpired()) ); + @Effect() + public retrieveMethods$: Observable = this.actions$ + .pipe( + ofType(AuthActionTypes.RETRIEVE_AUTH_METHODS), + switchMap(() => { + return this.authService.retrieveAuthMethods() + .pipe( + map((location: any) => new RetrieveAuthMethodsSuccessAction(location)), + catchError((error) => observableOf(new RetrieveAuthMethodsErrorAction())) + ) + }) + ) + /** * @constructor * @param {Actions} actions$ diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index da760b8faa..958491f601 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -56,10 +56,11 @@ export class AuthInterceptor implements HttpInterceptor { return http.url && http.url.endsWith('/authn/logout'); } - private makeAuthStatusObject(authenticated:boolean, accessToken?: string, error?: string): AuthStatus { + private makeAuthStatusObject(authenticated:boolean, accessToken?: string, error?: string, location?): AuthStatus { const authStatus = new AuthStatus(); authStatus.id = null; authStatus.okay = true; + authStatus.ssoLoginUrl = location; // this line added while developing shibboleth dev if (authenticated) { authStatus.authenticated = true; authStatus.token = new AuthTokenInfo(accessToken); @@ -133,9 +134,10 @@ export class AuthInterceptor implements HttpInterceptor { if (this.isAuthRequest(error)) { // clean eventually refresh Requests list this.refreshTokenRequestUrls = []; + const location = error.headers.get('Location');// this line added while shibboleth dev // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ - body: this.makeAuthStatusObject(false, null, error.error), + body: this.makeAuthStatusObject(false, null, error.error, location), headers: error.headers, status: error.status, statusText: error.statusText, diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index a01768e687..c5941ebace 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -1,27 +1,29 @@ -import { Inject, Injectable, Optional } from '@angular/core'; -import { PRIMARY_OUTLET, Router, UrlSegmentGroup, UrlTree } from '@angular/router'; -import { HttpHeaders } from '@angular/common/http'; -import { REQUEST, RESPONSE } from '@nguniversal/express-engine/tokens'; +import {Inject, Injectable, Optional} from '@angular/core'; +import {PRIMARY_OUTLET, Router, UrlSegmentGroup, UrlTree} from '@angular/router'; +import {HttpHeaders} from '@angular/common/http'; +import {REQUEST, RESPONSE} from '@nguniversal/express-engine/tokens'; -import { Observable, of as observableOf } from 'rxjs'; -import { distinctUntilChanged, filter, map, startWith, switchMap, take, withLatestFrom } from 'rxjs/operators'; -import { RouterReducerState } from '@ngrx/router-store'; -import { select, Store } from '@ngrx/store'; -import { CookieAttributes } from 'js-cookie'; +import {Observable, of as observableOf} from 'rxjs'; +import {distinctUntilChanged, filter, map, startWith, switchMap, take, withLatestFrom} from 'rxjs/operators'; +import {RouterReducerState} from '@ngrx/router-store'; +import {select, Store} from '@ngrx/store'; +import {CookieAttributes} from 'js-cookie'; -import { EPerson } from '../eperson/models/eperson.model'; -import { AuthRequestService } from './auth-request.service'; -import { HttpOptions } from '../dspace-rest-v2/dspace-rest-v2.service'; -import { AuthStatus } from './models/auth-status.model'; -import { AuthTokenInfo, TOKENITEM } from './models/auth-token-info.model'; -import { isEmpty, isNotEmpty, isNotNull, isNotUndefined } from '../../shared/empty.util'; -import { CookieService } from '../../shared/services/cookie.service'; -import { getAuthenticationToken, getRedirectUrl, isAuthenticated, isTokenRefreshing } from './selectors'; -import { AppState, routerStateSelector } from '../../app.reducer'; -import { ResetAuthenticationMessagesAction, SetRedirectUrlAction } from './auth.actions'; -import { NativeWindowRef, NativeWindowService } from '../../shared/services/window.service'; -import { Base64EncodeUrl } from '../../shared/utils/encode-decode.util'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; +import {EPerson} from '../eperson/models/eperson.model'; +import {AuthRequestService} from './auth-request.service'; +import {HttpOptions} from '../dspace-rest-v2/dspace-rest-v2.service'; +import {AuthStatus} from './models/auth-status.model'; +import {AuthTokenInfo, TOKENITEM} from './models/auth-token-info.model'; +import {isEmpty, isNotEmpty, isNotNull, isNotUndefined} from '../../shared/empty.util'; +import {CookieService} from '../../shared/services/cookie.service'; +import {getAuthenticationToken, getRedirectUrl, isAuthenticated, isTokenRefreshing} from './selectors'; +import {AppState, routerStateSelector} from '../../app.reducer'; +import {ResetAuthenticationMessagesAction, SetRedirectUrlAction} from './auth.actions'; +import {NativeWindowRef, NativeWindowService} from '../../shared/services/window.service'; +import {Base64EncodeUrl} from '../../shared/utils/encode-decode.util'; +import {RemoteDataBuildService} from '../cache/builders/remote-data-build.service'; +import {GlobalConfig} from '../../../config/global-config.interface'; +import {GLOBAL_CONFIG} from '../../../config'; export const LOGIN_ROUTE = '/login'; export const LOGOUT_ROUTE = '/logout'; @@ -40,14 +42,16 @@ export class AuthService { */ protected _authenticated: boolean; - constructor(@Inject(REQUEST) protected req: any, - @Inject(NativeWindowService) protected _window: NativeWindowRef, - protected authRequestService: AuthRequestService, - @Optional() @Inject(RESPONSE) private response: any, - protected router: Router, - protected storage: CookieService, - protected store: Store, - protected rdbService: RemoteDataBuildService + constructor( + @Inject(GLOBAL_CONFIG) public config: GlobalConfig, + @Inject(REQUEST) protected req: any, + @Inject(NativeWindowService) protected _window: NativeWindowRef, + protected authRequestService: AuthRequestService, + @Optional() @Inject(RESPONSE) private response: any, + protected router: Router, + protected storage: CookieService, + protected store: Store, + protected rdbService: RemoteDataBuildService ) { this.store.pipe( select(isAuthenticated), @@ -193,6 +197,36 @@ export class AuthService { this.store.dispatch(new ResetAuthenticationMessagesAction()); } + /** + * Retrieve authentication methods available + * @returns {User} + */ + public retrieveAuthMethods(): Observable { + return this.authRequestService.getRequest('login').pipe( + map((status: AuthStatus) => { + let url = ''; + if (isNotEmpty(status.ssoLoginUrl)) { + url = this.parseSSOLocation(status.ssoLoginUrl); + } + return url; + }) + ) + } + + private parseSSOLocation(url: string): string { + const parseUrl = decodeURIComponent(url); + // const urlTree: UrlTree = this.router.parseUrl(url); + // this.router.parseUrl(url); + // if (url.endsWith('/')) { + // url += 'login'; + // } else { + // url = url.replace('/?target=http(.+)/g', 'https://hasselt-dspace.dev01.4science.it/dspace-spring-rest/shib.html'); + // } + // console.log(url); + const target = `?target=${this.config.auth.target.host}${this.config.auth.target.page}`; + return parseUrl.replace(/\?target=http.+/g, target); + } + /** * Create a new user * @returns {User} @@ -213,7 +247,7 @@ export class AuthService { // Send a request that sign end the session let headers = new HttpHeaders(); headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); - const options: HttpOptions = Object.create({ headers, responseType: 'text' }); + const options: HttpOptions = Object.create({headers, responseType: 'text'}); return this.authRequestService.getRequest('logout', options).pipe( map((status: AuthStatus) => { if (!status.authenticated) { @@ -289,7 +323,7 @@ export class AuthService { // Set the cookie expire date const expires = new Date(expireDate); - const options: CookieAttributes = { expires: expires }; + const options: CookieAttributes = {expires: expires}; // Save cookie with the token return this.storage.set(TOKENITEM, token, options); @@ -388,7 +422,7 @@ export class AuthService { // Set the cookie expire date const expires = new Date(expireDate); - const options: CookieAttributes = { expires: expires }; + const options: CookieAttributes = {expires: expires}; this.storage.set(REDIRECT_COOKIE, url, options); this.store.dispatch(new SetRedirectUrlAction(isNotUndefined(url) ? url : '')); } diff --git a/src/config/global-config.interface.ts b/src/config/global-config.interface.ts index 22b4b0500f..938b5be984 100644 --- a/src/config/global-config.interface.ts +++ b/src/config/global-config.interface.ts @@ -9,12 +9,14 @@ import {LangConfig} from './lang-config.interface'; import { BrowseByConfig } from './browse-by-config.interface'; import { ItemPageConfig } from './item-page-config.interface'; import { Theme } from './theme.inferface'; +import {AuthConfig} from './auth-config.interfaces'; export interface GlobalConfig extends Config { ui: ServerConfig; rest: ServerConfig; production: boolean; cache: CacheConfig; + auth: AuthConfig; form: FormConfig; notifications: INotificationBoardOptions; submission: SubmissionConfig; From 52cfe846cb2201a0bbe63487c5ec22c841eb1609 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 10:02:00 +0200 Subject: [PATCH 005/171] Added cases needed for shobboleth login to reducer --- src/app/core/auth/auth.reducer.ts | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index 98827d842e..b22063ad77 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -8,7 +8,7 @@ import { LogOutErrorAction, RedirectWhenAuthenticationIsRequiredAction, RedirectWhenTokenExpiredAction, - RefreshTokenSuccessAction, + RefreshTokenSuccessAction, RetrieveAuthMethodsSuccessAction, SetRedirectUrlAction } from './auth.actions'; // import models @@ -45,6 +45,9 @@ export interface AuthState { // true when refreshing token refreshing?: boolean; + // sso login url + ssoLoginUrl?: string; + // the authenticated user user?: EPerson; } @@ -56,6 +59,7 @@ const initialState: AuthState = { authenticated: false, loaded: false, loading: false, + ssoLoginUrl: '' }; /** @@ -187,6 +191,23 @@ export function authReducer(state: any = initialState, action: AuthActions): Aut info: undefined, }); + // next three cases are used by shibboleth login + case AuthActionTypes.RETRIEVE_AUTH_METHODS: + return Object.assign({}, state, { + loading: true + }); + + case AuthActionTypes.RETRIEVE_AUTH_METHODS_SUCCESS: + return Object.assign({}, state, { + loading: false, + ssoLoginUrl: (action as RetrieveAuthMethodsSuccessAction).payload + }); + + case AuthActionTypes.RETRIEVE_AUTH_METHODS_ERROR: + return Object.assign({}, state, { + loading: false + }); + case AuthActionTypes.SET_REDIRECT_URL: return Object.assign({}, state, { redirectUrl: (action as SetRedirectUrlAction).payload, From d6eab441a434cb249cdf04081caf5f137f019e9d Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 10:16:33 +0200 Subject: [PATCH 006/171] Added selectors for shibboleth login --- src/app/core/auth/selectors.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/app/core/auth/selectors.ts b/src/app/core/auth/selectors.ts index 8c88e0fce5..8888907356 100644 --- a/src/app/core/auth/selectors.ts +++ b/src/app/core/auth/selectors.ts @@ -107,6 +107,14 @@ const _getRegistrationError = (state: AuthState) => state.error; */ const _getRedirectUrl = (state: AuthState) => state.redirectUrl; +/** + * Returns the sso login url. + * @function _getSSOLoginUrl + * @param {State} state + * @returns {string} + */ +const _getSSOLoginUrl = (state: AuthState) => state.ssoLoginUrl; + /** * Returns the authenticated user * @function getAuthenticatedUser @@ -204,3 +212,12 @@ export const getRegistrationError = createSelector(getAuthState, _getRegistratio * @return {string} */ export const getRedirectUrl = createSelector(getAuthState, _getRedirectUrl); + +/** + * Returns the sso login url. + * @function getSSOLoginUrl + * @param {AuthState} state + * @param {any} props + * @return {string} + */ +export const getSSOLoginUrl = createSelector(getAuthState, _getSSOLoginUrl); From b4f3bf71adc1f998104d74650ba5cdf470f1c018 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 10:30:01 +0200 Subject: [PATCH 007/171] Added shibboleth button to log-in.component --- src/app/shared/log-in/log-in.component.html | 4 ++++ src/app/shared/log-in/log-in.component.ts | 20 +++++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index fe9a506e71..66ff22a0bf 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -20,6 +20,10 @@ +
+
{{"login.form.or-divider" | translate}}
+ {{"login.form.ssoLogin" | translate}} +
{{"login.form.new-user" | translate}} {{"login.form.forgot-password" | translate}} diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts index 1291e6aa4c..955ca2612a 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -11,7 +11,7 @@ import { import { getAuthenticationError, - getAuthenticationInfo, + getAuthenticationInfo, getSSOLoginUrl, isAuthenticated, isAuthenticationLoading, } from '../../core/auth/selectors'; @@ -81,6 +81,18 @@ export class LogInComponent implements OnDestroy, OnInit { */ private alive = true; + /** + * The redirect url to login with sso. + * @type {Observable} + */ + public ssoLoginUrl: Observable; + + /** + * True if is present the url to login with sso. + * @type {Observable} + */ + public hasSsoLoginUrl: Observable; + /** * @constructor * @param {AuthService} authService @@ -129,6 +141,9 @@ export class LogInComponent implements OnDestroy, OnInit { // set loading this.loading = this.store.pipe(select(isAuthenticationLoading)); + // set sso login url + this.ssoLoginUrl = this.store.pipe(select(getSSOLoginUrl)); + // subscribe to success this.store.pipe( select(isAuthenticated), @@ -138,6 +153,9 @@ export class LogInComponent implements OnDestroy, OnInit { this.authService.redirectToPreviousUrl(); } ); + + this.hasSsoLoginUrl = this.ssoLoginUrl + .pipe(map((url) => isNotEmpty(url))) } /** From ffc724bfbc3d9f00c6da4e92966eba917f1d3725 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 10:49:47 +0200 Subject: [PATCH 008/171] Added auth to environment.default.js --- config/environment.default.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/config/environment.default.js b/config/environment.default.js index 03080f756f..f0cf41b037 100644 --- a/config/environment.default.js +++ b/config/environment.default.js @@ -29,6 +29,13 @@ module.exports = { timePerMethod: {'PATCH': 3} //time in seconds } }, + // Authentications + auth: { + target: { + host: 'https://dspace7.4science.it', + page: '/dspace-spring-rest/shib.html' + } + }, // Form settings form: { // NOTE: Map server-side validators to comparative Angular form validators From 086579b7f7d0124b9d8d8369b56e154b9757de16 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 11:47:10 +0200 Subject: [PATCH 009/171] Added effect: checkTokenError --- src/app/core/auth/auth.effects.ts | 9 ++++++++- src/app/shared/log-in/log-in.component.html | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/app/core/auth/auth.effects.ts b/src/app/core/auth/auth.effects.ts index fa314b5bc2..6d277aaa1b 100644 --- a/src/app/core/auth/auth.effects.ts +++ b/src/app/core/auth/auth.effects.ts @@ -26,7 +26,7 @@ import { RefreshTokenSuccessAction, RegistrationAction, RegistrationErrorAction, - RegistrationSuccessAction, RetrieveAuthMethodsErrorAction, RetrieveAuthMethodsSuccessAction + RegistrationSuccessAction, RetrieveAuthMethodsAction, RetrieveAuthMethodsErrorAction, RetrieveAuthMethodsSuccessAction } from './auth.actions'; import { EPerson } from '../eperson/models/eperson.model'; import { AuthStatus } from './models/auth-status.model'; @@ -88,6 +88,13 @@ export class AuthEffects { }) ); + @Effect() + public checkTokenError$: Observable = this.actions$ + .pipe( + ofType(AuthActionTypes.CHECK_AUTHENTICATION_TOKEN_ERROR), + map(() => new RetrieveAuthMethodsAction()) + ) + @Effect() public createUser$: Observable = this.actions$.pipe( ofType(AuthActionTypes.REGISTRATION), diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 66ff22a0bf..19449c4b4d 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -19,11 +19,14 @@ type="password"> + +
{{"login.form.or-divider" | translate}}
{{"login.form.ssoLogin" | translate}}
+ {{"login.form.new-user" | translate}} {{"login.form.forgot-password" | translate}} From 73c046974b212e4a2cd89d7f8e5f0d4265960565 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 3 Jun 2019 15:48:05 +0200 Subject: [PATCH 010/171] Branch change commit --- src/app/core/auth/auth-request.service.ts | 3 +++ src/app/core/auth/auth.interceptor.ts | 9 +++++++-- src/app/core/auth/auth.service.ts | 2 ++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/app/core/auth/auth-request.service.ts b/src/app/core/auth/auth-request.service.ts index cbabe5c3fd..726bd0c44b 100644 --- a/src/app/core/auth/auth-request.service.ts +++ b/src/app/core/auth/auth-request.service.ts @@ -50,9 +50,12 @@ export class AuthRequestService { } public getRequest(method: string, options?: HttpOptions): Observable { + console.log('auth.request getRequest() was called'); return this.halService.getEndpoint(this.linkName).pipe( filter((href: string) => isNotEmpty(href)), + tap((href) => console.log('auth-request.service getRequest()',href)), map((endpointURL) => this.getEndpointByMethod(endpointURL, method)), + tap((whatsThis) => console.log('whatsThis: ', whatsThis )), distinctUntilChanged(), map((endpointURL: string) => new AuthGetRequest(this.requestService.generateRequestId(), endpointURL, options)), tap((request: GetRequest) => this.requestService.configure(request, true)), diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 958491f601..b86a4d3a4a 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -21,6 +21,7 @@ import { isNotEmpty, isUndefined, isNotNull } from '../../shared/empty.util'; import { RedirectWhenTokenExpiredAction, RefreshTokenAction } from './auth.actions'; import { Store } from '@ngrx/store'; import { Router } from '@angular/router'; +import {AuthError} from './models/auth-error.model'; @Injectable() export class AuthInterceptor implements HttpInterceptor { @@ -56,11 +57,11 @@ export class AuthInterceptor implements HttpInterceptor { return http.url && http.url.endsWith('/authn/logout'); } - private makeAuthStatusObject(authenticated:boolean, accessToken?: string, error?: string, location?): AuthStatus { + private makeAuthStatusObject(authenticated:boolean, accessToken?: string, error?: string, location?: string): AuthStatus { const authStatus = new AuthStatus(); authStatus.id = null; authStatus.okay = true; - authStatus.ssoLoginUrl = location; // this line added while developing shibboleth dev + authStatus.ssoLoginUrl = location; // this line was added while developing shibboleth dev if (authenticated) { authStatus.authenticated = true; authStatus.token = new AuthTokenInfo(accessToken); @@ -128,13 +129,17 @@ export class AuthInterceptor implements HttpInterceptor { } }), catchError((error, caught) => { + console.log('catchError operator in auth.interceptor was triggered'); // Intercept an error response if (error instanceof HttpErrorResponse) { // Checks if is a response from a request to an authentication endpoint if (this.isAuthRequest(error)) { + console.log('catchError isAuthRequest=true'); // clean eventually refresh Requests list this.refreshTokenRequestUrls = []; + // console.log('error: ', error); const location = error.headers.get('Location');// this line added while shibboleth dev + console.log('error.headers.get("Location"): ', location); // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ body: this.makeAuthStatusObject(false, null, error.error, location), diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index c5941ebace..90a91d81f3 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -202,6 +202,7 @@ export class AuthService { * @returns {User} */ public retrieveAuthMethods(): Observable { + console.log('auth.service retrieveAuthMethods() was called'); return this.authRequestService.getRequest('login').pipe( map((status: AuthStatus) => { let url = ''; @@ -214,6 +215,7 @@ export class AuthService { } private parseSSOLocation(url: string): string { + console.log('auth.service parseSSOLocation was called'); const parseUrl = decodeURIComponent(url); // const urlTree: UrlTree = this.router.parseUrl(url); // this.router.parseUrl(url); From 3dfdc9bdc56d77d4c5bd0803451403276431d436 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 4 Jun 2019 09:12:30 +0200 Subject: [PATCH 011/171] Added 405 error response check to interceptor --- src/app/core/auth/auth.interceptor.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index b86a4d3a4a..1a7acb805f 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -33,6 +33,10 @@ export class AuthInterceptor implements HttpInterceptor { constructor(private inj: Injector, private router: Router, private store: Store) { } + private is405AuthResponse(response: HttpResponseBase): boolean { + return response.status === 405; + } + private isUnauthorized(response: HttpResponseBase): boolean { // invalid_token The access token provided is expired, revoked, malformed, or invalid for other reasons return response.status === 401; @@ -132,6 +136,12 @@ export class AuthInterceptor implements HttpInterceptor { console.log('catchError operator in auth.interceptor was triggered'); // Intercept an error response if (error instanceof HttpErrorResponse) { + + // Check for 405 + if (this.is405AuthResponse(error)) { + console.log('the caught error is a 405'); + } + // Checks if is a response from a request to an authentication endpoint if (this.isAuthRequest(error)) { console.log('catchError isAuthRequest=true'); @@ -140,6 +150,10 @@ export class AuthInterceptor implements HttpInterceptor { // console.log('error: ', error); const location = error.headers.get('Location');// this line added while shibboleth dev console.log('error.headers.get("Location"): ', location); + + console.log('error headers: ', error.headers); + console.log('error', error); + // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ body: this.makeAuthStatusObject(false, null, error.error, location), From ef9447cb54d0896c6a5425dff501ddc92916ce68 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 4 Jun 2019 13:02:40 +0200 Subject: [PATCH 012/171] Removed global config from auth.service --- config/environment.default.js | 4 +-- src/app/core/auth/auth.interceptor.ts | 42 ++++++++++++++++---------- src/app/core/auth/auth.service.spec.ts | 8 +++-- src/app/core/auth/auth.service.ts | 12 +++++--- 4 files changed, 40 insertions(+), 26 deletions(-) diff --git a/config/environment.default.js b/config/environment.default.js index f0cf41b037..f13cbcfc74 100644 --- a/config/environment.default.js +++ b/config/environment.default.js @@ -32,8 +32,8 @@ module.exports = { // Authentications auth: { target: { - host: 'https://dspace7.4science.it', - page: '/dspace-spring-rest/shib.html' + host: 'https://fis.tiss.tuwien.ac.at', + page: '/spring-rest/login.html' } }, // Form settings diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 1a7acb805f..f74ff6e878 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -1,7 +1,7 @@ -import { Observable, of as observableOf, throwError as observableThrowError } from 'rxjs'; +import {Observable, of as observableOf, throwError as observableThrowError} from 'rxjs'; -import { catchError, filter, map } from 'rxjs/operators'; -import { Injectable, Injector } from '@angular/core'; +import {catchError, filter, map} from 'rxjs/operators'; +import {Injectable, Injector} from '@angular/core'; import { HttpErrorResponse, HttpEvent, @@ -11,16 +11,16 @@ import { HttpResponse, HttpResponseBase } from '@angular/common/http'; -import { find } from 'lodash'; +import {find} from 'lodash'; -import { AppState } from '../../app.reducer'; -import { AuthService } from './auth.service'; -import { AuthStatus } from './models/auth-status.model'; -import { AuthTokenInfo } from './models/auth-token-info.model'; -import { isNotEmpty, isUndefined, isNotNull } from '../../shared/empty.util'; -import { RedirectWhenTokenExpiredAction, RefreshTokenAction } from './auth.actions'; -import { Store } from '@ngrx/store'; -import { Router } from '@angular/router'; +import {AppState} from '../../app.reducer'; +import {AuthService} from './auth.service'; +import {AuthStatus} from './models/auth-status.model'; +import {AuthTokenInfo} from './models/auth-token-info.model'; +import {isNotEmpty, isUndefined, isNotNull} from '../../shared/empty.util'; +import {RedirectWhenTokenExpiredAction, RefreshTokenAction} from './auth.actions'; +import {Store} from '@ngrx/store'; +import {Router} from '@angular/router'; import {AuthError} from './models/auth-error.model'; @Injectable() @@ -31,7 +31,8 @@ export class AuthInterceptor implements HttpInterceptor { // we're creating a refresh token request list protected refreshTokenRequestUrls = []; - constructor(private inj: Injector, private router: Router, private store: Store) { } + constructor(private inj: Injector, private router: Router, private store: Store) { + } private is405AuthResponse(response: HttpResponseBase): boolean { return response.status === 405; @@ -61,7 +62,7 @@ export class AuthInterceptor implements HttpInterceptor { return http.url && http.url.endsWith('/authn/logout'); } - private makeAuthStatusObject(authenticated:boolean, accessToken?: string, error?: string, location?: string): AuthStatus { + private makeAuthStatusObject(authenticated: boolean, accessToken?: string, error?: string, location?: string): AuthStatus { const authStatus = new AuthStatus(); authStatus.id = null; authStatus.okay = true; @@ -146,10 +147,19 @@ export class AuthInterceptor implements HttpInterceptor { if (this.isAuthRequest(error)) { console.log('catchError isAuthRequest=true'); // clean eventually refresh Requests list + this.refreshTokenRequestUrls = []; // console.log('error: ', error); - const location = error.headers.get('Location');// this line added while shibboleth dev - console.log('error.headers.get("Location"): ', location); + let location = error.headers.get('location');// this line added while shibboleth dev + console.log('error.headers.get("location"): ', location); + + console.log('www-authenticate', error.headers.get('www-authenticate')); + let strings = error.headers.get('www-authenticate').split(','); + let string = strings[1]; + let s = string.replace('location=', ''); + let s1 = s.replace('"', '').trim(); + console.log('This should be the location: ', s1); + location = s1; console.log('error headers: ', error.headers); console.log('error', error); diff --git a/src/app/core/auth/auth.service.spec.ts b/src/app/core/auth/auth.service.spec.ts index e766a45e48..c15d123783 100644 --- a/src/app/core/auth/auth.service.spec.ts +++ b/src/app/core/auth/auth.service.spec.ts @@ -23,6 +23,8 @@ import { AppState } from '../../app.reducer'; import { ClientCookieService } from '../../shared/services/client-cookie.service'; import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; import { getMockRemoteDataBuildService } from '../../shared/mocks/mock-remote-data-build.service'; +import {GlobalConfig} from '../../../config/global-config.interface'; +import {GLOBAL_CONFIG} from '../../../config'; describe('AuthService test', () => { @@ -138,9 +140,9 @@ describe('AuthService test', () => { { provide: AuthRequestService, useValue: authRequest }, { provide: REQUEST, useValue: {} }, { provide: Router, useValue: routerStub }, - { provide: RemoteDataBuildService, useValue: rdbService }, + CookieService, - AuthService + AuthService, ] }).compileComponents(); })); @@ -151,7 +153,7 @@ describe('AuthService test', () => { (state as any).core = Object.create({}); (state as any).core.auth = authenticatedState; }); - authService = new AuthService({}, window, undefined, authReqService, router, cookieService, store, rdbService); + authService = new AuthService( {}, window, undefined, authReqService, router, cookieService, store, rdbService); })); it('should return true when user is logged in', () => { diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index 90a91d81f3..ab1d38b79e 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -43,7 +43,7 @@ export class AuthService { protected _authenticated: boolean; constructor( - @Inject(GLOBAL_CONFIG) public config: GlobalConfig, + // @Inject(GLOBAL_CONFIG) public config: GlobalConfig, @Inject(REQUEST) protected req: any, @Inject(NativeWindowService) protected _window: NativeWindowRef, protected authRequestService: AuthRequestService, @@ -203,18 +203,20 @@ export class AuthService { */ public retrieveAuthMethods(): Observable { console.log('auth.service retrieveAuthMethods() was called'); - return this.authRequestService.getRequest('login').pipe( + // return this.authRequestService.getRequest('login').pipe( + return this.authRequestService.postToEndpoint('login', {}).pipe( map((status: AuthStatus) => { let url = ''; if (isNotEmpty(status.ssoLoginUrl)) { - url = this.parseSSOLocation(status.ssoLoginUrl); + // url = this.parseSSOLocation(status.ssoLoginUrl); + url = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https%3A%2F%2Ffis.tiss.tuwien.ac.at'; } return url; }) ) } - private parseSSOLocation(url: string): string { +/* private parseSSOLocation(url: string): string { console.log('auth.service parseSSOLocation was called'); const parseUrl = decodeURIComponent(url); // const urlTree: UrlTree = this.router.parseUrl(url); @@ -227,7 +229,7 @@ export class AuthService { // console.log(url); const target = `?target=${this.config.auth.target.host}${this.config.auth.target.page}`; return parseUrl.replace(/\?target=http.+/g, target); - } + }*/ /** * Create a new user From 994d96bc9543b23513e9839980e915da56f3bd30 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 4 Jun 2019 14:30:16 +0200 Subject: [PATCH 013/171] Removed parseSSOlocation() from auth.service --- src/app/core/auth/auth.service.spec.ts | 7 +++---- src/app/core/auth/auth.service.ts | 6 +++--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/app/core/auth/auth.service.spec.ts b/src/app/core/auth/auth.service.spec.ts index c15d123783..5d55e15adc 100644 --- a/src/app/core/auth/auth.service.spec.ts +++ b/src/app/core/auth/auth.service.spec.ts @@ -140,8 +140,7 @@ describe('AuthService test', () => { { provide: AuthRequestService, useValue: authRequest }, { provide: REQUEST, useValue: {} }, { provide: Router, useValue: routerStub }, - - CookieService, + CookieService, AuthService, ] }).compileComponents(); @@ -153,7 +152,7 @@ describe('AuthService test', () => { (state as any).core = Object.create({}); (state as any).core.auth = authenticatedState; }); - authService = new AuthService( {}, window, undefined, authReqService, router, cookieService, store, rdbService); + authService = new AuthService(undefined, {}, window, undefined, authReqService, router, cookieService, store, rdbService); })); it('should return true when user is logged in', () => { @@ -214,7 +213,7 @@ describe('AuthService test', () => { (state as any).core = Object.create({}); (state as any).core.auth = authenticatedState; }); - authService = new AuthService({}, window, undefined, authReqService, router, cookieService, store, rdbService); + authService = new AuthService(undefined, {}, window, undefined, authReqService, router, cookieService, store, rdbService); storage = (authService as any).storage; spyOn(storage, 'get'); spyOn(storage, 'remove'); diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index ab1d38b79e..9742141b7a 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -43,7 +43,7 @@ export class AuthService { protected _authenticated: boolean; constructor( - // @Inject(GLOBAL_CONFIG) public config: GlobalConfig, + @Inject(GLOBAL_CONFIG) public config: GlobalConfig, @Inject(REQUEST) protected req: any, @Inject(NativeWindowService) protected _window: NativeWindowRef, protected authRequestService: AuthRequestService, @@ -216,7 +216,7 @@ export class AuthService { ) } -/* private parseSSOLocation(url: string): string { + private parseSSOLocation(url: string): string { console.log('auth.service parseSSOLocation was called'); const parseUrl = decodeURIComponent(url); // const urlTree: UrlTree = this.router.parseUrl(url); @@ -229,7 +229,7 @@ export class AuthService { // console.log(url); const target = `?target=${this.config.auth.target.host}${this.config.auth.target.page}`; return parseUrl.replace(/\?target=http.+/g, target); - }*/ + } /** * Create a new user From 20794381f185f01d7c3e31026f3fdcec44fbc90f Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Wed, 5 Jun 2019 13:39:18 +0200 Subject: [PATCH 014/171] Refactoring of auth.interceptor --- src/app/app.module.ts | 1 + src/app/core/auth/auth-request.service.ts | 30 +++++++++++---------- src/app/core/auth/auth.interceptor.ts | 8 +++--- src/app/shared/log-in/log-in.component.html | 3 +++ 4 files changed, 24 insertions(+), 18 deletions(-) diff --git a/src/app/app.module.ts b/src/app/app.module.ts index ce5a2d78a2..ddcd78ce8e 100755 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -76,6 +76,7 @@ const ENTITY_IMPORTS = [ IMPORTS.push( StoreDevtoolsModule.instrument({ maxAge: 100, + // logOnly: false, logOnly: ENV_CONFIG.production, }) ); diff --git a/src/app/core/auth/auth-request.service.ts b/src/app/core/auth/auth-request.service.ts index 726bd0c44b..7b2620bf13 100644 --- a/src/app/core/auth/auth-request.service.ts +++ b/src/app/core/auth/auth-request.service.ts @@ -1,15 +1,15 @@ -import { Observable, of as observableOf, throwError as observableThrowError } from 'rxjs'; -import { distinctUntilChanged, filter, map, mergeMap, tap } from 'rxjs/operators'; -import { Inject, Injectable } from '@angular/core'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { RequestService } from '../data/request.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { GlobalConfig } from '../../../config/global-config.interface'; -import { isNotEmpty } from '../../shared/empty.util'; -import { AuthGetRequest, AuthPostRequest, GetRequest, PostRequest, RestRequest } from '../data/request.models'; -import { AuthStatusResponse, ErrorResponse } from '../cache/response.models'; -import { HttpOptions } from '../dspace-rest-v2/dspace-rest-v2.service'; -import { getResponseFromEntry } from '../shared/operators'; +import {Observable, of as observableOf, throwError as observableThrowError} from 'rxjs'; +import {distinctUntilChanged, filter, map, mergeMap, tap} from 'rxjs/operators'; +import {Inject, Injectable} from '@angular/core'; +import {HALEndpointService} from '../shared/hal-endpoint.service'; +import {RequestService} from '../data/request.service'; +import {GLOBAL_CONFIG} from '../../../config'; +import {GlobalConfig} from '../../../config/global-config.interface'; +import {isNotEmpty} from '../../shared/empty.util'; +import {AuthGetRequest, AuthPostRequest, GetRequest, PostRequest, RestRequest} from '../data/request.models'; +import {AuthStatusResponse, ErrorResponse} from '../cache/response.models'; +import {HttpOptions} from '../dspace-rest-v2/dspace-rest-v2.service'; +import {getResponseFromEntry} from '../shared/operators'; @Injectable() export class AuthRequestService { @@ -41,7 +41,9 @@ export class AuthRequestService { public postToEndpoint(method: string, body: any, options?: HttpOptions): Observable { return this.halService.getEndpoint(this.linkName).pipe( filter((href: string) => isNotEmpty(href)), + tap((href: string) => console.log('This is href in postToEndpoint(): ' , href)), map((endpointURL) => this.getEndpointByMethod(endpointURL, method)), + tap((href2) => {console.log('href2', href2)}), distinctUntilChanged(), map((endpointURL: string) => new AuthPostRequest(this.requestService.generateRequestId(), endpointURL, body, options)), tap((request: PostRequest) => this.requestService.configure(request, true)), @@ -53,9 +55,9 @@ export class AuthRequestService { console.log('auth.request getRequest() was called'); return this.halService.getEndpoint(this.linkName).pipe( filter((href: string) => isNotEmpty(href)), - tap((href) => console.log('auth-request.service getRequest()',href)), + tap((href) => console.log('auth-request.service getRequest()', href)), map((endpointURL) => this.getEndpointByMethod(endpointURL, method)), - tap((whatsThis) => console.log('whatsThis: ', whatsThis )), + tap((whatsThis) => console.log('whatsThis: ', whatsThis)), distinctUntilChanged(), map((endpointURL: string) => new AuthGetRequest(this.requestService.generateRequestId(), endpointURL, options)), tap((request: GetRequest) => this.requestService.configure(request, true)), diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index f74ff6e878..c2715a3f01 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -154,10 +154,10 @@ export class AuthInterceptor implements HttpInterceptor { console.log('error.headers.get("location"): ', location); console.log('www-authenticate', error.headers.get('www-authenticate')); - let strings = error.headers.get('www-authenticate').split(','); - let string = strings[1]; - let s = string.replace('location=', ''); - let s1 = s.replace('"', '').trim(); + const strings = error.headers.get('www-authenticate').split(','); + const locationstring = strings[1]; + const s = locationstring.replace('location=', ''); + const s1 = s.replace('"', '').trim(); console.log('This should be the location: ', s1); location = s1; diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 19449c4b4d..2f3ff45582 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -27,6 +27,9 @@ {{"login.form.ssoLogin" | translate}} + + + {{"login.form.new-user" | translate}} {{"login.form.forgot-password" | translate}} From 41e238bad7af18ba45663d58d30adeba8f2e11a6 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 6 Jun 2019 09:24:23 +0200 Subject: [PATCH 015/171] Added method getLocationFromHeaders() to auth.interceptor --- src/app/core/auth/auth.interceptor.ts | 36 +++++++++++++-------------- src/app/core/auth/auth.service.ts | 2 +- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index c2715a3f01..8aa6f084ea 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -5,7 +5,7 @@ import {Injectable, Injector} from '@angular/core'; import { HttpErrorResponse, HttpEvent, - HttpHandler, + HttpHandler, HttpHeaders, HttpInterceptor, HttpRequest, HttpResponse, @@ -77,6 +77,19 @@ export class AuthInterceptor implements HttpInterceptor { return authStatus; } + private getLocationfromHeader(header: HttpHeaders): string { + console.log('HEADER www-authenticate: ', header.get('www-authenticate')); + let location = ''; + if (header.get('www-authenticate').startsWith('shibboleth realm')) { + const strings = header.get('www-authenticate').split(','); + location = strings[1]; + location = location.replace('location=', ''); + console.log('This should be the location: ', location); + return location = location.replace('"', '').trim(); + } + return location; + } + intercept(req: HttpRequest, next: HttpHandler): Observable> { const authService = this.inj.get(AuthService); @@ -139,30 +152,17 @@ export class AuthInterceptor implements HttpInterceptor { if (error instanceof HttpErrorResponse) { // Check for 405 - if (this.is405AuthResponse(error)) { - console.log('the caught error is a 405'); - } + /* if (this.is405AuthResponse(error)) { + console.log('the caught error is a 405'); + }*/ // Checks if is a response from a request to an authentication endpoint if (this.isAuthRequest(error)) { console.log('catchError isAuthRequest=true'); // clean eventually refresh Requests list - this.refreshTokenRequestUrls = []; // console.log('error: ', error); - let location = error.headers.get('location');// this line added while shibboleth dev - console.log('error.headers.get("location"): ', location); - - console.log('www-authenticate', error.headers.get('www-authenticate')); - const strings = error.headers.get('www-authenticate').split(','); - const locationstring = strings[1]; - const s = locationstring.replace('location=', ''); - const s1 = s.replace('"', '').trim(); - console.log('This should be the location: ', s1); - location = s1; - - console.log('error headers: ', error.headers); - console.log('error', error); + const location = this.getLocationfromHeader(error.headers); // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index 9742141b7a..9a2c1a9f1b 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -209,7 +209,7 @@ export class AuthService { let url = ''; if (isNotEmpty(status.ssoLoginUrl)) { // url = this.parseSSOLocation(status.ssoLoginUrl); - url = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https%3A%2F%2Ffis.tiss.tuwien.ac.at'; + url = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at'; } return url; }) From ecdf585216db9c2870e92998f45d705fd2406509 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 6 Jun 2019 10:01:23 +0200 Subject: [PATCH 016/171] null check for auth interceptor --- src/app/core/auth/auth.interceptor.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 8aa6f084ea..d9697d3f20 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -162,8 +162,10 @@ export class AuthInterceptor implements HttpInterceptor { // clean eventually refresh Requests list this.refreshTokenRequestUrls = []; // console.log('error: ', error); - const location = this.getLocationfromHeader(error.headers); - + let location = ''; + if (error.headers.get('www-authenticate') != null) { + location = this.getLocationfromHeader(error.headers); + } // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ body: this.makeAuthStatusObject(false, null, error.error, location), From 99576dc64acffe88c5d6be4d4659e8c07d7ce01d Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 6 Jun 2019 14:29:46 +0200 Subject: [PATCH 017/171] Hardcoded ssoLoginUrl in auth.service retrieveAuthMethods --- config/environment.default.js | 2 +- src/app/core/auth/auth.interceptor.ts | 4 ++-- src/app/core/auth/auth.service.ts | 4 +++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/config/environment.default.js b/config/environment.default.js index f13cbcfc74..221b2e8ef9 100644 --- a/config/environment.default.js +++ b/config/environment.default.js @@ -33,7 +33,7 @@ module.exports = { auth: { target: { host: 'https://fis.tiss.tuwien.ac.at', - page: '/spring-rest/login.html' + page: '' } }, // Form settings diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index d9697d3f20..6114af7e24 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -77,7 +77,7 @@ export class AuthInterceptor implements HttpInterceptor { return authStatus; } - private getLocationfromHeader(header: HttpHeaders): string { + private getSSOLocationfromHeader(header: HttpHeaders): string { console.log('HEADER www-authenticate: ', header.get('www-authenticate')); let location = ''; if (header.get('www-authenticate').startsWith('shibboleth realm')) { @@ -164,7 +164,7 @@ export class AuthInterceptor implements HttpInterceptor { // console.log('error: ', error); let location = ''; if (error.headers.get('www-authenticate') != null) { - location = this.getLocationfromHeader(error.headers); + location = this.getSSOLocationfromHeader(error.headers); } // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index 9a2c1a9f1b..f0e53a3e07 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -209,7 +209,9 @@ export class AuthService { let url = ''; if (isNotEmpty(status.ssoLoginUrl)) { // url = this.parseSSOLocation(status.ssoLoginUrl); - url = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at'; + // console.log('Parsed SSOLoginUrl: ', url); + url = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at'; + // url = status.ssoLoginUrl; } return url; }) From 3f13031ea3d910d5c62390bb107c150b114aa034 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 6 Jun 2019 15:39:22 +0200 Subject: [PATCH 018/171] Added hardcoded ssoLogin button --- src/app/shared/log-in/log-in.component.html | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 2f3ff45582..f0be0839c6 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -28,6 +28,11 @@ + + From 0a4df443157a34668e47837f1f2261399272d17f Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 6 Jun 2019 16:29:56 +0200 Subject: [PATCH 019/171] Changed heading of welcome screen --- src/app/+home-page/home-news/home-news.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/+home-page/home-news/home-news.component.html b/src/app/+home-page/home-news/home-news.component.html index 28e10c5804..047eb296a6 100644 --- a/src/app/+home-page/home-news/home-news.component.html +++ b/src/app/+home-page/home-news/home-news.component.html @@ -3,7 +3,7 @@
-

Welcome to the DSpace 7 Preview

+

TU WIEN DSpace 7 Preview

DSpace is the world leading open source repository platform that enables organisations to:

From 1186f24cea1c2b7c49f0aae23ee6a67cc58e8074 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Fri, 7 Jun 2019 10:09:55 +0200 Subject: [PATCH 020/171] Added success response log to auth interceptor --- src/app/core/auth/auth.interceptor.ts | 1 + src/app/shared/log-in/log-in.component.html | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 6114af7e24..925d329328 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -131,6 +131,7 @@ export class AuthInterceptor implements HttpInterceptor { // It's a success Login/Logout response let authRes: HttpResponse; if (this.isLoginResponse(response)) { + console.log('auth.interceptor passes success login response from backend with token: ',response.headers.get('authorization') ); // login successfully const newToken = response.headers.get('authorization'); authRes = response.clone({body: this.makeAuthStatusObject(true, newToken)}); diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index f0be0839c6..20df4fa6ac 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -30,7 +30,7 @@ From 1cbbcaa800bf43862dea18aa40f8bb5a2f602b8b Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Fri, 7 Jun 2019 11:22:38 +0200 Subject: [PATCH 021/171] Changed href in hardcoded login button --- src/app/shared/log-in/log-in.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 20df4fa6ac..28d546634e 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -30,7 +30,7 @@ From e8f7aa62017abd67007877a06d4c5ec9a2a73977 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 17 Jun 2019 10:30:34 +0200 Subject: [PATCH 022/171] Changed log-in.component --- src/app/shared/log-in/log-in.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 28d546634e..89291d91cf 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -30,7 +30,7 @@ From 99ffd43d958861af8573bc1f7d2879d7f5d08071 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 17 Jun 2019 10:45:41 +0200 Subject: [PATCH 023/171] Changed target url to fis.tiss.tuwien.ac.at --- src/app/shared/log-in/log-in.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 89291d91cf..20df4fa6ac 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -30,7 +30,7 @@ From 2e9eb1d38772a11a257ffbc611679c01a10df6a2 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 17 Jun 2019 11:46:04 +0200 Subject: [PATCH 024/171] Changed shibb target to ..../submit --- src/app/shared/log-in/log-in.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 20df4fa6ac..08b0cf9145 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -30,7 +30,7 @@ From 9a2b22943e86cf163750ca1424b7ff2363e6a048 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 17 Jun 2019 13:31:59 +0200 Subject: [PATCH 025/171] Hardcoded button without target --- src/app/shared/log-in/log-in.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 08b0cf9145..88933a2cc7 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -30,7 +30,7 @@ From a36aa50d16e7e6fd3d667e4913d9ee1f97ebb227 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 18 Jun 2019 10:15:59 +0200 Subject: [PATCH 026/171] Added button for empty post login call --- src/app/core/auth/auth.interceptor.ts | 6 +++++- src/app/shared/log-in/log-in.component.html | 6 ++++++ src/app/shared/log-in/log-in.component.ts | 6 ++++++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 925d329328..ad54582021 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -38,6 +38,10 @@ export class AuthInterceptor implements HttpInterceptor { return response.status === 405; } + private is302Response(response: HttpResponseBase): boolean { + return response.status === 302; + } + private isUnauthorized(response: HttpResponseBase): boolean { // invalid_token The access token provided is expired, revoked, malformed, or invalid for other reasons return response.status === 401; @@ -131,7 +135,7 @@ export class AuthInterceptor implements HttpInterceptor { // It's a success Login/Logout response let authRes: HttpResponse; if (this.isLoginResponse(response)) { - console.log('auth.interceptor passes success login response from backend with token: ',response.headers.get('authorization') ); + console.log('auth.interceptor passes success login response from backend with token: ', response.headers.get('authorization')); // login successfully const newToken = response.headers.get('authorization'); authRes = response.clone({body: this.makeAuthStatusObject(true, newToken)}); diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 88933a2cc7..8c6f28649c 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -34,6 +34,12 @@ + + + {{"login.form.new-user" | translate}} diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts index 955ca2612a..daf1626132 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -206,4 +206,10 @@ export class LogInComponent implements OnDestroy, OnInit { // clear form this.form.reset(); } + + postLoginCall() { + const email = ''; + const password = ''; + this.store.dispatch(new AuthenticateAction(email, password)); + } } From 8ed359cc7efbe3f93eddf36c2286d373bb5647a7 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 18 Jun 2019 10:51:52 +0200 Subject: [PATCH 027/171] postLoginCall() refactored --- src/app/shared/log-in/log-in.component.ts | 48 ++++++++++++++++------- 1 file changed, 34 insertions(+), 14 deletions(-) diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts index daf1626132..8e8c90985e 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -1,9 +1,9 @@ -import { filter, map, takeWhile } from 'rxjs/operators'; -import { Component, OnDestroy, OnInit } from '@angular/core'; -import { FormBuilder, FormGroup, Validators } from '@angular/forms'; +import {filter, map, takeWhile} from 'rxjs/operators'; +import {Component, OnDestroy, OnInit} from '@angular/core'; +import {FormBuilder, FormGroup, Validators} from '@angular/forms'; -import { select, Store } from '@ngrx/store'; -import { Observable } from 'rxjs'; +import {select, Store} from '@ngrx/store'; +import {Observable} from 'rxjs'; import { AuthenticateAction, ResetAuthenticationMessagesAction @@ -15,11 +15,12 @@ import { isAuthenticated, isAuthenticationLoading, } from '../../core/auth/selectors'; -import { CoreState } from '../../core/core.reducers'; +import {CoreState} from '../../core/core.reducers'; -import { isNotEmpty } from '../empty.util'; -import { fadeOut } from '../animations/fade'; -import { AuthService } from '../../core/auth/auth.service'; +import {isNotEmpty} from '../empty.util'; +import {fadeOut} from '../animations/fade'; +import {AuthService} from '../../core/auth/auth.service'; +import {HttpClient} from '@angular/common/http'; /** * /users/sign-in @@ -102,7 +103,8 @@ export class LogInComponent implements OnDestroy, OnInit { constructor( private authService: AuthService, private formBuilder: FormBuilder, - private store: Store + private store: Store, + private http: HttpClient ) { } @@ -207,9 +209,27 @@ export class LogInComponent implements OnDestroy, OnInit { this.form.reset(); } - postLoginCall() { - const email = ''; - const password = ''; - this.store.dispatch(new AuthenticateAction(email, password)); + public postLoginCall() { + console.log('postLoginCall() was called'); + /* const email = 'test@test.at'; + const password = 'test'; + this.store.dispatch(new AuthenticateAction(email, password));*/ + this.http.post('https://fis.tiss.tuwien.ac.at/spring-rest/api/authn/login', + { + name: 'morpheus', + job: 'leader' + }) + .subscribe( + (val) => { + console.log('POST call successful value returned in body', + val); + }, + (response) => { + console.log('POST call in error', response); + }, + () => { + console.log('The POST observable is now completed.'); + }); } + } From 4504fa18185c7379260408afae6dce79b54c3a58 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 18 Jun 2019 14:30:02 +0200 Subject: [PATCH 028/171] Test CORS policy' --- src/app/core/auth/auth-request.service.ts | 25 ++++++++++++++++++++- src/app/core/auth/auth.actions.ts | 18 +++++++++++++++ src/app/core/auth/auth.effects.ts | 22 +++++++++++++++++- src/app/core/auth/auth.reducer.ts | 7 ++++++ src/app/core/auth/auth.service.ts | 12 ++++++++++ src/app/shared/log-in/log-in.component.html | 6 +++++ src/app/shared/log-in/log-in.component.ts | 22 +++++++++++++++++- 7 files changed, 109 insertions(+), 3 deletions(-) diff --git a/src/app/core/auth/auth-request.service.ts b/src/app/core/auth/auth-request.service.ts index 7b2620bf13..276fb506c5 100644 --- a/src/app/core/auth/auth-request.service.ts +++ b/src/app/core/auth/auth-request.service.ts @@ -10,6 +10,7 @@ import {AuthGetRequest, AuthPostRequest, GetRequest, PostRequest, RestRequest} f import {AuthStatusResponse, ErrorResponse} from '../cache/response.models'; import {HttpOptions} from '../dspace-rest-v2/dspace-rest-v2.service'; import {getResponseFromEntry} from '../shared/operators'; +import {HttpClient} from '@angular/common/http'; @Injectable() export class AuthRequestService { @@ -18,7 +19,8 @@ export class AuthRequestService { constructor(@Inject(GLOBAL_CONFIG) protected EnvConfig: GlobalConfig, protected halService: HALEndpointService, - protected requestService: RequestService) { + protected requestService: RequestService, + private http: HttpClient) { } protected fetchRequest(request: RestRequest): Observable { @@ -51,6 +53,26 @@ export class AuthRequestService { distinctUntilChanged()); } + postToShibbEndpoint(): Observable { + console.log('postToShibbLogin() was called'); + return this.http.post('https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login', + { + name: 'morpheus', + job: 'leader' + }) + /* .subscribe( + (val) => { + console.log('POST call successful value returned in body', + val); + }, + (response) => { + console.log('POST call in error', response); + }, + () => { + console.log('The POST observable is now completed.'); + });*/ + } + public getRequest(method: string, options?: HttpOptions): Observable { console.log('auth.request getRequest() was called'); return this.halService.getEndpoint(this.linkName).pipe( @@ -64,4 +86,5 @@ export class AuthRequestService { mergeMap((request: GetRequest) => this.fetchRequest(request)), distinctUntilChanged()); } + } diff --git a/src/app/core/auth/auth.actions.ts b/src/app/core/auth/auth.actions.ts index c2ab855aad..cf6b16bb63 100644 --- a/src/app/core/auth/auth.actions.ts +++ b/src/app/core/auth/auth.actions.ts @@ -10,6 +10,7 @@ import { AuthTokenInfo } from './models/auth-token-info.model'; export const AuthActionTypes = { AUTHENTICATE: type('dspace/auth/AUTHENTICATE'), + SHIBB_LOGIN: type('dspace/auth/SHIBB_LOGIN'), AUTHENTICATE_ERROR: type('dspace/auth/AUTHENTICATE_ERROR'), AUTHENTICATE_SUCCESS: type('dspace/auth/AUTHENTICATE_SUCCESS'), AUTHENTICATED: type('dspace/auth/AUTHENTICATED'), @@ -55,6 +56,22 @@ export class AuthenticateAction implements Action { } } +/** + * ShibbLoginAction. + * @class ShibbLoginAction + * @implements {Action} + */ +export class ShibbLoginAction implements Action { + public type: string = AuthActionTypes.SHIBB_LOGIN; + payload: { + ssoLoginUrl: string; + }; + + constructor(ssoLoginUrl: string) { + this.payload = { ssoLoginUrl }; + } +} + /** * Checks if user is authenticated. * @class AuthenticatedAction @@ -366,6 +383,7 @@ export class SetRedirectUrlAction implements Action { */ export type AuthActions = AuthenticateAction + | ShibbLoginAction | AuthenticatedAction | AuthenticatedErrorAction | AuthenticatedSuccessAction diff --git a/src/app/core/auth/auth.effects.ts b/src/app/core/auth/auth.effects.ts index 6d277aaa1b..57745cf823 100644 --- a/src/app/core/auth/auth.effects.ts +++ b/src/app/core/auth/auth.effects.ts @@ -26,7 +26,11 @@ import { RefreshTokenSuccessAction, RegistrationAction, RegistrationErrorAction, - RegistrationSuccessAction, RetrieveAuthMethodsAction, RetrieveAuthMethodsErrorAction, RetrieveAuthMethodsSuccessAction + RegistrationSuccessAction, + RetrieveAuthMethodsAction, + RetrieveAuthMethodsErrorAction, + RetrieveAuthMethodsSuccessAction, + ShibbLoginAction } from './auth.actions'; import { EPerson } from '../eperson/models/eperson.model'; import { AuthStatus } from './models/auth-status.model'; @@ -54,6 +58,22 @@ export class AuthEffects { }) ); + /** + * Shib Login. + * @method shibLogin + */ + @Effect() + public shibbLogin$: Observable = this.actions$.pipe( + ofType(AuthActionTypes.SHIBB_LOGIN), + switchMap((action: ShibbLoginAction) => { + return this.authService.startShibbAuth().pipe( + take(1), + map((response: AuthStatus) => new AuthenticationSuccessAction(response.token)), + catchError((error) => observableOf(new AuthenticationErrorAction(error))) + ); + }) + ); + @Effect() public authenticateSuccess$: Observable = this.actions$.pipe( ofType(AuthActionTypes.AUTHENTICATE_SUCCESS), diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index b22063ad77..e9281321f1 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -78,6 +78,13 @@ export function authReducer(state: any = initialState, action: AuthActions): Aut info: undefined }); + case AuthActionTypes.SHIBB_LOGIN: + return Object.assign({}, state, { + error: undefined, + loading: true, + info: undefined + }); + case AuthActionTypes.AUTHENTICATED: return Object.assign({}, state, { loading: true diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index f0e53a3e07..a563408a96 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -114,6 +114,17 @@ export class AuthService { } + public startShibbAuth(): Observable { + return this.authRequestService.postToShibbEndpoint().pipe( + map((status: AuthStatus) => { + if (status.authenticated) { + return status; + } else { + throw(new Error('Invalid email or password')); + } + })) + } + /** * Determines if the user is authenticated * @returns {Observable} @@ -440,4 +451,5 @@ export class AuthService { this.store.dispatch(new SetRedirectUrlAction('')); this.storage.remove(REDIRECT_COOKIE); } + } diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 8c6f28649c..806a8b92bc 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -34,6 +34,12 @@ + + +

Simple Post Login diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts index 8e8c90985e..ce5f6d7cdb 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -6,7 +6,7 @@ import {select, Store} from '@ngrx/store'; import {Observable} from 'rxjs'; import { AuthenticateAction, - ResetAuthenticationMessagesAction + ResetAuthenticationMessagesAction, ShibbLoginAction } from '../../core/auth/auth.actions'; import { @@ -232,4 +232,24 @@ export class LogInComponent implements OnDestroy, OnInit { }); } + dispatchShibbLoginAction() { + const ssoLoginUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login' + // this.store.dispatch(new ShibbLoginAction(ssoLoginUrl)); + this.http.post(ssoLoginUrl, + { + name: 'morpheus', + job: 'leader' + }) + .subscribe( + (val) => { + console.log('POST call successful value returned in body', + val); + }, + (response) => { + console.log('POST call in error', response); + }, + () => { + console.log('The POST observable is now completed.'); + }); + } } From 0355ff3e47a95b2dc9fd9f108e31deb8f5bce434 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 18 Jun 2019 15:07:36 +0200 Subject: [PATCH 029/171] Get tokoen from backend --- src/app/core/auth/auth-request.service.ts | 22 +---------- src/app/core/auth/auth.actions.ts | 41 ++++++++++----------- src/app/core/auth/auth.service.ts | 3 +- src/app/shared/log-in/log-in.component.html | 39 ++++++++++++-------- src/app/shared/log-in/log-in.component.ts | 31 +++++----------- 5 files changed, 54 insertions(+), 82 deletions(-) diff --git a/src/app/core/auth/auth-request.service.ts b/src/app/core/auth/auth-request.service.ts index 276fb506c5..23c767c61b 100644 --- a/src/app/core/auth/auth-request.service.ts +++ b/src/app/core/auth/auth-request.service.ts @@ -40,7 +40,7 @@ export class AuthRequestService { return isNotEmpty(method) ? `${endpoint}/${method}` : `${endpoint}`; } - public postToEndpoint(method: string, body: any, options?: HttpOptions): Observable { + public postToEndpoint(method: string, body?: any, options?: HttpOptions): Observable { return this.halService.getEndpoint(this.linkName).pipe( filter((href: string) => isNotEmpty(href)), tap((href: string) => console.log('This is href in postToEndpoint(): ' , href)), @@ -53,26 +53,6 @@ export class AuthRequestService { distinctUntilChanged()); } - postToShibbEndpoint(): Observable { - console.log('postToShibbLogin() was called'); - return this.http.post('https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login', - { - name: 'morpheus', - job: 'leader' - }) - /* .subscribe( - (val) => { - console.log('POST call successful value returned in body', - val); - }, - (response) => { - console.log('POST call in error', response); - }, - () => { - console.log('The POST observable is now completed.'); - });*/ - } - public getRequest(method: string, options?: HttpOptions): Observable { console.log('auth.request getRequest() was called'); return this.halService.getEndpoint(this.linkName).pipe( diff --git a/src/app/core/auth/auth.actions.ts b/src/app/core/auth/auth.actions.ts index cf6b16bb63..f949536aac 100644 --- a/src/app/core/auth/auth.actions.ts +++ b/src/app/core/auth/auth.actions.ts @@ -1,12 +1,12 @@ // import @ngrx -import { Action } from '@ngrx/store'; +import {Action} from '@ngrx/store'; // import type function -import { type } from '../../shared/ngrx/type'; +import {type} from '../../shared/ngrx/type'; // import models -import { EPerson } from '../eperson/models/eperson.model'; -import { AuthTokenInfo } from './models/auth-token-info.model'; +import {EPerson} from '../eperson/models/eperson.model'; +import {AuthTokenInfo} from './models/auth-token-info.model'; export const AuthActionTypes = { AUTHENTICATE: type('dspace/auth/AUTHENTICATE'), @@ -52,7 +52,7 @@ export class AuthenticateAction implements Action { }; constructor(email: string, password: string) { - this.payload = { email, password }; + this.payload = {email, password}; } } @@ -63,13 +63,6 @@ export class AuthenticateAction implements Action { */ export class ShibbLoginAction implements Action { public type: string = AuthActionTypes.SHIBB_LOGIN; - payload: { - ssoLoginUrl: string; - }; - - constructor(ssoLoginUrl: string) { - this.payload = { ssoLoginUrl }; - } } /** @@ -100,7 +93,7 @@ export class AuthenticatedSuccessAction implements Action { }; constructor(authenticated: boolean, authToken: AuthTokenInfo, user: EPerson) { - this.payload = { authenticated, authToken, user }; + this.payload = {authenticated, authToken, user}; } } @@ -114,7 +107,7 @@ export class AuthenticatedErrorAction implements Action { payload: Error; constructor(payload: Error) { - this.payload = payload ; + this.payload = payload; } } @@ -128,7 +121,7 @@ export class AuthenticationErrorAction implements Action { payload: Error; constructor(payload: Error) { - this.payload = payload ; + this.payload = payload; } } @@ -171,7 +164,9 @@ export class CheckAuthenticationTokenErrorAction implements Action { */ export class LogOutAction implements Action { public type: string = AuthActionTypes.LOG_OUT; - constructor(public payload?: any) {} + + constructor(public payload?: any) { + } } /** @@ -184,7 +179,7 @@ export class LogOutErrorAction implements Action { payload: Error; constructor(payload: Error) { - this.payload = payload ; + this.payload = payload; } } @@ -195,7 +190,9 @@ export class LogOutErrorAction implements Action { */ export class LogOutSuccessAction implements Action { public type: string = AuthActionTypes.LOG_OUT_SUCCESS; - constructor(public payload?: any) {} + + constructor(public payload?: any) { + } } /** @@ -208,7 +205,7 @@ export class RedirectWhenAuthenticationIsRequiredAction implements Action { payload: string; constructor(message: string) { - this.payload = message ; + this.payload = message; } } @@ -222,7 +219,7 @@ export class RedirectWhenTokenExpiredAction implements Action { payload: string; constructor(message: string) { - this.payload = message ; + this.payload = message; } } @@ -287,7 +284,7 @@ export class RegistrationErrorAction implements Action { payload: Error; constructor(payload: Error) { - this.payload = payload ; + this.payload = payload; } } @@ -371,7 +368,7 @@ export class SetRedirectUrlAction implements Action { payload: string; constructor(url: string) { - this.payload = url ; + this.payload = url; } } diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index a563408a96..d10e878595 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -115,7 +115,8 @@ export class AuthService { } public startShibbAuth(): Observable { - return this.authRequestService.postToShibbEndpoint().pipe( + console.log('startShibAuth() was called'); + return this.authRequestService.postToEndpoint('login').pipe( map((status: AuthStatus) => { if (status.authenticated) { return status; diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 806a8b92bc..85809d77d6 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -1,5 +1,6 @@ -
diff --git a/src/app/shared/log-in/shibboleth/shibboleth.component.html b/src/app/shared/log-in/shibboleth/shibboleth.component.html new file mode 100644 index 0000000000..d27c8fe57d --- /dev/null +++ b/src/app/shared/log-in/shibboleth/shibboleth.component.html @@ -0,0 +1,3 @@ +

+ Shibboleth Login Page +

diff --git a/src/app/shared/log-in/shibboleth/shibboleth.component.spec.ts b/src/app/shared/log-in/shibboleth/shibboleth.component.spec.ts new file mode 100644 index 0000000000..a12c43866f --- /dev/null +++ b/src/app/shared/log-in/shibboleth/shibboleth.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ShibbolethComponent } from './shibboleth.component'; + +describe('ShibbolethComponent', () => { + let component: ShibbolethComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ ShibbolethComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ShibbolethComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/shared/log-in/shibboleth/shibboleth.component.ts b/src/app/shared/log-in/shibboleth/shibboleth.component.ts new file mode 100644 index 0000000000..3d9d83511d --- /dev/null +++ b/src/app/shared/log-in/shibboleth/shibboleth.component.ts @@ -0,0 +1,15 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'shibboleth', + templateUrl: './shibboleth.component.html', + styleUrls: ['./shibboleth.component.css'] +}) +export class ShibbolethComponent implements OnInit { + + constructor() { } + + ngOnInit() { + } + +} diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index 816139c8b9..a898d63bdc 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -138,6 +138,7 @@ import { RoleDirective } from './roles/role.directive'; import { UserMenuComponent } from './auth-nav-menu/user-menu/user-menu.component'; import { ClaimedTaskActionsReturnToPoolComponent } from './mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component'; import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component'; +import { ShibbolethComponent } from './log-in/shibboleth/shibboleth.component'; const MODULES = [ // Do NOT include UniversalModule, HttpModule, or JsonpModule here @@ -338,7 +339,8 @@ const DIRECTIVES = [ ...COMPONENTS, ...DIRECTIVES, ...ENTRY_COMPONENTS, - ...SHARED_ITEM_PAGE_COMPONENTS + ...SHARED_ITEM_PAGE_COMPONENTS, + ShibbolethComponent ], providers: [ ...PROVIDERS From 17e29187218b5ac48415cf3bed0f54831f3960af Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Wed, 19 Jun 2019 14:24:38 +0200 Subject: [PATCH 032/171] AuthInterceptor changed --- src/app/core/auth/auth.interceptor.ts | 3 ++- src/app/shared/log-in/log-in.component.ts | 3 +-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 73ab582762..6ddac4bd36 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -1,6 +1,6 @@ import {Observable, of as observableOf, throwError as observableThrowError} from 'rxjs'; -import {catchError, filter, map} from 'rxjs/operators'; +import {catchError, filter, map, tap} from 'rxjs/operators'; import {Injectable, Injector} from '@angular/core'; import { HttpErrorResponse, @@ -131,6 +131,7 @@ export class AuthInterceptor implements HttpInterceptor { // Pass on the new request instead of the original request. return next.handle(newReq).pipe( + tap((response) => console.log('next.handle: ', response)), map((response) => { // Intercept a Login/Logout response if (response instanceof HttpResponse && this.isSuccess(response) && (this.isLoginResponse(response) || this.isLogoutResponse(response))) { diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts index eb5d20cf2a..35b41d414a 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -20,7 +20,6 @@ import {CoreState} from '../../core/core.reducers'; import {isNotEmpty} from '../empty.util'; import {fadeOut} from '../animations/fade'; import {AuthService} from '../../core/auth/auth.service'; -import {HttpClient} from '@angular/common/http'; /** * /users/sign-in @@ -104,7 +103,7 @@ export class LogInComponent implements OnDestroy, OnInit { private authService: AuthService, private formBuilder: FormBuilder, private store: Store, - private http: HttpClient + ) { } From b9c10813ce99acb7ed145660c6c9b00d5ba5da5b Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Wed, 19 Jun 2019 14:41:32 +0200 Subject: [PATCH 033/171] Deleted component that causes build failure --- .../shibboleth/shibboleth.component.html | 3 --- .../shibboleth/shibboleth.component.spec.ts | 25 ------------------- .../log-in/shibboleth/shibboleth.component.ts | 15 ----------- 3 files changed, 43 deletions(-) delete mode 100644 src/app/shared/log-in/shibboleth/shibboleth.component.html delete mode 100644 src/app/shared/log-in/shibboleth/shibboleth.component.spec.ts delete mode 100644 src/app/shared/log-in/shibboleth/shibboleth.component.ts diff --git a/src/app/shared/log-in/shibboleth/shibboleth.component.html b/src/app/shared/log-in/shibboleth/shibboleth.component.html deleted file mode 100644 index d27c8fe57d..0000000000 --- a/src/app/shared/log-in/shibboleth/shibboleth.component.html +++ /dev/null @@ -1,3 +0,0 @@ -

- Shibboleth Login Page -

diff --git a/src/app/shared/log-in/shibboleth/shibboleth.component.spec.ts b/src/app/shared/log-in/shibboleth/shibboleth.component.spec.ts deleted file mode 100644 index a12c43866f..0000000000 --- a/src/app/shared/log-in/shibboleth/shibboleth.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { ShibbolethComponent } from './shibboleth.component'; - -describe('ShibbolethComponent', () => { - let component: ShibbolethComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ ShibbolethComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(ShibbolethComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/src/app/shared/log-in/shibboleth/shibboleth.component.ts b/src/app/shared/log-in/shibboleth/shibboleth.component.ts deleted file mode 100644 index 3d9d83511d..0000000000 --- a/src/app/shared/log-in/shibboleth/shibboleth.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -@Component({ - selector: 'shibboleth', - templateUrl: './shibboleth.component.html', - styleUrls: ['./shibboleth.component.css'] -}) -export class ShibbolethComponent implements OnInit { - - constructor() { } - - ngOnInit() { - } - -} From c4ab1c51803526cc3e7b293e1581519ae55b2d0a Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Wed, 19 Jun 2019 14:53:39 +0200 Subject: [PATCH 034/171] Removed import of deleted shibb component --- src/app/shared/shared.module.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index a898d63bdc..395dab9c87 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -138,7 +138,6 @@ import { RoleDirective } from './roles/role.directive'; import { UserMenuComponent } from './auth-nav-menu/user-menu/user-menu.component'; import { ClaimedTaskActionsReturnToPoolComponent } from './mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component'; import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component'; -import { ShibbolethComponent } from './log-in/shibboleth/shibboleth.component'; const MODULES = [ // Do NOT include UniversalModule, HttpModule, or JsonpModule here @@ -340,7 +339,7 @@ const DIRECTIVES = [ ...DIRECTIVES, ...ENTRY_COMPONENTS, ...SHARED_ITEM_PAGE_COMPONENTS, - ShibbolethComponent + ], providers: [ ...PROVIDERS From 3d5b3ea9a163812c8e476c2619301e67951e0539 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 24 Jun 2019 10:43:55 +0200 Subject: [PATCH 035/171] Shbboleth workflow new --- .../+login-page/login-page-routing.module.ts | 2 ++ src/app/+login-page/login-page.module.ts | 4 ++- .../shibboleth/shibboleth.component.html | 3 +++ .../shibboleth/shibboleth.component.spec.ts | 25 +++++++++++++++++++ .../shibboleth/shibboleth.component.ts | 19 ++++++++++++++ src/app/app-routing.module.ts | 4 ++- src/app/app.module.ts | 2 ++ src/app/shared/log-in/log-in.component.html | 2 +- 8 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 src/app/+login-page/shibboleth/shibboleth.component.html create mode 100644 src/app/+login-page/shibboleth/shibboleth.component.spec.ts create mode 100644 src/app/+login-page/shibboleth/shibboleth.component.ts diff --git a/src/app/+login-page/login-page-routing.module.ts b/src/app/+login-page/login-page-routing.module.ts index d3c6425dd3..6a7520fae1 100644 --- a/src/app/+login-page/login-page-routing.module.ts +++ b/src/app/+login-page/login-page-routing.module.ts @@ -2,11 +2,13 @@ import { NgModule } from '@angular/core'; import { RouterModule } from '@angular/router'; import { LoginPageComponent } from './login-page.component'; +import {ShibbolethComponent} from './shibboleth/shibboleth.component'; @NgModule({ imports: [ RouterModule.forChild([ { path: '', pathMatch: 'full', component: LoginPageComponent, data: { title: 'login.title' } } + /* { path: 'shibboleth', component: ShibbolethComponent }*/ ]) ] }) diff --git a/src/app/+login-page/login-page.module.ts b/src/app/+login-page/login-page.module.ts index 4d3f726c40..f16f38d3bd 100644 --- a/src/app/+login-page/login-page.module.ts +++ b/src/app/+login-page/login-page.module.ts @@ -3,6 +3,7 @@ import { NgModule } from '@angular/core'; import { SharedModule } from '../shared/shared.module'; import { LoginPageComponent } from './login-page.component'; import { LoginPageRoutingModule } from './login-page-routing.module'; +import {ShibbolethComponent} from './shibboleth/shibboleth.component'; @NgModule({ imports: [ @@ -11,7 +12,8 @@ import { LoginPageRoutingModule } from './login-page-routing.module'; SharedModule, ], declarations: [ - LoginPageComponent + LoginPageComponent, + /* ShibbolethComponent*/ ] }) export class LoginPageModule { diff --git a/src/app/+login-page/shibboleth/shibboleth.component.html b/src/app/+login-page/shibboleth/shibboleth.component.html new file mode 100644 index 0000000000..e1bfd6b052 --- /dev/null +++ b/src/app/+login-page/shibboleth/shibboleth.component.html @@ -0,0 +1,3 @@ +

+ shibboleth works! +

diff --git a/src/app/+login-page/shibboleth/shibboleth.component.spec.ts b/src/app/+login-page/shibboleth/shibboleth.component.spec.ts new file mode 100644 index 0000000000..a12c43866f --- /dev/null +++ b/src/app/+login-page/shibboleth/shibboleth.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ShibbolethComponent } from './shibboleth.component'; + +describe('ShibbolethComponent', () => { + let component: ShibbolethComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ ShibbolethComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ShibbolethComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/+login-page/shibboleth/shibboleth.component.ts b/src/app/+login-page/shibboleth/shibboleth.component.ts new file mode 100644 index 0000000000..b2a0398128 --- /dev/null +++ b/src/app/+login-page/shibboleth/shibboleth.component.ts @@ -0,0 +1,19 @@ +import { Component, OnInit } from '@angular/core'; +import {ShibbLoginAction} from '../../core/auth/auth.actions'; +import {Store} from '@ngrx/store'; +import {CoreState} from '../../core/core.reducers'; + +@Component({ + selector: 'ds-shibboleth-page', + templateUrl: './shibboleth.component.html', + styleUrls: ['./shibboleth.component.css'] +}) +export class ShibbolethComponent implements OnInit { + + constructor( private store: Store,) { } + + ngOnInit() { + this.store.dispatch(new ShibbLoginAction()); + } + +} diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 86364aca89..f3196ffeed 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -3,6 +3,7 @@ import { RouterModule } from '@angular/router'; import { PageNotFoundComponent } from './pagenotfound/pagenotfound.component'; import { AuthenticatedGuard } from './core/auth/authenticated.guard'; +import {ShibbolethComponent} from './+login-page/shibboleth/shibboleth.component'; const ITEM_MODULE_PATH = 'items'; export function getItemModulePath() { @@ -32,7 +33,8 @@ export function getCommunityModulePath() { { path: 'logout', loadChildren: './+logout-page/logout-page.module#LogoutPageModule' }, { path: 'submit', loadChildren: './+submit-page/submit-page.module#SubmitPageModule' }, { path: 'workspaceitems', loadChildren: './+workspaceitems-edit-page/workspaceitems-edit-page.module#WorkspaceitemsEditPageModule' }, - { path: 'workflowitems', loadChildren: './+workflowitems-edit-page/workflowitems-edit-page.module#WorkflowItemsEditPageModule' }, + { path: 'workflowitems', loadChildren: './+workflowitems-edit-page/workflowitems-edit-page.module#WorkflowitemsEditPageModule' }, + { path: 'shibboleth', pathMatch: 'full', component: ShibbolethComponent }, { path: '**', pathMatch: 'full', component: PageNotFoundComponent }, ]) ], diff --git a/src/app/app.module.ts b/src/app/app.module.ts index ddcd78ce8e..eaf0dc053b 100755 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -39,6 +39,7 @@ import { ExpandableAdminSidebarSectionComponent } from './+admin/admin-sidebar/e import { NavbarModule } from './navbar/navbar.module'; import { JournalEntitiesModule } from './entity-groups/journal-entities/journal-entities.module'; import { ResearchEntitiesModule } from './entity-groups/research-entities/research-entities.module'; +import { ShibbolethComponent } from './+login-page/shibboleth/shibboleth.component'; export function getConfig() { return ENV_CONFIG; @@ -128,6 +129,7 @@ const EXPORTS = [ ], declarations: [ ...DECLARATIONS, + ShibbolethComponent, ], exports: [ ...EXPORTS diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 7a66b43d00..251a6ff3bc 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -36,7 +36,7 @@ From 0b56b0d8dc0aff0a216020a54c1b6c84145088bf Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 24 Jun 2019 11:27:10 +0200 Subject: [PATCH 036/171] Changed css file of shib component to scss --- src/app/+login-page/shibboleth/shibboleth.component.scss | 5 +++++ src/app/+login-page/shibboleth/shibboleth.component.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 src/app/+login-page/shibboleth/shibboleth.component.scss diff --git a/src/app/+login-page/shibboleth/shibboleth.component.scss b/src/app/+login-page/shibboleth/shibboleth.component.scss new file mode 100644 index 0000000000..662e00d284 --- /dev/null +++ b/src/app/+login-page/shibboleth/shibboleth.component.scss @@ -0,0 +1,5 @@ +/* +This is a comment*/ +.login-shibboleth { + +} diff --git a/src/app/+login-page/shibboleth/shibboleth.component.ts b/src/app/+login-page/shibboleth/shibboleth.component.ts index b2a0398128..ae5be125b9 100644 --- a/src/app/+login-page/shibboleth/shibboleth.component.ts +++ b/src/app/+login-page/shibboleth/shibboleth.component.ts @@ -6,7 +6,7 @@ import {CoreState} from '../../core/core.reducers'; @Component({ selector: 'ds-shibboleth-page', templateUrl: './shibboleth.component.html', - styleUrls: ['./shibboleth.component.css'] + styleUrls: ['./shibboleth.component.scss'] }) export class ShibbolethComponent implements OnInit { From a504d968977f307ad3cf3102c0ed5af32112aab6 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 24 Jun 2019 12:58:40 +0200 Subject: [PATCH 037/171] post to login endpoint without credentials --- src/app/core/auth/auth.interceptor.ts | 2 +- src/app/core/auth/auth.service.ts | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 6ddac4bd36..177f09f0bc 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -101,7 +101,7 @@ export class AuthInterceptor implements HttpInterceptor { const token = authService.getToken(); let newReq; - console.log('intercept() request: ', req); + // console.log('intercept() request: ', req); if (authService.isTokenExpired()) { authService.setRedirectUrl(this.router.url); diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index bd02e251c9..67fa408b98 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -117,14 +117,14 @@ export class AuthService { public startShibbAuth(): Observable { console.log('startShibAuth() was called'); // Attempt authenticating the user using the supplied credentials. - const user = 'test@test.at'; + /* const user = 'test@test.at'; const password = 'rest' const body = (`password=${Base64EncodeUrl(password)}&user=${Base64EncodeUrl(user)}`); - const options: HttpOptions = Object.create({}); + const options: HttpOptions = Object.create({});*/ let headers = new HttpHeaders(); headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); - options.headers = headers; - return this.authRequestService.postToEndpoint('login', body, options).pipe( + // options.headers = headers; + return this.authRequestService.postToEndpoint('login').pipe( map((status: AuthStatus) => { if (status.authenticated) { return status; From 14419ca5670031f789a2706c716d5fb3965739f0 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 24 Jun 2019 13:21:48 +0200 Subject: [PATCH 038/171] Removed dispatchShibAction button --- src/app/+login-page/shibboleth/shibboleth.component.html | 2 +- src/app/core/auth/auth.service.ts | 2 +- src/app/shared/log-in/log-in.component.html | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/app/+login-page/shibboleth/shibboleth.component.html b/src/app/+login-page/shibboleth/shibboleth.component.html index e1bfd6b052..12007d03d0 100644 --- a/src/app/+login-page/shibboleth/shibboleth.component.html +++ b/src/app/+login-page/shibboleth/shibboleth.component.html @@ -1,3 +1,3 @@

- shibboleth works! + Shibboleth login successfull! Please wait while we redirect you...

diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index 67fa408b98..3f1a4e676e 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -116,7 +116,7 @@ export class AuthService { public startShibbAuth(): Observable { console.log('startShibAuth() was called'); - // Attempt authenticating the user using the supplied credentials. + // Attempt authenticating the user after the shibboleth/saml response reached the backend /* const user = 'test@test.at'; const password = 'rest' const body = (`password=${Base64EncodeUrl(password)}&user=${Base64EncodeUrl(user)}`); diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 251a6ff3bc..bd70bf255e 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -42,10 +42,10 @@ - From 5d5f9c4046a6f9f69dc0c964038f81e53d7a0768 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Wed, 26 Jun 2019 13:38:25 +0200 Subject: [PATCH 042/171] Added debug logs for server --- src/app/shared/log-in/log-in.component.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts index 420352c1bb..034b7125fe 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -1,4 +1,4 @@ -import {filter, map, takeWhile} from 'rxjs/operators'; +import {filter, map, takeWhile, tap} from 'rxjs/operators'; import {Component, OnDestroy, OnInit} from '@angular/core'; import {FormBuilder, FormGroup, Validators} from '@angular/forms'; @@ -112,6 +112,7 @@ export class LogInComponent implements OnDestroy, OnInit { * @method ngOnInit */ public ngOnInit() { + console.log('log-in.componetn.ngOnInit() called'); // set isAuthenticated this.isAuthenticated = this.store.pipe(select(isAuthenticated)); @@ -156,7 +157,9 @@ export class LogInComponent implements OnDestroy, OnInit { ); this.hasSsoLoginUrl = this.ssoLoginUrl - .pipe(map((url) => isNotEmpty(url))) + .pipe( + tap((url) => console.log('url in ngOnInit(): ', url)), + map((url) => isNotEmpty(url))) } /** From 39fd0252527bf30a3d26a2046a3a5c2ae9daa1c7 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 27 Jun 2019 09:56:58 +0200 Subject: [PATCH 043/171] Added spinner to shibboleth landing page --- .../+login-page/shibboleth/shibboleth.component.html | 6 ++++-- src/app/+login-page/shibboleth/shibboleth.component.ts | 10 +++++++++- src/app/core/auth/auth.interceptor.ts | 3 +-- src/app/shared/log-in/log-in.component.html | 10 +++++----- 4 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/app/+login-page/shibboleth/shibboleth.component.html b/src/app/+login-page/shibboleth/shibboleth.component.html index 12007d03d0..1c23d1edd0 100644 --- a/src/app/+login-page/shibboleth/shibboleth.component.html +++ b/src/app/+login-page/shibboleth/shibboleth.component.html @@ -1,3 +1,5 @@ -

+ + + diff --git a/src/app/+login-page/shibboleth/shibboleth.component.ts b/src/app/+login-page/shibboleth/shibboleth.component.ts index f386f9c5ea..c02287339a 100644 --- a/src/app/+login-page/shibboleth/shibboleth.component.ts +++ b/src/app/+login-page/shibboleth/shibboleth.component.ts @@ -2,6 +2,7 @@ import { Component, OnInit } from '@angular/core'; import {GetJWTafterShibbLoginAction} from '../../core/auth/auth.actions'; import {Store} from '@ngrx/store'; import {CoreState} from '../../core/core.reducers'; +import {Observable, of} from 'rxjs'; @Component({ selector: 'ds-shibboleth-page', @@ -10,10 +11,17 @@ import {CoreState} from '../../core/core.reducers'; }) export class ShibbolethComponent implements OnInit { - constructor( private store: Store,) { } + /** + * True if the authentication is loading. + * @type {boolean} + */ + public loading: Observable; ngOnInit() { + this.loading = of(true); this.store.dispatch(new GetJWTafterShibbLoginAction()); } + constructor( private store: Store,) { } + } diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 806ebc6a6b..994d39f33a 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -56,7 +56,6 @@ export class AuthInterceptor implements HttpInterceptor { private isLoginResponse(http: HttpRequest | HttpResponseBase): boolean { return http.url && http.url.endsWith('/authn/login') - /*|| http.url.endsWith('/shibboleth');*/ } private isLogoutResponse(http: HttpRequest | HttpResponseBase): boolean { @@ -67,7 +66,7 @@ export class AuthInterceptor implements HttpInterceptor { const authStatus = new AuthStatus(); authStatus.id = null; authStatus.okay = true; - authStatus.ssoLoginUrl = location; // this line was added while developing shibboleth dev + authStatus.ssoLoginUrl = location; // this line was added while developing shibboleth login if (authenticated) { authStatus.authenticated = true; authStatus.token = new AuthTokenInfo(accessToken); diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 6757274a21..7046eb3a7e 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -25,6 +25,7 @@ +

@@ -32,14 +33,13 @@ role="button">{{"login.form.ssoLogin" | translate}}
- - + diff --git a/src/app/+login-page/shibboleth/shibboleth.component.ts b/src/app/+login-page/shibboleth/shibboleth.component.ts index c02287339a..cfb4637e58 100644 --- a/src/app/+login-page/shibboleth/shibboleth.component.ts +++ b/src/app/+login-page/shibboleth/shibboleth.component.ts @@ -12,7 +12,7 @@ import {Observable, of} from 'rxjs'; export class ShibbolethComponent implements OnInit { /** - * True if the authentication is loading. + * True if the shibboleth authentication is loading. * @type {boolean} */ public loading: Observable; From 71f281516adab97e7470f167d077da058d82fba0 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 27 Jun 2019 15:19:30 +0200 Subject: [PATCH 045/171] Added logs for server debug --- src/app/core/auth/auth.actions.ts | 4 +-- src/app/core/auth/auth.effects.ts | 2 +- src/app/core/auth/auth.reducer.ts | 2 +- src/app/shared/log-in/log-in.component.html | 14 ++++----- src/app/shared/log-in/log-in.component.ts | 33 ++------------------- 5 files changed, 11 insertions(+), 44 deletions(-) diff --git a/src/app/core/auth/auth.actions.ts b/src/app/core/auth/auth.actions.ts index c79f250e09..b0343e2dc8 100644 --- a/src/app/core/auth/auth.actions.ts +++ b/src/app/core/auth/auth.actions.ts @@ -10,7 +10,7 @@ import {AuthTokenInfo} from './models/auth-token-info.model'; export const AuthActionTypes = { AUTHENTICATE: type('dspace/auth/AUTHENTICATE'), - SHIBB_LOGIN: type('dspace/auth/SHIBB_LOGIN'), + GET_JWT_AFTER_SHIBB_LOGIN: type('dspace/auth/GET_JWT_AFTER_SHIBB_LOGIN'), AUTHENTICATE_ERROR: type('dspace/auth/AUTHENTICATE_ERROR'), AUTHENTICATE_SUCCESS: type('dspace/auth/AUTHENTICATE_SUCCESS'), AUTHENTICATED: type('dspace/auth/AUTHENTICATED'), @@ -62,7 +62,7 @@ export class AuthenticateAction implements Action { * @implements {Action} */ export class GetJWTafterShibbLoginAction implements Action { - public type: string = AuthActionTypes.SHIBB_LOGIN; + public type: string = AuthActionTypes.GET_JWT_AFTER_SHIBB_LOGIN; } /** diff --git a/src/app/core/auth/auth.effects.ts b/src/app/core/auth/auth.effects.ts index 40d46944a7..eb7bdaf42c 100644 --- a/src/app/core/auth/auth.effects.ts +++ b/src/app/core/auth/auth.effects.ts @@ -64,7 +64,7 @@ export class AuthEffects { */ @Effect() public shibbLogin$: Observable = this.actions$.pipe( - ofType(AuthActionTypes.SHIBB_LOGIN), + ofType(AuthActionTypes.GET_JWT_AFTER_SHIBB_LOGIN), switchMap((action: GetJWTafterShibbLoginAction) => { return this.authService.startShibbAuth().pipe( take(1), diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index f39421f1b1..745a8debe3 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -78,7 +78,7 @@ export function authReducer(state: any = initialState, action: AuthActions): Aut info: undefined }); - case AuthActionTypes.SHIBB_LOGIN: + case AuthActionTypes.GET_JWT_AFTER_SHIBB_LOGIN: return Object.assign({}, state, { error: undefined, loading: true, diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index 7046eb3a7e..a4c1cb9e87 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -33,6 +33,11 @@ role="button">{{"login.form.ssoLogin" | translate}} + +
- - - {{"login.form.new-user" | translate}} diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts index 034b7125fe..52fe45e608 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -112,7 +112,7 @@ export class LogInComponent implements OnDestroy, OnInit { * @method ngOnInit */ public ngOnInit() { - console.log('log-in.componetn.ngOnInit() called'); + console.log('log-in.component.ngOnInit() called'); // set isAuthenticated this.isAuthenticated = this.store.pipe(select(isAuthenticated)); @@ -145,6 +145,7 @@ export class LogInComponent implements OnDestroy, OnInit { // set sso login url this.ssoLoginUrl = this.store.pipe(select(getSSOLoginUrl)); + this.ssoLoginUrl.subscribe((url) => console.log('url after store select: ', url)); // subscribe to success this.store.pipe( @@ -211,34 +212,4 @@ export class LogInComponent implements OnDestroy, OnInit { this.form.reset(); } -/* public postLoginCall() { - console.log('postLoginCall() was called'); - /!* const email = 'test@test.at'; - const password = 'test'; - this.store.dispatch(new AuthenticateAction(email, password));*!/ - this.http.post('https://fis.tiss.tuwien.ac.at/spring-rest/api/authn/login', - { - name: 'morpheus', - job: 'leader' - }) - .subscribe( - (val) => { - console.log('POST call successful value returned in body', - val); - }, - (response) => { - console.log('POST call in error', response); - }, - () => { - console.log('The POST observable is now completed.'); - }); - }*/ - - dispatchShibbLoginAction() { - console.log('dispatchShibbLoginAction() was called'); - // const ssoLoginUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login' - this.store.dispatch(new GetJWTafterShibbLoginAction()); - // this.store.dispatch(new AuthenticateAction(email, password)); - - } } From 8beece2f7337fc939f5915f74fbc067bd9fe51c3 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 15 Jul 2019 11:27:35 +0200 Subject: [PATCH 046/171] Revert "Changed auth-status model: ssoLoginUrl: string" This reverts commit 35554b57 --- e2e/app.e2e-spec.js | 16 - e2e/app.e2e-spec.js.map | 1 - e2e/app.po.js | 17 - e2e/app.po.js.map | 1 - e2e/pagenotfound/pagenotfound.e2e-spec.js | 16 - e2e/pagenotfound/pagenotfound.e2e-spec.js.map | 1 - e2e/pagenotfound/pagenotfound.po.js | 19 - e2e/pagenotfound/pagenotfound.po.js.map | 1 - e2e/search-page/search-page.e2e-spec.js | 47 - e2e/search-page/search-page.e2e-spec.js.map | 1 - e2e/search-page/search-page.po.js | 42 - e2e/search-page/search-page.po.js.map | 1 - .../admin-registries-routing.module.js | 24 - .../admin-registries-routing.module.js.map | 1 - .../admin-registries.module.js | 38 - .../admin-registries.module.js.map | 1 - .../bitstream-formats.component.js | 45 - .../bitstream-formats.component.js.map | 1 - .../metadata-registry.actions.js | 129 -- .../metadata-registry.actions.js.map | 1 - .../metadata-registry.component.js | 161 -- .../metadata-registry.component.js.map | 1 - .../metadata-registry.reducers.js | 73 - .../metadata-registry.reducers.js.map | 1 - .../metadata-schema-form.component.js | 148 -- .../metadata-schema-form.component.js.map | 1 - .../metadata-field-form.component.js | 172 -- .../metadata-field-form.component.js.map | 1 - .../metadata-schema.component.js | 182 -- .../metadata-schema.component.js.map | 1 - src/app/+admin/admin-routing.module.js | 22 - src/app/+admin/admin-routing.module.js.map | 1 - .../admin-sidebar-section.component.js | 40 - .../admin-sidebar-section.component.js.map | 1 - .../admin-sidebar/admin-sidebar.component.js | 490 ----- .../admin-sidebar.component.js.map | 1 - ...andable-admin-sidebar-section.component.js | 58 - ...ble-admin-sidebar-section.component.js.map | 1 - src/app/+admin/admin.module.js | 21 - src/app/+admin/admin.module.js.map | 1 - .../browse-by-date-page.component.js | 119 -- .../browse-by-date-page.component.js.map | 1 - .../browse-by-metadata-page.component.js | 208 --- .../browse-by-metadata-page.component.js.map | 1 - .../browse-by-title-page.component.js | 56 - .../browse-by-title-page.component.js.map | 1 - src/app/+browse-by/browse-by-guard.js | 57 - src/app/+browse-by/browse-by-guard.js.map | 1 - .../+browse-by/browse-by-routing.module.js | 25 - .../browse-by-routing.module.js.map | 1 - src/app/+browse-by/browse-by.module.js | 37 - src/app/+browse-by/browse-by.module.js.map | 1 - .../collection-form.component.js | 79 - .../collection-form.component.js.map | 1 - .../collection-page-routing.module.js | 74 - .../collection-page-routing.module.js.map | 1 - .../collection-page.component.js | 84 - .../collection-page.component.js.map | 1 - .../collection-page.module.js | 37 - .../collection-page.module.js.map | 1 - .../collection-page.resolver.js | 30 - .../collection-page.resolver.js.map | 1 - .../create-collection-page.component.js | 36 - .../create-collection-page.component.js.map | 1 - .../create-collection-page.guard.js | 45 - .../create-collection-page.guard.js.map | 1 - .../delete-collection-page.component.js | 38 - .../delete-collection-page.component.js.map | 1 - .../edit-collection-page.component.js | 32 - .../edit-collection-page.component.js.map | 1 - .../community-form.component.js | 71 - .../community-form.component.js.map | 1 - .../community-page-routing.module.js | 74 - .../community-page-routing.module.js.map | 1 - .../community-page.component.js | 41 - .../community-page.component.js.map | 1 - .../+community-page/community-page.module.js | 37 - .../community-page.module.js.map | 1 - .../community-page.resolver.js | 30 - .../community-page.resolver.js.map | 1 - .../create-community-page.component.js | 33 - .../create-community-page.component.js.map | 1 - .../create-community-page.guard.js | 44 - .../create-community-page.guard.js.map | 1 - .../delete-community-page.component.js | 38 - .../delete-community-page.component.js.map | 1 - .../edit-community-page.component.js | 32 - .../edit-community-page.component.js.map | 1 - ...nity-page-sub-collection-list.component.js | 26 - ...-page-sub-collection-list.component.js.map | 1 - ...unity-page-sub-community-list.component.js | 32 - ...y-page-sub-community-list.component.js.map | 1 - .../home-news/home-news.component.js | 22 - .../home-news/home-news.component.js.map | 1 - .../+home-page/home-page-routing.module.js | 20 - .../home-page-routing.module.js.map | 1 - src/app/+home-page/home-page.component.js | 16 - src/app/+home-page/home-page.component.js.map | 1 - src/app/+home-page/home-page.module.js | 29 - src/app/+home-page/home-page.module.js.map | 1 - .../top-level-community-list.component.js | 65 - .../top-level-community-list.component.js.map | 1 - .../edit-item-page/edit-item-operators.js | 12 - .../edit-item-page/edit-item-operators.js.map | 1 - .../edit-item-page.component.js | 49 - .../edit-item-page.component.js.map | 1 - .../edit-item-page/edit-item-page.module.js | 52 - .../edit-item-page.module.js.map | 1 - .../edit-item-page.routing.module.js | 114 -- .../edit-item-page.routing.module.js.map | 1 - .../item-bitstreams.component.js | 22 - .../item-bitstreams.component.js.map | 1 - .../item-delete/item-delete.component.js | 48 - .../item-delete/item-delete.component.js.map | 1 - .../edit-in-place-field.component.js | 159 -- .../edit-in-place-field.component.js.map | 1 - .../item-metadata/item-metadata.component.js | 186 -- .../item-metadata.component.js.map | 1 - .../item-operation.component.js | 26 - .../item-operation.component.js.map | 1 - .../item-operation/itemOperation.model.js | 21 - .../item-operation/itemOperation.model.js.map | 1 - .../item-private/item-private.component.js | 34 - .../item-private.component.js.map | 1 - .../item-public/item-public.component.js | 34 - .../item-public/item-public.component.js.map | 1 - .../item-reinstate.component.js | 34 - .../item-reinstate.component.js.map | 1 - .../item-status/item-status.component.js | 76 - .../item-status/item-status.component.js.map | 1 - .../item-withdraw/item-withdraw.component.js | 34 - .../item-withdraw.component.js.map | 1 - .../modify-item-overview.component.js | 29 - .../modify-item-overview.component.js.map | 1 - .../abstract-simple-item-action.component.js | 72 - ...stract-simple-item-action.component.js.map | 1 - ...tract-simple-item-action.component.spec.js | 129 -- ...t-simple-item-action.component.spec.js.map | 1 - .../collections/collections.component.js | 40 - .../collections/collections.component.js.map | 1 - .../metadata-field-wrapper.component.js | 31 - .../metadata-field-wrapper.component.js.map | 1 - .../metadata-uri-values.component.js | 42 - .../metadata-uri-values.component.js.map | 1 - .../metadata-values.component.js | 32 - .../metadata-values.component.js.map | 1 - .../full-file-section.component.js | 50 - .../full-file-section.component.js.map | 1 - .../full/full-item-page.component.js | 38 - .../full/full-item-page.component.js.map | 1 - .../+item-page/item-page-routing.module.js | 54 - .../item-page-routing.module.js.map | 1 - src/app/+item-page/item-page.module.js | 84 - src/app/+item-page/item-page.module.js.map | 1 - src/app/+item-page/item-page.resolver.js | 31 - src/app/+item-page/item-page.resolver.js.map | 1 - .../file-section/file-section.component.js | 32 - .../file-section.component.js.map | 1 - .../item-page-abstract-field.component.js | 38 - .../item-page-abstract-field.component.js.map | 1 - .../item-page-author-field.component.js | 40 - .../item-page-author-field.component.js.map | 1 - .../date/item-page-date-field.component.js | 43 - .../item-page-date-field.component.js.map | 1 - .../generic-item-page-field.component.js | 45 - .../generic-item-page-field.component.js.map | 1 - .../item-page-field.component.js | 29 - .../item-page-field.component.js.map | 1 - .../title/item-page-title-field.component.js | 34 - .../item-page-title-field.component.js.map | 1 - .../uri/item-page-uri-field.component.js | 38 - .../uri/item-page-uri-field.component.js.map | 1 - .../+item-page/simple/item-page.component.js | 46 - .../simple/item-page.component.js.map | 1 - .../journal-issue/journal-issue.component.js | 43 - .../journal-issue.component.js.map | 1 - .../journal-volume.component.js | 43 - .../journal-volume.component.js.map | 1 - .../item-types/journal/journal.component.js | 42 - .../journal/journal.component.js.map | 1 - .../item-types/orgunit/orgunit.component.js | 44 - .../orgunit/orgunit.component.js.map | 1 - .../item-types/person/person.component.js | 50 - .../item-types/person/person.component.js.map | 1 - .../item-types/project/project.component.js | 45 - .../project/project.component.js.map | 1 - .../publication/publication.component.js | 42 - .../publication/publication.component.js.map | 1 - .../shared/item-relationships-utils.js | 103 -- .../shared/item-relationships-utils.js.map | 1 - .../item-types/shared/item.component.js | 53 - .../item-types/shared/item.component.js.map | 1 - .../metadata-representation-list.component.js | 33 - ...adata-representation-list.component.js.map | 1 - .../related-entities-search.component.js | 65 - .../related-entities-search.component.js.map | 1 - .../related-items/related-items-component.js | 34 - .../related-items-component.js.map | 1 - .../+login-page/login-page-routing.module.js | 20 - .../login-page-routing.module.js.map | 1 - src/app/+login-page/login-page.component.js | 78 - .../+login-page/login-page.component.js.map | 1 - src/app/+login-page/login-page.module.js | 25 - src/app/+login-page/login-page.module.js.map | 1 - .../logout-page-routing.module.js | 26 - .../logout-page-routing.module.js.map | 1 - src/app/+logout-page/logout-page.component.js | 16 - .../+logout-page/logout-page.component.js.map | 1 - src/app/+logout-page/logout-page.module.js | 25 - .../+logout-page/logout-page.module.js.map | 1 - .../my-dspace-configuration-value-type.js | 6 - .../my-dspace-configuration-value-type.js.map | 1 - .../my-dspace-configuration.service.js | 110 -- .../my-dspace-configuration.service.js.map | 1 - .../my-dspace-new-submission.component.js | 110 -- .../my-dspace-new-submission.component.js.map | 1 - .../my-dspace-page-routing.module.js | 34 - .../my-dspace-page-routing.module.js.map | 1 - .../my-dspace-page.component.js | 125 -- .../my-dspace-page.component.js.map | 1 - .../+my-dspace-page/my-dspace-page.module.js | 75 - .../my-dspace-page.module.js.map | 1 - .../+my-dspace-page/my-dspace-result.model.js | 10 - .../my-dspace-result.model.js.map | 1 - .../my-dspace-results.component.js | 49 - .../my-dspace-results.component.js.map | 1 - src/app/+my-dspace-page/my-dspace.guard.js | 58 - .../+my-dspace-page/my-dspace.guard.js.map | 1 - .../filtered-search-page.component.js | 64 - .../filtered-search-page.component.js.map | 1 - .../filtered-search-page.guard.js | 32 - .../filtered-search-page.guard.js.map | 1 - .../normalized-search-result.model.js | 21 - .../normalized-search-result.model.js.map | 1 - .../paginated-search-options.model.js | 35 - .../paginated-search-options.model.js.map | 1 - src/app/+search-page/search-filter.model.js | 19 - .../+search-page/search-filter.model.js.map | 1 - .../search-authority-filter.component.js | 41 - .../search-authority-filter.component.js.map | 1 - .../search-boolean-filter.component.js | 27 - .../search-boolean-filter.component.js.map | 1 - .../search-facet-option.component.js | 119 -- .../search-facet-option.component.js.map | 1 - .../search-facet-range-option.component.js | 97 - ...search-facet-range-option.component.js.map | 1 - .../search-facet-selected-option.component.js | 114 -- ...rch-facet-selected-option.component.js.map | 1 - .../search-facet-filter-wrapper.component.js | 53 - ...arch-facet-filter-wrapper.component.js.map | 1 - .../search-facet-filter.component.js | 268 --- .../search-facet-filter.component.js.map | 1 - .../search-filter-type-decorator.js | 26 - .../search-filter-type-decorator.js.map | 1 - .../search-filter/search-filter.actions.js | 125 -- .../search-filter.actions.js.map | 1 - .../search-filter/search-filter.component.js | 128 -- .../search-filter.component.js.map | 1 - .../search-filter/search-filter.reducer.js | 77 - .../search-filter.reducer.js.map | 1 - .../search-filter/search-filter.service.js | 230 --- .../search-filter.service.js.map | 1 - .../search-fixed-filter.service.js | 73 - .../search-fixed-filter.service.js.map | 1 - .../search-hierarchy-filter.component.js | 27 - .../search-hierarchy-filter.component.js.map | 1 - .../search-range-filter.component.js | 135 -- .../search-range-filter.component.js.map | 1 - .../search-text-filter.component.js | 32 - .../search-text-filter.component.js.map | 1 - .../search-filters.component.js | 66 - .../search-filters.component.js.map | 1 - .../search-labels/search-labels.component.js | 76 - .../search-labels.component.js.map | 1 - src/app/+search-page/search-options.model.js | 57 - .../+search-page/search-options.model.js.map | 1 - .../search-page-routing.module.js | 23 - .../search-page-routing.module.js.map | 1 - src/app/+search-page/search-page.component.js | 152 -- .../+search-page/search-page.component.js.map | 1 - src/app/+search-page/search-page.module.js | 111 -- .../+search-page/search-page.module.js.map | 1 - src/app/+search-page/search-result.model.js | 10 - .../+search-page/search-result.model.js.map | 1 - .../search-results.component.js | 80 - .../search-results.component.js.map | 1 - .../search-service/facet-value.model.js | 28 - .../search-service/facet-value.model.js.map | 1 - .../search-service/filter-type.model.js | 27 - .../search-service/filter-type.model.js.map | 1 - .../search-configuration.service.js | 313 ---- .../search-configuration.service.js.map | 1 - .../search-filter-config.model.js | 56 - .../search-filter-config.model.js.map | 1 - .../search-query-response.model.js | 70 - .../search-query-response.model.js.map | 1 - .../search-result-element-decorator.js | 42 - .../search-result-element-decorator.js.map | 1 - .../search-service/search.service.js | 279 --- .../search-service/search.service.js.map | 1 - .../search-settings.component.js | 97 - .../search-settings.component.js.map | 1 - .../search-sidebar/search-sidebar.actions.js | 46 - .../search-sidebar.actions.js.map | 1 - .../search-sidebar.component.js | 48 - .../search-sidebar.component.js.map | 1 - .../search-sidebar/search-sidebar.effects.js | 37 - .../search-sidebar.effects.js.map | 1 - .../search-sidebar/search-sidebar.reducer.js | 34 - .../search-sidebar.reducer.js.map | 1 - .../search-sidebar/search-sidebar.service.js | 53 - .../search-sidebar.service.js.map | 1 - .../search-configuration-option.model.js | 1 - .../search-configuration-option.model.js.map | 1 - .../search-switch-configuration.component.js | 74 - ...arch-switch-configuration.component.js.map | 1 - .../submit-page-routing.module.js | 33 - .../submit-page-routing.module.js.map | 1 - src/app/+submit-page/submit-page.module.js | 29 - .../+submit-page/submit-page.module.js.map | 1 - .../workflowitems-edit-page-routing.module.js | 33 - ...kflowitems-edit-page-routing.module.js.map | 1 - .../workflowitems-edit-page.module.js | 30 - .../workflowitems-edit-page.module.js.map | 1 - ...workspaceitems-edit-page-routing.module.js | 33 - ...spaceitems-edit-page-routing.module.js.map | 1 - .../workspaceitems-edit-page.module.js | 30 - .../workspaceitems-edit-page.module.js.map | 1 - src/app/app-routing.module.js | 48 - src/app/app-routing.module.js.map | 1 - src/app/app.component.js | 131 -- src/app/app.component.js.map | 1 - src/app/app.effects.js | 9 - src/app/app.effects.js.map | 1 - src/app/app.metareducers.js | 33 - src/app/app.metareducers.js.map | 1 - src/app/app.module.js | 112 -- src/app/app.module.js.map | 1 - src/app/app.reducer.js | 38 - src/app/app.reducer.js.map | 1 - src/app/core/auth/auth-object-factory.js | 27 - src/app/core/auth/auth-object-factory.js.map | 1 - src/app/core/auth/auth-request.service.js | 49 - src/app/core/auth/auth-request.service.js.map | 1 - .../auth/auth-response-parsing.service.js | 36 - .../auth/auth-response-parsing.service.js.map | 1 - src/app/core/auth/auth-type.js | 7 - src/app/core/auth/auth-type.js.map | 1 - src/app/core/auth/auth.actions.js | 310 ---- src/app/core/auth/auth.actions.js.map | 1 - src/app/core/auth/auth.effects.js | 130 -- src/app/core/auth/auth.effects.js.map | 1 - src/app/core/auth/auth.interceptor.js | 144 -- src/app/core/auth/auth.interceptor.js.map | 1 - src/app/core/auth/auth.reducer.js | 131 -- src/app/core/auth/auth.reducer.js.map | 1 - src/app/core/auth/auth.service.js | 365 ---- src/app/core/auth/auth.service.js.map | 1 - src/app/core/auth/authenticated.guard.js | 68 - src/app/core/auth/authenticated.guard.js.map | 1 - src/app/core/auth/models/auth-error.model.js | 1 - .../core/auth/models/auth-error.model.js.map | 1 - src/app/core/auth/models/auth-status.model.js | 7 - .../core/auth/models/auth-status.model.js.map | 1 - .../core/auth/models/auth-token-info.model.js | 18 - .../auth/models/auth-token-info.model.js.map | 1 - .../models/normalized-auth-status.model.js | 41 - .../normalized-auth-status.model.js.map | 1 - src/app/core/auth/selectors.js | 175 -- src/app/core/auth/selectors.js.map | 1 - src/app/core/auth/server-auth.service.js | 73 - src/app/core/auth/server-auth.service.js.map | 1 - .../browse-entry-search-options.model.js | 19 - .../browse-entry-search-options.model.js.map | 1 - src/app/core/browse/browse.service.js | 240 --- src/app/core/browse/browse.service.js.map | 1 - .../core/cache/builders/build-decorators.js | 31 - .../cache/builders/build-decorators.js.map | 1 - .../normalized-object-build.service.js | 51 - .../normalized-object-build.service.js.map | 1 - .../builders/remote-data-build.service.js | 218 --- .../builders/remote-data-build.service.js.map | 1 - src/app/core/cache/cache-entry.js | 1 - src/app/core/cache/cache-entry.js.map | 1 - src/app/core/cache/id-to-uuid-serializer.js | 36 - .../core/cache/id-to-uuid-serializer.js.map | 1 - .../core/cache/models/action-type.model.js | 55 - .../cache/models/action-type.model.js.map | 1 - .../items/normalized-item-type.model.js | 35 - .../items/normalized-item-type.model.js.map | 1 - .../normalized-relationship-type.model.js | 66 - .../normalized-relationship-type.model.js.map | 1 - .../items/normalized-relationship.model.js | 52 - .../normalized-relationship.model.js.map | 1 - .../normalized-bitstream-format.model.js | 55 - .../normalized-bitstream-format.model.js.map | 1 - .../models/normalized-bitstream.model.js | 53 - .../models/normalized-bitstream.model.js.map | 1 - .../cache/models/normalized-bundle.model.js | 32 - .../models/normalized-bundle.model.js.map | 1 - .../models/normalized-collection.model.js | 56 - .../models/normalized-collection.model.js.map | 1 - .../models/normalized-community.model.js | 51 - .../models/normalized-community.model.js.map | 1 - .../models/normalized-dspace-object.model.js | 54 - .../normalized-dspace-object.model.js.map | 1 - .../cache/models/normalized-item.model.js | 62 - .../cache/models/normalized-item.model.js.map | 1 - .../cache/models/normalized-license.model.js | 29 - .../models/normalized-license.model.js.map | 1 - .../cache/models/normalized-object-factory.js | 105 -- .../models/normalized-object-factory.js.map | 1 - .../cache/models/normalized-object.model.js | 25 - .../models/normalized-object.model.js.map | 1 - .../normalized-resource-policy.model.js | 43 - .../normalized-resource-policy.model.js.map | 1 - .../core/cache/models/search-param.model.js | 12 - .../cache/models/search-param.model.js.map | 1 - src/app/core/cache/models/self-link.model.js | 17 - .../core/cache/models/self-link.model.js.map | 1 - .../core/cache/models/sort-options.model.js | 14 - .../cache/models/sort-options.model.js.map | 1 - .../core/cache/models/support-level.model.js | 19 - .../cache/models/support-level.model.js.map | 1 - src/app/core/cache/object-cache.actions.js | 108 -- .../core/cache/object-cache.actions.js.map | 1 - src/app/core/cache/object-cache.effects.js | 32 - .../core/cache/object-cache.effects.js.map | 1 - src/app/core/cache/object-cache.reducer.js | 162 -- .../core/cache/object-cache.reducer.js.map | 1 - src/app/core/cache/object-cache.service.js | 236 --- .../core/cache/object-cache.service.js.map | 1 - src/app/core/cache/response.models.js | 320 ---- src/app/core/cache/response.models.js.map | 1 - .../core/cache/server-sync-buffer.actions.js | 63 - .../cache/server-sync-buffer.actions.js.map | 1 - .../core/cache/server-sync-buffer.effects.js | 110 -- .../cache/server-sync-buffer.effects.js.map | 1 - .../core/cache/server-sync-buffer.reducer.js | 73 - .../cache/server-sync-buffer.reducer.js.map | 1 - src/app/core/config/config-data.js | 12 - src/app/core/config/config-data.js.map | 1 - .../config/config-response-parsing.service.js | 36 - .../config-response-parsing.service.js.map | 1 - src/app/core/config/config.service.js | 66 - src/app/core/config/config.service.js.map | 1 - .../config-access-condition-option.model.js | 10 - ...onfig-access-condition-option.model.js.map | 1 - .../config/models/config-object-factory.js | 38 - .../models/config-object-factory.js.map | 1 - .../config-submission-definitions.model.js | 11 - ...config-submission-definitions.model.js.map | 1 - .../models/config-submission-forms.model.js | 14 - .../config-submission-forms.model.js.map | 1 - .../models/config-submission-section.model.js | 11 - .../config-submission-section.model.js.map | 1 - .../models/config-submission-uploads.model.js | 11 - .../config-submission-uploads.model.js.map | 1 - src/app/core/config/models/config-type.js | 12 - src/app/core/config/models/config-type.js.map | 1 - src/app/core/config/models/config.model.js | 7 - .../core/config/models/config.model.js.map | 1 - ...zed-config-submission-definitions.model.js | 28 - ...config-submission-definitions.model.js.map | 1 - ...ormalized-config-submission-forms.model.js | 22 - ...lized-config-submission-forms.model.js.map | 1 - ...malized-config-submission-section.model.js | 35 - ...zed-config-submission-section.model.js.map | 1 - ...malized-config-submission-uploads.model.js | 35 - ...zed-config-submission-uploads.model.js.map | 1 - .../config/models/normalized-config.model.js | 33 - .../models/normalized-config.model.js.map | 1 - .../submission-definitions-config.service.js | 24 - ...bmission-definitions-config.service.js.map | 1 - .../config/submission-forms-config.service.js | 24 - .../submission-forms-config.service.js.map | 1 - .../submission-sections-config.service.js | 24 - .../submission-sections-config.service.js.map | 1 - .../submission-uploads-config.service.js | 30 - .../submission-uploads-config.service.js.map | 1 - src/app/core/core.effects.js | 17 - src/app/core/core.effects.js.map | 1 - src/app/core/core.module.js | 199 --- src/app/core/core.module.js.map | 1 - src/app/core/core.reducers.js | 17 - src/app/core/core.reducers.js.map | 1 - src/app/core/core.selectors.js | 6 - src/app/core/core.selectors.js.map | 1 - .../data/base-response-parsing.service.js | 138 -- .../data/base-response-parsing.service.js.map | 1 - ...browse-entries-response-parsing.service.js | 43 - ...se-entries-response-parsing.service.js.map | 1 - .../browse-items-response-parsing-service.js | 54 - ...owse-items-response-parsing-service.js.map | 1 - .../data/browse-response-parsing.service.js | 27 - .../browse-response-parsing.service.js.map | 1 - src/app/core/data/change-analyzer.js | 1 - src/app/core/data/change-analyzer.js.map | 1 - src/app/core/data/collection-data.service.js | 62 - .../core/data/collection-data.service.js.map | 1 - src/app/core/data/comcol-data.service.js | 44 - src/app/core/data/comcol-data.service.js.map | 1 - src/app/core/data/community-data.service.js | 64 - .../core/data/community-data.service.js.map | 1 - src/app/core/data/data.service.js | 221 --- src/app/core/data/data.service.js.map | 1 - .../data/debug-response-parsing.service.js | 16 - .../debug-response-parsing.service.js.map | 1 - .../data/default-change-analyzer.service.js | 29 - .../default-change-analyzer.service.js.map | 1 - .../core/data/dso-change-analyzer.service.js | 29 - .../data/dso-change-analyzer.service.js.map | 1 - .../core/data/dso-response-parsing.service.js | 49 - .../data/dso-response-parsing.service.js.map | 1 - .../core/data/dspace-object-data.service.js | 70 - .../data/dspace-object-data.service.js.map | 1 - .../endpoint-map-response-parsing.service.js | 31 - ...dpoint-map-response-parsing.service.js.map | 1 - .../facet-config-response-parsing.service.js | 33 - ...cet-config-response-parsing.service.js.map | 1 - ...acet-value-map-response-parsing.service.js | 40 - ...-value-map-response-parsing.service.js.map | 1 - .../facet-value-response-parsing.service.js | 34 - ...acet-value-response-parsing.service.js.map | 1 - ...discovery-page-response-parsing.service.js | 39 - ...overy-page-response-parsing.service.js.map | 1 - src/app/core/data/item-data.service.js | 112 -- src/app/core/data/item-data.service.js.map | 1 - .../core/data/metadata-schema-data.service.js | 58 - .../data/metadata-schema-data.service.js.map | 1 - .../data/metadatafield-parsing.service.js | 23 - .../data/metadatafield-parsing.service.js.map | 1 - .../data/metadataschema-parsing.service.js | 20 - .../metadataschema-parsing.service.js.map | 1 - .../data/mydspace-response-parsing.service.js | 84 - .../mydspace-response-parsing.service.js.map | 1 - .../object-updates/object-updates.actions.js | 171 -- .../object-updates.actions.js.map | 1 - .../object-updates/object-updates.effects.js | 100 -- .../object-updates.effects.js.map | 1 - .../object-updates/object-updates.reducer.js | 237 --- .../object-updates.reducer.js.map | 1 - .../object-updates/object-updates.service.js | 226 --- .../object-updates.service.js.map | 1 - src/app/core/data/paginated-list.js | 115 -- src/app/core/data/paginated-list.js.map | 1 - src/app/core/data/parsing.service.js | 1 - src/app/core/data/parsing.service.js.map | 1 - ...tstreamformats-response-parsing.service.js | 25 - ...eamformats-response-parsing.service.js.map | 1 - ...metadatafields-response-parsing.service.js | 32 - ...datafields-response-parsing.service.js.map | 1 - ...etadataschemas-response-parsing.service.js | 29 - ...ataschemas-response-parsing.service.js.map | 1 - src/app/core/data/remote-data-error.js | 10 - src/app/core/data/remote-data-error.js.map | 1 - src/app/core/data/remote-data.js | 77 - src/app/core/data/remote-data.js.map | 1 - src/app/core/data/request.actions.js | 89 - src/app/core/data/request.actions.js.map | 1 - src/app/core/data/request.effects.js | 71 - src/app/core/data/request.effects.js.map | 1 - src/app/core/data/request.models.js | 478 ----- src/app/core/data/request.models.js.map | 1 - src/app/core/data/request.reducer.js | 106 -- src/app/core/data/request.reducer.js.map | 1 - src/app/core/data/request.service.js | 270 --- src/app/core/data/request.service.js.map | 1 - src/app/core/data/rest-request-method.js | 20 - src/app/core/data/rest-request-method.js.map | 1 - .../data/search-response-parsing.service.js | 70 - .../search-response-parsing.service.js.map | 1 - .../dspace-rest-v2-response.model.js | 1 - .../dspace-rest-v2-response.model.js.map | 1 - .../dspace-rest-v2.serializer.js | 84 - .../dspace-rest-v2.serializer.js.map | 1 - .../dspace-rest-v2/dspace-rest-v2.service.js | 119 -- .../dspace-rest-v2.service.js.map | 1 - .../dspace-rest-v2.validator.js | 33 - .../dspace-rest-v2.validator.js.map | 1 - .../eperson-response-parsing.service.js | 39 - .../eperson-response-parsing.service.js.map | 1 - src/app/core/eperson/eperson.service.js | 17 - src/app/core/eperson/eperson.service.js.map | 1 - src/app/core/eperson/group-eperson.service.js | 66 - .../core/eperson/group-eperson.service.js.map | 1 - src/app/core/eperson/models/eperson.model.js | 21 - .../core/eperson/models/eperson.model.js.map | 1 - src/app/core/eperson/models/group.model.js | 11 - .../core/eperson/models/group.model.js.map | 1 - .../models/normalized-eperson.model.js | 52 - .../models/normalized-eperson.model.js.map | 1 - .../eperson/models/normalized-group.model.js | 36 - .../models/normalized-group.model.js.map | 1 - src/app/core/index/index.actions.js | 70 - src/app/core/index/index.actions.js.map | 1 - src/app/core/index/index.effects.js | 46 - src/app/core/index/index.effects.js.map | 1 - src/app/core/index/index.reducer.js | 114 -- src/app/core/index/index.reducer.js.map | 1 - src/app/core/index/index.selectors.js | 62 - src/app/core/index/index.selectors.js.map | 1 - src/app/core/integration/authority.service.js | 28 - .../core/integration/authority.service.js.map | 1 - src/app/core/integration/integration-data.js | 12 - .../core/integration/integration-data.js.map | 1 - .../integration/integration-object-factory.js | 19 - .../integration-object-factory.js.map | 1 - .../integration-response-parsing.service.js | 47 - ...ntegration-response-parsing.service.js.map | 1 - .../core/integration/integration.service.js | 84 - .../integration/integration.service.js.map | 1 - src/app/core/integration/intergration-type.js | 5 - .../core/integration/intergration-type.js.map | 1 - .../models/authority-options.model.js | 12 - .../models/authority-options.model.js.map | 1 - .../integration/models/authority.value.js | 48 - .../integration/models/authority.value.js.map | 1 - .../integration/models/confidence-type.js | 39 - .../integration/models/confidence-type.js.map | 1 - .../models/integration-options.model.js | 18 - .../models/integration-options.model.js.map | 1 - .../integration/models/integration.model.js | 25 - .../models/integration.model.js.map | 1 - .../normalized-authority-value.model.js | 41 - .../normalized-authority-value.model.js.map | 1 - .../json-patch-operation-path-combiner.js | 56 - .../json-patch-operation-path-combiner.js.map | 1 - .../builder/json-patch-operations-builder.js | 134 -- .../json-patch-operations-builder.js.map | 1 - .../json-patch-operations.actions.js | 213 --- .../json-patch-operations.actions.js.map | 1 - .../json-patch-operations.effects.js | 30 - .../json-patch-operations.effects.js.map | 1 - .../json-patch-operations.reducer.js | 264 --- .../json-patch-operations.reducer.js.map | 1 - .../json-patch-operations.service.js | 117 -- .../json-patch-operations.service.js.map | 1 - src/app/core/json-patch/json-patch.model.js | 22 - .../core/json-patch/json-patch.model.js.map | 1 - src/app/core/json-patch/selectors.js | 28 - src/app/core/json-patch/selectors.js.map | 1 - src/app/core/metadata/metadata.service.js | 317 ---- src/app/core/metadata/metadata.service.js.map | 1 - src/app/core/metadata/metadatafield.model.js | 43 - .../core/metadata/metadatafield.model.js.map | 1 - src/app/core/metadata/metadataschema.model.js | 25 - .../core/metadata/metadataschema.model.js.map | 1 - .../normalized-metadata-schema.model.js | 36 - .../normalized-metadata-schema.model.js.map | 1 - .../registry/mock-bitstream-format.model.js | 7 - .../mock-bitstream-format.model.js.map | 1 - ...egistry-bitstreamformats-response.model.js | 23 - ...try-bitstreamformats-response.model.js.map | 1 - .../registry-metadatafields-response.model.js | 23 - ...istry-metadatafields-response.model.js.map | 1 - ...registry-metadataschemas-response.model.js | 23 - ...stry-metadataschemas-response.model.js.map | 1 - src/app/core/registry/registry.service.js | 386 ---- src/app/core/registry/registry.service.js.map | 1 - src/app/core/roles/role-types.js | 7 - src/app/core/roles/role-types.js.map | 1 - src/app/core/roles/role.service.js | 67 - src/app/core/roles/role.service.js.map | 1 - src/app/core/serializer.js | 1 - src/app/core/serializer.js.map | 1 - src/app/core/shared/bitstream-format.model.js | 10 - .../core/shared/bitstream-format.model.js.map | 1 - src/app/core/shared/bitstream.model.js | 11 - src/app/core/shared/bitstream.model.js.map | 1 - .../core/shared/browse-definition.model.js | 37 - .../shared/browse-definition.model.js.map | 1 - src/app/core/shared/browse-entry.model.js | 29 - src/app/core/shared/browse-entry.model.js.map | 1 - src/app/core/shared/bundle.model.js | 11 - src/app/core/shared/bundle.model.js.map | 1 - src/app/core/shared/collection.model.js | 66 - src/app/core/shared/collection.model.js.map | 1 - src/app/core/shared/community.model.js | 55 - src/app/core/shared/community.model.js.map | 1 - .../core/shared/dspace-object-type.model.js | 9 - .../shared/dspace-object-type.model.js.map | 1 - src/app/core/shared/dspace-object.model.js | 107 -- .../core/shared/dspace-object.model.js.map | 1 - src/app/core/shared/file.service.js | 50 - src/app/core/shared/file.service.js.map | 1 - src/app/core/shared/generic-constructor.js | 2 - .../core/shared/generic-constructor.js.map | 1 - src/app/core/shared/hal-endpoint.service.js | 75 - .../core/shared/hal-endpoint.service.js.map | 1 - .../item-relationships/item-type.model.js | 10 - .../item-relationships/item-type.model.js.map | 1 - .../relationship-type.model.js | 10 - .../relationship-type.model.js.map | 1 - .../item-relationships/relationship.model.js | 10 - .../relationship.model.js.map | 1 - src/app/core/shared/item.model.js | 60 - src/app/core/shared/item.model.js.map | 1 - src/app/core/shared/license.model.js | 11 - src/app/core/shared/license.model.js.map | 1 - .../item-metadata-representation.model.js | 57 - .../item-metadata-representation.model.js.map | 1 - .../metadata-representation.model.js | 11 - .../metadata-representation.model.js.map | 1 - .../metadatum-representation.model.js | 39 - .../metadatum-representation.model.js.map | 1 - src/app/core/shared/metadata.models.js | 98 - src/app/core/shared/metadata.models.js.map | 1 - src/app/core/shared/metadata.utils.js | 211 --- src/app/core/shared/metadata.utils.js.map | 1 - src/app/core/shared/operators.js | 105 -- src/app/core/shared/operators.js.map | 1 - src/app/core/shared/page-info.model.js | 48 - src/app/core/shared/page-info.model.js.map | 1 - src/app/core/shared/resource-policy.model.js | 10 - .../core/shared/resource-policy.model.js.map | 1 - src/app/core/shared/resource-type.js | 30 - src/app/core/shared/resource-type.js.map | 1 - src/app/core/shared/sort-option.model.js | 17 - src/app/core/shared/sort-option.model.js.map | 1 - .../submit-data-response-definition.model.js | 1 - ...bmit-data-response-definition.model.js.map | 1 - src/app/core/shared/uuid.service.js | 16 - src/app/core/shared/uuid.service.js.map | 1 - src/app/core/shared/view-mode.model.js | 10 - src/app/core/shared/view-mode.model.js.map | 1 - .../normalized-submission-object.model.js | 39 - .../normalized-submission-object.model.js.map | 1 - .../models/normalized-workflowitem.model.js | 42 - .../normalized-workflowitem.model.js.map | 1 - .../models/normalized-workspaceitem.model.js | 44 - .../normalized-workspaceitem.model.js.map | 1 - .../models/submission-object.model.js | 14 - .../models/submission-object.model.js.map | 1 - ...sion-upload-file-access-condition.model.js | 10 - ...-upload-file-access-condition.model.js.map | 1 - .../submission/models/workflowitem.model.js | 14 - .../models/workflowitem.model.js.map | 1 - .../workspaceitem-section-form.model.js | 1 - .../workspaceitem-section-form.model.js.map | 1 - .../workspaceitem-section-license.model.js | 1 - ...workspaceitem-section-license.model.js.map | 1 - ...workspaceitem-section-upload-file.model.js | 10 - ...spaceitem-section-upload-file.model.js.map | 1 - .../workspaceitem-section-upload.model.js | 1 - .../workspaceitem-section-upload.model.js.map | 1 - .../models/workspaceitem-sections.model.js | 11 - .../workspaceitem-sections.model.js.map | 1 - .../submission/models/workspaceitem.model.js | 14 - .../models/workspaceitem.model.js.map | 1 - ...ubmission-json-patch-operations.service.js | 31 - ...ssion-json-patch-operations.service.js.map | 1 - .../submission/submission-resource-type.js | 23 - .../submission-resource-type.js.map | 1 - .../submission-response-parsing.service.js | 150 -- ...submission-response-parsing.service.js.map | 1 - .../submission/submission-rest.service.js | 121 -- .../submission/submission-rest.service.js.map | 1 - .../core/submission/submission-scope-type.js | 6 - .../submission/submission-scope-type.js.map | 1 - .../submission/workflowitem-data.service.js | 51 - .../workflowitem-data.service.js.map | 1 - .../submission/workspaceitem-data.service.js | 51 - .../workspaceitem-data.service.js.map | 1 - .../core/tasks/claimed-task-data.service.js | 109 -- .../tasks/claimed-task-data.service.js.map | 1 - .../tasks/models/claimed-task-object.model.js | 14 - .../models/claimed-task-object.model.js.map | 1 - .../normalized-claimed-task-object.model.js | 39 - ...ormalized-claimed-task-object.model.js.map | 1 - .../normalized-pool-task-object.model.js | 39 - .../normalized-pool-task-object.model.js.map | 1 - .../models/normalized-task-object.model.js | 39 - .../normalized-task-object.model.js.map | 1 - .../tasks/models/pool-task-object.model.js | 14 - .../models/pool-task-object.model.js.map | 1 - .../tasks/models/process-task-response.js | 20 - .../tasks/models/process-task-response.js.map | 1 - .../core/tasks/models/task-object.model.js | 14 - .../tasks/models/task-object.model.js.map | 1 - src/app/core/tasks/pool-task-data.service.js | 78 - .../core/tasks/pool-task-data.service.js.map | 1 - .../tasks/task-response-parsing.service.js | 50 - .../task-response-parsing.service.js.map | 1 - src/app/core/tasks/tasks.service.js | 96 - src/app/core/tasks/tasks.service.js.map | 1 - src/app/core/url-baser/url-baser.js | 39 - src/app/core/url-baser/url-baser.js.map | 1 - .../core/url-combiner/rest-url-combiner.js | 21 - .../url-combiner/rest-url-combiner.js.map | 1 - src/app/core/url-combiner/ui-url-combiner.js | 21 - .../core/url-combiner/ui-url-combiner.js.map | 1 - src/app/core/url-combiner/url-combiner.js | 52 - src/app/core/url-combiner/url-combiner.js.map | 1 - src/app/footer/footer.component.js | 17 - src/app/footer/footer.component.js.map | 1 - .../header-navbar-wrapper.component.js | 43 - .../header-navbar-wrapper.component.js.map | 1 - src/app/header/header.component.js | 28 - src/app/header/header.component.js.map | 1 - .../expandable-navbar-section.component.js | 85 - ...expandable-navbar-section.component.js.map | 1 - .../navbar-section.component.js | 39 - .../navbar-section.component.js.map | 1 - src/app/navbar/navbar.component.js | 130 -- src/app/navbar/navbar.component.js.map | 1 - src/app/navbar/navbar.effects.js | 63 - src/app/navbar/navbar.effects.js.map | 1 - src/app/navbar/navbar.module.js | 51 - src/app/navbar/navbar.module.js.map | 1 - .../pagenotfound/pagenotfound.component.js | 38 - .../pagenotfound.component.js.map | 1 - src/app/shared/alert/alert.component.js | 82 - src/app/shared/alert/alert.component.js.map | 1 - src/app/shared/alert/aletr-type.js | 8 - src/app/shared/alert/aletr-type.js.map | 1 - src/app/shared/animations/bgColor.js | 12 - src/app/shared/animations/bgColor.js.map | 1 - src/app/shared/animations/fade.js | 30 - src/app/shared/animations/fade.js.map | 1 - src/app/shared/animations/focus.js | 12 - src/app/shared/animations/focus.js.map | 1 - src/app/shared/animations/fromBottom.js | 22 - src/app/shared/animations/fromBottom.js.map | 1 - src/app/shared/animations/fromLeft.js | 22 - src/app/shared/animations/fromLeft.js.map | 1 - src/app/shared/animations/fromRight.js | 22 - src/app/shared/animations/fromRight.js.map | 1 - src/app/shared/animations/fromTop.js | 22 - src/app/shared/animations/fromTop.js.map | 1 - src/app/shared/animations/overlay.js | 7 - src/app/shared/animations/overlay.js.map | 1 - src/app/shared/animations/push.js | 12 - src/app/shared/animations/push.js.map | 1 - src/app/shared/animations/rotate.js | 31 - src/app/shared/animations/rotate.js.map | 1 - src/app/shared/animations/scale.js | 22 - src/app/shared/animations/scale.js.map | 1 - src/app/shared/animations/shrink.js | 13 - src/app/shared/animations/shrink.js.map | 1 - src/app/shared/animations/slide.js | 45 - src/app/shared/animations/slide.js.map | 1 - .../auth-nav-menu/auth-nav-menu.component.js | 41 - .../auth-nav-menu.component.js.map | 1 - .../user-menu/user-menu.component.js | 38 - .../user-menu/user-menu.component.js.map | 1 - .../authority-confidence-state.directive.js | 134 -- ...uthority-confidence-state.directive.js.map | 1 - .../shared/browse-by/browse-by.component.js | 157 -- .../browse-by/browse-by.component.js.map | 1 - src/app/shared/chips/chips.component.js | 136 -- src/app/shared/chips/chips.component.js.map | 1 - .../shared/chips/models/chips-item.model.js | 88 - .../chips/models/chips-item.model.js.map | 1 - src/app/shared/chips/models/chips.model.js | 127 -- .../shared/chips/models/chips.model.js.map | 1 - .../comcol-form/comcol-form.component.js | 105 -- .../comcol-form/comcol-form.component.js.map | 1 - .../create-comcol-page.component.js | 59 - .../create-comcol-page.component.js.map | 1 - .../delete-comcol-page.component.js | 63 - .../delete-comcol-page.component.js.map | 1 - .../edit-comcol-page.component.js | 47 - .../edit-comcol-page.component.js.map | 1 - .../comcol-page-browse-by.component.js | 23 - .../comcol-page-browse-by.component.js.map | 1 - .../comcol-page-content.component.js | 34 - .../comcol-page-content.component.js.map | 1 - .../comcol-page-header.component.js | 20 - .../comcol-page-header.component.js.map | 1 - .../comcol-page-logo.component.js | 32 - .../comcol-page-logo.component.js.map | 1 - src/app/shared/date.util.js | 52 - src/app/shared/date.util.js.map | 1 - .../dso-selector/dso-selector.component.js | 84 - .../dso-selector.component.js.map | 1 - ...te-collection-parent-selector.component.js | 46 - ...ollection-parent-selector.component.js.map | 1 - ...ate-community-parent-selector.component.js | 53 - ...community-parent-selector.component.js.map | 1 - .../create-item-parent-selector.component.js | 40 - ...eate-item-parent-selector.component.js.map | 1 - .../dso-selector-modal-wrapper.component.js | 52 - ...so-selector-modal-wrapper.component.js.map | 1 - .../edit-collection-selector.component.js | 40 - .../edit-collection-selector.component.js.map | 1 - .../edit-community-selector.component.js | 40 - .../edit-community-selector.component.js.map | 1 - .../edit-item-selector.component.js | 40 - .../edit-item-selector.component.js.map | 1 - src/app/shared/empty.util.js | 168 -- src/app/shared/empty.util.js.map | 1 - src/app/shared/error/error.component.js | 37 - src/app/shared/error/error.component.js.map | 1 - ...ynamic-form-control-container.component.js | 202 --- ...ic-form-control-container.component.js.map | 1 - .../ds-dynamic-form.component.js | 71 - .../ds-dynamic-form.component.js.map | 1 - .../dynamic-form-array.component.js | 67 - .../dynamic-form-array.component.js.map | 1 - .../dynamic-date-picker-inline.component.js | 63 - ...ynamic-date-picker-inline.component.js.map | 1 - .../date-picker/date-picker.component.js | 191 -- .../date-picker/date-picker.component.js.map | 1 - .../models/date-picker/date-picker.model.js | 23 - .../date-picker/date-picker.model.js.map | 1 - .../models/ds-dynamic-concat.model.js | 67 - .../models/ds-dynamic-concat.model.js.map | 1 - .../models/ds-dynamic-input.model.js | 95 - .../models/ds-dynamic-input.model.js.map | 1 - .../models/ds-dynamic-qualdrop.model.js | 82 - .../models/ds-dynamic-qualdrop.model.js.map | 1 - .../models/ds-dynamic-row-array-model.js | 19 - .../models/ds-dynamic-row-array-model.js.map | 1 - .../models/ds-dynamic-row-group-model.js | 13 - .../models/ds-dynamic-row-group-model.js.map | 1 - .../models/ds-dynamic-textarea.model.js | 33 - .../models/ds-dynamic-textarea.model.js.map | 1 - .../dynamic-form-group.component.js | 68 - .../dynamic-form-group.component.js.map | 1 - .../list/dynamic-list-checkbox-group.model.js | 65 - .../dynamic-list-checkbox-group.model.js.map | 1 - .../list/dynamic-list-radio-group.model.js | 38 - .../dynamic-list-radio-group.model.js.map | 1 - .../models/list/dynamic-list.component.js | 146 -- .../models/list/dynamic-list.component.js.map | 1 - .../lookup/dynamic-lookup-name.model.js | 30 - .../lookup/dynamic-lookup-name.model.js.map | 1 - .../models/lookup/dynamic-lookup.component.js | 251 --- .../lookup/dynamic-lookup.component.js.map | 1 - .../models/lookup/dynamic-lookup.model.js | 30 - .../models/lookup/dynamic-lookup.model.js.map | 1 - .../dynamic-relation-group.components.js | 282 --- .../dynamic-relation-group.components.js.map | 1 - .../dynamic-relation-group.model.js | 84 - .../dynamic-relation-group.model.js.map | 1 - .../dynamic-scrollable-dropdown.component.js | 143 -- ...namic-scrollable-dropdown.component.js.map | 1 - .../dynamic-scrollable-dropdown.model.js | 26 - .../dynamic-scrollable-dropdown.model.js.map | 1 - .../models/tag/dynamic-tag.component.js | 188 -- .../models/tag/dynamic-tag.component.js.map | 1 - .../models/tag/dynamic-tag.model.js | 31 - .../models/tag/dynamic-tag.model.js.map | 1 - .../typeahead/dynamic-typeahead.component.js | 138 -- .../dynamic-typeahead.component.js.map | 1 - .../typeahead/dynamic-typeahead.model.js | 25 - .../typeahead/dynamic-typeahead.model.js.map | 1 - .../form/builder/form-builder.service.js | 256 --- .../form/builder/form-builder.service.js.map | 1 - .../models/form-field-language-value.model.js | 9 - .../form-field-language-value.model.js.map | 1 - .../models/form-field-metadata-value.model.js | 49 - .../form-field-metadata-value.model.js.map | 1 - .../form-field-previous-value-object.js | 39 - .../form-field-previous-value-object.js.map | 1 - .../form/builder/models/form-field.model.js | 57 - .../builder/models/form-field.model.js.map | 1 - .../builder/parsers/concat-field-parser.js | 73 - .../parsers/concat-field-parser.js.map | 1 - .../form/builder/parsers/date-field-parser.js | 38 - .../builder/parsers/date-field-parser.js.map | 1 - .../builder/parsers/dropdown-field-parser.js | 36 - .../parsers/dropdown-field-parser.js.map | 1 - .../form/builder/parsers/field-parser.js | 276 --- .../form/builder/parsers/field-parser.js.map | 1 - .../form/builder/parsers/list-field-parser.js | 45 - .../builder/parsers/list-field-parser.js.map | 1 - .../builder/parsers/lookup-field-parser.js | 20 - .../parsers/lookup-field-parser.js.map | 1 - .../parsers/lookup-name-field-parser.js | 20 - .../parsers/lookup-name-field-parser.js.map | 1 - .../form/builder/parsers/name-field-parser.js | 15 - .../builder/parsers/name-field-parser.js.map | 1 - .../builder/parsers/onebox-field-parser.js | 72 - .../parsers/onebox-field-parser.js.map | 1 - .../form/builder/parsers/parser-factory.js | 59 - .../builder/parsers/parser-factory.js.map | 1 - .../form/builder/parsers/parser-options.js | 1 - .../builder/parsers/parser-options.js.map | 1 - .../form/builder/parsers/parser-type.js | 15 - .../form/builder/parsers/parser-type.js.map | 1 - .../form/builder/parsers/parser.utils.js | 19 - .../form/builder/parsers/parser.utils.js.map | 1 - .../parsers/relation-group-field-parser.js | 60 - .../relation-group-field-parser.js.map | 1 - .../shared/form/builder/parsers/row-parser.js | 108 -- .../form/builder/parsers/row-parser.js.map | 1 - .../builder/parsers/series-field-parser.js | 15 - .../parsers/series-field-parser.js.map | 1 - .../form/builder/parsers/tag-field-parser.js | 22 - .../builder/parsers/tag-field-parser.js.map | 1 - .../builder/parsers/textarea-field-parser.js | 25 - .../parsers/textarea-field-parser.js.map | 1 - src/app/shared/form/form.actions.js | 108 -- src/app/shared/form/form.actions.js.map | 1 - src/app/shared/form/form.component.js | 320 ---- src/app/shared/form/form.component.js.map | 1 - src/app/shared/form/form.effects.js | 15 - src/app/shared/form/form.effects.js.map | 1 - src/app/shared/form/form.reducer.js | 181 -- src/app/shared/form/form.reducer.js.map | 1 - src/app/shared/form/form.service.js | 135 -- src/app/shared/form/form.service.js.map | 1 - src/app/shared/form/selectors.js | 6 - src/app/shared/form/selectors.js.map | 1 - src/app/shared/history/history.actions.js | 15 - src/app/shared/history/history.actions.js.map | 1 - src/app/shared/history/history.reducer.js | 17 - src/app/shared/history/history.reducer.js.map | 1 - src/app/shared/history/selectors.js | 2 - src/app/shared/history/selectors.js.map | 1 - src/app/shared/host-window.actions.js | 13 - src/app/shared/host-window.actions.js.map | 1 - src/app/shared/host-window.reducer.js | 17 - src/app/shared/host-window.reducer.js.map | 1 - src/app/shared/host-window.service.js | 89 - src/app/shared/host-window.service.js.map | 1 - .../input-suggestions.component.js | 255 --- .../input-suggestions.component.js.map | 1 - .../input-suggestions.model.js | 1 - .../input-suggestions.model.js.map | 1 - src/app/shared/items/item-type-decorator.js | 62 - .../shared/items/item-type-decorator.js.map | 1 - .../switcher/item-type-switcher.component.js | 60 - .../item-type-switcher.component.js.map | 1 - .../lang-switch/lang-switch.component.js | 44 - .../lang-switch/lang-switch.component.js.map | 1 - src/app/shared/loading/loading.component.js | 42 - .../shared/loading/loading.component.js.map | 1 - src/app/shared/log-in/log-in.component.js | 129 -- src/app/shared/log-in/log-in.component.js.map | 1 - src/app/shared/log-out/log-out.component.js | 47 - .../shared/log-out/log-out.component.js.map | 1 - src/app/shared/menu/initial-menus-state.js | 42 - .../shared/menu/initial-menus-state.js.map | 1 - src/app/shared/menu/menu-item.decorator.js | 23 - .../shared/menu/menu-item.decorator.js.map | 1 - .../menu-item/link-menu-item.component.js | 37 - .../menu-item/link-menu-item.component.js.map | 1 - .../menu/menu-item/models/altmetric.model.js | 12 - .../menu-item/models/altmetric.model.js.map | 1 - .../menu/menu-item/models/link.model.js | 12 - .../menu/menu-item/models/link.model.js.map | 1 - .../menu/menu-item/models/menu-item.model.js | 1 - .../menu-item/models/menu-item.model.js.map | 1 - .../menu/menu-item/models/onclick.model.js | 12 - .../menu-item/models/onclick.model.js.map | 1 - .../menu/menu-item/models/search.model.js | 12 - .../menu/menu-item/models/search.model.js.map | 1 - .../menu/menu-item/models/text.model.js | 12 - .../menu/menu-item/models/text.model.js.map | 1 - .../menu-item/onclick-menu-item.component.js | 26 - .../onclick-menu-item.component.js.map | 1 - .../menu-item/text-menu-item.component.js | 25 - .../menu-item/text-menu-item.component.js.map | 1 - src/app/shared/menu/menu-section.decorator.js | 28 - .../shared/menu/menu-section.decorator.js.map | 1 - .../menu-section/menu-section.component.js | 107 -- .../menu-section.component.js.map | 1 - src/app/shared/menu/menu.actions.js | 211 --- src/app/shared/menu/menu.actions.js.map | 1 - src/app/shared/menu/menu.component.js | 125 -- src/app/shared/menu/menu.component.js.map | 1 - src/app/shared/menu/menu.module.js | 50 - src/app/shared/menu/menu.module.js.map | 1 - src/app/shared/menu/menu.reducer.js | 242 --- src/app/shared/menu/menu.reducer.js.map | 1 - src/app/shared/menu/menu.service.js | 217 --- src/app/shared/menu/menu.service.js.map | 1 - src/app/shared/mocks/mock-action.js | 8 - src/app/shared/mocks/mock-action.js.map | 1 - src/app/shared/mocks/mock-active-router.js | 36 - .../shared/mocks/mock-active-router.js.map | 1 - .../shared/mocks/mock-admin-guard.service.js | 26 - .../mocks/mock-admin-guard.service.js.map | 1 - .../shared/mocks/mock-angulartics.service.js | 9 - .../mocks/mock-angulartics.service.js.map | 1 - src/app/shared/mocks/mock-auth.service.js | 11 - src/app/shared/mocks/mock-auth.service.js.map | 1 - .../shared/mocks/mock-form-builder-service.js | 21 - .../mocks/mock-form-builder-service.js.map | 1 - src/app/shared/mocks/mock-form-models.js | 228 --- src/app/shared/mocks/mock-form-models.js.map | 1 - .../mocks/mock-form-operations-service.js | 17 - .../mocks/mock-form-operations-service.js.map | 1 - src/app/shared/mocks/mock-form-service.js | 19 - src/app/shared/mocks/mock-form-service.js.map | 1 - .../shared/mocks/mock-host-window-service.js | 19 - .../mocks/mock-host-window-service.js.map | 1 - src/app/shared/mocks/mock-item.js | 215 --- src/app/shared/mocks/mock-item.js.map | 1 - src/app/shared/mocks/mock-metadata-service.js | 10 - .../shared/mocks/mock-metadata-service.js.map | 1 - .../shared/mocks/mock-object-cache.service.js | 14 - .../mocks/mock-object-cache.service.js.map | 1 - .../mocks/mock-remote-data-build.service.js | 21 - .../mock-remote-data-build.service.js.map | 1 - src/app/shared/mocks/mock-request.service.js | 16 - .../shared/mocks/mock-request.service.js.map | 1 - src/app/shared/mocks/mock-role-service.js | 45 - src/app/shared/mocks/mock-role-service.js.map | 1 - src/app/shared/mocks/mock-router.js | 33 - src/app/shared/mocks/mock-router.js.map | 1 - .../shared/mocks/mock-scroll-to-service.js | 9 - .../mocks/mock-scroll-to-service.js.map | 1 - .../mocks/mock-section-upload.service.js | 14 - .../mocks/mock-section-upload.service.js.map | 1 - src/app/shared/mocks/mock-store.js | 1 - src/app/shared/mocks/mock-store.js.map | 1 - src/app/shared/mocks/mock-submission.js | 1572 ----------------- src/app/shared/mocks/mock-submission.js.map | 1 - src/app/shared/mocks/mock-translate-loader.js | 11 - .../shared/mocks/mock-translate-loader.js.map | 1 - .../shared/mocks/mock-translate.service.js | 7 - .../mocks/mock-translate.service.js.map | 1 - src/app/shared/mocks/mock-uuid.service.js | 8 - src/app/shared/mocks/mock-uuid.service.js.map | 1 - .../claimed-task-actions-approve.component.js | 38 - ...imed-task-actions-approve.component.js.map | 1 - .../claimed-task-actions.component.js | 114 -- .../claimed-task-actions.component.js.map | 1 - .../claimed-task-actions-reject.component.js | 70 - ...aimed-task-actions-reject.component.js.map | 1 - ...d-task-actions-return-to-pool.component.js | 38 - ...sk-actions-return-to-pool.component.js.map | 1 - .../item/item-actions.component.js | 56 - .../item/item-actions.component.js.map | 1 - .../mydspace-actions-service.factory.js | 38 - .../mydspace-actions-service.factory.js.map | 1 - .../mydspace-actions/mydspace-actions.js | 73 - .../mydspace-actions/mydspace-actions.js.map | 1 - .../pool-task/pool-task-actions.component.js | 83 - .../pool-task-actions.component.js.map | 1 - .../workflowitem-actions.component.js | 56 - .../workflowitem-actions.component.js.map | 1 - .../workspaceitem-actions.component.js | 82 - .../workspaceitem-actions.component.js.map | 1 - .../ngrx/dspace-router-state-serializer.js | 14 - .../dspace-router-state-serializer.js.map | 1 - src/app/shared/ngrx/type.js | 24 - src/app/shared/ngrx/type.js.map | 1 - .../models/notification-animations-type.js | 17 - .../notification-animations-type.js.map | 1 - .../models/notification-options.model.js | 14 - .../models/notification-options.model.js.map | 1 - .../notifications/models/notification-type.js | 8 - .../models/notification-type.js.map | 1 - .../models/notification.model.js | 15 - .../models/notification.model.js.map | 1 - .../notification/notification.component.js | 140 -- .../notification.component.js.map | 1 - .../notifications-board.component.js | 130 -- .../notifications-board.component.js.map | 1 - .../notifications/notifications.actions.js | 47 - .../notifications.actions.js.map | 1 - .../notifications/notifications.effects.js | 37 - .../notifications.effects.js.map | 1 - .../notifications/notifications.reducers.js | 28 - .../notifications.reducers.js.map | 1 - .../notifications/notifications.service.js | 112 -- .../notifications.service.js.map | 1 - src/app/shared/notifications/selectors.js | 2 - src/app/shared/notifications/selectors.js.map | 1 - .../number-picker/number-picker.component.js | 187 -- .../number-picker.component.js.map | 1 - .../object-collection.component.js | 143 -- .../object-collection.component.js.map | 1 - .../claimed-task-my-dspace-result.model.js | 20 - ...claimed-task-my-dspace-result.model.js.map | 1 - .../shared/collection-search-result.model.js | 16 - .../collection-search-result.model.js.map | 1 - .../shared/community-search-result.model.js | 16 - .../community-search-result.model.js.map | 1 - .../shared/dso-element-decorator.js | 16 - .../shared/dso-element-decorator.js.map | 1 - .../shared/item-my-dspace-result.model.js | 20 - .../shared/item-my-dspace-result.model.js.map | 1 - .../shared/item-search-result.model.js | 16 - .../shared/item-search-result.model.js.map | 1 - .../shared/listable-object.model.js | 1 - .../shared/listable-object.model.js.map | 1 - .../my-dspace-item-status-type.js | 9 - .../my-dspace-item-status-type.js.map | 1 - .../my-dspace-item-status.component.js | 48 - .../my-dspace-item-status.component.js.map | 1 - .../item-submitter.component.js | 31 - .../item-submitter.component.js.map | 1 - .../abstract-listable-element.component.js | 19 - ...abstract-listable-element.component.js.map | 1 - .../pool-task-my-dspace-result.model.js | 20 - .../pool-task-my-dspace-result.model.js.map | 1 - .../workflowitem-my-dspace-result.model.js | 20 - ...workflowitem-my-dspace-result.model.js.map | 1 - .../workspaceitem-my-dspace-result.model.js | 20 - ...orkspaceitem-my-dspace-result.model.js.map | 1 - ...-dspace-result-detail-element.component.js | 58 - ...ace-result-detail-element.component.js.map | 1 - .../item-detail-preview-field.component.js | 54 - ...item-detail-preview-field.component.js.map | 1 - .../item-detail-preview.component.js | 55 - .../item-detail-preview.component.js.map | 1 - ...-dspace-result-detail-element.component.js | 32 - ...ace-result-detail-element.component.js.map | 1 - ...-dspace-result-detail-element.component.js | 47 - ...ace-result-detail-element.component.js.map | 1 - ...y-dspace-result-detail-lement.component.js | 58 - ...pace-result-detail-lement.component.js.map | 1 - ...-dspace-result-detail-element.component.js | 54 - ...ace-result-detail-element.component.js.map | 1 - ...-dspace-result-detail-element.component.js | 54 - ...ace-result-detail-element.component.js.map | 1 - .../object-detail/object-detail.component.js | 160 -- .../object-detail.component.js.map | 1 - .../wrapper-detail-element.component.js | 49 - .../wrapper-detail-element.component.js.map | 1 - .../collection-grid-element.component.js | 23 - .../collection-grid-element.component.js.map | 1 - .../community-grid-element.component.js | 23 - .../community-grid-element.component.js.map | 1 - .../grid-thumbnail.component.js | 34 - .../grid-thumbnail.component.js.map | 1 - .../item-grid-element.component.js | 23 - .../item-grid-element.component.js.map | 1 - .../object-grid/object-grid.component.js | 165 -- .../object-grid/object-grid.component.js.map | 1 - ...on-search-result-grid-element.component.js | 23 - ...earch-result-grid-element.component.js.map | 1 - ...ty-search-result-grid-element.component.js | 23 - ...earch-result-grid-element.component.js.map | 1 - ...em-search-result-grid-element.component.js | 25 - ...earch-result-grid-element.component.js.map | 1 - .../search-result-grid-element.component.js | 47 - ...earch-result-grid-element.component.js.map | 1 - .../wrapper-grid-element.component.js | 35 - .../wrapper-grid-element.component.js.map | 1 - .../browse-entry-list-element.component.js | 27 - ...browse-entry-list-element.component.js.map | 1 - .../collection-list-element.component.js | 23 - .../collection-list-element.component.js.map | 1 - .../community-list-element.component.js | 23 - .../community-list-element.component.js.map | 1 - .../item-list-element.component.js | 31 - .../item-list-element.component.js.map | 1 - .../journal-issue-list-element.component.js | 27 - ...ournal-issue-list-element.component.js.map | 1 - .../journal-volume-list-element.component.js | 27 - ...urnal-volume-list-element.component.js.map | 1 - .../journal/journal-list-element.component.js | 27 - .../journal-list-element.component.js.map | 1 - .../orgunit/orgunit-list-element.component.js | 27 - .../orgunit-list-element.component.js.map | 1 - ...orgunit-metadata-list-element.component.js | 27 - ...nit-metadata-list-element.component.js.map | 1 - .../person/person-list-element.component.js | 27 - .../person-list-element.component.js.map | 1 - .../person-metadata-list-element.component.js | 27 - ...son-metadata-list-element.component.js.map | 1 - .../project/project-list-element.component.js | 27 - .../project-list-element.component.js.map | 1 - .../publication-list-element.component.js | 28 - .../publication-list-element.component.js.map | 1 - ...em-search-result-list-element.component.js | 42 - ...earch-result-list-element.component.js.map | 1 - .../item-metadata-list-element.component.js | 32 - ...tem-metadata-list-element.component.js.map | 1 - ...a-representation-list-element.component.js | 23 - ...presentation-list-element.component.js.map | 1 - ...in-text-metadata-list-element.component.js | 32 - ...ext-metadata-list-element.component.js.map | 1 - ...my-dspace-result-list-element.component.js | 57 - ...space-result-list-element.component.js.map | 1 - .../item-list-preview.component.js | 44 - .../item-list-preview.component.js.map | 1 - ...my-dspace-result-list-element.component.js | 32 - ...space-result-list-element.component.js.map | 1 - ...my-dspace-result-list-element.component.js | 51 - ...space-result-list-element.component.js.map | 1 - ...my-dspace-result-list-element.component.js | 60 - ...space-result-list-element.component.js.map | 1 - ...my-dspace-result-list-element.component.js | 51 - ...space-result-list-element.component.js.map | 1 - ...my-dspace-result-list-element.component.js | 49 - ...space-result-list-element.component.js.map | 1 - .../object-list/object-list.component.js | 127 -- .../object-list/object-list.component.js.map | 1 - ...on-search-result-list-element.component.js | 23 - ...earch-result-list-element.component.js.map | 1 - ...ty-search-result-list-element.component.js | 23 - ...earch-result-list-element.component.js.map | 1 - ...em-search-result-list-element.component.js | 28 - ...earch-result-list-element.component.js.map | 1 - .../search-result-list-element.component.js | 50 - ...earch-result-list-element.component.js.map | 1 - .../wrapper-list-element.component.js | 42 - .../wrapper-list-element.component.js.map | 1 - src/app/shared/object.util.js | 58 - src/app/shared/object.util.js.map | 1 - .../pagination-component-options.model.js | 24 - .../pagination-component-options.model.js.map | 1 - .../shared/pagination/pagination.component.js | 474 ----- .../pagination/pagination.component.js.map | 1 - src/app/shared/roles/role.directive.js | 100 -- src/app/shared/roles/role.directive.js.map | 1 - .../shared/sass-helper/sass-helper.actions.js | 21 - .../sass-helper/sass-helper.actions.js.map | 1 - .../shared/sass-helper/sass-helper.reducer.js | 17 - .../sass-helper/sass-helper.reducer.js.map | 1 - .../shared/sass-helper/sass-helper.service.js | 33 - .../sass-helper/sass-helper.service.js.map | 1 - .../search-form/search-form.component.js | 103 -- .../search-form/search-form.component.js.map | 1 - src/app/shared/services/api.service.js | 26 - src/app/shared/services/api.service.js.map | 1 - .../shared/services/client-cookie.service.js | 30 - .../services/client-cookie.service.js.map | 1 - src/app/shared/services/cookie.service.js | 22 - src/app/shared/services/cookie.service.js.map | 1 - src/app/shared/services/route.service.js | 114 -- src/app/shared/services/route.service.js.map | 1 - .../shared/services/server-cookie.service.js | 34 - .../services/server-cookie.service.js.map | 1 - .../services/server-response.service.js | 29 - .../services/server-response.service.js.map | 1 - src/app/shared/services/window.service.js | 24 - src/app/shared/services/window.service.js.map | 1 - src/app/shared/shared.module.js | 350 ---- src/app/shared/shared.module.js.map | 1 - .../date/starts-with-date.component.js | 133 -- .../date/starts-with-date.component.js.map | 1 - .../starts-with-abstract.component.js | 83 - .../starts-with-abstract.component.js.map | 1 - .../starts-with/starts-with-decorator.js | 29 - .../starts-with/starts-with-decorator.js.map | 1 - .../text/starts-with-text.component.js | 55 - .../text/starts-with-text.component.js.map | 1 - src/app/shared/testing/active-router-stub.js | 46 - .../shared/testing/active-router-stub.js.map | 1 - .../testing/auth-request-service-stub.js | 74 - .../testing/auth-request-service-stub.js.map | 1 - src/app/shared/testing/auth-service-stub.js | 85 - .../shared/testing/auth-service-stub.js.map | 1 - .../shared/testing/authority-service-stub.js | 21 - .../testing/authority-service-stub.js.map | 1 - .../testing/css-variable-service-stub.js | 23 - .../testing/css-variable-service-stub.js.map | 1 - src/app/shared/testing/eperson-mock.js | 42 - src/app/shared/testing/eperson-mock.js.map | 1 - .../testing/hal-endpoint-service-stub.js | 13 - .../testing/hal-endpoint-service-stub.js.map | 1 - .../testing/host-window-service-stub.js | 19 - .../testing/host-window-service-stub.js.map | 1 - src/app/shared/testing/menu-service-stub.js | 94 - .../shared/testing/menu-service-stub.js.map | 1 - src/app/shared/testing/mock-action.js | 8 - src/app/shared/testing/mock-action.js.map | 1 - src/app/shared/testing/mock-store.js | 25 - src/app/shared/testing/mock-store.js.map | 1 - .../shared/testing/mock-submission-config.js | 51 - .../testing/mock-submission-config.js.map | 1 - .../shared/testing/mock-translate-loader.js | 11 - .../testing/mock-translate-loader.js.map | 1 - .../ng-component-outlet-directive-stub.js | 20 - .../ng-component-outlet-directive-stub.js.map | 1 - .../testing/notifications-service-stub.js | 17 - .../testing/notifications-service-stub.js.map | 1 - .../testing/query-params-directive-stub.js | 20 - .../query-params-directive-stub.js.map | 1 - src/app/shared/testing/route-service-stub.js | 32 - .../shared/testing/route-service-stub.js.map | 1 - .../testing/router-link-directive-stub.js | 20 - .../testing/router-link-directive-stub.js.map | 1 - src/app/shared/testing/router-stub.js | 16 - src/app/shared/testing/router-stub.js.map | 1 - .../search-configuration-service-stub.js | 19 - .../search-configuration-service-stub.js.map | 1 - src/app/shared/testing/search-service-stub.js | 43 - .../shared/testing/search-service-stub.js.map | 1 - .../shared/testing/sections-service-stub.js | 21 - .../testing/sections-service-stub.js.map | 1 - ...sion-json-patch-operations-service-stub.js | 10 - ...-json-patch-operations-service-stub.js.map | 1 - .../testing/submission-rest-service-stub.js | 17 - .../submission-rest-service-stub.js.map | 1 - .../shared/testing/submission-service-stub.js | 36 - .../testing/submission-service-stub.js.map | 1 - src/app/shared/testing/test-module.js | 37 - src/app/shared/testing/test-module.js.map | 1 - src/app/shared/testing/utils.js | 48 - src/app/shared/testing/utils.js.map | 1 - .../truncatable-part.component.js | 81 - .../truncatable-part.component.js.map | 1 - .../shared/truncatable/truncatable.actions.js | 68 - .../truncatable/truncatable.actions.js.map | 1 - .../truncatable/truncatable.component.js | 76 - .../truncatable/truncatable.component.js.map | 1 - .../shared/truncatable/truncatable.reducer.js | 42 - .../truncatable/truncatable.reducer.js.map | 1 - .../shared/truncatable/truncatable.service.js | 71 - .../truncatable/truncatable.service.js.map | 1 - .../shared/uploader/uploader-options.model.js | 8 - .../uploader/uploader-options.model.js.map | 1 - src/app/shared/uploader/uploader.component.js | 169 -- .../shared/uploader/uploader.component.js.map | 1 - src/app/shared/uploader/uploader.service.js | 22 - .../shared/uploader/uploader.service.js.map | 1 - src/app/shared/utils/auto-focus.directive.js | 37 - .../shared/utils/auto-focus.directive.js.map | 1 - src/app/shared/utils/capitalize.pipe.js | 30 - src/app/shared/utils/capitalize.pipe.js.map | 1 - .../shared/utils/click-outside.directive.js | 42 - .../utils/click-outside.directive.js.map | 1 - src/app/shared/utils/console.pipe.js | 18 - src/app/shared/utils/console.pipe.js.map | 1 - src/app/shared/utils/debounce.directive.js | 64 - .../shared/utils/debounce.directive.js.map | 1 - src/app/shared/utils/drag-click.directive.js | 57 - .../shared/utils/drag-click.directive.js.map | 1 - src/app/shared/utils/emphasize.pipe.js | 62 - src/app/shared/utils/emphasize.pipe.js.map | 1 - src/app/shared/utils/encode-decode.util.js | 11 - .../shared/utils/encode-decode.util.js.map | 1 - src/app/shared/utils/enum-keys-pipe.js | 34 - src/app/shared/utils/enum-keys-pipe.js.map | 1 - src/app/shared/utils/file-size-pipe.js | 46 - src/app/shared/utils/file-size-pipe.js.map | 1 - .../utils/in-list-validator.directive.js | 36 - .../utils/in-list-validator.directive.js.map | 1 - src/app/shared/utils/object-keys-pipe.js | 27 - src/app/shared/utils/object-keys-pipe.js.map | 1 - src/app/shared/utils/object-ngfor.pipe.js | 26 - src/app/shared/utils/object-ngfor.pipe.js.map | 1 - src/app/shared/utils/object-values-pipe.js | 27 - .../shared/utils/object-values-pipe.js.map | 1 - src/app/shared/utils/safe-url-pipe.js | 22 - src/app/shared/utils/safe-url-pipe.js.map | 1 - src/app/shared/utils/truncate.pipe.js | 31 - src/app/shared/utils/truncate.pipe.js.map | 1 - src/app/shared/utils/validator.functions.js | 16 - .../shared/utils/validator.functions.js.map | 1 - src/app/shared/utils/var.directive.js | 37 - src/app/shared/utils/var.directive.js.map | 1 - .../view-mode-switch.component.js | 72 - .../view-mode-switch.component.js.map | 1 - src/app/shared/view-mode.js | 12 - src/app/shared/view-mode.js.map | 1 - src/app/store.actions.js | 15 - src/app/store.actions.js.map | 1 - src/app/store.effects.js | 37 - src/app/store.effects.js.map | 1 - .../edit/submission-edit.component.js | 91 - .../edit/submission-edit.component.js.map | 1 - .../submission-form-collection.component.js | 206 --- ...ubmission-form-collection.component.js.map | 1 - .../submission-form-footer.component.js | 88 - .../submission-form-footer.component.js.map | 1 - .../submission-form-section-add.component.js | 57 - ...bmission-form-section-add.component.js.map | 1 - .../form/submission-form.component.js | 158 -- .../form/submission-form.component.js.map | 1 - .../submission-upload-files.component.js | 155 -- .../submission-upload-files.component.js.map | 1 - .../objects/submission-objects.actions.js | 588 ------ .../objects/submission-objects.actions.js.map | 1 - .../objects/submission-objects.effects.js | 273 --- .../objects/submission-objects.effects.js.map | 1 - .../objects/submission-objects.reducer.js | 617 ------- .../objects/submission-objects.reducer.js.map | 1 - .../container/section-container.component.js | 81 - .../section-container.component.js.map | 1 - .../form/section-form-operations.service.js | 372 ---- .../section-form-operations.service.js.map | 1 - .../sections/form/section-form.component.js | 319 ---- .../form/section-form.component.js.map | 1 - .../license/section-license.component.js | 180 -- .../license/section-license.component.js.map | 1 - .../sections/license/section-license.model.js | 26 - .../license/section-license.model.js.map | 1 - .../sections/models/section-data.model.js | 1 - .../sections/models/section-data.model.js.map | 1 - .../sections/models/section.model.js | 59 - .../sections/models/section.model.js.map | 1 - .../submission/sections/sections-decorator.js | 13 - .../sections/sections-decorator.js.map | 1 - src/app/submission/sections/sections-type.js | 9 - .../submission/sections/sections-type.js.map | 1 - .../submission/sections/sections.directive.js | 255 --- .../sections/sections.directive.js.map | 1 - .../submission/sections/sections.service.js | 309 ---- .../sections/sections.service.js.map | 1 - ...tion-upload-access-conditions.component.js | 57 - ...-upload-access-conditions.component.js.map | 1 - .../section-upload-file-edit.component.js | 287 --- .../section-upload-file-edit.component.js.map | 1 - .../edit/section-upload-file-edit.model.js | 125 -- .../section-upload-file-edit.model.js.map | 1 - .../file/section-upload-file.component.js | 260 --- .../file/section-upload-file.component.js.map | 1 - .../section-upload-file-view.component.js | 60 - .../section-upload-file-view.component.js.map | 1 - .../upload/section-upload.component.js | 207 --- .../upload/section-upload.component.js.map | 1 - .../sections/upload/section-upload.service.js | 119 -- .../upload/section-upload.service.js.map | 1 - src/app/submission/selectors.js | 57 - src/app/submission/selectors.js.map | 1 - .../submission/server-submission.service.js | 52 - .../server-submission.service.js.map | 1 - src/app/submission/submission.effects.js | 5 - src/app/submission/submission.effects.js.map | 1 - src/app/submission/submission.module.js | 88 - src/app/submission/submission.module.js.map | 1 - src/app/submission/submission.reducers.js | 7 - src/app/submission/submission.reducers.js.map | 1 - src/app/submission/submission.service.js | 448 ----- src/app/submission/submission.service.js.map | 1 - .../submit/submission-submit.component.js | 85 - .../submit/submission-submit.component.js.map | 1 - .../utils/parseSectionErrorPaths.js | 30 - .../utils/parseSectionErrorPaths.js.map | 1 - .../submission/utils/parseSectionErrors.js | 23 - .../utils/parseSectionErrors.js.map | 1 - src/app/thumbnail/thumbnail.component.js | 46 - src/app/thumbnail/thumbnail.component.js.map | 1 - src/backend/api.js | 169 -- src/backend/api.js.map | 1 - src/backend/cache.js | 16 - src/backend/cache.js.map | 1 - src/backend/db.js | 8 - src/backend/db.js.map | 1 - src/config.js.map | 1 - src/config/auto-sync-config.interface.js | 1 - src/config/auto-sync-config.interface.js.map | 1 - src/config/browse-by-config.interface.js | 1 - src/config/browse-by-config.interface.js.map | 1 - src/config/cache-config.interface.js | 1 - src/config/cache-config.interface.js.map | 1 - src/config/config.interface.js | 1 - src/config/config.interface.js.map | 1 - src/config/form-config.interfaces.js | 1 - src/config/form-config.interfaces.js.map | 1 - src/config/global-config.interface.js | 1 - src/config/global-config.interface.js.map | 1 - src/config/item-page-config.interface.js | 1 - src/config/item-page-config.interface.js.map | 1 - src/config/lang-config.interface.js | 1 - src/config/lang-config.interface.js.map | 1 - src/config/notifications-config.interfaces.js | 1 - .../notifications-config.interfaces.js.map | 1 - src/config/server-config.interface.js | 1 - src/config/server-config.interface.js.map | 1 - src/config/submission-config.interface.js | 1 - src/config/submission-config.interface.js.map | 1 - src/config/universal-config.interface.js | 1 - src/config/universal-config.interface.js.map | 1 - src/main.browser.js | 41 - src/main.browser.js.map | 1 - src/main.server.js | 4 - src/main.server.js.map | 1 - src/modules/app/browser-app.module.js | 85 - src/modules/app/browser-app.module.js.map | 1 - src/modules/app/server-app.module.js | 75 - src/modules/app/server-app.module.js.map | 1 - .../dspace-browser-transfer-state.module.js | 22 - ...space-browser-transfer-state.module.js.map | 1 - .../dspace-browser-transfer-state.service.js | 21 - ...pace-browser-transfer-state.service.js.map | 1 - .../dspace-server-transfer-state.module.js | 22 - ...dspace-server-transfer-state.module.js.map | 1 - .../dspace-server-transfer-state.service.js | 26 - ...space-server-transfer-state.service.js.map | 1 - .../dspace-transfer-state.service.js | 19 - .../dspace-transfer-state.service.js.map | 1 - src/modules/translate-universal-loader.js | 20 - src/modules/translate-universal-loader.js.map | 1 - src/routes.js | 16 - src/routes.js.map | 1 - src/server.js | 129 -- src/server.js.map | 1 - 1579 files changed, 51143 deletions(-) delete mode 100644 e2e/app.e2e-spec.js delete mode 100644 e2e/app.e2e-spec.js.map delete mode 100644 e2e/app.po.js delete mode 100644 e2e/app.po.js.map delete mode 100644 e2e/pagenotfound/pagenotfound.e2e-spec.js delete mode 100644 e2e/pagenotfound/pagenotfound.e2e-spec.js.map delete mode 100644 e2e/pagenotfound/pagenotfound.po.js delete mode 100644 e2e/pagenotfound/pagenotfound.po.js.map delete mode 100644 e2e/search-page/search-page.e2e-spec.js delete mode 100644 e2e/search-page/search-page.e2e-spec.js.map delete mode 100644 e2e/search-page/search-page.po.js delete mode 100644 e2e/search-page/search-page.po.js.map delete mode 100644 src/app/+admin/admin-registries/admin-registries-routing.module.js delete mode 100644 src/app/+admin/admin-registries/admin-registries-routing.module.js.map delete mode 100644 src/app/+admin/admin-registries/admin-registries.module.js delete mode 100644 src/app/+admin/admin-registries/admin-registries.module.js.map delete mode 100644 src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js delete mode 100644 src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js.map delete mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js delete mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js.map delete mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js delete mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js.map delete mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js delete mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js.map delete mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js delete mode 100644 src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js.map delete mode 100644 src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js delete mode 100644 src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js.map delete mode 100644 src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js delete mode 100644 src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js.map delete mode 100644 src/app/+admin/admin-routing.module.js delete mode 100644 src/app/+admin/admin-routing.module.js.map delete mode 100644 src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js delete mode 100644 src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js.map delete mode 100644 src/app/+admin/admin-sidebar/admin-sidebar.component.js delete mode 100644 src/app/+admin/admin-sidebar/admin-sidebar.component.js.map delete mode 100644 src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js delete mode 100644 src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js.map delete mode 100644 src/app/+admin/admin.module.js delete mode 100644 src/app/+admin/admin.module.js.map delete mode 100644 src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js delete mode 100644 src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js.map delete mode 100644 src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js delete mode 100644 src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js.map delete mode 100644 src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js delete mode 100644 src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js.map delete mode 100644 src/app/+browse-by/browse-by-guard.js delete mode 100644 src/app/+browse-by/browse-by-guard.js.map delete mode 100644 src/app/+browse-by/browse-by-routing.module.js delete mode 100644 src/app/+browse-by/browse-by-routing.module.js.map delete mode 100644 src/app/+browse-by/browse-by.module.js delete mode 100644 src/app/+browse-by/browse-by.module.js.map delete mode 100644 src/app/+collection-page/collection-form/collection-form.component.js delete mode 100644 src/app/+collection-page/collection-form/collection-form.component.js.map delete mode 100644 src/app/+collection-page/collection-page-routing.module.js delete mode 100644 src/app/+collection-page/collection-page-routing.module.js.map delete mode 100644 src/app/+collection-page/collection-page.component.js delete mode 100644 src/app/+collection-page/collection-page.component.js.map delete mode 100644 src/app/+collection-page/collection-page.module.js delete mode 100644 src/app/+collection-page/collection-page.module.js.map delete mode 100644 src/app/+collection-page/collection-page.resolver.js delete mode 100644 src/app/+collection-page/collection-page.resolver.js.map delete mode 100644 src/app/+collection-page/create-collection-page/create-collection-page.component.js delete mode 100644 src/app/+collection-page/create-collection-page/create-collection-page.component.js.map delete mode 100644 src/app/+collection-page/create-collection-page/create-collection-page.guard.js delete mode 100644 src/app/+collection-page/create-collection-page/create-collection-page.guard.js.map delete mode 100644 src/app/+collection-page/delete-collection-page/delete-collection-page.component.js delete mode 100644 src/app/+collection-page/delete-collection-page/delete-collection-page.component.js.map delete mode 100644 src/app/+collection-page/edit-collection-page/edit-collection-page.component.js delete mode 100644 src/app/+collection-page/edit-collection-page/edit-collection-page.component.js.map delete mode 100644 src/app/+community-page/community-form/community-form.component.js delete mode 100644 src/app/+community-page/community-form/community-form.component.js.map delete mode 100644 src/app/+community-page/community-page-routing.module.js delete mode 100644 src/app/+community-page/community-page-routing.module.js.map delete mode 100644 src/app/+community-page/community-page.component.js delete mode 100644 src/app/+community-page/community-page.component.js.map delete mode 100644 src/app/+community-page/community-page.module.js delete mode 100644 src/app/+community-page/community-page.module.js.map delete mode 100644 src/app/+community-page/community-page.resolver.js delete mode 100644 src/app/+community-page/community-page.resolver.js.map delete mode 100644 src/app/+community-page/create-community-page/create-community-page.component.js delete mode 100644 src/app/+community-page/create-community-page/create-community-page.component.js.map delete mode 100644 src/app/+community-page/create-community-page/create-community-page.guard.js delete mode 100644 src/app/+community-page/create-community-page/create-community-page.guard.js.map delete mode 100644 src/app/+community-page/delete-community-page/delete-community-page.component.js delete mode 100644 src/app/+community-page/delete-community-page/delete-community-page.component.js.map delete mode 100644 src/app/+community-page/edit-community-page/edit-community-page.component.js delete mode 100644 src/app/+community-page/edit-community-page/edit-community-page.component.js.map delete mode 100644 src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js delete mode 100644 src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js.map delete mode 100644 src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js delete mode 100644 src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js.map delete mode 100644 src/app/+home-page/home-news/home-news.component.js delete mode 100644 src/app/+home-page/home-news/home-news.component.js.map delete mode 100644 src/app/+home-page/home-page-routing.module.js delete mode 100644 src/app/+home-page/home-page-routing.module.js.map delete mode 100644 src/app/+home-page/home-page.component.js delete mode 100644 src/app/+home-page/home-page.component.js.map delete mode 100644 src/app/+home-page/home-page.module.js delete mode 100644 src/app/+home-page/home-page.module.js.map delete mode 100644 src/app/+home-page/top-level-community-list/top-level-community-list.component.js delete mode 100644 src/app/+home-page/top-level-community-list/top-level-community-list.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/edit-item-operators.js delete mode 100644 src/app/+item-page/edit-item-page/edit-item-operators.js.map delete mode 100644 src/app/+item-page/edit-item-page/edit-item-page.component.js delete mode 100644 src/app/+item-page/edit-item-page/edit-item-page.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/edit-item-page.module.js delete mode 100644 src/app/+item-page/edit-item-page/edit-item-page.module.js.map delete mode 100644 src/app/+item-page/edit-item-page/edit-item-page.routing.module.js delete mode 100644 src/app/+item-page/edit-item-page/edit-item-page.routing.module.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-delete/item-delete.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-delete/item-delete.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-operation/item-operation.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-operation/item-operation.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js delete mode 100644 src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-private/item-private.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-private/item-private.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-public/item-public.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-public/item-public.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-status/item-status.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-status/item-status.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js delete mode 100644 src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js delete mode 100644 src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js delete mode 100644 src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js.map delete mode 100644 src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js delete mode 100644 src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js.map delete mode 100644 src/app/+item-page/field-components/collections/collections.component.js delete mode 100644 src/app/+item-page/field-components/collections/collections.component.js.map delete mode 100644 src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js delete mode 100644 src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js.map delete mode 100644 src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js delete mode 100644 src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js.map delete mode 100644 src/app/+item-page/field-components/metadata-values/metadata-values.component.js delete mode 100644 src/app/+item-page/field-components/metadata-values/metadata-values.component.js.map delete mode 100644 src/app/+item-page/full/field-components/file-section/full-file-section.component.js delete mode 100644 src/app/+item-page/full/field-components/file-section/full-file-section.component.js.map delete mode 100644 src/app/+item-page/full/full-item-page.component.js delete mode 100644 src/app/+item-page/full/full-item-page.component.js.map delete mode 100644 src/app/+item-page/item-page-routing.module.js delete mode 100644 src/app/+item-page/item-page-routing.module.js.map delete mode 100644 src/app/+item-page/item-page.module.js delete mode 100644 src/app/+item-page/item-page.module.js.map delete mode 100644 src/app/+item-page/item-page.resolver.js delete mode 100644 src/app/+item-page/item-page.resolver.js.map delete mode 100644 src/app/+item-page/simple/field-components/file-section/file-section.component.js delete mode 100644 src/app/+item-page/simple/field-components/file-section/file-section.component.js.map delete mode 100644 src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js delete mode 100644 src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js.map delete mode 100644 src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js delete mode 100644 src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js.map delete mode 100644 src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js delete mode 100644 src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js.map delete mode 100644 src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js delete mode 100644 src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js.map delete mode 100644 src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js delete mode 100644 src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js.map delete mode 100644 src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js delete mode 100644 src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js.map delete mode 100644 src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js delete mode 100644 src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js.map delete mode 100644 src/app/+item-page/simple/item-page.component.js delete mode 100644 src/app/+item-page/simple/item-page.component.js.map delete mode 100644 src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js delete mode 100644 src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js.map delete mode 100644 src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js delete mode 100644 src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js.map delete mode 100644 src/app/+item-page/simple/item-types/journal/journal.component.js delete mode 100644 src/app/+item-page/simple/item-types/journal/journal.component.js.map delete mode 100644 src/app/+item-page/simple/item-types/orgunit/orgunit.component.js delete mode 100644 src/app/+item-page/simple/item-types/orgunit/orgunit.component.js.map delete mode 100644 src/app/+item-page/simple/item-types/person/person.component.js delete mode 100644 src/app/+item-page/simple/item-types/person/person.component.js.map delete mode 100644 src/app/+item-page/simple/item-types/project/project.component.js delete mode 100644 src/app/+item-page/simple/item-types/project/project.component.js.map delete mode 100644 src/app/+item-page/simple/item-types/publication/publication.component.js delete mode 100644 src/app/+item-page/simple/item-types/publication/publication.component.js.map delete mode 100644 src/app/+item-page/simple/item-types/shared/item-relationships-utils.js delete mode 100644 src/app/+item-page/simple/item-types/shared/item-relationships-utils.js.map delete mode 100644 src/app/+item-page/simple/item-types/shared/item.component.js delete mode 100644 src/app/+item-page/simple/item-types/shared/item.component.js.map delete mode 100644 src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js delete mode 100644 src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js.map delete mode 100644 src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js delete mode 100644 src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js.map delete mode 100644 src/app/+item-page/simple/related-items/related-items-component.js delete mode 100644 src/app/+item-page/simple/related-items/related-items-component.js.map delete mode 100644 src/app/+login-page/login-page-routing.module.js delete mode 100644 src/app/+login-page/login-page-routing.module.js.map delete mode 100644 src/app/+login-page/login-page.component.js delete mode 100644 src/app/+login-page/login-page.component.js.map delete mode 100644 src/app/+login-page/login-page.module.js delete mode 100644 src/app/+login-page/login-page.module.js.map delete mode 100644 src/app/+logout-page/logout-page-routing.module.js delete mode 100644 src/app/+logout-page/logout-page-routing.module.js.map delete mode 100644 src/app/+logout-page/logout-page.component.js delete mode 100644 src/app/+logout-page/logout-page.component.js.map delete mode 100644 src/app/+logout-page/logout-page.module.js delete mode 100644 src/app/+logout-page/logout-page.module.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace-configuration-value-type.js delete mode 100644 src/app/+my-dspace-page/my-dspace-configuration-value-type.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace-configuration.service.js delete mode 100644 src/app/+my-dspace-page/my-dspace-configuration.service.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js delete mode 100644 src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace-page-routing.module.js delete mode 100644 src/app/+my-dspace-page/my-dspace-page-routing.module.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace-page.component.js delete mode 100644 src/app/+my-dspace-page/my-dspace-page.component.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace-page.module.js delete mode 100644 src/app/+my-dspace-page/my-dspace-page.module.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace-result.model.js delete mode 100644 src/app/+my-dspace-page/my-dspace-result.model.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js delete mode 100644 src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js.map delete mode 100644 src/app/+my-dspace-page/my-dspace.guard.js delete mode 100644 src/app/+my-dspace-page/my-dspace.guard.js.map delete mode 100644 src/app/+search-page/filtered-search-page.component.js delete mode 100644 src/app/+search-page/filtered-search-page.component.js.map delete mode 100644 src/app/+search-page/filtered-search-page.guard.js delete mode 100644 src/app/+search-page/filtered-search-page.guard.js.map delete mode 100644 src/app/+search-page/normalized-search-result.model.js delete mode 100644 src/app/+search-page/normalized-search-result.model.js.map delete mode 100644 src/app/+search-page/paginated-search-options.model.js delete mode 100644 src/app/+search-page/paginated-search-options.model.js.map delete mode 100644 src/app/+search-page/search-filter.model.js delete mode 100644 src/app/+search-page/search-filter.model.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.actions.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.actions.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.reducer.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.reducer.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.service.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-filter.service.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js delete mode 100644 src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js.map delete mode 100644 src/app/+search-page/search-filters/search-filters.component.js delete mode 100644 src/app/+search-page/search-filters/search-filters.component.js.map delete mode 100644 src/app/+search-page/search-labels/search-labels.component.js delete mode 100644 src/app/+search-page/search-labels/search-labels.component.js.map delete mode 100644 src/app/+search-page/search-options.model.js delete mode 100644 src/app/+search-page/search-options.model.js.map delete mode 100644 src/app/+search-page/search-page-routing.module.js delete mode 100644 src/app/+search-page/search-page-routing.module.js.map delete mode 100644 src/app/+search-page/search-page.component.js delete mode 100644 src/app/+search-page/search-page.component.js.map delete mode 100644 src/app/+search-page/search-page.module.js delete mode 100644 src/app/+search-page/search-page.module.js.map delete mode 100644 src/app/+search-page/search-result.model.js delete mode 100644 src/app/+search-page/search-result.model.js.map delete mode 100644 src/app/+search-page/search-results/search-results.component.js delete mode 100644 src/app/+search-page/search-results/search-results.component.js.map delete mode 100644 src/app/+search-page/search-service/facet-value.model.js delete mode 100644 src/app/+search-page/search-service/facet-value.model.js.map delete mode 100644 src/app/+search-page/search-service/filter-type.model.js delete mode 100644 src/app/+search-page/search-service/filter-type.model.js.map delete mode 100644 src/app/+search-page/search-service/search-configuration.service.js delete mode 100644 src/app/+search-page/search-service/search-configuration.service.js.map delete mode 100644 src/app/+search-page/search-service/search-filter-config.model.js delete mode 100644 src/app/+search-page/search-service/search-filter-config.model.js.map delete mode 100644 src/app/+search-page/search-service/search-query-response.model.js delete mode 100644 src/app/+search-page/search-service/search-query-response.model.js.map delete mode 100644 src/app/+search-page/search-service/search-result-element-decorator.js delete mode 100644 src/app/+search-page/search-service/search-result-element-decorator.js.map delete mode 100644 src/app/+search-page/search-service/search.service.js delete mode 100644 src/app/+search-page/search-service/search.service.js.map delete mode 100644 src/app/+search-page/search-settings/search-settings.component.js delete mode 100644 src/app/+search-page/search-settings/search-settings.component.js.map delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.actions.js delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.actions.js.map delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.component.js delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.component.js.map delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.effects.js delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.effects.js.map delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.reducer.js delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.reducer.js.map delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.service.js delete mode 100644 src/app/+search-page/search-sidebar/search-sidebar.service.js.map delete mode 100644 src/app/+search-page/search-switch-configuration/search-configuration-option.model.js delete mode 100644 src/app/+search-page/search-switch-configuration/search-configuration-option.model.js.map delete mode 100644 src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js delete mode 100644 src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js.map delete mode 100644 src/app/+submit-page/submit-page-routing.module.js delete mode 100644 src/app/+submit-page/submit-page-routing.module.js.map delete mode 100644 src/app/+submit-page/submit-page.module.js delete mode 100644 src/app/+submit-page/submit-page.module.js.map delete mode 100644 src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js delete mode 100644 src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js.map delete mode 100644 src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js delete mode 100644 src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js.map delete mode 100644 src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js delete mode 100644 src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js.map delete mode 100644 src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js delete mode 100644 src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js.map delete mode 100644 src/app/app-routing.module.js delete mode 100644 src/app/app-routing.module.js.map delete mode 100644 src/app/app.component.js delete mode 100644 src/app/app.component.js.map delete mode 100644 src/app/app.effects.js delete mode 100644 src/app/app.effects.js.map delete mode 100644 src/app/app.metareducers.js delete mode 100644 src/app/app.metareducers.js.map delete mode 100644 src/app/app.module.js delete mode 100644 src/app/app.module.js.map delete mode 100644 src/app/app.reducer.js delete mode 100644 src/app/app.reducer.js.map delete mode 100644 src/app/core/auth/auth-object-factory.js delete mode 100644 src/app/core/auth/auth-object-factory.js.map delete mode 100644 src/app/core/auth/auth-request.service.js delete mode 100644 src/app/core/auth/auth-request.service.js.map delete mode 100644 src/app/core/auth/auth-response-parsing.service.js delete mode 100644 src/app/core/auth/auth-response-parsing.service.js.map delete mode 100644 src/app/core/auth/auth-type.js delete mode 100644 src/app/core/auth/auth-type.js.map delete mode 100644 src/app/core/auth/auth.actions.js delete mode 100644 src/app/core/auth/auth.actions.js.map delete mode 100644 src/app/core/auth/auth.effects.js delete mode 100644 src/app/core/auth/auth.effects.js.map delete mode 100644 src/app/core/auth/auth.interceptor.js delete mode 100644 src/app/core/auth/auth.interceptor.js.map delete mode 100644 src/app/core/auth/auth.reducer.js delete mode 100644 src/app/core/auth/auth.reducer.js.map delete mode 100644 src/app/core/auth/auth.service.js delete mode 100644 src/app/core/auth/auth.service.js.map delete mode 100644 src/app/core/auth/authenticated.guard.js delete mode 100644 src/app/core/auth/authenticated.guard.js.map delete mode 100644 src/app/core/auth/models/auth-error.model.js delete mode 100644 src/app/core/auth/models/auth-error.model.js.map delete mode 100644 src/app/core/auth/models/auth-status.model.js delete mode 100644 src/app/core/auth/models/auth-status.model.js.map delete mode 100644 src/app/core/auth/models/auth-token-info.model.js delete mode 100644 src/app/core/auth/models/auth-token-info.model.js.map delete mode 100644 src/app/core/auth/models/normalized-auth-status.model.js delete mode 100644 src/app/core/auth/models/normalized-auth-status.model.js.map delete mode 100644 src/app/core/auth/selectors.js delete mode 100644 src/app/core/auth/selectors.js.map delete mode 100644 src/app/core/auth/server-auth.service.js delete mode 100644 src/app/core/auth/server-auth.service.js.map delete mode 100644 src/app/core/browse/browse-entry-search-options.model.js delete mode 100644 src/app/core/browse/browse-entry-search-options.model.js.map delete mode 100644 src/app/core/browse/browse.service.js delete mode 100644 src/app/core/browse/browse.service.js.map delete mode 100644 src/app/core/cache/builders/build-decorators.js delete mode 100644 src/app/core/cache/builders/build-decorators.js.map delete mode 100644 src/app/core/cache/builders/normalized-object-build.service.js delete mode 100644 src/app/core/cache/builders/normalized-object-build.service.js.map delete mode 100644 src/app/core/cache/builders/remote-data-build.service.js delete mode 100644 src/app/core/cache/builders/remote-data-build.service.js.map delete mode 100644 src/app/core/cache/cache-entry.js delete mode 100644 src/app/core/cache/cache-entry.js.map delete mode 100644 src/app/core/cache/id-to-uuid-serializer.js delete mode 100644 src/app/core/cache/id-to-uuid-serializer.js.map delete mode 100644 src/app/core/cache/models/action-type.model.js delete mode 100644 src/app/core/cache/models/action-type.model.js.map delete mode 100644 src/app/core/cache/models/items/normalized-item-type.model.js delete mode 100644 src/app/core/cache/models/items/normalized-item-type.model.js.map delete mode 100644 src/app/core/cache/models/items/normalized-relationship-type.model.js delete mode 100644 src/app/core/cache/models/items/normalized-relationship-type.model.js.map delete mode 100644 src/app/core/cache/models/items/normalized-relationship.model.js delete mode 100644 src/app/core/cache/models/items/normalized-relationship.model.js.map delete mode 100644 src/app/core/cache/models/normalized-bitstream-format.model.js delete mode 100644 src/app/core/cache/models/normalized-bitstream-format.model.js.map delete mode 100644 src/app/core/cache/models/normalized-bitstream.model.js delete mode 100644 src/app/core/cache/models/normalized-bitstream.model.js.map delete mode 100644 src/app/core/cache/models/normalized-bundle.model.js delete mode 100644 src/app/core/cache/models/normalized-bundle.model.js.map delete mode 100644 src/app/core/cache/models/normalized-collection.model.js delete mode 100644 src/app/core/cache/models/normalized-collection.model.js.map delete mode 100644 src/app/core/cache/models/normalized-community.model.js delete mode 100644 src/app/core/cache/models/normalized-community.model.js.map delete mode 100644 src/app/core/cache/models/normalized-dspace-object.model.js delete mode 100644 src/app/core/cache/models/normalized-dspace-object.model.js.map delete mode 100644 src/app/core/cache/models/normalized-item.model.js delete mode 100644 src/app/core/cache/models/normalized-item.model.js.map delete mode 100644 src/app/core/cache/models/normalized-license.model.js delete mode 100644 src/app/core/cache/models/normalized-license.model.js.map delete mode 100644 src/app/core/cache/models/normalized-object-factory.js delete mode 100644 src/app/core/cache/models/normalized-object-factory.js.map delete mode 100644 src/app/core/cache/models/normalized-object.model.js delete mode 100644 src/app/core/cache/models/normalized-object.model.js.map delete mode 100644 src/app/core/cache/models/normalized-resource-policy.model.js delete mode 100644 src/app/core/cache/models/normalized-resource-policy.model.js.map delete mode 100644 src/app/core/cache/models/search-param.model.js delete mode 100644 src/app/core/cache/models/search-param.model.js.map delete mode 100644 src/app/core/cache/models/self-link.model.js delete mode 100644 src/app/core/cache/models/self-link.model.js.map delete mode 100644 src/app/core/cache/models/sort-options.model.js delete mode 100644 src/app/core/cache/models/sort-options.model.js.map delete mode 100644 src/app/core/cache/models/support-level.model.js delete mode 100644 src/app/core/cache/models/support-level.model.js.map delete mode 100644 src/app/core/cache/object-cache.actions.js delete mode 100644 src/app/core/cache/object-cache.actions.js.map delete mode 100644 src/app/core/cache/object-cache.effects.js delete mode 100644 src/app/core/cache/object-cache.effects.js.map delete mode 100644 src/app/core/cache/object-cache.reducer.js delete mode 100644 src/app/core/cache/object-cache.reducer.js.map delete mode 100644 src/app/core/cache/object-cache.service.js delete mode 100644 src/app/core/cache/object-cache.service.js.map delete mode 100644 src/app/core/cache/response.models.js delete mode 100644 src/app/core/cache/response.models.js.map delete mode 100644 src/app/core/cache/server-sync-buffer.actions.js delete mode 100644 src/app/core/cache/server-sync-buffer.actions.js.map delete mode 100644 src/app/core/cache/server-sync-buffer.effects.js delete mode 100644 src/app/core/cache/server-sync-buffer.effects.js.map delete mode 100644 src/app/core/cache/server-sync-buffer.reducer.js delete mode 100644 src/app/core/cache/server-sync-buffer.reducer.js.map delete mode 100644 src/app/core/config/config-data.js delete mode 100644 src/app/core/config/config-data.js.map delete mode 100644 src/app/core/config/config-response-parsing.service.js delete mode 100644 src/app/core/config/config-response-parsing.service.js.map delete mode 100644 src/app/core/config/config.service.js delete mode 100644 src/app/core/config/config.service.js.map delete mode 100644 src/app/core/config/models/config-access-condition-option.model.js delete mode 100644 src/app/core/config/models/config-access-condition-option.model.js.map delete mode 100644 src/app/core/config/models/config-object-factory.js delete mode 100644 src/app/core/config/models/config-object-factory.js.map delete mode 100644 src/app/core/config/models/config-submission-definitions.model.js delete mode 100644 src/app/core/config/models/config-submission-definitions.model.js.map delete mode 100644 src/app/core/config/models/config-submission-forms.model.js delete mode 100644 src/app/core/config/models/config-submission-forms.model.js.map delete mode 100644 src/app/core/config/models/config-submission-section.model.js delete mode 100644 src/app/core/config/models/config-submission-section.model.js.map delete mode 100644 src/app/core/config/models/config-submission-uploads.model.js delete mode 100644 src/app/core/config/models/config-submission-uploads.model.js.map delete mode 100644 src/app/core/config/models/config-type.js delete mode 100644 src/app/core/config/models/config-type.js.map delete mode 100644 src/app/core/config/models/config.model.js delete mode 100644 src/app/core/config/models/config.model.js.map delete mode 100644 src/app/core/config/models/normalized-config-submission-definitions.model.js delete mode 100644 src/app/core/config/models/normalized-config-submission-definitions.model.js.map delete mode 100644 src/app/core/config/models/normalized-config-submission-forms.model.js delete mode 100644 src/app/core/config/models/normalized-config-submission-forms.model.js.map delete mode 100644 src/app/core/config/models/normalized-config-submission-section.model.js delete mode 100644 src/app/core/config/models/normalized-config-submission-section.model.js.map delete mode 100644 src/app/core/config/models/normalized-config-submission-uploads.model.js delete mode 100644 src/app/core/config/models/normalized-config-submission-uploads.model.js.map delete mode 100644 src/app/core/config/models/normalized-config.model.js delete mode 100644 src/app/core/config/models/normalized-config.model.js.map delete mode 100644 src/app/core/config/submission-definitions-config.service.js delete mode 100644 src/app/core/config/submission-definitions-config.service.js.map delete mode 100644 src/app/core/config/submission-forms-config.service.js delete mode 100644 src/app/core/config/submission-forms-config.service.js.map delete mode 100644 src/app/core/config/submission-sections-config.service.js delete mode 100644 src/app/core/config/submission-sections-config.service.js.map delete mode 100644 src/app/core/config/submission-uploads-config.service.js delete mode 100644 src/app/core/config/submission-uploads-config.service.js.map delete mode 100644 src/app/core/core.effects.js delete mode 100644 src/app/core/core.effects.js.map delete mode 100644 src/app/core/core.module.js delete mode 100644 src/app/core/core.module.js.map delete mode 100644 src/app/core/core.reducers.js delete mode 100644 src/app/core/core.reducers.js.map delete mode 100644 src/app/core/core.selectors.js delete mode 100644 src/app/core/core.selectors.js.map delete mode 100644 src/app/core/data/base-response-parsing.service.js delete mode 100644 src/app/core/data/base-response-parsing.service.js.map delete mode 100644 src/app/core/data/browse-entries-response-parsing.service.js delete mode 100644 src/app/core/data/browse-entries-response-parsing.service.js.map delete mode 100644 src/app/core/data/browse-items-response-parsing-service.js delete mode 100644 src/app/core/data/browse-items-response-parsing-service.js.map delete mode 100644 src/app/core/data/browse-response-parsing.service.js delete mode 100644 src/app/core/data/browse-response-parsing.service.js.map delete mode 100644 src/app/core/data/change-analyzer.js delete mode 100644 src/app/core/data/change-analyzer.js.map delete mode 100644 src/app/core/data/collection-data.service.js delete mode 100644 src/app/core/data/collection-data.service.js.map delete mode 100644 src/app/core/data/comcol-data.service.js delete mode 100644 src/app/core/data/comcol-data.service.js.map delete mode 100644 src/app/core/data/community-data.service.js delete mode 100644 src/app/core/data/community-data.service.js.map delete mode 100644 src/app/core/data/data.service.js delete mode 100644 src/app/core/data/data.service.js.map delete mode 100644 src/app/core/data/debug-response-parsing.service.js delete mode 100644 src/app/core/data/debug-response-parsing.service.js.map delete mode 100644 src/app/core/data/default-change-analyzer.service.js delete mode 100644 src/app/core/data/default-change-analyzer.service.js.map delete mode 100644 src/app/core/data/dso-change-analyzer.service.js delete mode 100644 src/app/core/data/dso-change-analyzer.service.js.map delete mode 100644 src/app/core/data/dso-response-parsing.service.js delete mode 100644 src/app/core/data/dso-response-parsing.service.js.map delete mode 100644 src/app/core/data/dspace-object-data.service.js delete mode 100644 src/app/core/data/dspace-object-data.service.js.map delete mode 100644 src/app/core/data/endpoint-map-response-parsing.service.js delete mode 100644 src/app/core/data/endpoint-map-response-parsing.service.js.map delete mode 100644 src/app/core/data/facet-config-response-parsing.service.js delete mode 100644 src/app/core/data/facet-config-response-parsing.service.js.map delete mode 100644 src/app/core/data/facet-value-map-response-parsing.service.js delete mode 100644 src/app/core/data/facet-value-map-response-parsing.service.js.map delete mode 100644 src/app/core/data/facet-value-response-parsing.service.js delete mode 100644 src/app/core/data/facet-value-response-parsing.service.js.map delete mode 100644 src/app/core/data/filtered-discovery-page-response-parsing.service.js delete mode 100644 src/app/core/data/filtered-discovery-page-response-parsing.service.js.map delete mode 100644 src/app/core/data/item-data.service.js delete mode 100644 src/app/core/data/item-data.service.js.map delete mode 100644 src/app/core/data/metadata-schema-data.service.js delete mode 100644 src/app/core/data/metadata-schema-data.service.js.map delete mode 100644 src/app/core/data/metadatafield-parsing.service.js delete mode 100644 src/app/core/data/metadatafield-parsing.service.js.map delete mode 100644 src/app/core/data/metadataschema-parsing.service.js delete mode 100644 src/app/core/data/metadataschema-parsing.service.js.map delete mode 100644 src/app/core/data/mydspace-response-parsing.service.js delete mode 100644 src/app/core/data/mydspace-response-parsing.service.js.map delete mode 100644 src/app/core/data/object-updates/object-updates.actions.js delete mode 100644 src/app/core/data/object-updates/object-updates.actions.js.map delete mode 100644 src/app/core/data/object-updates/object-updates.effects.js delete mode 100644 src/app/core/data/object-updates/object-updates.effects.js.map delete mode 100644 src/app/core/data/object-updates/object-updates.reducer.js delete mode 100644 src/app/core/data/object-updates/object-updates.reducer.js.map delete mode 100644 src/app/core/data/object-updates/object-updates.service.js delete mode 100644 src/app/core/data/object-updates/object-updates.service.js.map delete mode 100644 src/app/core/data/paginated-list.js delete mode 100644 src/app/core/data/paginated-list.js.map delete mode 100644 src/app/core/data/parsing.service.js delete mode 100644 src/app/core/data/parsing.service.js.map delete mode 100644 src/app/core/data/registry-bitstreamformats-response-parsing.service.js delete mode 100644 src/app/core/data/registry-bitstreamformats-response-parsing.service.js.map delete mode 100644 src/app/core/data/registry-metadatafields-response-parsing.service.js delete mode 100644 src/app/core/data/registry-metadatafields-response-parsing.service.js.map delete mode 100644 src/app/core/data/registry-metadataschemas-response-parsing.service.js delete mode 100644 src/app/core/data/registry-metadataschemas-response-parsing.service.js.map delete mode 100644 src/app/core/data/remote-data-error.js delete mode 100644 src/app/core/data/remote-data-error.js.map delete mode 100644 src/app/core/data/remote-data.js delete mode 100644 src/app/core/data/remote-data.js.map delete mode 100644 src/app/core/data/request.actions.js delete mode 100644 src/app/core/data/request.actions.js.map delete mode 100644 src/app/core/data/request.effects.js delete mode 100644 src/app/core/data/request.effects.js.map delete mode 100644 src/app/core/data/request.models.js delete mode 100644 src/app/core/data/request.models.js.map delete mode 100644 src/app/core/data/request.reducer.js delete mode 100644 src/app/core/data/request.reducer.js.map delete mode 100644 src/app/core/data/request.service.js delete mode 100644 src/app/core/data/request.service.js.map delete mode 100644 src/app/core/data/rest-request-method.js delete mode 100644 src/app/core/data/rest-request-method.js.map delete mode 100644 src/app/core/data/search-response-parsing.service.js delete mode 100644 src/app/core/data/search-response-parsing.service.js.map delete mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js delete mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js.map delete mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js delete mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js.map delete mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.service.js delete mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.service.js.map delete mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js delete mode 100644 src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js.map delete mode 100644 src/app/core/eperson/eperson-response-parsing.service.js delete mode 100644 src/app/core/eperson/eperson-response-parsing.service.js.map delete mode 100644 src/app/core/eperson/eperson.service.js delete mode 100644 src/app/core/eperson/eperson.service.js.map delete mode 100644 src/app/core/eperson/group-eperson.service.js delete mode 100644 src/app/core/eperson/group-eperson.service.js.map delete mode 100644 src/app/core/eperson/models/eperson.model.js delete mode 100644 src/app/core/eperson/models/eperson.model.js.map delete mode 100644 src/app/core/eperson/models/group.model.js delete mode 100644 src/app/core/eperson/models/group.model.js.map delete mode 100644 src/app/core/eperson/models/normalized-eperson.model.js delete mode 100644 src/app/core/eperson/models/normalized-eperson.model.js.map delete mode 100644 src/app/core/eperson/models/normalized-group.model.js delete mode 100644 src/app/core/eperson/models/normalized-group.model.js.map delete mode 100644 src/app/core/index/index.actions.js delete mode 100644 src/app/core/index/index.actions.js.map delete mode 100644 src/app/core/index/index.effects.js delete mode 100644 src/app/core/index/index.effects.js.map delete mode 100644 src/app/core/index/index.reducer.js delete mode 100644 src/app/core/index/index.reducer.js.map delete mode 100644 src/app/core/index/index.selectors.js delete mode 100644 src/app/core/index/index.selectors.js.map delete mode 100644 src/app/core/integration/authority.service.js delete mode 100644 src/app/core/integration/authority.service.js.map delete mode 100644 src/app/core/integration/integration-data.js delete mode 100644 src/app/core/integration/integration-data.js.map delete mode 100644 src/app/core/integration/integration-object-factory.js delete mode 100644 src/app/core/integration/integration-object-factory.js.map delete mode 100644 src/app/core/integration/integration-response-parsing.service.js delete mode 100644 src/app/core/integration/integration-response-parsing.service.js.map delete mode 100644 src/app/core/integration/integration.service.js delete mode 100644 src/app/core/integration/integration.service.js.map delete mode 100644 src/app/core/integration/intergration-type.js delete mode 100644 src/app/core/integration/intergration-type.js.map delete mode 100644 src/app/core/integration/models/authority-options.model.js delete mode 100644 src/app/core/integration/models/authority-options.model.js.map delete mode 100644 src/app/core/integration/models/authority.value.js delete mode 100644 src/app/core/integration/models/authority.value.js.map delete mode 100644 src/app/core/integration/models/confidence-type.js delete mode 100644 src/app/core/integration/models/confidence-type.js.map delete mode 100644 src/app/core/integration/models/integration-options.model.js delete mode 100644 src/app/core/integration/models/integration-options.model.js.map delete mode 100644 src/app/core/integration/models/integration.model.js delete mode 100644 src/app/core/integration/models/integration.model.js.map delete mode 100644 src/app/core/integration/models/normalized-authority-value.model.js delete mode 100644 src/app/core/integration/models/normalized-authority-value.model.js.map delete mode 100644 src/app/core/json-patch/builder/json-patch-operation-path-combiner.js delete mode 100644 src/app/core/json-patch/builder/json-patch-operation-path-combiner.js.map delete mode 100644 src/app/core/json-patch/builder/json-patch-operations-builder.js delete mode 100644 src/app/core/json-patch/builder/json-patch-operations-builder.js.map delete mode 100644 src/app/core/json-patch/json-patch-operations.actions.js delete mode 100644 src/app/core/json-patch/json-patch-operations.actions.js.map delete mode 100644 src/app/core/json-patch/json-patch-operations.effects.js delete mode 100644 src/app/core/json-patch/json-patch-operations.effects.js.map delete mode 100644 src/app/core/json-patch/json-patch-operations.reducer.js delete mode 100644 src/app/core/json-patch/json-patch-operations.reducer.js.map delete mode 100644 src/app/core/json-patch/json-patch-operations.service.js delete mode 100644 src/app/core/json-patch/json-patch-operations.service.js.map delete mode 100644 src/app/core/json-patch/json-patch.model.js delete mode 100644 src/app/core/json-patch/json-patch.model.js.map delete mode 100644 src/app/core/json-patch/selectors.js delete mode 100644 src/app/core/json-patch/selectors.js.map delete mode 100644 src/app/core/metadata/metadata.service.js delete mode 100644 src/app/core/metadata/metadata.service.js.map delete mode 100644 src/app/core/metadata/metadatafield.model.js delete mode 100644 src/app/core/metadata/metadatafield.model.js.map delete mode 100644 src/app/core/metadata/metadataschema.model.js delete mode 100644 src/app/core/metadata/metadataschema.model.js.map delete mode 100644 src/app/core/metadata/normalized-metadata-schema.model.js delete mode 100644 src/app/core/metadata/normalized-metadata-schema.model.js.map delete mode 100644 src/app/core/registry/mock-bitstream-format.model.js delete mode 100644 src/app/core/registry/mock-bitstream-format.model.js.map delete mode 100644 src/app/core/registry/registry-bitstreamformats-response.model.js delete mode 100644 src/app/core/registry/registry-bitstreamformats-response.model.js.map delete mode 100644 src/app/core/registry/registry-metadatafields-response.model.js delete mode 100644 src/app/core/registry/registry-metadatafields-response.model.js.map delete mode 100644 src/app/core/registry/registry-metadataschemas-response.model.js delete mode 100644 src/app/core/registry/registry-metadataschemas-response.model.js.map delete mode 100644 src/app/core/registry/registry.service.js delete mode 100644 src/app/core/registry/registry.service.js.map delete mode 100644 src/app/core/roles/role-types.js delete mode 100644 src/app/core/roles/role-types.js.map delete mode 100644 src/app/core/roles/role.service.js delete mode 100644 src/app/core/roles/role.service.js.map delete mode 100644 src/app/core/serializer.js delete mode 100644 src/app/core/serializer.js.map delete mode 100644 src/app/core/shared/bitstream-format.model.js delete mode 100644 src/app/core/shared/bitstream-format.model.js.map delete mode 100644 src/app/core/shared/bitstream.model.js delete mode 100644 src/app/core/shared/bitstream.model.js.map delete mode 100644 src/app/core/shared/browse-definition.model.js delete mode 100644 src/app/core/shared/browse-definition.model.js.map delete mode 100644 src/app/core/shared/browse-entry.model.js delete mode 100644 src/app/core/shared/browse-entry.model.js.map delete mode 100644 src/app/core/shared/bundle.model.js delete mode 100644 src/app/core/shared/bundle.model.js.map delete mode 100644 src/app/core/shared/collection.model.js delete mode 100644 src/app/core/shared/collection.model.js.map delete mode 100644 src/app/core/shared/community.model.js delete mode 100644 src/app/core/shared/community.model.js.map delete mode 100644 src/app/core/shared/dspace-object-type.model.js delete mode 100644 src/app/core/shared/dspace-object-type.model.js.map delete mode 100644 src/app/core/shared/dspace-object.model.js delete mode 100644 src/app/core/shared/dspace-object.model.js.map delete mode 100644 src/app/core/shared/file.service.js delete mode 100644 src/app/core/shared/file.service.js.map delete mode 100644 src/app/core/shared/generic-constructor.js delete mode 100644 src/app/core/shared/generic-constructor.js.map delete mode 100644 src/app/core/shared/hal-endpoint.service.js delete mode 100644 src/app/core/shared/hal-endpoint.service.js.map delete mode 100644 src/app/core/shared/item-relationships/item-type.model.js delete mode 100644 src/app/core/shared/item-relationships/item-type.model.js.map delete mode 100644 src/app/core/shared/item-relationships/relationship-type.model.js delete mode 100644 src/app/core/shared/item-relationships/relationship-type.model.js.map delete mode 100644 src/app/core/shared/item-relationships/relationship.model.js delete mode 100644 src/app/core/shared/item-relationships/relationship.model.js.map delete mode 100644 src/app/core/shared/item.model.js delete mode 100644 src/app/core/shared/item.model.js.map delete mode 100644 src/app/core/shared/license.model.js delete mode 100644 src/app/core/shared/license.model.js.map delete mode 100644 src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js delete mode 100644 src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js.map delete mode 100644 src/app/core/shared/metadata-representation/metadata-representation.model.js delete mode 100644 src/app/core/shared/metadata-representation/metadata-representation.model.js.map delete mode 100644 src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js delete mode 100644 src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js.map delete mode 100644 src/app/core/shared/metadata.models.js delete mode 100644 src/app/core/shared/metadata.models.js.map delete mode 100644 src/app/core/shared/metadata.utils.js delete mode 100644 src/app/core/shared/metadata.utils.js.map delete mode 100644 src/app/core/shared/operators.js delete mode 100644 src/app/core/shared/operators.js.map delete mode 100644 src/app/core/shared/page-info.model.js delete mode 100644 src/app/core/shared/page-info.model.js.map delete mode 100644 src/app/core/shared/resource-policy.model.js delete mode 100644 src/app/core/shared/resource-policy.model.js.map delete mode 100644 src/app/core/shared/resource-type.js delete mode 100644 src/app/core/shared/resource-type.js.map delete mode 100644 src/app/core/shared/sort-option.model.js delete mode 100644 src/app/core/shared/sort-option.model.js.map delete mode 100644 src/app/core/shared/submit-data-response-definition.model.js delete mode 100644 src/app/core/shared/submit-data-response-definition.model.js.map delete mode 100644 src/app/core/shared/uuid.service.js delete mode 100644 src/app/core/shared/uuid.service.js.map delete mode 100644 src/app/core/shared/view-mode.model.js delete mode 100644 src/app/core/shared/view-mode.model.js.map delete mode 100644 src/app/core/submission/models/normalized-submission-object.model.js delete mode 100644 src/app/core/submission/models/normalized-submission-object.model.js.map delete mode 100644 src/app/core/submission/models/normalized-workflowitem.model.js delete mode 100644 src/app/core/submission/models/normalized-workflowitem.model.js.map delete mode 100644 src/app/core/submission/models/normalized-workspaceitem.model.js delete mode 100644 src/app/core/submission/models/normalized-workspaceitem.model.js.map delete mode 100644 src/app/core/submission/models/submission-object.model.js delete mode 100644 src/app/core/submission/models/submission-object.model.js.map delete mode 100644 src/app/core/submission/models/submission-upload-file-access-condition.model.js delete mode 100644 src/app/core/submission/models/submission-upload-file-access-condition.model.js.map delete mode 100644 src/app/core/submission/models/workflowitem.model.js delete mode 100644 src/app/core/submission/models/workflowitem.model.js.map delete mode 100644 src/app/core/submission/models/workspaceitem-section-form.model.js delete mode 100644 src/app/core/submission/models/workspaceitem-section-form.model.js.map delete mode 100644 src/app/core/submission/models/workspaceitem-section-license.model.js delete mode 100644 src/app/core/submission/models/workspaceitem-section-license.model.js.map delete mode 100644 src/app/core/submission/models/workspaceitem-section-upload-file.model.js delete mode 100644 src/app/core/submission/models/workspaceitem-section-upload-file.model.js.map delete mode 100644 src/app/core/submission/models/workspaceitem-section-upload.model.js delete mode 100644 src/app/core/submission/models/workspaceitem-section-upload.model.js.map delete mode 100644 src/app/core/submission/models/workspaceitem-sections.model.js delete mode 100644 src/app/core/submission/models/workspaceitem-sections.model.js.map delete mode 100644 src/app/core/submission/models/workspaceitem.model.js delete mode 100644 src/app/core/submission/models/workspaceitem.model.js.map delete mode 100644 src/app/core/submission/submission-json-patch-operations.service.js delete mode 100644 src/app/core/submission/submission-json-patch-operations.service.js.map delete mode 100644 src/app/core/submission/submission-resource-type.js delete mode 100644 src/app/core/submission/submission-resource-type.js.map delete mode 100644 src/app/core/submission/submission-response-parsing.service.js delete mode 100644 src/app/core/submission/submission-response-parsing.service.js.map delete mode 100644 src/app/core/submission/submission-rest.service.js delete mode 100644 src/app/core/submission/submission-rest.service.js.map delete mode 100644 src/app/core/submission/submission-scope-type.js delete mode 100644 src/app/core/submission/submission-scope-type.js.map delete mode 100644 src/app/core/submission/workflowitem-data.service.js delete mode 100644 src/app/core/submission/workflowitem-data.service.js.map delete mode 100644 src/app/core/submission/workspaceitem-data.service.js delete mode 100644 src/app/core/submission/workspaceitem-data.service.js.map delete mode 100644 src/app/core/tasks/claimed-task-data.service.js delete mode 100644 src/app/core/tasks/claimed-task-data.service.js.map delete mode 100644 src/app/core/tasks/models/claimed-task-object.model.js delete mode 100644 src/app/core/tasks/models/claimed-task-object.model.js.map delete mode 100644 src/app/core/tasks/models/normalized-claimed-task-object.model.js delete mode 100644 src/app/core/tasks/models/normalized-claimed-task-object.model.js.map delete mode 100644 src/app/core/tasks/models/normalized-pool-task-object.model.js delete mode 100644 src/app/core/tasks/models/normalized-pool-task-object.model.js.map delete mode 100644 src/app/core/tasks/models/normalized-task-object.model.js delete mode 100644 src/app/core/tasks/models/normalized-task-object.model.js.map delete mode 100644 src/app/core/tasks/models/pool-task-object.model.js delete mode 100644 src/app/core/tasks/models/pool-task-object.model.js.map delete mode 100644 src/app/core/tasks/models/process-task-response.js delete mode 100644 src/app/core/tasks/models/process-task-response.js.map delete mode 100644 src/app/core/tasks/models/task-object.model.js delete mode 100644 src/app/core/tasks/models/task-object.model.js.map delete mode 100644 src/app/core/tasks/pool-task-data.service.js delete mode 100644 src/app/core/tasks/pool-task-data.service.js.map delete mode 100644 src/app/core/tasks/task-response-parsing.service.js delete mode 100644 src/app/core/tasks/task-response-parsing.service.js.map delete mode 100644 src/app/core/tasks/tasks.service.js delete mode 100644 src/app/core/tasks/tasks.service.js.map delete mode 100644 src/app/core/url-baser/url-baser.js delete mode 100644 src/app/core/url-baser/url-baser.js.map delete mode 100644 src/app/core/url-combiner/rest-url-combiner.js delete mode 100644 src/app/core/url-combiner/rest-url-combiner.js.map delete mode 100644 src/app/core/url-combiner/ui-url-combiner.js delete mode 100644 src/app/core/url-combiner/ui-url-combiner.js.map delete mode 100644 src/app/core/url-combiner/url-combiner.js delete mode 100644 src/app/core/url-combiner/url-combiner.js.map delete mode 100644 src/app/footer/footer.component.js delete mode 100644 src/app/footer/footer.component.js.map delete mode 100644 src/app/header-nav-wrapper/header-navbar-wrapper.component.js delete mode 100644 src/app/header-nav-wrapper/header-navbar-wrapper.component.js.map delete mode 100644 src/app/header/header.component.js delete mode 100644 src/app/header/header.component.js.map delete mode 100644 src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js delete mode 100644 src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js.map delete mode 100644 src/app/navbar/navbar-section/navbar-section.component.js delete mode 100644 src/app/navbar/navbar-section/navbar-section.component.js.map delete mode 100644 src/app/navbar/navbar.component.js delete mode 100644 src/app/navbar/navbar.component.js.map delete mode 100644 src/app/navbar/navbar.effects.js delete mode 100644 src/app/navbar/navbar.effects.js.map delete mode 100644 src/app/navbar/navbar.module.js delete mode 100644 src/app/navbar/navbar.module.js.map delete mode 100644 src/app/pagenotfound/pagenotfound.component.js delete mode 100644 src/app/pagenotfound/pagenotfound.component.js.map delete mode 100644 src/app/shared/alert/alert.component.js delete mode 100644 src/app/shared/alert/alert.component.js.map delete mode 100644 src/app/shared/alert/aletr-type.js delete mode 100644 src/app/shared/alert/aletr-type.js.map delete mode 100644 src/app/shared/animations/bgColor.js delete mode 100644 src/app/shared/animations/bgColor.js.map delete mode 100644 src/app/shared/animations/fade.js delete mode 100644 src/app/shared/animations/fade.js.map delete mode 100644 src/app/shared/animations/focus.js delete mode 100644 src/app/shared/animations/focus.js.map delete mode 100644 src/app/shared/animations/fromBottom.js delete mode 100644 src/app/shared/animations/fromBottom.js.map delete mode 100644 src/app/shared/animations/fromLeft.js delete mode 100644 src/app/shared/animations/fromLeft.js.map delete mode 100644 src/app/shared/animations/fromRight.js delete mode 100644 src/app/shared/animations/fromRight.js.map delete mode 100644 src/app/shared/animations/fromTop.js delete mode 100644 src/app/shared/animations/fromTop.js.map delete mode 100644 src/app/shared/animations/overlay.js delete mode 100644 src/app/shared/animations/overlay.js.map delete mode 100644 src/app/shared/animations/push.js delete mode 100644 src/app/shared/animations/push.js.map delete mode 100644 src/app/shared/animations/rotate.js delete mode 100644 src/app/shared/animations/rotate.js.map delete mode 100644 src/app/shared/animations/scale.js delete mode 100644 src/app/shared/animations/scale.js.map delete mode 100644 src/app/shared/animations/shrink.js delete mode 100644 src/app/shared/animations/shrink.js.map delete mode 100644 src/app/shared/animations/slide.js delete mode 100644 src/app/shared/animations/slide.js.map delete mode 100644 src/app/shared/auth-nav-menu/auth-nav-menu.component.js delete mode 100644 src/app/shared/auth-nav-menu/auth-nav-menu.component.js.map delete mode 100644 src/app/shared/auth-nav-menu/user-menu/user-menu.component.js delete mode 100644 src/app/shared/auth-nav-menu/user-menu/user-menu.component.js.map delete mode 100644 src/app/shared/authority-confidence/authority-confidence-state.directive.js delete mode 100644 src/app/shared/authority-confidence/authority-confidence-state.directive.js.map delete mode 100644 src/app/shared/browse-by/browse-by.component.js delete mode 100644 src/app/shared/browse-by/browse-by.component.js.map delete mode 100644 src/app/shared/chips/chips.component.js delete mode 100644 src/app/shared/chips/chips.component.js.map delete mode 100644 src/app/shared/chips/models/chips-item.model.js delete mode 100644 src/app/shared/chips/models/chips-item.model.js.map delete mode 100644 src/app/shared/chips/models/chips.model.js delete mode 100644 src/app/shared/chips/models/chips.model.js.map delete mode 100644 src/app/shared/comcol-forms/comcol-form/comcol-form.component.js delete mode 100644 src/app/shared/comcol-forms/comcol-form/comcol-form.component.js.map delete mode 100644 src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js delete mode 100644 src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js.map delete mode 100644 src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js delete mode 100644 src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js.map delete mode 100644 src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js delete mode 100644 src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js.map delete mode 100644 src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js delete mode 100644 src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js.map delete mode 100644 src/app/shared/comcol-page-content/comcol-page-content.component.js delete mode 100644 src/app/shared/comcol-page-content/comcol-page-content.component.js.map delete mode 100644 src/app/shared/comcol-page-header/comcol-page-header.component.js delete mode 100644 src/app/shared/comcol-page-header/comcol-page-header.component.js.map delete mode 100644 src/app/shared/comcol-page-logo/comcol-page-logo.component.js delete mode 100644 src/app/shared/comcol-page-logo/comcol-page-logo.component.js.map delete mode 100644 src/app/shared/date.util.js delete mode 100644 src/app/shared/date.util.js.map delete mode 100644 src/app/shared/dso-selector/dso-selector/dso-selector.component.js delete mode 100644 src/app/shared/dso-selector/dso-selector/dso-selector.component.js.map delete mode 100644 src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js delete mode 100644 src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js.map delete mode 100644 src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js delete mode 100644 src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js.map delete mode 100644 src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js delete mode 100644 src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js.map delete mode 100644 src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js delete mode 100644 src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js.map delete mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js delete mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js.map delete mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js delete mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js.map delete mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js delete mode 100644 src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js.map delete mode 100644 src/app/shared/empty.util.js delete mode 100644 src/app/shared/empty.util.js.map delete mode 100644 src/app/shared/error/error.component.js delete mode 100644 src/app/shared/error/error.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js.map delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js delete mode 100644 src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js.map delete mode 100644 src/app/shared/form/builder/form-builder.service.js delete mode 100644 src/app/shared/form/builder/form-builder.service.js.map delete mode 100644 src/app/shared/form/builder/models/form-field-language-value.model.js delete mode 100644 src/app/shared/form/builder/models/form-field-language-value.model.js.map delete mode 100644 src/app/shared/form/builder/models/form-field-metadata-value.model.js delete mode 100644 src/app/shared/form/builder/models/form-field-metadata-value.model.js.map delete mode 100644 src/app/shared/form/builder/models/form-field-previous-value-object.js delete mode 100644 src/app/shared/form/builder/models/form-field-previous-value-object.js.map delete mode 100644 src/app/shared/form/builder/models/form-field.model.js delete mode 100644 src/app/shared/form/builder/models/form-field.model.js.map delete mode 100644 src/app/shared/form/builder/parsers/concat-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/concat-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/date-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/date-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/dropdown-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/dropdown-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/list-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/list-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/lookup-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/lookup-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/lookup-name-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/lookup-name-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/name-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/name-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/onebox-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/onebox-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/parser-factory.js delete mode 100644 src/app/shared/form/builder/parsers/parser-factory.js.map delete mode 100644 src/app/shared/form/builder/parsers/parser-options.js delete mode 100644 src/app/shared/form/builder/parsers/parser-options.js.map delete mode 100644 src/app/shared/form/builder/parsers/parser-type.js delete mode 100644 src/app/shared/form/builder/parsers/parser-type.js.map delete mode 100644 src/app/shared/form/builder/parsers/parser.utils.js delete mode 100644 src/app/shared/form/builder/parsers/parser.utils.js.map delete mode 100644 src/app/shared/form/builder/parsers/relation-group-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/relation-group-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/row-parser.js delete mode 100644 src/app/shared/form/builder/parsers/row-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/series-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/series-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/tag-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/tag-field-parser.js.map delete mode 100644 src/app/shared/form/builder/parsers/textarea-field-parser.js delete mode 100644 src/app/shared/form/builder/parsers/textarea-field-parser.js.map delete mode 100644 src/app/shared/form/form.actions.js delete mode 100644 src/app/shared/form/form.actions.js.map delete mode 100644 src/app/shared/form/form.component.js delete mode 100644 src/app/shared/form/form.component.js.map delete mode 100644 src/app/shared/form/form.effects.js delete mode 100644 src/app/shared/form/form.effects.js.map delete mode 100644 src/app/shared/form/form.reducer.js delete mode 100644 src/app/shared/form/form.reducer.js.map delete mode 100644 src/app/shared/form/form.service.js delete mode 100644 src/app/shared/form/form.service.js.map delete mode 100644 src/app/shared/form/selectors.js delete mode 100644 src/app/shared/form/selectors.js.map delete mode 100644 src/app/shared/history/history.actions.js delete mode 100644 src/app/shared/history/history.actions.js.map delete mode 100644 src/app/shared/history/history.reducer.js delete mode 100644 src/app/shared/history/history.reducer.js.map delete mode 100644 src/app/shared/history/selectors.js delete mode 100644 src/app/shared/history/selectors.js.map delete mode 100644 src/app/shared/host-window.actions.js delete mode 100644 src/app/shared/host-window.actions.js.map delete mode 100644 src/app/shared/host-window.reducer.js delete mode 100644 src/app/shared/host-window.reducer.js.map delete mode 100644 src/app/shared/host-window.service.js delete mode 100644 src/app/shared/host-window.service.js.map delete mode 100644 src/app/shared/input-suggestions/input-suggestions.component.js delete mode 100644 src/app/shared/input-suggestions/input-suggestions.component.js.map delete mode 100644 src/app/shared/input-suggestions/input-suggestions.model.js delete mode 100644 src/app/shared/input-suggestions/input-suggestions.model.js.map delete mode 100644 src/app/shared/items/item-type-decorator.js delete mode 100644 src/app/shared/items/item-type-decorator.js.map delete mode 100644 src/app/shared/items/switcher/item-type-switcher.component.js delete mode 100644 src/app/shared/items/switcher/item-type-switcher.component.js.map delete mode 100644 src/app/shared/lang-switch/lang-switch.component.js delete mode 100644 src/app/shared/lang-switch/lang-switch.component.js.map delete mode 100644 src/app/shared/loading/loading.component.js delete mode 100644 src/app/shared/loading/loading.component.js.map delete mode 100644 src/app/shared/log-in/log-in.component.js delete mode 100644 src/app/shared/log-in/log-in.component.js.map delete mode 100644 src/app/shared/log-out/log-out.component.js delete mode 100644 src/app/shared/log-out/log-out.component.js.map delete mode 100644 src/app/shared/menu/initial-menus-state.js delete mode 100644 src/app/shared/menu/initial-menus-state.js.map delete mode 100644 src/app/shared/menu/menu-item.decorator.js delete mode 100644 src/app/shared/menu/menu-item.decorator.js.map delete mode 100644 src/app/shared/menu/menu-item/link-menu-item.component.js delete mode 100644 src/app/shared/menu/menu-item/link-menu-item.component.js.map delete mode 100644 src/app/shared/menu/menu-item/models/altmetric.model.js delete mode 100644 src/app/shared/menu/menu-item/models/altmetric.model.js.map delete mode 100644 src/app/shared/menu/menu-item/models/link.model.js delete mode 100644 src/app/shared/menu/menu-item/models/link.model.js.map delete mode 100644 src/app/shared/menu/menu-item/models/menu-item.model.js delete mode 100644 src/app/shared/menu/menu-item/models/menu-item.model.js.map delete mode 100644 src/app/shared/menu/menu-item/models/onclick.model.js delete mode 100644 src/app/shared/menu/menu-item/models/onclick.model.js.map delete mode 100644 src/app/shared/menu/menu-item/models/search.model.js delete mode 100644 src/app/shared/menu/menu-item/models/search.model.js.map delete mode 100644 src/app/shared/menu/menu-item/models/text.model.js delete mode 100644 src/app/shared/menu/menu-item/models/text.model.js.map delete mode 100644 src/app/shared/menu/menu-item/onclick-menu-item.component.js delete mode 100644 src/app/shared/menu/menu-item/onclick-menu-item.component.js.map delete mode 100644 src/app/shared/menu/menu-item/text-menu-item.component.js delete mode 100644 src/app/shared/menu/menu-item/text-menu-item.component.js.map delete mode 100644 src/app/shared/menu/menu-section.decorator.js delete mode 100644 src/app/shared/menu/menu-section.decorator.js.map delete mode 100644 src/app/shared/menu/menu-section/menu-section.component.js delete mode 100644 src/app/shared/menu/menu-section/menu-section.component.js.map delete mode 100644 src/app/shared/menu/menu.actions.js delete mode 100644 src/app/shared/menu/menu.actions.js.map delete mode 100644 src/app/shared/menu/menu.component.js delete mode 100644 src/app/shared/menu/menu.component.js.map delete mode 100644 src/app/shared/menu/menu.module.js delete mode 100644 src/app/shared/menu/menu.module.js.map delete mode 100644 src/app/shared/menu/menu.reducer.js delete mode 100644 src/app/shared/menu/menu.reducer.js.map delete mode 100644 src/app/shared/menu/menu.service.js delete mode 100644 src/app/shared/menu/menu.service.js.map delete mode 100644 src/app/shared/mocks/mock-action.js delete mode 100644 src/app/shared/mocks/mock-action.js.map delete mode 100644 src/app/shared/mocks/mock-active-router.js delete mode 100644 src/app/shared/mocks/mock-active-router.js.map delete mode 100644 src/app/shared/mocks/mock-admin-guard.service.js delete mode 100644 src/app/shared/mocks/mock-admin-guard.service.js.map delete mode 100644 src/app/shared/mocks/mock-angulartics.service.js delete mode 100644 src/app/shared/mocks/mock-angulartics.service.js.map delete mode 100644 src/app/shared/mocks/mock-auth.service.js delete mode 100644 src/app/shared/mocks/mock-auth.service.js.map delete mode 100644 src/app/shared/mocks/mock-form-builder-service.js delete mode 100644 src/app/shared/mocks/mock-form-builder-service.js.map delete mode 100644 src/app/shared/mocks/mock-form-models.js delete mode 100644 src/app/shared/mocks/mock-form-models.js.map delete mode 100644 src/app/shared/mocks/mock-form-operations-service.js delete mode 100644 src/app/shared/mocks/mock-form-operations-service.js.map delete mode 100644 src/app/shared/mocks/mock-form-service.js delete mode 100644 src/app/shared/mocks/mock-form-service.js.map delete mode 100644 src/app/shared/mocks/mock-host-window-service.js delete mode 100644 src/app/shared/mocks/mock-host-window-service.js.map delete mode 100644 src/app/shared/mocks/mock-item.js delete mode 100644 src/app/shared/mocks/mock-item.js.map delete mode 100644 src/app/shared/mocks/mock-metadata-service.js delete mode 100644 src/app/shared/mocks/mock-metadata-service.js.map delete mode 100644 src/app/shared/mocks/mock-object-cache.service.js delete mode 100644 src/app/shared/mocks/mock-object-cache.service.js.map delete mode 100644 src/app/shared/mocks/mock-remote-data-build.service.js delete mode 100644 src/app/shared/mocks/mock-remote-data-build.service.js.map delete mode 100644 src/app/shared/mocks/mock-request.service.js delete mode 100644 src/app/shared/mocks/mock-request.service.js.map delete mode 100644 src/app/shared/mocks/mock-role-service.js delete mode 100644 src/app/shared/mocks/mock-role-service.js.map delete mode 100644 src/app/shared/mocks/mock-router.js delete mode 100644 src/app/shared/mocks/mock-router.js.map delete mode 100644 src/app/shared/mocks/mock-scroll-to-service.js delete mode 100644 src/app/shared/mocks/mock-scroll-to-service.js.map delete mode 100644 src/app/shared/mocks/mock-section-upload.service.js delete mode 100644 src/app/shared/mocks/mock-section-upload.service.js.map delete mode 100644 src/app/shared/mocks/mock-store.js delete mode 100644 src/app/shared/mocks/mock-store.js.map delete mode 100644 src/app/shared/mocks/mock-submission.js delete mode 100644 src/app/shared/mocks/mock-submission.js.map delete mode 100644 src/app/shared/mocks/mock-translate-loader.js delete mode 100644 src/app/shared/mocks/mock-translate-loader.js.map delete mode 100644 src/app/shared/mocks/mock-translate.service.js delete mode 100644 src/app/shared/mocks/mock-translate.service.js.map delete mode 100644 src/app/shared/mocks/mock-uuid.service.js delete mode 100644 src/app/shared/mocks/mock-uuid.service.js.map delete mode 100644 src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js delete mode 100644 src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js.map delete mode 100644 src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js delete mode 100644 src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js.map delete mode 100644 src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js delete mode 100644 src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js.map delete mode 100644 src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js delete mode 100644 src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js.map delete mode 100644 src/app/shared/mydspace-actions/item/item-actions.component.js delete mode 100644 src/app/shared/mydspace-actions/item/item-actions.component.js.map delete mode 100644 src/app/shared/mydspace-actions/mydspace-actions-service.factory.js delete mode 100644 src/app/shared/mydspace-actions/mydspace-actions-service.factory.js.map delete mode 100644 src/app/shared/mydspace-actions/mydspace-actions.js delete mode 100644 src/app/shared/mydspace-actions/mydspace-actions.js.map delete mode 100644 src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js delete mode 100644 src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js.map delete mode 100644 src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js delete mode 100644 src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js.map delete mode 100644 src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js delete mode 100644 src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js.map delete mode 100644 src/app/shared/ngrx/dspace-router-state-serializer.js delete mode 100644 src/app/shared/ngrx/dspace-router-state-serializer.js.map delete mode 100644 src/app/shared/ngrx/type.js delete mode 100644 src/app/shared/ngrx/type.js.map delete mode 100644 src/app/shared/notifications/models/notification-animations-type.js delete mode 100644 src/app/shared/notifications/models/notification-animations-type.js.map delete mode 100644 src/app/shared/notifications/models/notification-options.model.js delete mode 100644 src/app/shared/notifications/models/notification-options.model.js.map delete mode 100644 src/app/shared/notifications/models/notification-type.js delete mode 100644 src/app/shared/notifications/models/notification-type.js.map delete mode 100644 src/app/shared/notifications/models/notification.model.js delete mode 100644 src/app/shared/notifications/models/notification.model.js.map delete mode 100644 src/app/shared/notifications/notification/notification.component.js delete mode 100644 src/app/shared/notifications/notification/notification.component.js.map delete mode 100644 src/app/shared/notifications/notifications-board/notifications-board.component.js delete mode 100644 src/app/shared/notifications/notifications-board/notifications-board.component.js.map delete mode 100644 src/app/shared/notifications/notifications.actions.js delete mode 100644 src/app/shared/notifications/notifications.actions.js.map delete mode 100644 src/app/shared/notifications/notifications.effects.js delete mode 100644 src/app/shared/notifications/notifications.effects.js.map delete mode 100644 src/app/shared/notifications/notifications.reducers.js delete mode 100644 src/app/shared/notifications/notifications.reducers.js.map delete mode 100644 src/app/shared/notifications/notifications.service.js delete mode 100644 src/app/shared/notifications/notifications.service.js.map delete mode 100644 src/app/shared/notifications/selectors.js delete mode 100644 src/app/shared/notifications/selectors.js.map delete mode 100644 src/app/shared/number-picker/number-picker.component.js delete mode 100644 src/app/shared/number-picker/number-picker.component.js.map delete mode 100644 src/app/shared/object-collection/object-collection.component.js delete mode 100644 src/app/shared/object-collection/object-collection.component.js.map delete mode 100644 src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js delete mode 100644 src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js.map delete mode 100644 src/app/shared/object-collection/shared/collection-search-result.model.js delete mode 100644 src/app/shared/object-collection/shared/collection-search-result.model.js.map delete mode 100644 src/app/shared/object-collection/shared/community-search-result.model.js delete mode 100644 src/app/shared/object-collection/shared/community-search-result.model.js.map delete mode 100644 src/app/shared/object-collection/shared/dso-element-decorator.js delete mode 100644 src/app/shared/object-collection/shared/dso-element-decorator.js.map delete mode 100644 src/app/shared/object-collection/shared/item-my-dspace-result.model.js delete mode 100644 src/app/shared/object-collection/shared/item-my-dspace-result.model.js.map delete mode 100644 src/app/shared/object-collection/shared/item-search-result.model.js delete mode 100644 src/app/shared/object-collection/shared/item-search-result.model.js.map delete mode 100644 src/app/shared/object-collection/shared/listable-object.model.js delete mode 100644 src/app/shared/object-collection/shared/listable-object.model.js.map delete mode 100644 src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js delete mode 100644 src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js.map delete mode 100644 src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js delete mode 100644 src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js.map delete mode 100644 src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js delete mode 100644 src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js.map delete mode 100644 src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js delete mode 100644 src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js.map delete mode 100644 src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js delete mode 100644 src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js.map delete mode 100644 src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js delete mode 100644 src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js.map delete mode 100644 src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js delete mode 100644 src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js.map delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js.map delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js.map delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js.map delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js.map delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js.map delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js.map delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js.map delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js delete mode 100644 src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js.map delete mode 100644 src/app/shared/object-detail/object-detail.component.js delete mode 100644 src/app/shared/object-detail/object-detail.component.js.map delete mode 100644 src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js delete mode 100644 src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js.map delete mode 100644 src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js delete mode 100644 src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js.map delete mode 100644 src/app/shared/object-grid/community-grid-element/community-grid-element.component.js delete mode 100644 src/app/shared/object-grid/community-grid-element/community-grid-element.component.js.map delete mode 100644 src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js delete mode 100644 src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js.map delete mode 100644 src/app/shared/object-grid/item-grid-element/item-grid-element.component.js delete mode 100644 src/app/shared/object-grid/item-grid-element/item-grid-element.component.js.map delete mode 100644 src/app/shared/object-grid/object-grid.component.js delete mode 100644 src/app/shared/object-grid/object-grid.component.js.map delete mode 100644 src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js delete mode 100644 src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js.map delete mode 100644 src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js delete mode 100644 src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js.map delete mode 100644 src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js delete mode 100644 src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js.map delete mode 100644 src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js delete mode 100644 src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js.map delete mode 100644 src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js delete mode 100644 src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js.map delete mode 100644 src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js delete mode 100644 src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js.map delete mode 100644 src/app/shared/object-list/collection-list-element/collection-list-element.component.js delete mode 100644 src/app/shared/object-list/collection-list-element/collection-list-element.component.js.map delete mode 100644 src/app/shared/object-list/community-list-element/community-list-element.component.js delete mode 100644 src/app/shared/object-list/community-list-element/community-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js.map delete mode 100644 src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js delete mode 100644 src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js delete mode 100644 src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js.map delete mode 100644 src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js delete mode 100644 src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js.map delete mode 100644 src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js delete mode 100644 src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js.map delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js.map delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js delete mode 100644 src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/object-list.component.js delete mode 100644 src/app/shared/object-list/object-list.component.js.map delete mode 100644 src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js delete mode 100644 src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js delete mode 100644 src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js delete mode 100644 src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js delete mode 100644 src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js.map delete mode 100644 src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js delete mode 100644 src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js.map delete mode 100644 src/app/shared/object.util.js delete mode 100644 src/app/shared/object.util.js.map delete mode 100644 src/app/shared/pagination/pagination-component-options.model.js delete mode 100644 src/app/shared/pagination/pagination-component-options.model.js.map delete mode 100644 src/app/shared/pagination/pagination.component.js delete mode 100644 src/app/shared/pagination/pagination.component.js.map delete mode 100644 src/app/shared/roles/role.directive.js delete mode 100644 src/app/shared/roles/role.directive.js.map delete mode 100644 src/app/shared/sass-helper/sass-helper.actions.js delete mode 100644 src/app/shared/sass-helper/sass-helper.actions.js.map delete mode 100644 src/app/shared/sass-helper/sass-helper.reducer.js delete mode 100644 src/app/shared/sass-helper/sass-helper.reducer.js.map delete mode 100644 src/app/shared/sass-helper/sass-helper.service.js delete mode 100644 src/app/shared/sass-helper/sass-helper.service.js.map delete mode 100644 src/app/shared/search-form/search-form.component.js delete mode 100644 src/app/shared/search-form/search-form.component.js.map delete mode 100644 src/app/shared/services/api.service.js delete mode 100644 src/app/shared/services/api.service.js.map delete mode 100644 src/app/shared/services/client-cookie.service.js delete mode 100644 src/app/shared/services/client-cookie.service.js.map delete mode 100644 src/app/shared/services/cookie.service.js delete mode 100644 src/app/shared/services/cookie.service.js.map delete mode 100644 src/app/shared/services/route.service.js delete mode 100644 src/app/shared/services/route.service.js.map delete mode 100644 src/app/shared/services/server-cookie.service.js delete mode 100644 src/app/shared/services/server-cookie.service.js.map delete mode 100644 src/app/shared/services/server-response.service.js delete mode 100644 src/app/shared/services/server-response.service.js.map delete mode 100644 src/app/shared/services/window.service.js delete mode 100644 src/app/shared/services/window.service.js.map delete mode 100644 src/app/shared/shared.module.js delete mode 100644 src/app/shared/shared.module.js.map delete mode 100644 src/app/shared/starts-with/date/starts-with-date.component.js delete mode 100644 src/app/shared/starts-with/date/starts-with-date.component.js.map delete mode 100644 src/app/shared/starts-with/starts-with-abstract.component.js delete mode 100644 src/app/shared/starts-with/starts-with-abstract.component.js.map delete mode 100644 src/app/shared/starts-with/starts-with-decorator.js delete mode 100644 src/app/shared/starts-with/starts-with-decorator.js.map delete mode 100644 src/app/shared/starts-with/text/starts-with-text.component.js delete mode 100644 src/app/shared/starts-with/text/starts-with-text.component.js.map delete mode 100644 src/app/shared/testing/active-router-stub.js delete mode 100644 src/app/shared/testing/active-router-stub.js.map delete mode 100644 src/app/shared/testing/auth-request-service-stub.js delete mode 100644 src/app/shared/testing/auth-request-service-stub.js.map delete mode 100644 src/app/shared/testing/auth-service-stub.js delete mode 100644 src/app/shared/testing/auth-service-stub.js.map delete mode 100644 src/app/shared/testing/authority-service-stub.js delete mode 100644 src/app/shared/testing/authority-service-stub.js.map delete mode 100644 src/app/shared/testing/css-variable-service-stub.js delete mode 100644 src/app/shared/testing/css-variable-service-stub.js.map delete mode 100644 src/app/shared/testing/eperson-mock.js delete mode 100644 src/app/shared/testing/eperson-mock.js.map delete mode 100644 src/app/shared/testing/hal-endpoint-service-stub.js delete mode 100644 src/app/shared/testing/hal-endpoint-service-stub.js.map delete mode 100644 src/app/shared/testing/host-window-service-stub.js delete mode 100644 src/app/shared/testing/host-window-service-stub.js.map delete mode 100644 src/app/shared/testing/menu-service-stub.js delete mode 100644 src/app/shared/testing/menu-service-stub.js.map delete mode 100644 src/app/shared/testing/mock-action.js delete mode 100644 src/app/shared/testing/mock-action.js.map delete mode 100644 src/app/shared/testing/mock-store.js delete mode 100644 src/app/shared/testing/mock-store.js.map delete mode 100644 src/app/shared/testing/mock-submission-config.js delete mode 100644 src/app/shared/testing/mock-submission-config.js.map delete mode 100644 src/app/shared/testing/mock-translate-loader.js delete mode 100644 src/app/shared/testing/mock-translate-loader.js.map delete mode 100644 src/app/shared/testing/ng-component-outlet-directive-stub.js delete mode 100644 src/app/shared/testing/ng-component-outlet-directive-stub.js.map delete mode 100644 src/app/shared/testing/notifications-service-stub.js delete mode 100644 src/app/shared/testing/notifications-service-stub.js.map delete mode 100644 src/app/shared/testing/query-params-directive-stub.js delete mode 100644 src/app/shared/testing/query-params-directive-stub.js.map delete mode 100644 src/app/shared/testing/route-service-stub.js delete mode 100644 src/app/shared/testing/route-service-stub.js.map delete mode 100644 src/app/shared/testing/router-link-directive-stub.js delete mode 100644 src/app/shared/testing/router-link-directive-stub.js.map delete mode 100644 src/app/shared/testing/router-stub.js delete mode 100644 src/app/shared/testing/router-stub.js.map delete mode 100644 src/app/shared/testing/search-configuration-service-stub.js delete mode 100644 src/app/shared/testing/search-configuration-service-stub.js.map delete mode 100644 src/app/shared/testing/search-service-stub.js delete mode 100644 src/app/shared/testing/search-service-stub.js.map delete mode 100644 src/app/shared/testing/sections-service-stub.js delete mode 100644 src/app/shared/testing/sections-service-stub.js.map delete mode 100644 src/app/shared/testing/submission-json-patch-operations-service-stub.js delete mode 100644 src/app/shared/testing/submission-json-patch-operations-service-stub.js.map delete mode 100644 src/app/shared/testing/submission-rest-service-stub.js delete mode 100644 src/app/shared/testing/submission-rest-service-stub.js.map delete mode 100644 src/app/shared/testing/submission-service-stub.js delete mode 100644 src/app/shared/testing/submission-service-stub.js.map delete mode 100644 src/app/shared/testing/test-module.js delete mode 100644 src/app/shared/testing/test-module.js.map delete mode 100644 src/app/shared/testing/utils.js delete mode 100644 src/app/shared/testing/utils.js.map delete mode 100644 src/app/shared/truncatable/truncatable-part/truncatable-part.component.js delete mode 100644 src/app/shared/truncatable/truncatable-part/truncatable-part.component.js.map delete mode 100644 src/app/shared/truncatable/truncatable.actions.js delete mode 100644 src/app/shared/truncatable/truncatable.actions.js.map delete mode 100644 src/app/shared/truncatable/truncatable.component.js delete mode 100644 src/app/shared/truncatable/truncatable.component.js.map delete mode 100644 src/app/shared/truncatable/truncatable.reducer.js delete mode 100644 src/app/shared/truncatable/truncatable.reducer.js.map delete mode 100644 src/app/shared/truncatable/truncatable.service.js delete mode 100644 src/app/shared/truncatable/truncatable.service.js.map delete mode 100644 src/app/shared/uploader/uploader-options.model.js delete mode 100644 src/app/shared/uploader/uploader-options.model.js.map delete mode 100644 src/app/shared/uploader/uploader.component.js delete mode 100644 src/app/shared/uploader/uploader.component.js.map delete mode 100644 src/app/shared/uploader/uploader.service.js delete mode 100644 src/app/shared/uploader/uploader.service.js.map delete mode 100644 src/app/shared/utils/auto-focus.directive.js delete mode 100644 src/app/shared/utils/auto-focus.directive.js.map delete mode 100644 src/app/shared/utils/capitalize.pipe.js delete mode 100644 src/app/shared/utils/capitalize.pipe.js.map delete mode 100644 src/app/shared/utils/click-outside.directive.js delete mode 100644 src/app/shared/utils/click-outside.directive.js.map delete mode 100644 src/app/shared/utils/console.pipe.js delete mode 100644 src/app/shared/utils/console.pipe.js.map delete mode 100644 src/app/shared/utils/debounce.directive.js delete mode 100644 src/app/shared/utils/debounce.directive.js.map delete mode 100644 src/app/shared/utils/drag-click.directive.js delete mode 100644 src/app/shared/utils/drag-click.directive.js.map delete mode 100644 src/app/shared/utils/emphasize.pipe.js delete mode 100644 src/app/shared/utils/emphasize.pipe.js.map delete mode 100644 src/app/shared/utils/encode-decode.util.js delete mode 100644 src/app/shared/utils/encode-decode.util.js.map delete mode 100644 src/app/shared/utils/enum-keys-pipe.js delete mode 100644 src/app/shared/utils/enum-keys-pipe.js.map delete mode 100644 src/app/shared/utils/file-size-pipe.js delete mode 100644 src/app/shared/utils/file-size-pipe.js.map delete mode 100644 src/app/shared/utils/in-list-validator.directive.js delete mode 100644 src/app/shared/utils/in-list-validator.directive.js.map delete mode 100644 src/app/shared/utils/object-keys-pipe.js delete mode 100644 src/app/shared/utils/object-keys-pipe.js.map delete mode 100644 src/app/shared/utils/object-ngfor.pipe.js delete mode 100644 src/app/shared/utils/object-ngfor.pipe.js.map delete mode 100644 src/app/shared/utils/object-values-pipe.js delete mode 100644 src/app/shared/utils/object-values-pipe.js.map delete mode 100644 src/app/shared/utils/safe-url-pipe.js delete mode 100644 src/app/shared/utils/safe-url-pipe.js.map delete mode 100644 src/app/shared/utils/truncate.pipe.js delete mode 100644 src/app/shared/utils/truncate.pipe.js.map delete mode 100644 src/app/shared/utils/validator.functions.js delete mode 100644 src/app/shared/utils/validator.functions.js.map delete mode 100644 src/app/shared/utils/var.directive.js delete mode 100644 src/app/shared/utils/var.directive.js.map delete mode 100644 src/app/shared/view-mode-switch/view-mode-switch.component.js delete mode 100644 src/app/shared/view-mode-switch/view-mode-switch.component.js.map delete mode 100644 src/app/shared/view-mode.js delete mode 100644 src/app/shared/view-mode.js.map delete mode 100644 src/app/store.actions.js delete mode 100644 src/app/store.actions.js.map delete mode 100644 src/app/store.effects.js delete mode 100644 src/app/store.effects.js.map delete mode 100644 src/app/submission/edit/submission-edit.component.js delete mode 100644 src/app/submission/edit/submission-edit.component.js.map delete mode 100644 src/app/submission/form/collection/submission-form-collection.component.js delete mode 100644 src/app/submission/form/collection/submission-form-collection.component.js.map delete mode 100644 src/app/submission/form/footer/submission-form-footer.component.js delete mode 100644 src/app/submission/form/footer/submission-form-footer.component.js.map delete mode 100644 src/app/submission/form/section-add/submission-form-section-add.component.js delete mode 100644 src/app/submission/form/section-add/submission-form-section-add.component.js.map delete mode 100644 src/app/submission/form/submission-form.component.js delete mode 100644 src/app/submission/form/submission-form.component.js.map delete mode 100644 src/app/submission/form/submission-upload-files/submission-upload-files.component.js delete mode 100644 src/app/submission/form/submission-upload-files/submission-upload-files.component.js.map delete mode 100644 src/app/submission/objects/submission-objects.actions.js delete mode 100644 src/app/submission/objects/submission-objects.actions.js.map delete mode 100644 src/app/submission/objects/submission-objects.effects.js delete mode 100644 src/app/submission/objects/submission-objects.effects.js.map delete mode 100644 src/app/submission/objects/submission-objects.reducer.js delete mode 100644 src/app/submission/objects/submission-objects.reducer.js.map delete mode 100644 src/app/submission/sections/container/section-container.component.js delete mode 100644 src/app/submission/sections/container/section-container.component.js.map delete mode 100644 src/app/submission/sections/form/section-form-operations.service.js delete mode 100644 src/app/submission/sections/form/section-form-operations.service.js.map delete mode 100644 src/app/submission/sections/form/section-form.component.js delete mode 100644 src/app/submission/sections/form/section-form.component.js.map delete mode 100644 src/app/submission/sections/license/section-license.component.js delete mode 100644 src/app/submission/sections/license/section-license.component.js.map delete mode 100644 src/app/submission/sections/license/section-license.model.js delete mode 100644 src/app/submission/sections/license/section-license.model.js.map delete mode 100644 src/app/submission/sections/models/section-data.model.js delete mode 100644 src/app/submission/sections/models/section-data.model.js.map delete mode 100644 src/app/submission/sections/models/section.model.js delete mode 100644 src/app/submission/sections/models/section.model.js.map delete mode 100644 src/app/submission/sections/sections-decorator.js delete mode 100644 src/app/submission/sections/sections-decorator.js.map delete mode 100644 src/app/submission/sections/sections-type.js delete mode 100644 src/app/submission/sections/sections-type.js.map delete mode 100644 src/app/submission/sections/sections.directive.js delete mode 100644 src/app/submission/sections/sections.directive.js.map delete mode 100644 src/app/submission/sections/sections.service.js delete mode 100644 src/app/submission/sections/sections.service.js.map delete mode 100644 src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js delete mode 100644 src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js.map delete mode 100644 src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js delete mode 100644 src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js.map delete mode 100644 src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js delete mode 100644 src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js.map delete mode 100644 src/app/submission/sections/upload/file/section-upload-file.component.js delete mode 100644 src/app/submission/sections/upload/file/section-upload-file.component.js.map delete mode 100644 src/app/submission/sections/upload/file/view/section-upload-file-view.component.js delete mode 100644 src/app/submission/sections/upload/file/view/section-upload-file-view.component.js.map delete mode 100644 src/app/submission/sections/upload/section-upload.component.js delete mode 100644 src/app/submission/sections/upload/section-upload.component.js.map delete mode 100644 src/app/submission/sections/upload/section-upload.service.js delete mode 100644 src/app/submission/sections/upload/section-upload.service.js.map delete mode 100644 src/app/submission/selectors.js delete mode 100644 src/app/submission/selectors.js.map delete mode 100644 src/app/submission/server-submission.service.js delete mode 100644 src/app/submission/server-submission.service.js.map delete mode 100644 src/app/submission/submission.effects.js delete mode 100644 src/app/submission/submission.effects.js.map delete mode 100644 src/app/submission/submission.module.js delete mode 100644 src/app/submission/submission.module.js.map delete mode 100644 src/app/submission/submission.reducers.js delete mode 100644 src/app/submission/submission.reducers.js.map delete mode 100644 src/app/submission/submission.service.js delete mode 100644 src/app/submission/submission.service.js.map delete mode 100644 src/app/submission/submit/submission-submit.component.js delete mode 100644 src/app/submission/submit/submission-submit.component.js.map delete mode 100644 src/app/submission/utils/parseSectionErrorPaths.js delete mode 100644 src/app/submission/utils/parseSectionErrorPaths.js.map delete mode 100644 src/app/submission/utils/parseSectionErrors.js delete mode 100644 src/app/submission/utils/parseSectionErrors.js.map delete mode 100644 src/app/thumbnail/thumbnail.component.js delete mode 100644 src/app/thumbnail/thumbnail.component.js.map delete mode 100644 src/backend/api.js delete mode 100644 src/backend/api.js.map delete mode 100644 src/backend/cache.js delete mode 100644 src/backend/cache.js.map delete mode 100644 src/backend/db.js delete mode 100644 src/backend/db.js.map delete mode 100644 src/config.js.map delete mode 100644 src/config/auto-sync-config.interface.js delete mode 100644 src/config/auto-sync-config.interface.js.map delete mode 100644 src/config/browse-by-config.interface.js delete mode 100644 src/config/browse-by-config.interface.js.map delete mode 100644 src/config/cache-config.interface.js delete mode 100644 src/config/cache-config.interface.js.map delete mode 100644 src/config/config.interface.js delete mode 100644 src/config/config.interface.js.map delete mode 100644 src/config/form-config.interfaces.js delete mode 100644 src/config/form-config.interfaces.js.map delete mode 100644 src/config/global-config.interface.js delete mode 100644 src/config/global-config.interface.js.map delete mode 100644 src/config/item-page-config.interface.js delete mode 100644 src/config/item-page-config.interface.js.map delete mode 100644 src/config/lang-config.interface.js delete mode 100644 src/config/lang-config.interface.js.map delete mode 100644 src/config/notifications-config.interfaces.js delete mode 100644 src/config/notifications-config.interfaces.js.map delete mode 100644 src/config/server-config.interface.js delete mode 100644 src/config/server-config.interface.js.map delete mode 100644 src/config/submission-config.interface.js delete mode 100644 src/config/submission-config.interface.js.map delete mode 100644 src/config/universal-config.interface.js delete mode 100644 src/config/universal-config.interface.js.map delete mode 100644 src/main.browser.js delete mode 100644 src/main.browser.js.map delete mode 100644 src/main.server.js delete mode 100644 src/main.server.js.map delete mode 100644 src/modules/app/browser-app.module.js delete mode 100644 src/modules/app/browser-app.module.js.map delete mode 100644 src/modules/app/server-app.module.js delete mode 100644 src/modules/app/server-app.module.js.map delete mode 100644 src/modules/transfer-state/dspace-browser-transfer-state.module.js delete mode 100644 src/modules/transfer-state/dspace-browser-transfer-state.module.js.map delete mode 100644 src/modules/transfer-state/dspace-browser-transfer-state.service.js delete mode 100644 src/modules/transfer-state/dspace-browser-transfer-state.service.js.map delete mode 100644 src/modules/transfer-state/dspace-server-transfer-state.module.js delete mode 100644 src/modules/transfer-state/dspace-server-transfer-state.module.js.map delete mode 100644 src/modules/transfer-state/dspace-server-transfer-state.service.js delete mode 100644 src/modules/transfer-state/dspace-server-transfer-state.service.js.map delete mode 100644 src/modules/transfer-state/dspace-transfer-state.service.js delete mode 100644 src/modules/transfer-state/dspace-transfer-state.service.js.map delete mode 100644 src/modules/translate-universal-loader.js delete mode 100644 src/modules/translate-universal-loader.js.map delete mode 100644 src/routes.js delete mode 100644 src/routes.js.map delete mode 100644 src/server.js delete mode 100644 src/server.js.map diff --git a/e2e/app.e2e-spec.js b/e2e/app.e2e-spec.js deleted file mode 100644 index 0e2a51d09c..0000000000 --- a/e2e/app.e2e-spec.js +++ /dev/null @@ -1,16 +0,0 @@ -import { ProtractorPage } from './app.po'; -describe('protractor App', function () { - var page; - beforeEach(function () { - page = new ProtractorPage(); - }); - it('should display translated title "DSpace Angular :: Home"', function () { - page.navigateTo(); - expect(page.getPageTitleText()).toEqual('DSpace Angular :: Home'); - }); - it('should contain a news section', function () { - page.navigateTo(); - expect(page.getHomePageNewsText()).toBeDefined(); - }); -}); -//# sourceMappingURL=app.e2e-spec.js.map \ No newline at end of file diff --git a/e2e/app.e2e-spec.js.map b/e2e/app.e2e-spec.js.map deleted file mode 100644 index e6eb55bcfc..0000000000 --- a/e2e/app.e2e-spec.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"app.e2e-spec.js","sourceRoot":"","sources":["app.e2e-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,QAAQ,CAAC,gBAAgB,EAAE;IACzB,IAAI,IAAoB,CAAC;IAEzB,UAAU,CAAC;QACT,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE;QAC7D,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,CAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE;QAClC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,CAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/e2e/app.po.js b/e2e/app.po.js deleted file mode 100644 index 40f8494e0b..0000000000 --- a/e2e/app.po.js +++ /dev/null @@ -1,17 +0,0 @@ -import { browser, element, by } from 'protractor'; -var ProtractorPage = /** @class */ (function () { - function ProtractorPage() { - } - ProtractorPage.prototype.navigateTo = function () { - return browser.get('/'); - }; - ProtractorPage.prototype.getPageTitleText = function () { - return browser.getTitle(); - }; - ProtractorPage.prototype.getHomePageNewsText = function () { - return element(by.xpath('//ds-home-news')).getText(); - }; - return ProtractorPage; -}()); -export { ProtractorPage }; -//# sourceMappingURL=app.po.js.map \ No newline at end of file diff --git a/e2e/app.po.js.map b/e2e/app.po.js.map deleted file mode 100644 index e7438ddf69..0000000000 --- a/e2e/app.po.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"app.po.js","sourceRoot":"","sources":["app.po.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAElD;IAAA;IAYA,CAAC;IAXC,mCAAU,GAAV;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,yCAAgB,GAAhB;QACE,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,4CAAmB,GAAnB;QACE,OAAO,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACvD,CAAC;IACH,qBAAC;AAAD,CAAC,AAZD,IAYC"} \ No newline at end of file diff --git a/e2e/pagenotfound/pagenotfound.e2e-spec.js b/e2e/pagenotfound/pagenotfound.e2e-spec.js deleted file mode 100644 index 4797f221f1..0000000000 --- a/e2e/pagenotfound/pagenotfound.e2e-spec.js +++ /dev/null @@ -1,16 +0,0 @@ -import { ProtractorPage } from './pagenotfound.po'; -describe('protractor PageNotFound', function () { - var page; - beforeEach(function () { - page = new ProtractorPage(); - }); - it('should contain element ds-pagenotfound when navigating to page that doesnt exist', function () { - page.navigateToNonExistingPage(); - expect(page.elementTagExists('ds-pagenotfound')).toEqual(true); - }); - it('should not contain element ds-pagenotfound when navigating to existing page', function () { - page.navigateToExistingPage(); - expect(page.elementTagExists('ds-pagenotfound')).toEqual(false); - }); -}); -//# sourceMappingURL=pagenotfound.e2e-spec.js.map \ No newline at end of file diff --git a/e2e/pagenotfound/pagenotfound.e2e-spec.js.map b/e2e/pagenotfound/pagenotfound.e2e-spec.js.map deleted file mode 100644 index 867ac9c7a1..0000000000 --- a/e2e/pagenotfound/pagenotfound.e2e-spec.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pagenotfound.e2e-spec.js","sourceRoot":"","sources":["pagenotfound.e2e-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,QAAQ,CAAC,yBAAyB,EAAE;IAClC,IAAI,IAAoB,CAAC;IAEzB,UAAU,CAAC;QACT,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE;QACrF,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACjC,MAAM,CAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE;QAChF,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,MAAM,CAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/e2e/pagenotfound/pagenotfound.po.js b/e2e/pagenotfound/pagenotfound.po.js deleted file mode 100644 index 7fa85382c6..0000000000 --- a/e2e/pagenotfound/pagenotfound.po.js +++ /dev/null @@ -1,19 +0,0 @@ -import { browser, element, by } from 'protractor'; -var ProtractorPage = /** @class */ (function () { - function ProtractorPage() { - this.HOMEPAGE = '/home'; - this.NONEXISTINGPAGE = '/e9019a69-d4f1-4773-b6a3-bd362caa46f2'; - } - ProtractorPage.prototype.navigateToNonExistingPage = function () { - return browser.get(this.NONEXISTINGPAGE); - }; - ProtractorPage.prototype.navigateToExistingPage = function () { - return browser.get(this.HOMEPAGE); - }; - ProtractorPage.prototype.elementTagExists = function (tag) { - return element(by.tagName(tag)).isPresent(); - }; - return ProtractorPage; -}()); -export { ProtractorPage }; -//# sourceMappingURL=pagenotfound.po.js.map \ No newline at end of file diff --git a/e2e/pagenotfound/pagenotfound.po.js.map b/e2e/pagenotfound/pagenotfound.po.js.map deleted file mode 100644 index 3b611061ad..0000000000 --- a/e2e/pagenotfound/pagenotfound.po.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pagenotfound.po.js","sourceRoot":"","sources":["pagenotfound.po.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAElD;IAAA;QACE,aAAQ,GAAG,OAAO,CAAC;QACnB,oBAAe,GAAG,uCAAuC,CAAC;IAa5D,CAAC;IAXC,kDAAyB,GAAzB;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC3C,CAAC;IACD,+CAAsB,GAAtB;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,yCAAgB,GAAhB,UAAiB,GAAW;QAC1B,OAAO,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC9C,CAAC;IAEH,qBAAC;AAAD,CAAC,AAfD,IAeC"} \ No newline at end of file diff --git a/e2e/search-page/search-page.e2e-spec.js b/e2e/search-page/search-page.e2e-spec.js deleted file mode 100644 index a8da0836a2..0000000000 --- a/e2e/search-page/search-page.e2e-spec.js +++ /dev/null @@ -1,47 +0,0 @@ -import { ProtractorPage } from './search-page.po'; -import { browser } from 'protractor'; -describe('protractor SearchPage', function () { - var page; - beforeEach(function () { - page = new ProtractorPage(); - }); - it('should contain query value when navigating to page with query parameter', function () { - var queryString = 'Interesting query string'; - page.navigateToSearchWithQueryParameter(queryString); - page.getCurrentQuery().then(function (query) { - expect(query).toEqual(queryString); - }); - }); - it('should have right scope selected when navigating to page with scope parameter', function () { - var scope = page.getRandomScopeOption(); - scope.then(function (scopeString) { - page.navigateToSearchWithScopeParameter(scopeString); - page.getCurrentScope().then(function (s) { - expect(s).toEqual(scopeString); - }); - }); - }); - it('should redirect to the correct url when scope was set and submit button was triggered', function () { - var scope = page.getRandomScopeOption(); - scope.then(function (scopeString) { - page.setCurrentScope(scopeString); - page.submitSearchForm(); - browser.wait(function () { - return browser.getCurrentUrl().then(function (url) { - return url.indexOf('scope=' + encodeURI(scopeString)) !== -1; - }); - }); - }); - }); - it('should redirect to the correct url when query was set and submit button was triggered', function () { - var queryString = 'Another interesting query string'; - page.setCurrentQuery(queryString); - page.submitSearchForm(); - browser.wait(function () { - return browser.getCurrentUrl().then(function (url) { - return url.indexOf('query=' + encodeURI(queryString)) !== -1; - }); - }); - }); -}); -//# sourceMappingURL=search-page.e2e-spec.js.map \ No newline at end of file diff --git a/e2e/search-page/search-page.e2e-spec.js.map b/e2e/search-page/search-page.e2e-spec.js.map deleted file mode 100644 index e577c19321..0000000000 --- a/e2e/search-page/search-page.e2e-spec.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-page.e2e-spec.js","sourceRoot":"","sources":["search-page.e2e-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC,QAAQ,CAAC,uBAAuB,EAAE;IAChC,IAAI,IAAoB,CAAC;IAEzB,UAAU,CAAC;QACT,IAAI,GAAG,IAAI,cAAc,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE;QAC5E,IAAM,WAAW,GAAG,0BAA0B,CAAC;QAC/C,IAAI,CAAC,kCAAkC,CAAC,WAAW,CAAC,CAAC;QACrD,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,UAAC,KAAa;YACxC,MAAM,CAAS,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE;QAClF,IAAM,KAAK,GAA4B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,UAAC,WAAmB;YAC7B,IAAI,CAAC,kCAAkC,CAAC,WAAW,CAAC,CAAC;YACrD,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,UAAC,CAAS;gBACpC,MAAM,CAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE;QAC1F,IAAM,KAAK,GAA4B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,UAAC,WAAmB;YAC7B,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAClC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC;gBACX,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,UAAC,GAAW;oBAC9C,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE;QAC1F,IAAM,WAAW,GAAG,kCAAkC,CAAC;QACvD,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAClC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,UAAC,GAAW;gBAC9C,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"} \ No newline at end of file diff --git a/e2e/search-page/search-page.po.js b/e2e/search-page/search-page.po.js deleted file mode 100644 index e834451d9d..0000000000 --- a/e2e/search-page/search-page.po.js +++ /dev/null @@ -1,42 +0,0 @@ -import { browser, element, by, protractor } from 'protractor'; -var ProtractorPage = /** @class */ (function () { - function ProtractorPage() { - this.SEARCH = '/search'; - } - ProtractorPage.prototype.navigateToSearch = function () { - return browser.get(this.SEARCH); - }; - ProtractorPage.prototype.navigateToSearchWithQueryParameter = function (query) { - return browser.get(this.SEARCH + '?query=' + query); - }; - ProtractorPage.prototype.navigateToSearchWithScopeParameter = function (scope) { - return browser.get(this.SEARCH + '?scope=' + scope); - }; - ProtractorPage.prototype.getCurrentScope = function () { - var scopeSelect = element(by.css('#search-form select')); - browser.wait(protractor.ExpectedConditions.presenceOf(scopeSelect), 10000); - return scopeSelect.getAttribute('value'); - }; - ProtractorPage.prototype.getCurrentQuery = function () { - return element(by.css('#search-form input')).getAttribute('value'); - }; - ProtractorPage.prototype.setCurrentScope = function (scope) { - element(by.css('option[value="' + scope + '"]')).click(); - }; - ProtractorPage.prototype.setCurrentQuery = function (query) { - element(by.css('input[name="query"]')).sendKeys(query); - }; - ProtractorPage.prototype.submitSearchForm = function () { - element(by.css('button.search-button')).click(); - }; - ProtractorPage.prototype.getRandomScopeOption = function () { - var options = element(by.css('select[name="scope"]')).all(by.tagName('option')); - return options.count().then(function (c) { - var index = Math.floor(Math.random() * (c - 1)); - return options.get(index + 1).getAttribute('value'); - }); - }; - return ProtractorPage; -}()); -export { ProtractorPage }; -//# sourceMappingURL=search-page.po.js.map \ No newline at end of file diff --git a/e2e/search-page/search-page.po.js.map b/e2e/search-page/search-page.po.js.map deleted file mode 100644 index c027e980ae..0000000000 --- a/e2e/search-page/search-page.po.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-page.po.js","sourceRoot":"","sources":["search-page.po.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG9D;IAAA;QACE,WAAM,GAAG,SAAS,CAAC;IA4CrB,CAAC;IA1CC,yCAAgB,GAAhB;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,2DAAkC,GAAlC,UAAmC,KAAa;QAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,2DAAkC,GAAlC,UAAmC,KAAa;QAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,wCAAe,GAAf;QACE,IAAM,WAAW,GAAG,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3E,OAAO,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,wCAAe,GAAf;QACE,OAAO,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACrE,CAAC;IAED,wCAAe,GAAf,UAAgB,KAAa;QAC3B,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,gBAAgB,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAC3D,CAAC;IAED,wCAAe,GAAf,UAAgB,KAAa;QAC3B,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED,yCAAgB,GAAhB;QACE,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAClD,CAAC;IAED,6CAAoB,GAApB;QACE,IAAM,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClF,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,UAAC,CAAS;YACpC,IAAM,KAAK,GAAW,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1D,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAEH,qBAAC;AAAD,CAAC,AA7CD,IA6CC"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/admin-registries-routing.module.js b/src/app/+admin/admin-registries/admin-registries-routing.module.js deleted file mode 100644 index 21d2fa3be4..0000000000 --- a/src/app/+admin/admin-registries/admin-registries-routing.module.js +++ /dev/null @@ -1,24 +0,0 @@ -import * as tslib_1 from "tslib"; -import { MetadataRegistryComponent } from './metadata-registry/metadata-registry.component'; -import { RouterModule } from '@angular/router'; -import { NgModule } from '@angular/core'; -import { MetadataSchemaComponent } from './metadata-schema/metadata-schema.component'; -import { BitstreamFormatsComponent } from './bitstream-formats/bitstream-formats.component'; -var AdminRegistriesRoutingModule = /** @class */ (function () { - function AdminRegistriesRoutingModule() { - } - AdminRegistriesRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { path: 'metadata', component: MetadataRegistryComponent, data: { title: 'admin.registries.metadata.title' } }, - { path: 'metadata/:schemaName', component: MetadataSchemaComponent, data: { title: 'admin.registries.schema.title' } }, - { path: 'bitstream-formats', component: BitstreamFormatsComponent, data: { title: 'admin.registries.bitstream-formats.title' } }, - ]) - ] - }) - ], AdminRegistriesRoutingModule); - return AdminRegistriesRoutingModule; -}()); -export { AdminRegistriesRoutingModule }; -//# sourceMappingURL=admin-registries-routing.module.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/admin-registries-routing.module.js.map b/src/app/+admin/admin-registries/admin-registries-routing.module.js.map deleted file mode 100644 index 23fb9e2097..0000000000 --- a/src/app/+admin/admin-registries/admin-registries-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admin-registries-routing.module.js","sourceRoot":"","sources":["admin-registries-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAW5F;IAAA;IAEA,CAAC;IAFY,4BAA4B;QATxC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAAE;oBAC9G,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,uBAAuB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,+BAA+B,EAAE,EAAE;oBACtH,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,0CAA0C,EAAE,EAAE;iBACjI,CAAC;aACH;SACF,CAAC;OACW,4BAA4B,CAExC;IAAD,mCAAC;CAAA,AAFD,IAEC;SAFY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/admin-registries.module.js b/src/app/+admin/admin-registries/admin-registries.module.js deleted file mode 100644 index b0b9c923c7..0000000000 --- a/src/app/+admin/admin-registries/admin-registries.module.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { MetadataRegistryComponent } from './metadata-registry/metadata-registry.component'; -import { AdminRegistriesRoutingModule } from './admin-registries-routing.module'; -import { CommonModule } from '@angular/common'; -import { MetadataSchemaComponent } from './metadata-schema/metadata-schema.component'; -import { RouterModule } from '@angular/router'; -import { TranslateModule } from '@ngx-translate/core'; -import { BitstreamFormatsComponent } from './bitstream-formats/bitstream-formats.component'; -import { SharedModule } from '../../shared/shared.module'; -import { MetadataSchemaFormComponent } from './metadata-registry/metadata-schema-form/metadata-schema-form.component'; -import { MetadataFieldFormComponent } from './metadata-schema/metadata-field-form/metadata-field-form.component'; -var AdminRegistriesModule = /** @class */ (function () { - function AdminRegistriesModule() { - } - AdminRegistriesModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule, - RouterModule, - TranslateModule, - AdminRegistriesRoutingModule - ], - declarations: [ - MetadataRegistryComponent, - MetadataSchemaComponent, - BitstreamFormatsComponent, - MetadataSchemaFormComponent, - MetadataFieldFormComponent - ], - entryComponents: [] - }) - ], AdminRegistriesModule); - return AdminRegistriesModule; -}()); -export { AdminRegistriesModule }; -//# sourceMappingURL=admin-registries.module.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/admin-registries.module.js.map b/src/app/+admin/admin-registries/admin-registries.module.js.map deleted file mode 100644 index 5ad26e5906..0000000000 --- a/src/app/+admin/admin-registries/admin-registries.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admin-registries.module.js","sourceRoot":"","sources":["admin-registries.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iDAAiD,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yEAAyE,CAAC;AACtH,OAAO,EAAC,0BAA0B,EAAC,MAAM,qEAAqE,CAAC;AAqB/G;IAAA;IAEA,CAAC;IAFY,qBAAqB;QAnBjC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,YAAY;gBACZ,eAAe;gBACf,4BAA4B;aAC7B;YACD,YAAY,EAAE;gBACZ,yBAAyB;gBACzB,uBAAuB;gBACvB,yBAAyB;gBACzB,2BAA2B;gBAC3B,0BAA0B;aAC3B;YACD,eAAe,EAAE,EAEhB;SACF,CAAC;OACW,qBAAqB,CAEjC;IAAD,4BAAC;CAAA,AAFD,IAEC;SAFY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js b/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js deleted file mode 100644 index ab7f6f1699..0000000000 --- a/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js +++ /dev/null @@ -1,45 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { RegistryService } from '../../../core/registry/registry.service'; -import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model'; -/** - * This component renders a list of bitstream formats - */ -var BitstreamFormatsComponent = /** @class */ (function () { - function BitstreamFormatsComponent(registryService) { - this.registryService = registryService; - /** - * The current pagination configuration for the page - * Currently simply renders all bitstream formats - */ - this.config = Object.assign(new PaginationComponentOptions(), { - id: 'registry-bitstreamformats-pagination', - pageSize: 10000 - }); - this.updateFormats(); - } - /** - * When the page is changed, make sure to update the list of bitstreams to match the new page - * @param event The page change event - */ - BitstreamFormatsComponent.prototype.onPageChange = function (event) { - this.config.currentPage = event; - this.updateFormats(); - }; - /** - * Method to update the bitstream formats that are shown - */ - BitstreamFormatsComponent.prototype.updateFormats = function () { - this.bitstreamFormats = this.registryService.getBitstreamFormats(this.config); - }; - BitstreamFormatsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-bitstream-formats', - templateUrl: './bitstream-formats.component.html' - }), - tslib_1.__metadata("design:paramtypes", [RegistryService]) - ], BitstreamFormatsComponent); - return BitstreamFormatsComponent; -}()); -export { BitstreamFormatsComponent }; -//# sourceMappingURL=bitstream-formats.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js.map b/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js.map deleted file mode 100644 index 5480f7c8e8..0000000000 --- a/src/app/+admin/admin-registries/bitstream-formats/bitstream-formats.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bitstream-formats.component.js","sourceRoot":"","sources":["bitstream-formats.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAK1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,+DAA+D,CAAC;AAE3G;;GAEG;AAKH;IAgBE,mCAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;QATpD;;;WAGG;QACH,WAAM,GAA+B,MAAM,CAAC,MAAM,CAAC,IAAI,0BAA0B,EAAE,EAAE;YACnF,EAAE,EAAE,sCAAsC;YAC1C,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QAGD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;;OAGG;IACH,gDAAY,GAAZ,UAAa,KAAK;QAChB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,iDAAa,GAArB;QACE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChF,CAAC;IAlCU,yBAAyB;QAJrC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,WAAW,EAAE,oCAAoC;SAClD,CAAC;iDAiBqC,eAAe;OAhBzC,yBAAyB,CAmCrC;IAAD,gCAAC;CAAA,AAnCD,IAmCC;SAnCY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js deleted file mode 100644 index 540669f467..0000000000 --- a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js +++ /dev/null @@ -1,129 +0,0 @@ -import { type } from '../../../shared/ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var MetadataRegistryActionTypes = { - EDIT_SCHEMA: type('dspace/metadata-registry/EDIT_SCHEMA'), - CANCEL_EDIT_SCHEMA: type('dspace/metadata-registry/CANCEL_SCHEMA'), - SELECT_SCHEMA: type('dspace/metadata-registry/SELECT_SCHEMA'), - DESELECT_SCHEMA: type('dspace/metadata-registry/DESELECT_SCHEMA'), - DESELECT_ALL_SCHEMA: type('dspace/metadata-registry/DESELECT_ALL_SCHEMA'), - EDIT_FIELD: type('dspace/metadata-registry/EDIT_FIELD'), - CANCEL_EDIT_FIELD: type('dspace/metadata-registry/CANCEL_FIELD'), - SELECT_FIELD: type('dspace/metadata-registry/SELECT_FIELD'), - DESELECT_FIELD: type('dspace/metadata-registry/DESELECT_FIELD'), - DESELECT_ALL_FIELD: type('dspace/metadata-registry/DESELECT_ALL_FIELD') -}; -/* tslint:disable:max-classes-per-file */ -/** - * Used to edit a metadata schema in the metadata registry - */ -var MetadataRegistryEditSchemaAction = /** @class */ (function () { - function MetadataRegistryEditSchemaAction(registry) { - this.type = MetadataRegistryActionTypes.EDIT_SCHEMA; - this.schema = registry; - } - return MetadataRegistryEditSchemaAction; -}()); -export { MetadataRegistryEditSchemaAction }; -/** - * Used to cancel the editing of a metadata schema in the metadata registry - */ -var MetadataRegistryCancelSchemaAction = /** @class */ (function () { - function MetadataRegistryCancelSchemaAction() { - this.type = MetadataRegistryActionTypes.CANCEL_EDIT_SCHEMA; - } - return MetadataRegistryCancelSchemaAction; -}()); -export { MetadataRegistryCancelSchemaAction }; -/** - * Used to select a single metadata schema in the metadata registry - */ -var MetadataRegistrySelectSchemaAction = /** @class */ (function () { - function MetadataRegistrySelectSchemaAction(registry) { - this.type = MetadataRegistryActionTypes.SELECT_SCHEMA; - this.schema = registry; - } - return MetadataRegistrySelectSchemaAction; -}()); -export { MetadataRegistrySelectSchemaAction }; -/** - * Used to deselect a single metadata schema in the metadata registry - */ -var MetadataRegistryDeselectSchemaAction = /** @class */ (function () { - function MetadataRegistryDeselectSchemaAction(registry) { - this.type = MetadataRegistryActionTypes.DESELECT_SCHEMA; - this.schema = registry; - } - return MetadataRegistryDeselectSchemaAction; -}()); -export { MetadataRegistryDeselectSchemaAction }; -/** - * Used to deselect all metadata schemas in the metadata registry - */ -var MetadataRegistryDeselectAllSchemaAction = /** @class */ (function () { - function MetadataRegistryDeselectAllSchemaAction() { - this.type = MetadataRegistryActionTypes.DESELECT_ALL_SCHEMA; - } - return MetadataRegistryDeselectAllSchemaAction; -}()); -export { MetadataRegistryDeselectAllSchemaAction }; -/** - * Used to edit a metadata field in the metadata registry - */ -var MetadataRegistryEditFieldAction = /** @class */ (function () { - function MetadataRegistryEditFieldAction(registry) { - this.type = MetadataRegistryActionTypes.EDIT_FIELD; - this.field = registry; - } - return MetadataRegistryEditFieldAction; -}()); -export { MetadataRegistryEditFieldAction }; -/** - * Used to cancel the editing of a metadata field in the metadata registry - */ -var MetadataRegistryCancelFieldAction = /** @class */ (function () { - function MetadataRegistryCancelFieldAction() { - this.type = MetadataRegistryActionTypes.CANCEL_EDIT_FIELD; - } - return MetadataRegistryCancelFieldAction; -}()); -export { MetadataRegistryCancelFieldAction }; -/** - * Used to select a single metadata field in the metadata registry - */ -var MetadataRegistrySelectFieldAction = /** @class */ (function () { - function MetadataRegistrySelectFieldAction(registry) { - this.type = MetadataRegistryActionTypes.SELECT_FIELD; - this.field = registry; - } - return MetadataRegistrySelectFieldAction; -}()); -export { MetadataRegistrySelectFieldAction }; -/** - * Used to deselect a single metadata field in the metadata registry - */ -var MetadataRegistryDeselectFieldAction = /** @class */ (function () { - function MetadataRegistryDeselectFieldAction(registry) { - this.type = MetadataRegistryActionTypes.DESELECT_FIELD; - this.field = registry; - } - return MetadataRegistryDeselectFieldAction; -}()); -export { MetadataRegistryDeselectFieldAction }; -/** - * Used to deselect all metadata fields in the metadata registry - */ -var MetadataRegistryDeselectAllFieldAction = /** @class */ (function () { - function MetadataRegistryDeselectAllFieldAction() { - this.type = MetadataRegistryActionTypes.DESELECT_ALL_FIELD; - } - return MetadataRegistryDeselectAllFieldAction; -}()); -export { MetadataRegistryDeselectAllFieldAction }; -//# sourceMappingURL=metadata-registry.actions.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js.map b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js.map deleted file mode 100644 index 4cc11db8c4..0000000000 --- a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-registry.actions.js","sourceRoot":"","sources":["metadata-registry.actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAIjD;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,2BAA2B,GAAG;IAEzC,WAAW,EAAE,IAAI,CAAC,sCAAsC,CAAC;IACzD,kBAAkB,EAAE,IAAI,CAAC,wCAAwC,CAAC;IAClE,aAAa,EAAE,IAAI,CAAC,wCAAwC,CAAC;IAC7D,eAAe,EAAE,IAAI,CAAC,0CAA0C,CAAC;IACjE,mBAAmB,EAAE,IAAI,CAAC,8CAA8C,CAAC;IAEzE,UAAU,EAAE,IAAI,CAAC,qCAAqC,CAAC;IACvD,iBAAiB,EAAE,IAAI,CAAC,uCAAuC,CAAC;IAChE,YAAY,EAAE,IAAI,CAAC,uCAAuC,CAAC;IAC3D,cAAc,EAAE,IAAI,CAAC,yCAAyC,CAAC;IAC/D,kBAAkB,EAAE,IAAI,CAAC,6CAA6C,CAAC;CACxE,CAAC;AAEF,yCAAyC;AACzC;;GAEG;AACH;IAKE,0CAAY,QAAwB;QAJpC,SAAI,GAAG,2BAA2B,CAAC,WAAW,CAAC;QAK7C,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;IACzB,CAAC;IACH,uCAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,2BAA2B,CAAC,kBAAkB,CAAC;IACxD,CAAC;IAAD,yCAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAKE,4CAAY,QAAwB;QAJpC,SAAI,GAAG,2BAA2B,CAAC,aAAa,CAAC;QAK/C,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;IACzB,CAAC;IACH,yCAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAKE,8CAAY,QAAwB;QAJpC,SAAI,GAAG,2BAA2B,CAAC,eAAe,CAAC;QAKjD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;IACzB,CAAC;IACH,2CAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,2BAA2B,CAAC,mBAAmB,CAAC;IACzD,CAAC;IAAD,8CAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAKE,yCAAY,QAAuB;QAJnC,SAAI,GAAG,2BAA2B,CAAC,UAAU,CAAC;QAK5C,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IACH,sCAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,2BAA2B,CAAC,iBAAiB,CAAC;IACvD,CAAC;IAAD,wCAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAKE,2CAAY,QAAuB;QAJnC,SAAI,GAAG,2BAA2B,CAAC,YAAY,CAAC;QAK9C,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IACH,wCAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAKE,6CAAY,QAAuB;QAJnC,SAAI,GAAG,2BAA2B,CAAC,cAAc,CAAC;QAKhD,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IACH,0CAAC;AAAD,CAAC,AARD,IAQC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,2BAA2B,CAAC,kBAAkB,CAAC;IACxD,CAAC;IAAD,6CAAC;AAAD,CAAC,AAFD,IAEC"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js deleted file mode 100644 index e7375bc94a..0000000000 --- a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js +++ /dev/null @@ -1,161 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { RegistryService } from '../../../core/registry/registry.service'; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model'; -import { map, take } from 'rxjs/operators'; -import { hasValue } from '../../../shared/empty.util'; -import { zip } from 'rxjs/internal/observable/zip'; -import { NotificationsService } from '../../../shared/notifications/notifications.service'; -import { Router } from '@angular/router'; -import { TranslateService } from '@ngx-translate/core'; -var MetadataRegistryComponent = /** @class */ (function () { - function MetadataRegistryComponent(registryService, notificationsService, router, translateService) { - this.registryService = registryService; - this.notificationsService = notificationsService; - this.router = router; - this.translateService = translateService; - /** - * Pagination config used to display the list of metadata schemas - */ - this.config = Object.assign(new PaginationComponentOptions(), { - id: 'registry-metadataschemas-pagination', - pageSize: 25 - }); - this.updateSchemas(); - } - /** - * Event triggered when the user changes page - * @param event - */ - MetadataRegistryComponent.prototype.onPageChange = function (event) { - this.config.currentPage = event; - this.updateSchemas(); - }; - /** - * Update the list of schemas by fetching it from the rest api or cache - */ - MetadataRegistryComponent.prototype.updateSchemas = function () { - this.metadataSchemas = this.registryService.getMetadataSchemas(this.config); - }; - /** - * Force-update the list of schemas by first clearing the cache related to metadata schemas, then performing - * a new REST call - */ - MetadataRegistryComponent.prototype.forceUpdateSchemas = function () { - this.registryService.clearMetadataSchemaRequests().subscribe(); - this.updateSchemas(); - }; - /** - * Start editing the selected metadata schema - * @param schema - */ - MetadataRegistryComponent.prototype.editSchema = function (schema) { - var _this = this; - this.getActiveSchema().pipe(take(1)).subscribe(function (activeSchema) { - if (schema === activeSchema) { - _this.registryService.cancelEditMetadataSchema(); - } - else { - _this.registryService.editMetadataSchema(schema); - } - }); - }; - /** - * Checks whether the given metadata schema is active (being edited) - * @param schema - */ - MetadataRegistryComponent.prototype.isActive = function (schema) { - return this.getActiveSchema().pipe(map(function (activeSchema) { return schema === activeSchema; })); - }; - /** - * Gets the active metadata schema (being edited) - */ - MetadataRegistryComponent.prototype.getActiveSchema = function () { - return this.registryService.getActiveMetadataSchema(); - }; - /** - * Select a metadata schema within the list (checkbox) - * @param schema - * @param event - */ - MetadataRegistryComponent.prototype.selectMetadataSchema = function (schema, event) { - event.target.checked ? - this.registryService.selectMetadataSchema(schema) : - this.registryService.deselectMetadataSchema(schema); - }; - /** - * Checks whether a given metadata schema is selected in the list (checkbox) - * @param schema - */ - MetadataRegistryComponent.prototype.isSelected = function (schema) { - return this.registryService.getSelectedMetadataSchemas().pipe(map(function (schemas) { return schemas.find(function (selectedSchema) { return selectedSchema === schema; }) != null; })); - }; - /** - * Delete all the selected metadata schemas - */ - MetadataRegistryComponent.prototype.deleteSchemas = function () { - var _this = this; - this.registryService.getSelectedMetadataSchemas().pipe(take(1)).subscribe(function (schemas) { - var tasks$ = []; - for (var _i = 0, schemas_1 = schemas; _i < schemas_1.length; _i++) { - var schema = schemas_1[_i]; - if (hasValue(schema.id)) { - tasks$.push(_this.registryService.deleteMetadataSchema(schema.id)); - } - } - zip.apply(void 0, tasks$).subscribe(function (responses) { - var successResponses = responses.filter(function (response) { return response.isSuccessful; }); - var failedResponses = responses.filter(function (response) { return !response.isSuccessful; }); - if (successResponses.length > 0) { - _this.showNotification(true, successResponses.length); - } - if (failedResponses.length > 0) { - _this.showNotification(false, failedResponses.length); - } - _this.registryService.deselectAllMetadataSchema(); - _this.registryService.cancelEditMetadataSchema(); - _this.forceUpdateSchemas(); - }); - }); - }; - /** - * Show notifications for an amount of deleted metadata schemas - * @param success Whether or not the notification should be a success message (error message when false) - * @param amount The amount of deleted metadata schemas - */ - MetadataRegistryComponent.prototype.showNotification = function (success, amount) { - var _this = this; - var prefix = 'admin.registries.schema.notification'; - var suffix = success ? 'success' : 'failure'; - var messages = observableCombineLatest(this.translateService.get(success ? prefix + "." + suffix : prefix + "." + suffix), this.translateService.get(prefix + ".deleted." + suffix, { amount: amount })); - messages.subscribe(function (_a) { - var head = _a[0], content = _a[1]; - if (success) { - _this.notificationsService.success(head, content); - } - else { - _this.notificationsService.error(head, content); - } - }); - }; - MetadataRegistryComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-registry', - templateUrl: './metadata-registry.component.html', - styleUrls: ['./metadata-registry.component.scss'] - }) - /** - * A component used for managing all existing metadata schemas within the repository. - * The admin can create, edit or delete metadata schemas here. - */ - , - tslib_1.__metadata("design:paramtypes", [RegistryService, - NotificationsService, - Router, - TranslateService]) - ], MetadataRegistryComponent); - return MetadataRegistryComponent; -}()); -export { MetadataRegistryComponent }; -//# sourceMappingURL=metadata-registry.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js.map b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js.map deleted file mode 100644 index 4709bbe3ae..0000000000 --- a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-registry.component.js","sourceRoot":"","sources":["metadata-registry.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js deleted file mode 100644 index 338a4ef513..0000000000 --- a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js +++ /dev/null @@ -1,73 +0,0 @@ -import { MetadataRegistryActionTypes } from './metadata-registry.actions'; -/** - * The initial state. - */ -var initialState = { - editSchema: null, - selectedSchemas: [], - editField: null, - selectedFields: [] -}; -/** - * Reducer that handles MetadataRegistryActions to modify metadata schema and/or field states - * @param state The current MetadataRegistryState - * @param action The MetadataRegistryAction to perform on the state - */ -export function metadataRegistryReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case MetadataRegistryActionTypes.EDIT_SCHEMA: { - return Object.assign({}, state, { - editSchema: action.schema - }); - } - case MetadataRegistryActionTypes.CANCEL_EDIT_SCHEMA: { - return Object.assign({}, state, { - editSchema: null - }); - } - case MetadataRegistryActionTypes.SELECT_SCHEMA: { - return Object.assign({}, state, { - selectedSchemas: state.selectedSchemas.concat([action.schema]) - }); - } - case MetadataRegistryActionTypes.DESELECT_SCHEMA: { - return Object.assign({}, state, { - selectedSchemas: state.selectedSchemas.filter(function (selectedSchema) { return selectedSchema !== action.schema; }) - }); - } - case MetadataRegistryActionTypes.DESELECT_ALL_SCHEMA: { - return Object.assign({}, state, { - selectedSchemas: [] - }); - } - case MetadataRegistryActionTypes.EDIT_FIELD: { - return Object.assign({}, state, { - editField: action.field - }); - } - case MetadataRegistryActionTypes.CANCEL_EDIT_FIELD: { - return Object.assign({}, state, { - editField: null - }); - } - case MetadataRegistryActionTypes.SELECT_FIELD: { - return Object.assign({}, state, { - selectedFields: state.selectedFields.concat([action.field]) - }); - } - case MetadataRegistryActionTypes.DESELECT_FIELD: { - return Object.assign({}, state, { - selectedFields: state.selectedFields.filter(function (selectedField) { return selectedField !== action.field; }) - }); - } - case MetadataRegistryActionTypes.DESELECT_ALL_FIELD: { - return Object.assign({}, state, { - selectedFields: [] - }); - } - default: - return state; - } -} -//# sourceMappingURL=metadata-registry.reducers.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js.map b/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js.map deleted file mode 100644 index db41e0cbf1..0000000000 --- a/src/app/+admin/admin-registries/metadata-registry/metadata-registry.reducers.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-registry.reducers.js","sourceRoot":"","sources":["metadata-registry.reducers.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,2BAA2B,EAO5B,MAAM,6BAA6B,CAAC;AAcrC;;GAEG;AACH,IAAM,YAAY,GAA0B;IAC1C,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,EAAE;IACnB,SAAS,EAAE,IAAI;IACf,cAAc,EAAE,EAAE;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,kCAAkC,KAAoB,EAAE,MAA8B;IAApD,sBAAA,EAAA,oBAAoB;IAE1D,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,2BAA2B,CAAC,WAAW,CAAC,CAAC;YAC5C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,UAAU,EAAG,MAA2C,CAAC,MAAM;aAChE,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,kBAAkB,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,aAAa,CAAC,CAAC;YAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,eAAe,EAAM,KAAK,CAAC,eAAe,SAAG,MAA6C,CAAC,MAAM,EAAC;aACnG,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,eAAe,CAAC,CAAC;YAChD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,MAAM,CAC3C,UAAC,cAAc,IAAK,OAAA,cAAc,KAAM,MAA+C,CAAC,MAAM,EAA1E,CAA0E,CAC/F;aACF,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,mBAAmB,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,eAAe,EAAE,EAAE;aACpB,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,UAAU,CAAC,CAAC;YAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,SAAS,EAAG,MAA0C,CAAC,KAAK;aAC7D,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,YAAY,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,cAAc,EAAM,KAAK,CAAC,cAAc,SAAG,MAA4C,CAAC,KAAK,EAAC;aAC/F,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,cAAc,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CACzC,UAAC,aAAa,IAAK,OAAA,aAAa,KAAM,MAA8C,CAAC,KAAK,EAAvE,CAAuE,CAC3F;aACF,CAAC,CAAC;SACJ;QAED,KAAK,2BAA2B,CAAC,kBAAkB,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,cAAc,EAAE,EAAE;aACnB,CAAC,CAAC;SACJ;QAED;YACE,OAAO,KAAK,CAAC;KAChB;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js b/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js deleted file mode 100644 index 59985cbe3e..0000000000 --- a/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js +++ /dev/null @@ -1,148 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Output } from '@angular/core'; -import { DynamicInputModel } from '@ng-dynamic-forms/core'; -import { RegistryService } from '../../../../core/registry/registry.service'; -import { FormBuilderService } from '../../../../shared/form/builder/form-builder.service'; -import { take } from 'rxjs/operators'; -import { MetadataSchema } from '../../../../core/metadata/metadataschema.model'; -import { TranslateService } from '@ngx-translate/core'; -import { combineLatest } from 'rxjs/internal/observable/combineLatest'; -var MetadataSchemaFormComponent = /** @class */ (function () { - function MetadataSchemaFormComponent(registryService, formBuilderService, translateService) { - this.registryService = registryService; - this.formBuilderService = formBuilderService; - this.translateService = translateService; - /** - * A unique id used for ds-form - */ - this.formId = 'metadata-schema-form'; - /** - * The prefix for all messages related to this form - */ - this.messagePrefix = 'admin.registries.metadata.form'; - /** - * Layout used for structuring the form inputs - */ - this.formLayout = { - name: { - grid: { - host: 'col col-sm-6 d-inline-block' - } - }, - namespace: { - grid: { - host: 'col col-sm-6 d-inline-block' - } - } - }; - /** - * An EventEmitter that's fired whenever the form is being submitted - */ - this.submitForm = new EventEmitter(); - } - MetadataSchemaFormComponent.prototype.ngOnInit = function () { - var _this = this; - combineLatest(this.translateService.get(this.messagePrefix + ".name"), this.translateService.get(this.messagePrefix + ".namespace")).subscribe(function (_a) { - var name = _a[0], namespace = _a[1]; - _this.name = new DynamicInputModel({ - id: 'name', - label: name, - name: 'name', - validators: { - required: null, - pattern: '^[^ ,_]{1,32}$' - }, - required: true, - }); - _this.namespace = new DynamicInputModel({ - id: 'namespace', - label: namespace, - name: 'namespace', - validators: { - required: null, - }, - required: true, - }); - _this.formModel = [ - _this.namespace, - _this.name - ]; - _this.formGroup = _this.formBuilderService.createFormGroup(_this.formModel); - _this.registryService.getActiveMetadataSchema().subscribe(function (schema) { - _this.formGroup.patchValue({ - name: schema != null ? schema.prefix : '', - namespace: schema != null ? schema.namespace : '' - }); - }); - }); - }; - /** - * Stop editing the currently selected metadata schema - */ - MetadataSchemaFormComponent.prototype.onCancel = function () { - this.registryService.cancelEditMetadataSchema(); - }; - /** - * Submit the form - * When the schema has an id attached -> Edit the schema - * When the schema has no id attached -> Create new schema - * Emit the updated/created schema using the EventEmitter submitForm - */ - MetadataSchemaFormComponent.prototype.onSubmit = function () { - var _this = this; - this.registryService.getActiveMetadataSchema().pipe(take(1)).subscribe(function (schema) { - var values = { - prefix: _this.name.value, - namespace: _this.namespace.value - }; - if (schema == null) { - _this.registryService.createOrUpdateMetadataSchema(Object.assign(new MetadataSchema(), values)).subscribe(function (newSchema) { - _this.submitForm.emit(newSchema); - }); - } - else { - _this.registryService.createOrUpdateMetadataSchema(Object.assign(new MetadataSchema(), { - id: schema.id, - prefix: (values.prefix ? values.prefix : schema.prefix), - namespace: (values.namespace ? values.namespace : schema.namespace) - })).subscribe(function (updatedSchema) { - _this.submitForm.emit(updatedSchema); - }); - } - _this.clearFields(); - }); - }; - /** - * Reset all input-fields to be empty - */ - MetadataSchemaFormComponent.prototype.clearFields = function () { - this.formGroup.patchValue({ - prefix: '', - namespace: '' - }); - }; - /** - * Cancel the current edit when component is destroyed - */ - MetadataSchemaFormComponent.prototype.ngOnDestroy = function () { - this.onCancel(); - }; - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], MetadataSchemaFormComponent.prototype, "submitForm", void 0); - MetadataSchemaFormComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-schema-form', - templateUrl: './metadata-schema-form.component.html' - }) - /** - * A form used for creating and editing metadata schemas - */ - , - tslib_1.__metadata("design:paramtypes", [RegistryService, FormBuilderService, TranslateService]) - ], MetadataSchemaFormComponent); - return MetadataSchemaFormComponent; -}()); -export { MetadataSchemaFormComponent }; -//# sourceMappingURL=metadata-schema-form.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js.map b/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js.map deleted file mode 100644 index c5afef8b25..0000000000 --- a/src/app/+admin/admin-registries/metadata-registry/metadata-schema-form/metadata-schema-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-schema-form.component.js","sourceRoot":"","sources":["metadata-schema-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAqB,MAAM,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,EAIL,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sDAAsD,CAAC;AAC1F,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AASvE;IAqDE,qCAAmB,eAAgC,EAAU,kBAAsC,EAAU,gBAAkC;QAA5H,oBAAe,GAAf,eAAe,CAAiB;QAAU,uBAAkB,GAAlB,kBAAkB,CAAoB;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;QAnD/I;;WAEG;QACH,WAAM,GAAG,sBAAsB,CAAC;QAEhC;;WAEG;QACH,kBAAa,GAAG,gCAAgC,CAAC;QAiBjD;;WAEG;QACH,eAAU,GAAsB;YAC9B,IAAI,EAAE;gBACJ,IAAI,EAAE;oBACJ,IAAI,EAAE,6BAA6B;iBACpC;aACF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE;oBACJ,IAAI,EAAE,6BAA6B;iBACpC;aACF;SACF,CAAC;QAOF;;WAEG;QACO,eAAU,GAAsB,IAAI,YAAY,EAAE,CAAC;IAG7D,CAAC;IAED,8CAAQ,GAAR;QAAA,iBAoCC;QAnCC,aAAa,CACX,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAI,IAAI,CAAC,aAAa,UAAO,CAAC,EACvD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAI,IAAI,CAAC,aAAa,eAAY,CAAC,CAC7D,CAAC,SAAS,CAAC,UAAC,EAAiB;gBAAhB,YAAI,EAAE,iBAAS;YAC3B,KAAI,CAAC,IAAI,GAAG,IAAI,iBAAiB,CAAC;gBAC9B,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,MAAM;gBACZ,UAAU,EAAE;oBACV,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,gBAAgB;iBAC1B;gBACD,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YACL,KAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,CAAC;gBACnC,EAAE,EAAE,WAAW;gBACf,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,WAAW;gBACjB,UAAU,EAAE;oBACV,QAAQ,EAAE,IAAI;iBACf;gBACD,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YACL,KAAI,CAAC,SAAS,GAAG;gBACf,KAAI,CAAC,SAAS;gBACd,KAAI,CAAC,IAAI;aACV,CAAC;YACF,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAI,CAAC,SAAS,CAAC,CAAC;YACzE,KAAI,CAAC,eAAe,CAAC,uBAAuB,EAAE,CAAC,SAAS,CAAC,UAAC,MAAM;gBAC9D,KAAI,CAAC,SAAS,CAAC,UAAU,CAAC;oBACxB,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;oBACzC,SAAS,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;iBAClD,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,8CAAQ,GAAR;QACE,IAAI,CAAC,eAAe,CAAC,wBAAwB,EAAE,CAAC;IAClD,CAAC;IAED;;;;;OAKG;IACH,8CAAQ,GAAR;QAAA,iBAuBC;QAtBC,IAAI,CAAC,eAAe,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CACpE,UAAC,MAAM;YACL,IAAM,MAAM,GAAG;gBACb,MAAM,EAAE,KAAI,CAAC,IAAI,CAAC,KAAK;gBACvB,SAAS,EAAE,KAAI,CAAC,SAAS,CAAC,KAAK;aAChC,CAAC;YACF,IAAI,MAAM,IAAI,IAAI,EAAE;gBAClB,KAAI,CAAC,eAAe,CAAC,4BAA4B,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,SAAS;oBACjH,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAClC,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,KAAI,CAAC,eAAe,CAAC,4BAA4B,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAE;oBACpF,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;oBACvD,SAAS,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;iBACpE,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,aAAa;oBAC1B,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAC;aACJ;YACD,KAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,iDAAW,GAAX;QACE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;YACxB,MAAM,EAAE,EAAE;YACV,SAAS,EAAE,EAAE;SACd,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,iDAAW,GAAX;QACE,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAhGS;QAAT,MAAM,EAAE;0CAAa,YAAY;mEAA2B;IAnDlD,2BAA2B;QAPvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;;iDAsDmC,eAAe,EAA8B,kBAAkB,EAA4B,gBAAgB;OArDpI,2BAA2B,CAoJvC;IAAD,kCAAC;CAAA,AApJD,IAoJC;SApJY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js b/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js deleted file mode 100644 index 08e6ee00f3..0000000000 --- a/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js +++ /dev/null @@ -1,172 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -import { MetadataSchema } from '../../../../core/metadata/metadataschema.model'; -import { DynamicInputModel } from '@ng-dynamic-forms/core'; -import { RegistryService } from '../../../../core/registry/registry.service'; -import { FormBuilderService } from '../../../../shared/form/builder/form-builder.service'; -import { MetadataField } from '../../../../core/metadata/metadatafield.model'; -import { take } from 'rxjs/operators'; -import { TranslateService } from '@ngx-translate/core'; -import { combineLatest } from 'rxjs/internal/observable/combineLatest'; -var MetadataFieldFormComponent = /** @class */ (function () { - function MetadataFieldFormComponent(registryService, formBuilderService, translateService) { - this.registryService = registryService; - this.formBuilderService = formBuilderService; - this.translateService = translateService; - /** - * A unique id used for ds-form - */ - this.formId = 'metadata-field-form'; - /** - * The prefix for all messages related to this form - */ - this.messagePrefix = 'admin.registries.schema.form'; - /** - * Layout used for structuring the form inputs - */ - this.formLayout = { - element: { - grid: { - host: 'col col-sm-6 d-inline-block' - } - }, - qualifier: { - grid: { - host: 'col col-sm-6 d-inline-block' - } - }, - scopeNote: { - grid: { - host: 'col col-sm-12 d-inline-block' - } - } - }; - /** - * An EventEmitter that's fired whenever the form is being submitted - */ - this.submitForm = new EventEmitter(); - } - /** - * Initialize the component, setting up the necessary Models for the dynamic form - */ - MetadataFieldFormComponent.prototype.ngOnInit = function () { - var _this = this; - combineLatest(this.translateService.get(this.messagePrefix + ".element"), this.translateService.get(this.messagePrefix + ".qualifier"), this.translateService.get(this.messagePrefix + ".scopenote")).subscribe(function (_a) { - var element = _a[0], qualifier = _a[1], scopenote = _a[2]; - _this.element = new DynamicInputModel({ - id: 'element', - label: element, - name: 'element', - validators: { - required: null, - }, - required: true, - }); - _this.qualifier = new DynamicInputModel({ - id: 'qualifier', - label: qualifier, - name: 'qualifier', - required: false, - }); - _this.scopeNote = new DynamicInputModel({ - id: 'scopeNote', - label: scopenote, - name: 'scopeNote', - required: false, - }); - _this.formModel = [ - _this.element, - _this.qualifier, - _this.scopeNote - ]; - _this.formGroup = _this.formBuilderService.createFormGroup(_this.formModel); - _this.registryService.getActiveMetadataField().subscribe(function (field) { - _this.formGroup.patchValue({ - element: field != null ? field.element : '', - qualifier: field != null ? field.qualifier : '', - scopeNote: field != null ? field.scopeNote : '' - }); - }); - }); - }; - /** - * Stop editing the currently selected metadata field - */ - MetadataFieldFormComponent.prototype.onCancel = function () { - this.registryService.cancelEditMetadataField(); - }; - /** - * Submit the form - * When the field has an id attached -> Edit the field - * When the field has no id attached -> Create new field - * Emit the updated/created field using the EventEmitter submitForm - */ - MetadataFieldFormComponent.prototype.onSubmit = function () { - var _this = this; - this.registryService.getActiveMetadataField().pipe(take(1)).subscribe(function (field) { - var values = { - schema: _this.metadataSchema, - element: _this.element.value, - qualifier: _this.qualifier.value, - scopeNote: _this.scopeNote.value - }; - if (field == null) { - _this.registryService.createOrUpdateMetadataField(Object.assign(new MetadataField(), values)).subscribe(function (newField) { - _this.submitForm.emit(newField); - }); - } - else { - _this.registryService.createOrUpdateMetadataField(Object.assign(new MetadataField(), { - id: field.id, - schema: _this.metadataSchema, - element: (values.element ? values.element : field.element), - qualifier: (values.qualifier ? values.qualifier : field.qualifier), - scopeNote: (values.scopeNote ? values.scopeNote : field.scopeNote) - })).subscribe(function (updatedField) { - _this.submitForm.emit(updatedField); - }); - } - _this.clearFields(); - }); - }; - /** - * Reset all input-fields to be empty - */ - MetadataFieldFormComponent.prototype.clearFields = function () { - this.formGroup.patchValue({ - element: '', - qualifier: '', - scopeNote: '' - }); - }; - /** - * Cancel the current edit when component is destroyed - */ - MetadataFieldFormComponent.prototype.ngOnDestroy = function () { - this.onCancel(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", MetadataSchema) - ], MetadataFieldFormComponent.prototype, "metadataSchema", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], MetadataFieldFormComponent.prototype, "submitForm", void 0); - MetadataFieldFormComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-field-form', - templateUrl: './metadata-field-form.component.html' - }) - /** - * A form used for creating and editing metadata fields - */ - , - tslib_1.__metadata("design:paramtypes", [RegistryService, - FormBuilderService, - TranslateService]) - ], MetadataFieldFormComponent); - return MetadataFieldFormComponent; -}()); -export { MetadataFieldFormComponent }; -//# sourceMappingURL=metadata-field-form.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js.map b/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js.map deleted file mode 100644 index 2740582d91..0000000000 --- a/src/app/+admin/admin-registries/metadata-schema/metadata-field-form/metadata-field-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-field-form.component.js","sourceRoot":"","sources":["metadata-field-form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js b/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js deleted file mode 100644 index 6af9dcde0a..0000000000 --- a/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js +++ /dev/null @@ -1,182 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { RegistryService } from '../../../core/registry/registry.service'; -import { ActivatedRoute, Router } from '@angular/router'; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model'; -import { map, take } from 'rxjs/operators'; -import { hasValue } from '../../../shared/empty.util'; -import { zip } from 'rxjs/internal/observable/zip'; -import { NotificationsService } from '../../../shared/notifications/notifications.service'; -import { TranslateService } from '@ngx-translate/core'; -var MetadataSchemaComponent = /** @class */ (function () { - function MetadataSchemaComponent(registryService, route, notificationsService, router, translateService) { - this.registryService = registryService; - this.route = route; - this.notificationsService = notificationsService; - this.router = router; - this.translateService = translateService; - /** - * Pagination config used to display the list of metadata fields - */ - this.config = Object.assign(new PaginationComponentOptions(), { - id: 'registry-metadatafields-pagination', - pageSize: 25, - pageSizeOptions: [25, 50, 100, 200] - }); - } - MetadataSchemaComponent.prototype.ngOnInit = function () { - var _this = this; - this.route.params.subscribe(function (params) { - _this.initialize(params); - }); - }; - /** - * Initialize the component using the params within the url (schemaName) - * @param params - */ - MetadataSchemaComponent.prototype.initialize = function (params) { - this.metadataSchema = this.registryService.getMetadataSchemaByName(params.schemaName); - this.updateFields(); - }; - /** - * Event triggered when the user changes page - * @param event - */ - MetadataSchemaComponent.prototype.onPageChange = function (event) { - this.config.currentPage = event; - this.updateFields(); - }; - /** - * Update the list of fields by fetching it from the rest api or cache - */ - MetadataSchemaComponent.prototype.updateFields = function () { - var _this = this; - this.metadataSchema.subscribe(function (schemaData) { - var schema = schemaData.payload; - _this.metadataFields = _this.registryService.getMetadataFieldsBySchema(schema, _this.config); - _this.namespace = { namespace: schemaData.payload.namespace }; - }); - }; - /** - * Force-update the list of fields by first clearing the cache related to metadata fields, then performing - * a new REST call - */ - MetadataSchemaComponent.prototype.forceUpdateFields = function () { - this.registryService.clearMetadataFieldRequests().subscribe(); - this.updateFields(); - }; - /** - * Start editing the selected metadata field - * @param field - */ - MetadataSchemaComponent.prototype.editField = function (field) { - var _this = this; - this.getActiveField().pipe(take(1)).subscribe(function (activeField) { - if (field === activeField) { - _this.registryService.cancelEditMetadataField(); - } - else { - _this.registryService.editMetadataField(field); - } - }); - }; - /** - * Checks whether the given metadata field is active (being edited) - * @param field - */ - MetadataSchemaComponent.prototype.isActive = function (field) { - return this.getActiveField().pipe(map(function (activeField) { return field === activeField; })); - }; - /** - * Gets the active metadata field (being edited) - */ - MetadataSchemaComponent.prototype.getActiveField = function () { - return this.registryService.getActiveMetadataField(); - }; - /** - * Select a metadata field within the list (checkbox) - * @param field - * @param event - */ - MetadataSchemaComponent.prototype.selectMetadataField = function (field, event) { - event.target.checked ? - this.registryService.selectMetadataField(field) : - this.registryService.deselectMetadataField(field); - }; - /** - * Checks whether a given metadata field is selected in the list (checkbox) - * @param field - */ - MetadataSchemaComponent.prototype.isSelected = function (field) { - return this.registryService.getSelectedMetadataFields().pipe(map(function (fields) { return fields.find(function (selectedField) { return selectedField === field; }) != null; })); - }; - /** - * Delete all the selected metadata fields - */ - MetadataSchemaComponent.prototype.deleteFields = function () { - var _this = this; - this.registryService.getSelectedMetadataFields().pipe(take(1)).subscribe(function (fields) { - var tasks$ = []; - for (var _i = 0, fields_1 = fields; _i < fields_1.length; _i++) { - var field = fields_1[_i]; - if (hasValue(field.id)) { - tasks$.push(_this.registryService.deleteMetadataField(field.id)); - } - } - zip.apply(void 0, tasks$).subscribe(function (responses) { - var successResponses = responses.filter(function (response) { return response.isSuccessful; }); - var failedResponses = responses.filter(function (response) { return !response.isSuccessful; }); - if (successResponses.length > 0) { - _this.showNotification(true, successResponses.length); - } - if (failedResponses.length > 0) { - _this.showNotification(false, failedResponses.length); - } - _this.registryService.deselectAllMetadataField(); - _this.registryService.cancelEditMetadataField(); - _this.forceUpdateFields(); - }); - }); - }; - /** - * Show notifications for an amount of deleted metadata fields - * @param success Whether or not the notification should be a success message (error message when false) - * @param amount The amount of deleted metadata fields - */ - MetadataSchemaComponent.prototype.showNotification = function (success, amount) { - var _this = this; - var prefix = 'admin.registries.schema.notification'; - var suffix = success ? 'success' : 'failure'; - var messages = observableCombineLatest(this.translateService.get(success ? prefix + "." + suffix : prefix + "." + suffix), this.translateService.get(prefix + ".field.deleted." + suffix, { amount: amount })); - messages.subscribe(function (_a) { - var head = _a[0], content = _a[1]; - if (success) { - _this.notificationsService.success(head, content); - } - else { - _this.notificationsService.error(head, content); - } - }); - }; - MetadataSchemaComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-schema', - templateUrl: './metadata-schema.component.html', - styleUrls: ['./metadata-schema.component.scss'] - }) - /** - * A component used for managing all existing metadata fields within the current metadata schema. - * The admin can create, edit or delete metadata fields here. - */ - , - tslib_1.__metadata("design:paramtypes", [RegistryService, - ActivatedRoute, - NotificationsService, - Router, - TranslateService]) - ], MetadataSchemaComponent); - return MetadataSchemaComponent; -}()); -export { MetadataSchemaComponent }; -//# sourceMappingURL=metadata-schema.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js.map b/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js.map deleted file mode 100644 index 3cacdfd42f..0000000000 --- a/src/app/+admin/admin-registries/metadata-schema/metadata-schema.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-schema.component.js","sourceRoot":"","sources":["metadata-schema.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+admin/admin-routing.module.js b/src/app/+admin/admin-routing.module.js deleted file mode 100644 index 07919572fd..0000000000 --- a/src/app/+admin/admin-routing.module.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { RouterModule } from '@angular/router'; -import { NgModule } from '@angular/core'; -var AdminRoutingModule = /** @class */ (function () { - function AdminRoutingModule() { - } - AdminRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { - path: 'registries', - loadChildren: './admin-registries/admin-registries.module#AdminRegistriesModule' - } - ]) - ] - }) - ], AdminRoutingModule); - return AdminRoutingModule; -}()); -export { AdminRoutingModule }; -//# sourceMappingURL=admin-routing.module.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-routing.module.js.map b/src/app/+admin/admin-routing.module.js.map deleted file mode 100644 index d54c058020..0000000000 --- a/src/app/+admin/admin-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admin-routing.module.js","sourceRoot":"","sources":["admin-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAYzC;IAAA;IAEA,CAAC;IAFY,kBAAkB;QAV9B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,YAAY;wBAClB,YAAY,EAAE,kEAAkE;qBACjF;iBACF,CAAC;aACH;SACF,CAAC;OACW,kBAAkB,CAE9B;IAAD,yBAAC;CAAA,AAFD,IAEC;SAFY,kBAAkB"} \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js b/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js deleted file mode 100644 index 659213e583..0000000000 --- a/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Injector } from '@angular/core'; -import { MenuSectionComponent } from '../../../shared/menu/menu-section/menu-section.component'; -import { MenuID } from '../../../shared/menu/initial-menus-state'; -import { MenuService } from '../../../shared/menu/menu.service'; -import { rendersSectionForMenu } from '../../../shared/menu/menu-section.decorator'; -import { MenuSection } from '../../../shared/menu/menu.reducer'; -/** - * Represents a non-expandable section in the admin sidebar - */ -var AdminSidebarSectionComponent = /** @class */ (function (_super) { - tslib_1.__extends(AdminSidebarSectionComponent, _super); - function AdminSidebarSectionComponent(menuSection, menuService, injector) { - var _this = _super.call(this, menuSection, menuService, injector) || this; - _this.menuService = menuService; - _this.injector = injector; - /** - * This section resides in the Admin Sidebar - */ - _this.menuID = MenuID.ADMIN; - _this.itemModel = menuSection.model; - return _this; - } - AdminSidebarSectionComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - }; - AdminSidebarSectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-admin-sidebar-section', - templateUrl: './admin-sidebar-section.component.html', - styleUrls: ['./admin-sidebar-section.component.scss'], - }), - rendersSectionForMenu(MenuID.ADMIN, false), - tslib_1.__param(0, Inject('sectionDataProvider')), - tslib_1.__metadata("design:paramtypes", [MenuSection, MenuService, Injector]) - ], AdminSidebarSectionComponent); - return AdminSidebarSectionComponent; -}(MenuSectionComponent)); -export { AdminSidebarSectionComponent }; -//# sourceMappingURL=admin-sidebar-section.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js.map b/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js.map deleted file mode 100644 index 76944432ae..0000000000 --- a/src/app/+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admin-sidebar-section.component.js","sourceRoot":"","sources":["admin-sidebar-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0DAA0D,CAAC;AAChG,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;GAEG;AAQH;IAAkD,wDAAoB;IAOpE,sCAA2C,WAAwB,EAAY,WAAwB,EAAY,QAAkB;QAArI,YACE,kBAAM,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,SAE1C;QAH8E,iBAAW,GAAX,WAAW,CAAa;QAAY,cAAQ,GAAR,QAAQ,CAAU;QALrI;;WAEG;QACH,YAAM,GAAW,MAAM,CAAC,KAAK,CAAC;QAI5B,KAAI,CAAC,SAAS,GAAG,WAAW,CAAC,KAA0B,CAAC;;IAC1D,CAAC;IAED,+CAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;IACnB,CAAC;IAdU,4BAA4B;QAPxC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,WAAW,EAAE,wCAAwC;YACrD,SAAS,EAAE,CAAC,wCAAwC,CAAC;SAEtD,CAAC;QACD,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC;QAQ5B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDAAc,WAAW,EAAyB,WAAW,EAAsB,QAAQ;OAP1H,4BAA4B,CAexC;IAAD,mCAAC;CAAA,AAfD,CAAkD,oBAAoB,GAerE;SAfY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/admin-sidebar.component.js b/src/app/+admin/admin-sidebar/admin-sidebar.component.js deleted file mode 100644 index 0cd799b210..0000000000 --- a/src/app/+admin/admin-sidebar/admin-sidebar.component.js +++ /dev/null @@ -1,490 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector } from '@angular/core'; -import { slideHorizontal, slideSidebar } from '../../shared/animations/slide'; -import { CSSVariableService } from '../../shared/sass-helper/sass-helper.service'; -import { MenuService } from '../../shared/menu/menu.service'; -import { MenuID, MenuItemType } from '../../shared/menu/initial-menus-state'; -import { MenuComponent } from '../../shared/menu/menu.component'; -import { AuthService } from '../../core/auth/auth.service'; -import { first, map } from 'rxjs/operators'; -import { combineLatest as combineLatestObservable } from 'rxjs'; -import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; -import { CreateCommunityParentSelectorComponent } from '../../shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component'; -import { CreateCollectionParentSelectorComponent } from '../../shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component'; -import { EditItemSelectorComponent } from '../../shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component'; -import { EditCommunitySelectorComponent } from '../../shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component'; -import { EditCollectionSelectorComponent } from '../../shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component'; -/** - * Component representing the admin sidebar - */ -var AdminSidebarComponent = /** @class */ (function (_super) { - tslib_1.__extends(AdminSidebarComponent, _super); - function AdminSidebarComponent(menuService, injector, variableService, authService, modalService) { - var _this = _super.call(this, menuService, injector) || this; - _this.menuService = menuService; - _this.injector = injector; - _this.variableService = variableService; - _this.authService = authService; - _this.modalService = modalService; - /** - * The menu ID of the Navbar is PUBLIC - * @type {MenuID.ADMIN} - */ - _this.menuID = MenuID.ADMIN; - /** - * Is true when the sidebar is open, is false when the sidebar is animating or closed - * @type {boolean} - */ - _this.sidebarOpen = true; // Open in UI, animation finished - /** - * Is true when the sidebar is closed, is false when the sidebar is animating or open - * @type {boolean} - */ - _this.sidebarClosed = !_this.sidebarOpen; // Closed in UI, animation finished - return _this; - } - /** - * Set and calculate all initial values of the instance variables - */ - AdminSidebarComponent.prototype.ngOnInit = function () { - var _this = this; - this.createMenu(); - _super.prototype.ngOnInit.call(this); - this.sidebarWidth = this.variableService.getVariable('sidebarItemsWidth'); - this.authService.isAuthenticated() - .subscribe(function (loggedIn) { - if (loggedIn) { - _this.menuService.showMenu(_this.menuID); - } - }); - this.menuCollapsed.pipe(first()) - .subscribe(function (collapsed) { - _this.sidebarOpen = !collapsed; - _this.sidebarClosed = collapsed; - }); - this.sidebarExpanded = combineLatestObservable(this.menuCollapsed, this.menuPreviewCollapsed) - .pipe(map(function (_a) { - var collapsed = _a[0], previewCollapsed = _a[1]; - return (!collapsed || !previewCollapsed); - })); - }; - /** - * Initialize all menu sections and items for this menu - */ - AdminSidebarComponent.prototype.createMenu = function () { - var _this = this; - var menuList = [ - /* News */ - { - id: 'new', - active: false, - visible: true, - model: { - type: MenuItemType.TEXT, - text: 'menu.section.new' - }, - icon: 'plus-circle', - index: 0 - }, - { - id: 'new_community', - parentID: 'new', - active: false, - visible: true, - model: { - type: MenuItemType.ONCLICK, - text: 'menu.section.new_community', - function: function () { - _this.modalService.open(CreateCommunityParentSelectorComponent); - } - }, - }, - { - id: 'new_collection', - parentID: 'new', - active: false, - visible: true, - model: { - type: MenuItemType.ONCLICK, - text: 'menu.section.new_collection', - function: function () { - _this.modalService.open(CreateCollectionParentSelectorComponent); - } - }, - }, - { - id: 'new_item', - parentID: 'new', - active: false, - visible: true, - // model: { - // type: MenuItemType.ONCLICK, - // text: 'menu.section.new_item', - // function: () => { - // this.modalService.open(CreateItemParentSelectorComponent); - // } - // } as OnClickMenuItemModel, - model: { - type: MenuItemType.LINK, - text: 'menu.section.new_item', - link: '/submit' - }, - }, - { - id: 'new_item_version', - parentID: 'new', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.new_item_version', - link: '' - }, - }, - /* Edit */ - { - id: 'edit', - active: false, - visible: true, - model: { - type: MenuItemType.TEXT, - text: 'menu.section.edit' - }, - icon: 'pencil-alt', - index: 1 - }, - { - id: 'edit_community', - parentID: 'edit', - active: false, - visible: true, - model: { - type: MenuItemType.ONCLICK, - text: 'menu.section.edit_community', - function: function () { - _this.modalService.open(EditCommunitySelectorComponent); - } - }, - }, - { - id: 'edit_collection', - parentID: 'edit', - active: false, - visible: true, - model: { - type: MenuItemType.ONCLICK, - text: 'menu.section.edit_collection', - function: function () { - _this.modalService.open(EditCollectionSelectorComponent); - } - }, - }, - { - id: 'edit_item', - parentID: 'edit', - active: false, - visible: true, - model: { - type: MenuItemType.ONCLICK, - text: 'menu.section.edit_item', - function: function () { - _this.modalService.open(EditItemSelectorComponent); - } - }, - }, - /* Import */ - { - id: 'import', - active: false, - visible: true, - model: { - type: MenuItemType.TEXT, - text: 'menu.section.import' - }, - icon: 'sign-in-alt', - index: 2 - }, - { - id: 'import_metadata', - parentID: 'import', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.import_metadata', - link: '' - }, - }, - { - id: 'import_batch', - parentID: 'import', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.import_batch', - link: '' - }, - }, - /* Export */ - { - id: 'export', - active: false, - visible: true, - model: { - type: MenuItemType.TEXT, - text: 'menu.section.export' - }, - icon: 'sign-out-alt', - index: 3 - }, - { - id: 'export_community', - parentID: 'export', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.export_community', - link: '' - }, - }, - { - id: 'export_collection', - parentID: 'export', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.export_collection', - link: '' - }, - }, - { - id: 'export_item', - parentID: 'export', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.export_item', - link: '' - }, - }, { - id: 'export_metadata', - parentID: 'export', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.export_metadata', - link: '' - }, - }, - /* Access Control */ - { - id: 'access_control', - active: false, - visible: true, - model: { - type: MenuItemType.TEXT, - text: 'menu.section.access_control' - }, - icon: 'key', - index: 4 - }, - { - id: 'access_control_people', - parentID: 'access_control', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.access_control_people', - link: '' - }, - }, - { - id: 'access_control_groups', - parentID: 'access_control', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.access_control_groups', - link: '' - }, - }, - { - id: 'access_control_authorizations', - parentID: 'access_control', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.access_control_authorizations', - link: '' - }, - }, - /* Search */ - { - id: 'find', - active: false, - visible: true, - model: { - type: MenuItemType.TEXT, - text: 'menu.section.find' - }, - icon: 'search', - index: 5 - }, - { - id: 'find_items', - parentID: 'find', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.find_items', - link: '/search' - }, - }, - { - id: 'find_withdrawn_items', - parentID: 'find', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.find_withdrawn_items', - link: '' - }, - }, - { - id: 'find_private_items', - parentID: 'find', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.find_private_items', - link: '' - }, - }, - /* Registries */ - { - id: 'registries', - active: false, - visible: true, - model: { - type: MenuItemType.TEXT, - text: 'menu.section.registries' - }, - icon: 'list', - index: 6 - }, - { - id: 'registries_metadata', - parentID: 'registries', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.registries_metadata', - link: 'admin/registries/metadata' - }, - }, - { - id: 'registries_format', - parentID: 'registries', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.registries_format', - link: 'admin/registries/bitstream-formats' - }, - }, - /* Curation tasks */ - { - id: 'curation_tasks', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.curation_task', - link: '' - }, - icon: 'filter', - index: 7 - }, - /* Statistics */ - { - id: 'statistics_task', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.statistics_task', - link: '' - }, - icon: 'chart-bar', - index: 8 - }, - /* Control Panel */ - { - id: 'control_panel', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.control_panel', - link: '' - }, - icon: 'cogs', - index: 9 - }, - ]; - menuList.forEach(function (menuSection) { return _this.menuService.addSection(_this.menuID, menuSection); }); - }; - /** - * Method to change this.collapsed to false when the slide animation ends and is sliding open - * @param event The animation event - */ - AdminSidebarComponent.prototype.startSlide = function (event) { - if (event.toState === 'expanded') { - this.sidebarClosed = false; - } - else if (event.toState === 'collapsed') { - this.sidebarOpen = false; - } - }; - /** - * Method to change this.collapsed to false when the slide animation ends and is sliding open - * @param event The animation event - */ - AdminSidebarComponent.prototype.finishSlide = function (event) { - if (event.fromState === 'expanded') { - this.sidebarClosed = true; - } - else if (event.fromState === 'collapsed') { - this.sidebarOpen = true; - } - }; - AdminSidebarComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-admin-sidebar', - templateUrl: './admin-sidebar.component.html', - styleUrls: ['./admin-sidebar.component.scss'], - animations: [slideHorizontal, slideSidebar] - }), - tslib_1.__metadata("design:paramtypes", [MenuService, - Injector, - CSSVariableService, - AuthService, - NgbModal]) - ], AdminSidebarComponent); - return AdminSidebarComponent; -}(MenuComponent)); -export { AdminSidebarComponent }; -//# sourceMappingURL=admin-sidebar.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/admin-sidebar.component.js.map b/src/app/+admin/admin-sidebar/admin-sidebar.component.js.map deleted file mode 100644 index 7c602f91a3..0000000000 --- a/src/app/+admin/admin-sidebar/admin-sidebar.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admin-sidebar.component.js","sourceRoot":"","sources":["admin-sidebar.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js b/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js deleted file mode 100644 index 2de22e1eb7..0000000000 --- a/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js +++ /dev/null @@ -1,58 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Injector } from '@angular/core'; -import { rotate } from '../../../shared/animations/rotate'; -import { AdminSidebarSectionComponent } from '../admin-sidebar-section/admin-sidebar-section.component'; -import { slide } from '../../../shared/animations/slide'; -import { CSSVariableService } from '../../../shared/sass-helper/sass-helper.service'; -import { bgColor } from '../../../shared/animations/bgColor'; -import { MenuID } from '../../../shared/menu/initial-menus-state'; -import { MenuService } from '../../../shared/menu/menu.service'; -import { combineLatest as combineLatestObservable } from 'rxjs'; -import { map } from 'rxjs/operators'; -import { rendersSectionForMenu } from '../../../shared/menu/menu-section.decorator'; -/** - * Represents a expandable section in the sidebar - */ -var ExpandableAdminSidebarSectionComponent = /** @class */ (function (_super) { - tslib_1.__extends(ExpandableAdminSidebarSectionComponent, _super); - function ExpandableAdminSidebarSectionComponent(menuSection, menuService, variableService, injector) { - var _this = _super.call(this, menuSection, menuService, injector) || this; - _this.menuService = menuService; - _this.variableService = variableService; - _this.injector = injector; - /** - * This section resides in the Admin Sidebar - */ - _this.menuID = MenuID.ADMIN; - return _this; - } - /** - * Set initial values for instance variables - */ - ExpandableAdminSidebarSectionComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - this.sidebarActiveBg = this.variableService.getVariable('adminSidebarActiveBg'); - this.sidebarCollapsed = this.menuService.isMenuCollapsed(this.menuID); - this.sidebarPreviewCollapsed = this.menuService.isMenuPreviewCollapsed(this.menuID); - this.expanded = combineLatestObservable(this.active, this.sidebarCollapsed, this.sidebarPreviewCollapsed) - .pipe(map(function (_a) { - var active = _a[0], sidebarCollapsed = _a[1], sidebarPreviewCollapsed = _a[2]; - return (active && (!sidebarCollapsed || !sidebarPreviewCollapsed)); - })); - }; - ExpandableAdminSidebarSectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-expandable-admin-sidebar-section', - templateUrl: './expandable-admin-sidebar-section.component.html', - styleUrls: ['./expandable-admin-sidebar-section.component.scss'], - animations: [rotate, slide, bgColor] - }), - rendersSectionForMenu(MenuID.ADMIN, true), - tslib_1.__param(0, Inject('sectionDataProvider')), - tslib_1.__metadata("design:paramtypes", [Object, MenuService, - CSSVariableService, Injector]) - ], ExpandableAdminSidebarSectionComponent); - return ExpandableAdminSidebarSectionComponent; -}(AdminSidebarSectionComponent)); -export { ExpandableAdminSidebarSectionComponent }; -//# sourceMappingURL=expandable-admin-sidebar-section.component.js.map \ No newline at end of file diff --git a/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js.map b/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js.map deleted file mode 100644 index 9eb67f11e4..0000000000 --- a/src/app/+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"expandable-admin-sidebar-section.component.js","sourceRoot":"","sources":["expandable-admin-sidebar-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,0DAA0D,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,MAAM,MAAM,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAEpF;;GAEG;AASH;IAA4D,kEAA4B;IA2BtF,gDAA2C,WAAW,EAAY,WAAwB,EACtE,eAAmC,EAAY,QAAkB;QADrF,YAEE,kBAAM,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,SAC1C;QAHiE,iBAAW,GAAX,WAAW,CAAa;QACtE,qBAAe,GAAf,eAAe,CAAoB;QAAY,cAAQ,GAAR,QAAQ,CAAU;QA3BrF;;WAEG;QACH,YAAM,GAAG,MAAM,CAAC,KAAK,CAAC;;IA0BtB,CAAC;IAED;;OAEG;IACH,yDAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;QAChF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpF,IAAI,CAAC,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,uBAAuB,CAAC;aACtG,IAAI,CACH,GAAG,CAAC,UAAC,EAAmD;gBAAlD,cAAM,EAAE,wBAAgB,EAAE,+BAAuB;YAAM,OAAA,CAAC,MAAM,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAA3D,CAA2D,CAAC,CAC1H,CAAC;IACN,CAAC;IA5CU,sCAAsC;QARlD,SAAS,CAAC;YACT,QAAQ,EAAE,qCAAqC;YAC/C,WAAW,EAAE,mDAAmD;YAChE,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,UAAU,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC;SACrC,CAAC;QAED,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;QA4B3B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;yDAAqC,WAAW;YACrD,kBAAkB,EAAsB,QAAQ;OA5B1E,sCAAsC,CA6ClD;IAAD,6CAAC;CAAA,AA7CD,CAA4D,4BAA4B,GA6CvF;SA7CY,sCAAsC"} \ No newline at end of file diff --git a/src/app/+admin/admin.module.js b/src/app/+admin/admin.module.js deleted file mode 100644 index 1fb1780ff6..0000000000 --- a/src/app/+admin/admin.module.js +++ /dev/null @@ -1,21 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { AdminRegistriesModule } from './admin-registries/admin-registries.module'; -import { AdminRoutingModule } from './admin-routing.module'; -import { SharedModule } from '../shared/shared.module'; -var AdminModule = /** @class */ (function () { - function AdminModule() { - } - AdminModule = tslib_1.__decorate([ - NgModule({ - imports: [ - AdminRegistriesModule, - AdminRoutingModule, - SharedModule, - ], - }) - ], AdminModule); - return AdminModule; -}()); -export { AdminModule }; -//# sourceMappingURL=admin.module.js.map \ No newline at end of file diff --git a/src/app/+admin/admin.module.js.map b/src/app/+admin/admin.module.js.map deleted file mode 100644 index 9bb27d056d..0000000000 --- a/src/app/+admin/admin.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"admin.module.js","sourceRoot":"","sources":["admin.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AASvD;IAAA;IAEA,CAAC;IAFY,WAAW;QAPvB,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,qBAAqB;gBACrB,kBAAkB;gBAClB,YAAY;aACb;SACF,CAAC;OACW,WAAW,CAEvB;IAAD,kBAAC;CAAA,AAFD,IAEC;SAFY,WAAW"} \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js b/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js deleted file mode 100644 index ac6269177e..0000000000 --- a/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js +++ /dev/null @@ -1,119 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, Inject } from '@angular/core'; -import { BrowseByMetadataPageComponent, browseParamsToOptions } from '../+browse-by-metadata-page/browse-by-metadata-page.component'; -import { BrowseEntrySearchOptions } from '../../core/browse/browse-entry-search-options.model'; -import { combineLatest as observableCombineLatest } from 'rxjs/internal/observable/combineLatest'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { ActivatedRoute, Router } from '@angular/router'; -import { BrowseService } from '../../core/browse/browse.service'; -import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { StartsWithType } from '../../shared/starts-with/starts-with-decorator'; -var BrowseByDatePageComponent = /** @class */ (function (_super) { - tslib_1.__extends(BrowseByDatePageComponent, _super); - function BrowseByDatePageComponent(config, route, browseService, dsoService, router, cdRef) { - var _this = _super.call(this, route, browseService, dsoService, router) || this; - _this.config = config; - _this.route = route; - _this.browseService = browseService; - _this.dsoService = dsoService; - _this.router = router; - _this.cdRef = cdRef; - /** - * The default metadata-field to use for determining the lower limit of the StartsWith dropdown options - */ - _this.defaultMetadataField = 'dc.date.issued'; - return _this; - } - BrowseByDatePageComponent.prototype.ngOnInit = function () { - var _this = this; - this.startsWithType = StartsWithType.date; - this.updatePage(new BrowseEntrySearchOptions(null, this.paginationConfig, this.sortConfig)); - this.subs.push(observableCombineLatest(this.route.params, this.route.queryParams, this.route.data, function (params, queryParams, data) { - return Object.assign({}, params, queryParams, data); - }) - .subscribe(function (params) { - var metadataField = params.metadataField || _this.defaultMetadataField; - _this.metadata = params.metadata || _this.defaultMetadata; - _this.startsWith = +params.startsWith || params.startsWith; - var searchOptions = browseParamsToOptions(params, Object.assign({}), _this.sortConfig, _this.metadata); - _this.updatePageWithItems(searchOptions, _this.value); - _this.updateParent(params.scope); - _this.updateStartsWithOptions(_this.metadata, metadataField, params.scope); - })); - }; - /** - * Update the StartsWith options - * In this implementation, it creates a list of years starting from now, going all the way back to the earliest - * date found on an item within this scope. The further back in time, the bigger the change in years become to avoid - * extremely long lists with a one-year difference. - * To determine the change in years, the config found under GlobalConfig.BrowseBy is used for this. - * @param definition The metadata definition to fetch the first item for - * @param metadataField The metadata field to fetch the earliest date from (expects a date field) - * @param scope The scope under which to fetch the earliest item for - */ - BrowseByDatePageComponent.prototype.updateStartsWithOptions = function (definition, metadataField, scope) { - var _this = this; - this.subs.push(this.browseService.getFirstItemFor(definition, scope).subscribe(function (firstItemRD) { - var lowerLimit = _this.config.browseBy.defaultLowerLimit; - if (hasValue(firstItemRD.payload)) { - var date = firstItemRD.payload.firstMetadataValue(metadataField); - if (hasValue(date) && hasValue(+date.split('-')[0])) { - lowerLimit = +date.split('-')[0]; - } - } - var options = []; - var currentYear = new Date().getFullYear(); - var oneYearBreak = Math.floor((currentYear - _this.config.browseBy.oneYearLimit) / 5) * 5; - var fiveYearBreak = Math.floor((currentYear - _this.config.browseBy.fiveYearLimit) / 10) * 10; - if (lowerLimit <= fiveYearBreak) { - lowerLimit -= 10; - } - else if (lowerLimit <= oneYearBreak) { - lowerLimit -= 5; - } - else { - lowerLimit -= 1; - } - var i = currentYear; - while (i > lowerLimit) { - options.push(i); - if (i <= fiveYearBreak) { - i -= 10; - } - else if (i <= oneYearBreak) { - i -= 5; - } - else { - i--; - } - } - if (isNotEmpty(options)) { - _this.startsWithOptions = options; - _this.cdRef.detectChanges(); - } - })); - }; - BrowseByDatePageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-browse-by-date-page', - styleUrls: ['../+browse-by-metadata-page/browse-by-metadata-page.component.scss'], - templateUrl: '../+browse-by-metadata-page/browse-by-metadata-page.component.html' - }) - /** - * Component for browsing items by metadata definition of type 'date' - * A metadata definition is a short term used to describe one or multiple metadata fields. - * An example would be 'dateissued' for 'dc.date.issued' - */ - , - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ActivatedRoute, - BrowseService, - DSpaceObjectDataService, - Router, - ChangeDetectorRef]) - ], BrowseByDatePageComponent); - return BrowseByDatePageComponent; -}(BrowseByMetadataPageComponent)); -export { BrowseByDatePageComponent }; -//# sourceMappingURL=browse-by-date-page.component.js.map \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js.map b/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js.map deleted file mode 100644 index 2307b06672..0000000000 --- a/src/app/+browse-by/+browse-by-date-page/browse-by-date-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-by-date-page.component.js","sourceRoot":"","sources":["browse-by-date-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js b/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js deleted file mode 100644 index 8b628ed6e6..0000000000 --- a/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js +++ /dev/null @@ -1,208 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { Component } from '@angular/core'; -import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; -import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; -import { ActivatedRoute, Router } from '@angular/router'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { BrowseService } from '../../core/browse/browse.service'; -import { BrowseEntrySearchOptions } from '../../core/browse/browse-entry-search-options.model'; -import { getSucceededRemoteData } from '../../core/shared/operators'; -import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.service'; -import { take } from 'rxjs/operators'; -import { StartsWithType } from '../../shared/starts-with/starts-with-decorator'; -var BrowseByMetadataPageComponent = /** @class */ (function () { - function BrowseByMetadataPageComponent(route, browseService, dsoService, router) { - this.route = route; - this.browseService = browseService; - this.dsoService = dsoService; - this.router = router; - /** - * The pagination config used to display the values - */ - this.paginationConfig = Object.assign(new PaginationComponentOptions(), { - id: 'browse-by-metadata-pagination', - currentPage: 1, - pageSize: 20 - }); - /** - * The sorting config used to sort the values (defaults to Ascending) - */ - this.sortConfig = new SortOptions('default', SortDirection.ASC); - /** - * List of subscriptions - */ - this.subs = []; - /** - * The default metadata definition to resort to when none is provided - */ - this.defaultMetadata = 'author'; - /** - * The current metadata definition - */ - this.metadata = this.defaultMetadata; - /** - * The type of StartsWith options to render - * Defaults to text - */ - this.startsWithType = StartsWithType.text; - /** - * The value we're browing items for - * - When the value is not empty, we're browsing items - * - When the value is empty, we're browsing browse-entries (values for the given metadata definition) - */ - this.value = ''; - } - BrowseByMetadataPageComponent.prototype.ngOnInit = function () { - var _this = this; - this.updatePage(new BrowseEntrySearchOptions(null, this.paginationConfig, this.sortConfig)); - this.subs.push(observableCombineLatest(this.route.params, this.route.queryParams, function (params, queryParams) { - return Object.assign({}, params, queryParams); - }) - .subscribe(function (params) { - _this.metadata = params.metadata || _this.defaultMetadata; - _this.value = +params.value || params.value || ''; - _this.startsWith = +params.startsWith || params.startsWith; - var searchOptions = browseParamsToOptions(params, _this.paginationConfig, _this.sortConfig, _this.metadata); - if (isNotEmpty(_this.value)) { - _this.updatePageWithItems(searchOptions, _this.value); - } - else { - _this.updatePage(searchOptions); - } - _this.updateParent(params.scope); - })); - this.updateStartsWithTextOptions(); - }; - /** - * Update the StartsWith options with text values - * It adds the value "0-9" as well as all letters from A to Z - */ - BrowseByMetadataPageComponent.prototype.updateStartsWithTextOptions = function () { - this.startsWithOptions = ['0-9'].concat('ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split('')); - }; - /** - * Updates the current page with searchOptions - * @param searchOptions Options to narrow down your search: - * { metadata: string - * pagination: PaginationComponentOptions, - * sort: SortOptions, - * scope: string } - */ - BrowseByMetadataPageComponent.prototype.updatePage = function (searchOptions) { - this.browseEntries$ = this.browseService.getBrowseEntriesFor(searchOptions); - this.items$ = undefined; - }; - /** - * Updates the current page with searchOptions and display items linked to the given value - * @param searchOptions Options to narrow down your search: - * { metadata: string - * pagination: PaginationComponentOptions, - * sort: SortOptions, - * scope: string } - * @param value The value of the browse-entry to display items for - */ - BrowseByMetadataPageComponent.prototype.updatePageWithItems = function (searchOptions, value) { - this.items$ = this.browseService.getBrowseItemsFor(value, searchOptions); - }; - /** - * Update the parent Community or Collection using their scope - * @param scope The UUID of the Community or Collection to fetch - */ - BrowseByMetadataPageComponent.prototype.updateParent = function (scope) { - if (hasValue(scope)) { - this.parent$ = this.dsoService.findById(scope).pipe(getSucceededRemoteData()); - } - }; - /** - * Navigate to the previous page - */ - BrowseByMetadataPageComponent.prototype.goPrev = function () { - var _this = this; - if (this.items$) { - this.items$.pipe(take(1)).subscribe(function (items) { - _this.items$ = _this.browseService.getPrevBrowseItems(items); - }); - } - else if (this.browseEntries$) { - this.browseEntries$.pipe(take(1)).subscribe(function (entries) { - _this.browseEntries$ = _this.browseService.getPrevBrowseEntries(entries); - }); - } - }; - /** - * Navigate to the next page - */ - BrowseByMetadataPageComponent.prototype.goNext = function () { - var _this = this; - if (this.items$) { - this.items$.pipe(take(1)).subscribe(function (items) { - _this.items$ = _this.browseService.getNextBrowseItems(items); - }); - } - else if (this.browseEntries$) { - this.browseEntries$.pipe(take(1)).subscribe(function (entries) { - _this.browseEntries$ = _this.browseService.getNextBrowseEntries(entries); - }); - } - }; - /** - * Change the page size - * @param size - */ - BrowseByMetadataPageComponent.prototype.pageSizeChange = function (size) { - this.router.navigate([], { - queryParams: Object.assign({ pageSize: size }), - queryParamsHandling: 'merge' - }); - }; - /** - * Change the sorting direction - * @param direction - */ - BrowseByMetadataPageComponent.prototype.sortDirectionChange = function (direction) { - this.router.navigate([], { - queryParams: Object.assign({ sortDirection: direction }), - queryParamsHandling: 'merge' - }); - }; - BrowseByMetadataPageComponent.prototype.ngOnDestroy = function () { - this.subs.filter(function (sub) { return hasValue(sub); }).forEach(function (sub) { return sub.unsubscribe(); }); - }; - BrowseByMetadataPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-browse-by-metadata-page', - styleUrls: ['./browse-by-metadata-page.component.scss'], - templateUrl: './browse-by-metadata-page.component.html' - }) - /** - * Component for browsing (items) by metadata definition - * A metadata definition is a short term used to describe one or multiple metadata fields. - * An example would be 'author' for 'dc.contributor.*' - */ - , - tslib_1.__metadata("design:paramtypes", [ActivatedRoute, - BrowseService, - DSpaceObjectDataService, - Router]) - ], BrowseByMetadataPageComponent); - return BrowseByMetadataPageComponent; -}()); -export { BrowseByMetadataPageComponent }; -/** - * Function to transform query and url parameters into searchOptions used to fetch browse entries or items - * @param params URL and query parameters - * @param paginationConfig Pagination configuration - * @param sortConfig Sorting configuration - * @param metadata Optional metadata definition to fetch browse entries/items for - */ -export function browseParamsToOptions(params, paginationConfig, sortConfig, metadata) { - return new BrowseEntrySearchOptions(metadata, Object.assign({}, paginationConfig, { - currentPage: +params.page || paginationConfig.currentPage, - pageSize: +params.pageSize || paginationConfig.pageSize - }), Object.assign({}, sortConfig, { - direction: params.sortDirection || sortConfig.direction, - field: params.sortField || sortConfig.field - }), +params.startsWith || params.startsWith, params.scope); -} -//# sourceMappingURL=browse-by-metadata-page.component.js.map \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js.map b/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js.map deleted file mode 100644 index 8f0d92ed65..0000000000 --- a/src/app/+browse-by/+browse-by-metadata-page/browse-by-metadata-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-by-metadata-page.component.js","sourceRoot":"","sources":["browse-by-metadata-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js b/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js deleted file mode 100644 index 5898e56095..0000000000 --- a/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js +++ /dev/null @@ -1,56 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { hasValue } from '../../shared/empty.util'; -import { BrowseByMetadataPageComponent, browseParamsToOptions } from '../+browse-by-metadata-page/browse-by-metadata-page.component'; -import { BrowseEntrySearchOptions } from '../../core/browse/browse-entry-search-options.model'; -import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.service'; -import { BrowseService } from '../../core/browse/browse.service'; -import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; -var BrowseByTitlePageComponent = /** @class */ (function (_super) { - tslib_1.__extends(BrowseByTitlePageComponent, _super); - function BrowseByTitlePageComponent(route, browseService, dsoService, router) { - var _this = _super.call(this, route, browseService, dsoService, router) || this; - _this.route = route; - _this.browseService = browseService; - _this.dsoService = dsoService; - _this.router = router; - return _this; - } - BrowseByTitlePageComponent.prototype.ngOnInit = function () { - var _this = this; - this.sortConfig = new SortOptions('dc.title', SortDirection.ASC); - this.updatePage(new BrowseEntrySearchOptions(null, this.paginationConfig, this.sortConfig)); - this.subs.push(observableCombineLatest(this.route.params, this.route.queryParams, this.route.data, function (params, queryParams, data) { - return Object.assign({}, params, queryParams, data); - }) - .subscribe(function (params) { - _this.metadata = params.metadata || _this.defaultMetadata; - _this.updatePageWithItems(browseParamsToOptions(params, _this.paginationConfig, _this.sortConfig, _this.metadata), undefined); - _this.updateParent(params.scope); - })); - this.updateStartsWithTextOptions(); - }; - BrowseByTitlePageComponent.prototype.ngOnDestroy = function () { - this.subs.filter(function (sub) { return hasValue(sub); }).forEach(function (sub) { return sub.unsubscribe(); }); - }; - BrowseByTitlePageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-browse-by-title-page', - styleUrls: ['../+browse-by-metadata-page/browse-by-metadata-page.component.scss'], - templateUrl: '../+browse-by-metadata-page/browse-by-metadata-page.component.html' - }) - /** - * Component for browsing items by title (dc.title) - */ - , - tslib_1.__metadata("design:paramtypes", [ActivatedRoute, - BrowseService, - DSpaceObjectDataService, - Router]) - ], BrowseByTitlePageComponent); - return BrowseByTitlePageComponent; -}(BrowseByMetadataPageComponent)); -export { BrowseByTitlePageComponent }; -//# sourceMappingURL=browse-by-title-page.component.js.map \ No newline at end of file diff --git a/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js.map b/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js.map deleted file mode 100644 index 885e2fa159..0000000000 --- a/src/app/+browse-by/+browse-by-title-page/browse-by-title-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-by-title-page.component.js","sourceRoot":"","sources":["browse-by-title-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,MAAM,MAAM,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,EACtB,MAAM,+DAA+D,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAUxF;IAAgD,sDAA6B;IAE3E,oCAA6B,KAAqB,EACrB,aAA4B,EAC5B,UAAmC,EACnC,MAAc;QAH3C,YAIE,kBAAM,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,CAAC,SAChD;QAL4B,WAAK,GAAL,KAAK,CAAgB;QACrB,mBAAa,GAAb,aAAa,CAAe;QAC5B,gBAAU,GAAV,UAAU,CAAyB;QACnC,YAAM,GAAN,MAAM,CAAQ;;IAE3C,CAAC;IAED,6CAAQ,GAAR;QAAA,iBAiBC;QAhBC,IAAI,CAAC,UAAU,GAAG,IAAI,WAAW,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,CAAC,IAAI,wBAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC5F,IAAI,CAAC,IAAI,CAAC,IAAI,CACZ,uBAAuB,CACrB,IAAI,CAAC,KAAK,CAAC,MAAM,EACjB,IAAI,CAAC,KAAK,CAAC,WAAW,EACtB,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,UAAC,MAAM,EAAE,WAAW,EAAE,IAAI;YACxB,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC;aACD,SAAS,CAAC,UAAC,MAAM;YAChB,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAI,CAAC,eAAe,CAAC;YACxD,KAAI,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,MAAM,EAAE,KAAI,CAAC,gBAAgB,EAAE,KAAI,CAAC,UAAU,EAAE,KAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;YAC1H,KAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACjC,CAAC,CAAC,CAAC,CAAC;QACR,IAAI,CAAC,2BAA2B,EAAE,CAAC;IACrC,CAAC;IAED,gDAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,GAAG,CAAC,EAAb,CAAa,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,WAAW,EAAE,EAAjB,CAAiB,CAAC,CAAC;IAC/E,CAAC;IA9BU,0BAA0B;QARtC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,oEAAoE,CAAC;YACjF,WAAW,EAAE,oEAAoE;SAClF,CAAC;QACF;;WAEG;;iDAGmC,cAAc;YACN,aAAa;YAChB,uBAAuB;YAC3B,MAAM;OALhC,0BAA0B,CAgCtC;IAAD,iCAAC;CAAA,AAhCD,CAAgD,6BAA6B,GAgC5E;SAhCY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+browse-by/browse-by-guard.js b/src/app/+browse-by/browse-by-guard.js deleted file mode 100644 index b717ee1353..0000000000 --- a/src/app/+browse-by/browse-by-guard.js +++ /dev/null @@ -1,57 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { DSpaceObjectDataService } from '../core/data/dspace-object-data.service'; -import { hasValue } from '../shared/empty.util'; -import { map } from 'rxjs/operators'; -import { getSucceededRemoteData } from '../core/shared/operators'; -import { TranslateService } from '@ngx-translate/core'; -import { of as observableOf } from 'rxjs'; -var BrowseByGuard = /** @class */ (function () { - function BrowseByGuard(dsoService, translate) { - this.dsoService = dsoService; - this.translate = translate; - } - BrowseByGuard.prototype.canActivate = function (route, state) { - var _this = this; - var title = route.data.title; - var metadata = route.params.metadata || route.queryParams.metadata || route.data.metadata; - var metadataField = route.data.metadataField; - var scope = route.queryParams.scope; - var value = route.queryParams.value; - var metadataTranslated = this.translate.instant('browse.metadata.' + metadata); - if (hasValue(scope)) { - var dsoAndMetadata$ = this.dsoService.findById(scope).pipe(getSucceededRemoteData()); - return dsoAndMetadata$.pipe(map(function (dsoRD) { - var name = dsoRD.payload.name; - route.data = _this.createData(title, metadata, metadataField, name, metadataTranslated, value); - return true; - })); - } - else { - route.data = this.createData(title, metadata, metadataField, '', metadataTranslated, value); - return observableOf(true); - } - }; - BrowseByGuard.prototype.createData = function (title, metadata, metadataField, collection, field, value) { - return { - title: title, - metadata: metadata, - metadataField: metadataField, - collection: collection, - field: field, - value: hasValue(value) ? "\"" + value + "\"" : '' - }; - }; - BrowseByGuard = tslib_1.__decorate([ - Injectable() - /** - * A guard taking care of the correct route.data being set for the Browse-By components - */ - , - tslib_1.__metadata("design:paramtypes", [DSpaceObjectDataService, - TranslateService]) - ], BrowseByGuard); - return BrowseByGuard; -}()); -export { BrowseByGuard }; -//# sourceMappingURL=browse-by-guard.js.map \ No newline at end of file diff --git a/src/app/+browse-by/browse-by-guard.js.map b/src/app/+browse-by/browse-by-guard.js.map deleted file mode 100644 index 9d5ad93e14..0000000000 --- a/src/app/+browse-by/browse-by-guard.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-by-guard.js","sourceRoot":"","sources":["browse-by-guard.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAM1C;IAEE,uBAAsB,UAAmC,EACnC,SAA2B;QAD3B,eAAU,GAAV,UAAU,CAAyB;QACnC,cAAS,GAAT,SAAS,CAAkB;IACjD,CAAC;IAED,mCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QAArE,iBAoBC;QAnBC,IAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QAC/B,IAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC5F,IAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;QAC/C,IAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;QACtC,IAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;QACtC,IAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,GAAG,QAAQ,CAAC,CAAC;QACjF,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,IAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;YACvF,OAAO,eAAe,CAAC,IAAI,CACzB,GAAG,CAAC,UAAC,KAAK;gBACR,IAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAChC,KAAK,CAAC,IAAI,GAAG,KAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;gBAC9F,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CACH,CAAC;SACH;aAAM;YACL,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;YAC5F,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;SAC3B;IACH,CAAC;IAEO,kCAAU,GAAlB,UAAmB,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK;QACzE,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,QAAQ,EAAE,QAAQ;YAClB,aAAa,EAAE,aAAa;YAC5B,UAAU,EAAE,UAAU;YACtB,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAI,KAAK,OAAG,CAAC,CAAC,CAAC,EAAE;SAC3C,CAAA;IACH,CAAC;IArCU,aAAa;QAJzB,UAAU,EAAE;QACb;;WAEG;;iDAGiC,uBAAuB;YACxB,gBAAgB;OAHtC,aAAa,CAsCzB;IAAD,oBAAC;CAAA,AAtCD,IAsCC;SAtCY,aAAa"} \ No newline at end of file diff --git a/src/app/+browse-by/browse-by-routing.module.js b/src/app/+browse-by/browse-by-routing.module.js deleted file mode 100644 index 18bc2d39be..0000000000 --- a/src/app/+browse-by/browse-by-routing.module.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { RouterModule } from '@angular/router'; -import { NgModule } from '@angular/core'; -import { BrowseByTitlePageComponent } from './+browse-by-title-page/browse-by-title-page.component'; -import { BrowseByMetadataPageComponent } from './+browse-by-metadata-page/browse-by-metadata-page.component'; -import { BrowseByDatePageComponent } from './+browse-by-date-page/browse-by-date-page.component'; -import { BrowseByGuard } from './browse-by-guard'; -var BrowseByRoutingModule = /** @class */ (function () { - function BrowseByRoutingModule() { - } - BrowseByRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { path: 'title', component: BrowseByTitlePageComponent, canActivate: [BrowseByGuard], data: { metadata: 'title', title: 'browse.title' } }, - { path: 'dateissued', component: BrowseByDatePageComponent, canActivate: [BrowseByGuard], data: { metadata: 'dateissued', metadataField: 'dc.date.issued', title: 'browse.title' } }, - { path: ':metadata', component: BrowseByMetadataPageComponent, canActivate: [BrowseByGuard], data: { title: 'browse.title' } } - ]) - ] - }) - ], BrowseByRoutingModule); - return BrowseByRoutingModule; -}()); -export { BrowseByRoutingModule }; -//# sourceMappingURL=browse-by-routing.module.js.map \ No newline at end of file diff --git a/src/app/+browse-by/browse-by-routing.module.js.map b/src/app/+browse-by/browse-by-routing.module.js.map deleted file mode 100644 index f30accd10a..0000000000 --- a/src/app/+browse-by/browse-by-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-by-routing.module.js","sourceRoot":"","sources":["browse-by-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAC7G,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAWlD;IAAA;IAEA,CAAC;IAFY,qBAAqB;QATjC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,WAAW,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;oBAC1I,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,yBAAyB,EAAE,WAAW,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;oBACpL,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,6BAA6B,EAAE,WAAW,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;iBAC/H,CAAC;aACH;SACF,CAAC;OACW,qBAAqB,CAEjC;IAAD,4BAAC;CAAA,AAFD,IAEC;SAFY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+browse-by/browse-by.module.js b/src/app/+browse-by/browse-by.module.js deleted file mode 100644 index 4853ba7d8d..0000000000 --- a/src/app/+browse-by/browse-by.module.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { BrowseByTitlePageComponent } from './+browse-by-title-page/browse-by-title-page.component'; -import { ItemDataService } from '../core/data/item-data.service'; -import { SharedModule } from '../shared/shared.module'; -import { BrowseByRoutingModule } from './browse-by-routing.module'; -import { BrowseService } from '../core/browse/browse.service'; -import { BrowseByMetadataPageComponent } from './+browse-by-metadata-page/browse-by-metadata-page.component'; -import { BrowseByDatePageComponent } from './+browse-by-date-page/browse-by-date-page.component'; -import { BrowseByGuard } from './browse-by-guard'; -var BrowseByModule = /** @class */ (function () { - function BrowseByModule() { - } - BrowseByModule = tslib_1.__decorate([ - NgModule({ - imports: [ - BrowseByRoutingModule, - CommonModule, - SharedModule - ], - declarations: [ - BrowseByTitlePageComponent, - BrowseByMetadataPageComponent, - BrowseByDatePageComponent - ], - providers: [ - ItemDataService, - BrowseService, - BrowseByGuard - ] - }) - ], BrowseByModule); - return BrowseByModule; -}()); -export { BrowseByModule }; -//# sourceMappingURL=browse-by.module.js.map \ No newline at end of file diff --git a/src/app/+browse-by/browse-by.module.js.map b/src/app/+browse-by/browse-by.module.js.map deleted file mode 100644 index 849859a17b..0000000000 --- a/src/app/+browse-by/browse-by.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-by.module.js","sourceRoot":"","sources":["browse-by.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,8DAA8D,CAAC;AAC7G,OAAO,EAAE,yBAAyB,EAAE,MAAM,sDAAsD,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAmBlD;IAAA;IAEA,CAAC;IAFY,cAAc;QAjB1B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,qBAAqB;gBACrB,YAAY;gBACZ,YAAY;aACb;YACD,YAAY,EAAE;gBACZ,0BAA0B;gBAC1B,6BAA6B;gBAC7B,yBAAyB;aAC1B;YACD,SAAS,EAAE;gBACT,eAAe;gBACf,aAAa;gBACb,aAAa;aACd;SACF,CAAC;OACW,cAAc,CAE1B;IAAD,qBAAC;CAAA,AAFD,IAEC;SAFY,cAAc"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-form/collection-form.component.js b/src/app/+collection-page/collection-form/collection-form.component.js deleted file mode 100644 index dcedd039e1..0000000000 --- a/src/app/+collection-page/collection-form/collection-form.component.js +++ /dev/null @@ -1,79 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { DynamicInputModel, DynamicTextAreaModel } from '@ng-dynamic-forms/core'; -import { ResourceType } from '../../core/shared/resource-type'; -import { Collection } from '../../core/shared/collection.model'; -import { ComColFormComponent } from '../../shared/comcol-forms/comcol-form/comcol-form.component'; -/** - * Form used for creating and editing collections - */ -var CollectionFormComponent = /** @class */ (function (_super) { - tslib_1.__extends(CollectionFormComponent, _super); - function CollectionFormComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * @type {Collection} A new collection when a collection is being created, an existing Input collection when a collection is being edited - */ - _this.dso = new Collection(); - /** - * @type {ResourceType.Collection} This is a collection-type form - */ - _this.type = ResourceType.Collection; - /** - * The dynamic form fields used for creating/editing a collection - * @type {(DynamicInputModel | DynamicTextAreaModel)[]} - */ - _this.formModel = [ - new DynamicInputModel({ - id: 'title', - name: 'dc.title', - required: true, - validators: { - required: null - }, - errorMessages: { - required: 'Please enter a name for this title' - }, - }), - new DynamicTextAreaModel({ - id: 'description', - name: 'dc.description', - }), - new DynamicTextAreaModel({ - id: 'abstract', - name: 'dc.description.abstract', - }), - new DynamicTextAreaModel({ - id: 'rights', - name: 'dc.rights', - }), - new DynamicTextAreaModel({ - id: 'tableofcontents', - name: 'dc.description.tableofcontents', - }), - new DynamicTextAreaModel({ - id: 'license', - name: 'dc.rights.license', - }), - new DynamicTextAreaModel({ - id: 'provenance', - name: 'dc.description.provenance', - }), - ]; - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Collection) - ], CollectionFormComponent.prototype, "dso", void 0); - CollectionFormComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-collection-form', - styleUrls: ['../../shared/comcol-forms/comcol-form/comcol-form.component.scss'], - templateUrl: '../../shared/comcol-forms/comcol-form/comcol-form.component.html' - }) - ], CollectionFormComponent); - return CollectionFormComponent; -}(ComColFormComponent)); -export { CollectionFormComponent }; -//# sourceMappingURL=collection-form.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-form/collection-form.component.js.map b/src/app/+collection-page/collection-form/collection-form.component.js.map deleted file mode 100644 index d561e71f40..0000000000 --- a/src/app/+collection-page/collection-form/collection-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-form.component.js","sourceRoot":"","sources":["collection-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AAElG;;GAEG;AAMH;IAA6C,mDAA+B;IAL5E;QAAA,qEAyDC;QAnDC;;WAEG;QACM,SAAG,GAAe,IAAI,UAAU,EAAE,CAAC;QAE5C;;WAEG;QACO,UAAI,GAAG,YAAY,CAAC,UAAU,CAAC;QAEzC;;;WAGG;QACH,eAAS,GAA8B;YACrC,IAAI,iBAAiB,CAAC;gBACpB,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE,IAAI;iBACf;gBACD,aAAa,EAAE;oBACb,QAAQ,EAAE,oCAAoC;iBAC/C;aACF,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,aAAa;gBACjB,IAAI,EAAE,gBAAgB;aACvB,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,yBAAyB;aAChC,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,QAAQ;gBACZ,IAAI,EAAE,WAAW;aAClB,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,iBAAiB;gBACrB,IAAI,EAAE,gCAAgC;aACvC,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,SAAS;gBACb,IAAI,EAAE,mBAAmB;aAC1B,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,2BAA2B;aAClC,CAAC;SACH,CAAC;;IACJ,CAAC;IAhDU;QAAR,KAAK,EAAE;0CAAM,UAAU;wDAAoB;IAJjC,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,kEAAkE,CAAC;YAC/E,WAAW,EAAE,kEAAkE;SAChF,CAAC;OACW,uBAAuB,CAoDnC;IAAD,8BAAC;CAAA,AApDD,CAA6C,mBAAmB,GAoD/D;SApDY,uBAAuB"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-page-routing.module.js b/src/app/+collection-page/collection-page-routing.module.js deleted file mode 100644 index 5f6eca2d75..0000000000 --- a/src/app/+collection-page/collection-page-routing.module.js +++ /dev/null @@ -1,74 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { CollectionPageComponent } from './collection-page.component'; -import { CollectionPageResolver } from './collection-page.resolver'; -import { CreateCollectionPageComponent } from './create-collection-page/create-collection-page.component'; -import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; -import { EditCollectionPageComponent } from './edit-collection-page/edit-collection-page.component'; -import { CreateCollectionPageGuard } from './create-collection-page/create-collection-page.guard'; -import { DeleteCollectionPageComponent } from './delete-collection-page/delete-collection-page.component'; -import { URLCombiner } from '../core/url-combiner/url-combiner'; -import { getCollectionModulePath } from '../app-routing.module'; -export var COLLECTION_PARENT_PARAMETER = 'parent'; -export function getCollectionPageRoute(collectionId) { - return new URLCombiner(getCollectionModulePath(), collectionId).toString(); -} -export function getCollectionEditPath(id) { - return new URLCombiner(getCollectionModulePath(), COLLECTION_EDIT_PATH.replace(/:id/, id)).toString(); -} -export function getCollectionCreatePath() { - return new URLCombiner(getCollectionModulePath(), COLLECTION_CREATE_PATH).toString(); -} -var COLLECTION_CREATE_PATH = 'create'; -var COLLECTION_EDIT_PATH = ':id/edit'; -var CollectionPageRoutingModule = /** @class */ (function () { - function CollectionPageRoutingModule() { - } - CollectionPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { - path: COLLECTION_CREATE_PATH, - component: CreateCollectionPageComponent, - canActivate: [AuthenticatedGuard, CreateCollectionPageGuard] - }, - { - path: COLLECTION_EDIT_PATH, - pathMatch: 'full', - component: EditCollectionPageComponent, - canActivate: [AuthenticatedGuard], - resolve: { - dso: CollectionPageResolver - } - }, - { - path: ':id/delete', - pathMatch: 'full', - component: DeleteCollectionPageComponent, - canActivate: [AuthenticatedGuard], - resolve: { - dso: CollectionPageResolver - } - }, - { - path: ':id', - component: CollectionPageComponent, - pathMatch: 'full', - resolve: { - collection: CollectionPageResolver - } - } - ]) - ], - providers: [ - CollectionPageResolver, - CreateCollectionPageGuard - ] - }) - ], CollectionPageRoutingModule); - return CollectionPageRoutingModule; -}()); -export { CollectionPageRoutingModule }; -//# sourceMappingURL=collection-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-page-routing.module.js.map b/src/app/+collection-page/collection-page-routing.module.js.map deleted file mode 100644 index bc3a317829..0000000000 --- a/src/app/+collection-page/collection-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-page-routing.module.js","sourceRoot":"","sources":["collection-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,MAAM,CAAC,IAAM,2BAA2B,GAAG,QAAQ,CAAC;AAEpD,MAAM,iCAAiC,YAAoB;IACzD,OAAO,IAAI,WAAW,CAAC,uBAAuB,EAAE,EAAE,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC7E,CAAC;AAED,MAAM,gCAAgC,EAAU;IAC9C,OAAO,IAAI,WAAW,CAAC,uBAAuB,EAAE,EAAE,oBAAoB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AACvG,CAAC;AAED,MAAM;IACJ,OAAO,IAAI,WAAW,CAAC,uBAAuB,EAAE,EAAE,sBAAsB,CAAC,CAAC,QAAQ,EAAE,CAAA;AACtF,CAAC;AAED,IAAM,sBAAsB,GAAG,QAAQ,CAAC;AACxC,IAAM,oBAAoB,GAAG,UAAU,CAAC;AA2CxC;IAAA;IAEA,CAAC;IAFY,2BAA2B;QAzCvC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,sBAAsB;wBAC5B,SAAS,EAAE,6BAA6B;wBACxC,WAAW,EAAE,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;qBAC7D;oBACD;wBACE,IAAI,EAAE,oBAAoB;wBAC1B,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,2BAA2B;wBACtC,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,OAAO,EAAE;4BACP,GAAG,EAAE,sBAAsB;yBAC5B;qBACF;oBACD;wBACE,IAAI,EAAE,YAAY;wBAClB,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,6BAA6B;wBACxC,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,OAAO,EAAE;4BACP,GAAG,EAAE,sBAAsB;yBAC5B;qBACF;oBACD;wBACE,IAAI,EAAE,KAAK;wBACX,SAAS,EAAE,uBAAuB;wBAClC,SAAS,EAAE,MAAM;wBACjB,OAAO,EAAE;4BACP,UAAU,EAAE,sBAAsB;yBACnC;qBACF;iBACF,CAAC;aACH;YACD,SAAS,EAAE;gBACT,sBAAsB;gBACtB,yBAAyB;aAC1B;SACF,CAAC;OACW,2BAA2B,CAEvC;IAAD,kCAAC;CAAA,AAFD,IAEC;SAFY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.component.js b/src/app/+collection-page/collection-page.component.js deleted file mode 100644 index a742e85a08..0000000000 --- a/src/app/+collection-page/collection-page.component.js +++ /dev/null @@ -1,84 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { BehaviorSubject } from 'rxjs'; -import { filter, flatMap, map, startWith, switchMap, take } from 'rxjs/operators'; -import { PaginatedSearchOptions } from '../+search-page/paginated-search-options.model'; -import { SearchService } from '../+search-page/search-service/search.service'; -import { SortDirection, SortOptions } from '../core/cache/models/sort-options.model'; -import { CollectionDataService } from '../core/data/collection-data.service'; -import { MetadataService } from '../core/metadata/metadata.service'; -import { DSpaceObjectType } from '../core/shared/dspace-object-type.model'; -import { getSucceededRemoteData, redirectToPageNotFoundOn404, toDSpaceObjectListRD } from '../core/shared/operators'; -import { fadeIn, fadeInOut } from '../shared/animations/fade'; -import { hasValue, isNotEmpty } from '../shared/empty.util'; -import { PaginationComponentOptions } from '../shared/pagination/pagination-component-options.model'; -var CollectionPageComponent = /** @class */ (function () { - function CollectionPageComponent(collectionDataService, searchService, metadata, route, router) { - this.collectionDataService = collectionDataService; - this.searchService = searchService; - this.metadata = metadata; - this.route = route; - this.router = router; - this.paginationConfig = new PaginationComponentOptions(); - this.paginationConfig.id = 'collection-page-pagination'; - this.paginationConfig.pageSize = 5; - this.paginationConfig.currentPage = 1; - this.sortConfig = new SortOptions('dc.date.accessioned', SortDirection.DESC); - } - CollectionPageComponent.prototype.ngOnInit = function () { - var _this = this; - this.collectionRD$ = this.route.data.pipe(map(function (data) { return data.collection; }), redirectToPageNotFoundOn404(this.router), take(1)); - this.logoRD$ = this.collectionRD$.pipe(map(function (rd) { return rd.payload; }), filter(function (collection) { return hasValue(collection); }), flatMap(function (collection) { return collection.logo; })); - this.paginationChanges$ = new BehaviorSubject({ - paginationConfig: this.paginationConfig, - sortConfig: this.sortConfig - }); - this.itemRD$ = this.paginationChanges$.pipe(switchMap(function (dto) { return _this.collectionRD$.pipe(getSucceededRemoteData(), map(function (rd) { return rd.payload.id; }), switchMap(function (id) { - return _this.searchService.search(new PaginatedSearchOptions({ - scope: id, - pagination: dto.paginationConfig, - sort: dto.sortConfig, - dsoType: DSpaceObjectType.ITEM - })).pipe(toDSpaceObjectListRD()); - }), startWith(undefined) // Make sure switching pages shows loading component - ); })); - this.route.queryParams.pipe(take(1)).subscribe(function (params) { - _this.metadata.processRemoteData(_this.collectionRD$); - _this.onPaginationChange(params); - }); - }; - CollectionPageComponent.prototype.isNotEmpty = function (object) { - return isNotEmpty(object); - }; - CollectionPageComponent.prototype.onPaginationChange = function (event) { - this.paginationConfig.currentPage = +event.page || this.paginationConfig.currentPage; - this.paginationConfig.pageSize = +event.pageSize || this.paginationConfig.pageSize; - this.sortConfig.direction = event.sortDirection || this.sortConfig.direction; - this.sortConfig.field = event.sortField || this.sortConfig.field; - this.paginationChanges$.next({ - paginationConfig: this.paginationConfig, - sortConfig: this.sortConfig - }); - }; - CollectionPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-collection-page', - styleUrls: ['./collection-page.component.scss'], - templateUrl: './collection-page.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [ - fadeIn, - fadeInOut - ] - }), - tslib_1.__metadata("design:paramtypes", [CollectionDataService, - SearchService, - MetadataService, - ActivatedRoute, - Router]) - ], CollectionPageComponent); - return CollectionPageComponent; -}()); -export { CollectionPageComponent }; -//# sourceMappingURL=collection-page.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.component.js.map b/src/app/+collection-page/collection-page.component.js.map deleted file mode 100644 index b8afa2f9eb..0000000000 --- a/src/app/+collection-page/collection-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-page.component.js","sourceRoot":"","sources":["collection-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.module.js b/src/app/+collection-page/collection-page.module.js deleted file mode 100644 index a120a2afc2..0000000000 --- a/src/app/+collection-page/collection-page.module.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { SharedModule } from '../shared/shared.module'; -import { CollectionPageComponent } from './collection-page.component'; -import { CollectionPageRoutingModule } from './collection-page-routing.module'; -import { CreateCollectionPageComponent } from './create-collection-page/create-collection-page.component'; -import { CollectionFormComponent } from './collection-form/collection-form.component'; -import { EditCollectionPageComponent } from './edit-collection-page/edit-collection-page.component'; -import { DeleteCollectionPageComponent } from './delete-collection-page/delete-collection-page.component'; -import { SearchService } from '../+search-page/search-service/search.service'; -var CollectionPageModule = /** @class */ (function () { - function CollectionPageModule() { - } - CollectionPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule, - CollectionPageRoutingModule - ], - declarations: [ - CollectionPageComponent, - CreateCollectionPageComponent, - EditCollectionPageComponent, - DeleteCollectionPageComponent, - CollectionFormComponent - ], - providers: [ - SearchService - ] - }) - ], CollectionPageModule); - return CollectionPageModule; -}()); -export { CollectionPageModule }; -//# sourceMappingURL=collection-page.module.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.module.js.map b/src/app/+collection-page/collection-page.module.js.map deleted file mode 100644 index d22adee8b0..0000000000 --- a/src/app/+collection-page/collection-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-page.module.js","sourceRoot":"","sources":["collection-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AACpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAC;AAC1G,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAmB9E;IAAA;IAEA,CAAC;IAFY,oBAAoB;QAjBhC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,2BAA2B;aAC5B;YACD,YAAY,EAAE;gBACZ,uBAAuB;gBACvB,6BAA6B;gBAC7B,2BAA2B;gBAC3B,6BAA6B;gBAC7B,uBAAuB;aACxB;YACD,SAAS,EAAE;gBACT,aAAa;aACd;SACF,CAAC;OACW,oBAAoB,CAEhC;IAAD,2BAAC;CAAA,AAFD,IAEC;SAFY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.resolver.js b/src/app/+collection-page/collection-page.resolver.js deleted file mode 100644 index c89a239f95..0000000000 --- a/src/app/+collection-page/collection-page.resolver.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { CollectionDataService } from '../core/data/collection-data.service'; -import { find } from 'rxjs/operators'; -import { hasValue } from '../shared/empty.util'; -/** - * This class represents a resolver that requests a specific collection before the route is activated - */ -var CollectionPageResolver = /** @class */ (function () { - function CollectionPageResolver(collectionService) { - this.collectionService = collectionService; - } - /** - * Method for resolving a collection based on the parameters in the current route - * @param {ActivatedRouteSnapshot} route The current ActivatedRouteSnapshot - * @param {RouterStateSnapshot} state The current RouterStateSnapshot - * @returns Observable<> Emits the found collection based on the parameters in the current route, - * or an error if something went wrong - */ - CollectionPageResolver.prototype.resolve = function (route, state) { - return this.collectionService.findById(route.params.id).pipe(find(function (RD) { return hasValue(RD.error) || RD.hasSucceeded; })); - }; - CollectionPageResolver = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [CollectionDataService]) - ], CollectionPageResolver); - return CollectionPageResolver; -}()); -export { CollectionPageResolver }; -//# sourceMappingURL=collection-page.resolver.js.map \ No newline at end of file diff --git a/src/app/+collection-page/collection-page.resolver.js.map b/src/app/+collection-page/collection-page.resolver.js.map deleted file mode 100644 index 3dfba260e5..0000000000 --- a/src/app/+collection-page/collection-page.resolver.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-page.resolver.js","sourceRoot":"","sources":["collection-page.resolver.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;GAEG;AAEH;IACE,gCAAoB,iBAAwC;QAAxC,sBAAiB,GAAjB,iBAAiB,CAAuB;IAC5D,CAAC;IAED;;;;;;OAMG;IACH,wCAAO,GAAP,UAAQ,KAA6B,EAAE,KAA0B;QAC/D,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAC1D,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,YAAY,EAArC,CAAqC,CAAC,CACpD,CAAC;IACJ,CAAC;IAfU,sBAAsB;QADlC,UAAU,EAAE;iDAE4B,qBAAqB;OADjD,sBAAsB,CAgBlC;IAAD,6BAAC;CAAA,AAhBD,IAgBC;SAhBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+collection-page/create-collection-page/create-collection-page.component.js b/src/app/+collection-page/create-collection-page/create-collection-page.component.js deleted file mode 100644 index 8f97a4ea87..0000000000 --- a/src/app/+collection-page/create-collection-page/create-collection-page.component.js +++ /dev/null @@ -1,36 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { CommunityDataService } from '../../core/data/community-data.service'; -import { RouteService } from '../../shared/services/route.service'; -import { Router } from '@angular/router'; -import { CreateComColPageComponent } from '../../shared/comcol-forms/create-comcol-page/create-comcol-page.component'; -import { CollectionDataService } from '../../core/data/collection-data.service'; -/** - * Component that represents the page where a user can create a new Collection - */ -var CreateCollectionPageComponent = /** @class */ (function (_super) { - tslib_1.__extends(CreateCollectionPageComponent, _super); - function CreateCollectionPageComponent(communityDataService, collectionDataService, routeService, router) { - var _this = _super.call(this, collectionDataService, communityDataService, routeService, router) || this; - _this.communityDataService = communityDataService; - _this.collectionDataService = collectionDataService; - _this.routeService = routeService; - _this.router = router; - _this.frontendURL = '/collections/'; - return _this; - } - CreateCollectionPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-create-collection', - styleUrls: ['./create-collection-page.component.scss'], - templateUrl: './create-collection-page.component.html' - }), - tslib_1.__metadata("design:paramtypes", [CommunityDataService, - CollectionDataService, - RouteService, - Router]) - ], CreateCollectionPageComponent); - return CreateCollectionPageComponent; -}(CreateComColPageComponent)); -export { CreateCollectionPageComponent }; -//# sourceMappingURL=create-collection-page.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/create-collection-page/create-collection-page.component.js.map b/src/app/+collection-page/create-collection-page/create-collection-page.component.js.map deleted file mode 100644 index 2535e67a1e..0000000000 --- a/src/app/+collection-page/create-collection-page/create-collection-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"create-collection-page.component.js","sourceRoot":"","sources":["create-collection-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2EAA2E,CAAC;AAEtH,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF;;GAEG;AAMH;IAAmD,yDAAqC;IAGtF,uCACY,oBAA0C,EAC1C,qBAA4C,EAC5C,YAA0B,EAC1B,MAAc;QAJ1B,YAME,kBAAM,qBAAqB,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,CAAC,SACzE;QANW,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,2BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,kBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAM,GAAN,MAAM,CAAQ;QANhB,iBAAW,GAAG,eAAe,CAAC;;IASxC,CAAC;IAVU,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;iDAKkC,oBAAoB;YACnB,qBAAqB;YAC9B,YAAY;YAClB,MAAM;OAPf,6BAA6B,CAWzC;IAAD,oCAAC;CAAA,AAXD,CAAmD,yBAAyB,GAW3E;SAXY,6BAA6B"} \ No newline at end of file diff --git a/src/app/+collection-page/create-collection-page/create-collection-page.guard.js b/src/app/+collection-page/create-collection-page/create-collection-page.guard.js deleted file mode 100644 index 41d75851c9..0000000000 --- a/src/app/+collection-page/create-collection-page/create-collection-page.guard.js +++ /dev/null @@ -1,45 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Router } from '@angular/router'; -import { hasNoValue, hasValue } from '../../shared/empty.util'; -import { CommunityDataService } from '../../core/data/community-data.service'; -import { getFinishedRemoteData } from '../../core/shared/operators'; -import { map, tap } from 'rxjs/operators'; -import { of as observableOf } from 'rxjs'; -/** - * Prevent creation of a collection without a parent community provided - * @class CreateCollectionPageGuard - */ -var CreateCollectionPageGuard = /** @class */ (function () { - function CreateCollectionPageGuard(router, communityService) { - this.router = router; - this.communityService = communityService; - } - /** - * True when either a parent ID query parameter has been provided and the parent ID resolves to a valid parent community - * Reroutes to a 404 page when the page cannot be activated - * @method canActivate - */ - CreateCollectionPageGuard.prototype.canActivate = function (route, state) { - var _this = this; - var parentID = route.queryParams.parent; - if (hasNoValue(parentID)) { - this.router.navigate(['/404']); - return observableOf(false); - } - var parent = this.communityService.findById(parentID) - .pipe(getFinishedRemoteData()); - return parent.pipe(map(function (communityRD) { return hasValue(communityRD) && communityRD.hasSucceeded && hasValue(communityRD.payload); }), tap(function (isValid) { - if (!isValid) { - _this.router.navigate(['/404']); - } - })); - }; - CreateCollectionPageGuard = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Router, CommunityDataService]) - ], CreateCollectionPageGuard); - return CreateCollectionPageGuard; -}()); -export { CreateCollectionPageGuard }; -//# sourceMappingURL=create-collection-page.guard.js.map \ No newline at end of file diff --git a/src/app/+collection-page/create-collection-page/create-collection-page.guard.js.map b/src/app/+collection-page/create-collection-page/create-collection-page.guard.js.map deleted file mode 100644 index 77d53f7057..0000000000 --- a/src/app/+collection-page/create-collection-page/create-collection-page.guard.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"create-collection-page.guard.js","sourceRoot":"","sources":["create-collection-page.guard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAuC,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAG9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAEtD;;;GAGG;AAEH;IACE,mCAA2B,MAAc,EAAU,gBAAsC;QAA9D,WAAM,GAAN,MAAM,CAAQ;QAAU,qBAAgB,GAAhB,gBAAgB,CAAsB;IACzF,CAAC;IAED;;;;OAIG;IACH,+CAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QAArE,iBAmBC;QAlBC,IAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;QAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;YACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/B,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;SAC5B;QACD,IAAM,MAAM,GAAsC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;aACvF,IAAI,CACH,qBAAqB,EAAE,CACxB,CAAC;QAEJ,OAAO,MAAM,CAAC,IAAI,CAChB,GAAG,CAAC,UAAC,WAAkC,IAAK,OAAA,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,YAAY,IAAI,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAlF,CAAkF,CAAC,EAC/H,GAAG,CAAC,UAAC,OAAgB;YACnB,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IA5BU,yBAAyB;QADrC,UAAU,EAAE;iDAEwB,MAAM,EAA4B,oBAAoB;OAD9E,yBAAyB,CA6BrC;IAAD,gCAAC;CAAA,AA7BD,IA6BC;SA7BY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js b/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js deleted file mode 100644 index c665f0f566..0000000000 --- a/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { DeleteComColPageComponent } from '../../shared/comcol-forms/delete-comcol-page/delete-comcol-page.component'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { CollectionDataService } from '../../core/data/collection-data.service'; -import { TranslateService } from '@ngx-translate/core'; -/** - * Component that represents the page where a user can delete an existing Collection - */ -var DeleteCollectionPageComponent = /** @class */ (function (_super) { - tslib_1.__extends(DeleteCollectionPageComponent, _super); - function DeleteCollectionPageComponent(dsoDataService, router, route, notifications, translate) { - var _this = _super.call(this, dsoDataService, router, route, notifications, translate) || this; - _this.dsoDataService = dsoDataService; - _this.router = router; - _this.route = route; - _this.notifications = notifications; - _this.translate = translate; - _this.frontendURL = '/collections/'; - return _this; - } - DeleteCollectionPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-delete-collection', - styleUrls: ['./delete-collection-page.component.scss'], - templateUrl: './delete-collection-page.component.html' - }), - tslib_1.__metadata("design:paramtypes", [CollectionDataService, - Router, - ActivatedRoute, - NotificationsService, - TranslateService]) - ], DeleteCollectionPageComponent); - return DeleteCollectionPageComponent; -}(DeleteComColPageComponent)); -export { DeleteCollectionPageComponent }; -//# sourceMappingURL=delete-collection-page.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js.map b/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js.map deleted file mode 100644 index 00071e93c9..0000000000 --- a/src/app/+collection-page/delete-collection-page/delete-collection-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"delete-collection-page.component.js","sourceRoot":"","sources":["delete-collection-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2EAA2E,CAAC;AACtH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;GAEG;AAMH;IAAmD,yDAAqC;IAGtF,uCACY,cAAqC,EACrC,MAAc,EACd,KAAqB,EACrB,aAAmC,EACnC,SAA2B;QALvC,YAOE,kBAAM,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,SAC/D;QAPW,oBAAc,GAAd,cAAc,CAAuB;QACrC,YAAM,GAAN,MAAM,CAAQ;QACd,WAAK,GAAL,KAAK,CAAgB;QACrB,mBAAa,GAAb,aAAa,CAAsB;QACnC,eAAS,GAAT,SAAS,CAAkB;QAP7B,iBAAW,GAAG,eAAe,CAAC;;IAUxC,CAAC;IAXU,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;iDAK4B,qBAAqB;YAC7B,MAAM;YACP,cAAc;YACN,oBAAoB;YACxB,gBAAgB;OAR5B,6BAA6B,CAYzC;IAAD,oCAAC;CAAA,AAZD,CAAmD,yBAAyB,GAY3E;SAZY,6BAA6B"} \ No newline at end of file diff --git a/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js b/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js deleted file mode 100644 index 501fbe6684..0000000000 --- a/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { EditComColPageComponent } from '../../shared/comcol-forms/edit-comcol-page/edit-comcol-page.component'; -import { CollectionDataService } from '../../core/data/collection-data.service'; -/** - * Component that represents the page where a user can edit an existing Collection - */ -var EditCollectionPageComponent = /** @class */ (function (_super) { - tslib_1.__extends(EditCollectionPageComponent, _super); - function EditCollectionPageComponent(collectionDataService, router, route) { - var _this = _super.call(this, collectionDataService, router, route) || this; - _this.collectionDataService = collectionDataService; - _this.router = router; - _this.route = route; - _this.frontendURL = '/collections/'; - return _this; - } - EditCollectionPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-edit-collection', - styleUrls: ['./edit-collection-page.component.scss'], - templateUrl: './edit-collection-page.component.html' - }), - tslib_1.__metadata("design:paramtypes", [CollectionDataService, - Router, - ActivatedRoute]) - ], EditCollectionPageComponent); - return EditCollectionPageComponent; -}(EditComColPageComponent)); -export { EditCollectionPageComponent }; -//# sourceMappingURL=edit-collection-page.component.js.map \ No newline at end of file diff --git a/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js.map b/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js.map deleted file mode 100644 index a16ce783da..0000000000 --- a/src/app/+collection-page/edit-collection-page/edit-collection-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-collection-page.component.js","sourceRoot":"","sources":["edit-collection-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uEAAuE,CAAC;AAEhH,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF;;GAEG;AAMH;IAAiD,uDAAmC;IAGlF,qCACY,qBAA4C,EAC5C,MAAc,EACd,KAAqB;QAHjC,YAKE,kBAAM,qBAAqB,EAAE,MAAM,EAAE,KAAK,CAAC,SAC5C;QALW,2BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,YAAM,GAAN,MAAM,CAAQ;QACd,WAAK,GAAL,KAAK,CAAgB;QALvB,iBAAW,GAAG,eAAe,CAAC;;IAQxC,CAAC;IATU,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;iDAKmC,qBAAqB;YACpC,MAAM;YACP,cAAc;OANtB,2BAA2B,CAUvC;IAAD,kCAAC;CAAA,AAVD,CAAiD,uBAAuB,GAUvE;SAVY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+community-page/community-form/community-form.component.js b/src/app/+community-page/community-form/community-form.component.js deleted file mode 100644 index 1e3a3ff52e..0000000000 --- a/src/app/+community-page/community-form/community-form.component.js +++ /dev/null @@ -1,71 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { DynamicInputModel, DynamicTextAreaModel } from '@ng-dynamic-forms/core'; -import { Community } from '../../core/shared/community.model'; -import { ResourceType } from '../../core/shared/resource-type'; -import { ComColFormComponent } from '../../shared/comcol-forms/comcol-form/comcol-form.component'; -/** - * Form used for creating and editing communities - */ -var CommunityFormComponent = /** @class */ (function (_super) { - tslib_1.__extends(CommunityFormComponent, _super); - function CommunityFormComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * @type {Community} A new community when a community is being created, an existing Input community when a community is being edited - */ - _this.dso = new Community(); - /** - * @type {ResourceType.Community} This is a community-type form - */ - _this.type = ResourceType.Community; - /** - * The dynamic form fields used for creating/editing a community - * @type {(DynamicInputModel | DynamicTextAreaModel)[]} - */ - _this.formModel = [ - new DynamicInputModel({ - id: 'title', - name: 'dc.title', - required: true, - validators: { - required: null - }, - errorMessages: { - required: 'Please enter a name for this title' - }, - }), - new DynamicTextAreaModel({ - id: 'description', - name: 'dc.description', - }), - new DynamicTextAreaModel({ - id: 'abstract', - name: 'dc.description.abstract', - }), - new DynamicTextAreaModel({ - id: 'rights', - name: 'dc.rights', - }), - new DynamicTextAreaModel({ - id: 'tableofcontents', - name: 'dc.description.tableofcontents', - }), - ]; - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Community) - ], CommunityFormComponent.prototype, "dso", void 0); - CommunityFormComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-community-form', - styleUrls: ['../../shared/comcol-forms/comcol-form/comcol-form.component.scss'], - templateUrl: '../../shared/comcol-forms/comcol-form/comcol-form.component.html' - }) - ], CommunityFormComponent); - return CommunityFormComponent; -}(ComColFormComponent)); -export { CommunityFormComponent }; -//# sourceMappingURL=community-form.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-form/community-form.component.js.map b/src/app/+community-page/community-form/community-form.component.js.map deleted file mode 100644 index 1c01094432..0000000000 --- a/src/app/+community-page/community-form/community-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-form.component.js","sourceRoot":"","sources":["community-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEjF,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AAElG;;GAEG;AAMH;IAA4C,kDAA8B;IAL1E;QAAA,qEAiDC;QA3CC;;WAEG;QACM,SAAG,GAAc,IAAI,SAAS,EAAE,CAAC;QAE1C;;WAEG;QACO,UAAI,GAAG,YAAY,CAAC,SAAS,CAAC;QAExC;;;WAGG;QACH,eAAS,GAA8B;YACrC,IAAI,iBAAiB,CAAC;gBACpB,EAAE,EAAE,OAAO;gBACX,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE,IAAI;iBACf;gBACD,aAAa,EAAE;oBACb,QAAQ,EAAE,oCAAoC;iBAC/C;aACF,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,aAAa;gBACjB,IAAI,EAAE,gBAAgB;aACvB,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,yBAAyB;aAChC,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,QAAQ;gBACZ,IAAI,EAAE,WAAW;aAClB,CAAC;YACF,IAAI,oBAAoB,CAAC;gBACvB,EAAE,EAAE,iBAAiB;gBACrB,IAAI,EAAE,gCAAgC;aACvC,CAAC;SACH,CAAC;;IACJ,CAAC;IAxCU;QAAR,KAAK,EAAE;0CAAM,SAAS;uDAAmB;IAJ/B,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,kEAAkE,CAAC;YAC/E,WAAW,EAAE,kEAAkE;SAChF,CAAC;OACW,sBAAsB,CA4ClC;IAAD,6BAAC;CAAA,AA5CD,CAA4C,mBAAmB,GA4C9D;SA5CY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+community-page/community-page-routing.module.js b/src/app/+community-page/community-page-routing.module.js deleted file mode 100644 index 90e57901b1..0000000000 --- a/src/app/+community-page/community-page-routing.module.js +++ /dev/null @@ -1,74 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { CommunityPageComponent } from './community-page.component'; -import { CommunityPageResolver } from './community-page.resolver'; -import { CreateCommunityPageComponent } from './create-community-page/create-community-page.component'; -import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; -import { EditCommunityPageComponent } from './edit-community-page/edit-community-page.component'; -import { CreateCommunityPageGuard } from './create-community-page/create-community-page.guard'; -import { DeleteCommunityPageComponent } from './delete-community-page/delete-community-page.component'; -import { URLCombiner } from '../core/url-combiner/url-combiner'; -import { getCommunityModulePath } from '../app-routing.module'; -export var COMMUNITY_PARENT_PARAMETER = 'parent'; -export function getCommunityPageRoute(communityId) { - return new URLCombiner(getCommunityModulePath(), communityId).toString(); -} -export function getCommunityEditPath(id) { - return new URLCombiner(getCommunityModulePath(), COMMUNITY_EDIT_PATH.replace(/:id/, id)).toString(); -} -export function getCommunityCreatePath() { - return new URLCombiner(getCommunityModulePath(), COMMUNITY_CREATE_PATH).toString(); -} -var COMMUNITY_CREATE_PATH = 'create'; -var COMMUNITY_EDIT_PATH = ':id/edit'; -var CommunityPageRoutingModule = /** @class */ (function () { - function CommunityPageRoutingModule() { - } - CommunityPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { - path: COMMUNITY_CREATE_PATH, - component: CreateCommunityPageComponent, - canActivate: [AuthenticatedGuard, CreateCommunityPageGuard] - }, - { - path: COMMUNITY_EDIT_PATH, - pathMatch: 'full', - component: EditCommunityPageComponent, - canActivate: [AuthenticatedGuard], - resolve: { - dso: CommunityPageResolver - } - }, - { - path: ':id/delete', - pathMatch: 'full', - component: DeleteCommunityPageComponent, - canActivate: [AuthenticatedGuard], - resolve: { - dso: CommunityPageResolver - } - }, - { - path: ':id', - component: CommunityPageComponent, - pathMatch: 'full', - resolve: { - community: CommunityPageResolver - } - } - ]) - ], - providers: [ - CommunityPageResolver, - CreateCommunityPageGuard - ] - }) - ], CommunityPageRoutingModule); - return CommunityPageRoutingModule; -}()); -export { CommunityPageRoutingModule }; -//# sourceMappingURL=community-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-page-routing.module.js.map b/src/app/+community-page/community-page-routing.module.js.map deleted file mode 100644 index 068f814986..0000000000 --- a/src/app/+community-page/community-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-page-routing.module.js","sourceRoot":"","sources":["community-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAC;AAC/F,OAAO,EAAE,4BAA4B,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,MAAM,CAAC,IAAM,0BAA0B,GAAG,QAAQ,CAAC;AAEnD,MAAM,gCAAgC,WAAmB;IACvD,OAAO,IAAI,WAAW,CAAC,sBAAsB,EAAE,EAAE,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC3E,CAAC;AAED,MAAM,+BAA+B,EAAU;IAC7C,OAAO,IAAI,WAAW,CAAC,sBAAsB,EAAE,EAAE,mBAAmB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AACrG,CAAC;AAED,MAAM;IACJ,OAAO,IAAI,WAAW,CAAC,sBAAsB,EAAE,EAAE,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAA;AACpF,CAAC;AAED,IAAM,qBAAqB,GAAG,QAAQ,CAAC;AACvC,IAAM,mBAAmB,GAAG,UAAU,CAAC;AA2CvC;IAAA;IAEA,CAAC;IAFY,0BAA0B;QAzCtC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,qBAAqB;wBAC3B,SAAS,EAAE,4BAA4B;wBACvC,WAAW,EAAE,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;qBAC5D;oBACD;wBACE,IAAI,EAAE,mBAAmB;wBACzB,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,0BAA0B;wBACrC,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,OAAO,EAAE;4BACP,GAAG,EAAE,qBAAqB;yBAC3B;qBACF;oBACD;wBACE,IAAI,EAAE,YAAY;wBAClB,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,4BAA4B;wBACvC,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,OAAO,EAAE;4BACP,GAAG,EAAE,qBAAqB;yBAC3B;qBACF;oBACD;wBACE,IAAI,EAAE,KAAK;wBACX,SAAS,EAAE,sBAAsB;wBACjC,SAAS,EAAE,MAAM;wBACjB,OAAO,EAAE;4BACP,SAAS,EAAE,qBAAqB;yBACjC;qBACF;iBACF,CAAC;aACH;YACD,SAAS,EAAE;gBACT,qBAAqB;gBACrB,wBAAwB;aACzB;SACF,CAAC;OACW,0BAA0B,CAEtC;IAAD,iCAAC;CAAA,AAFD,IAEC;SAFY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+community-page/community-page.component.js b/src/app/+community-page/community-page.component.js deleted file mode 100644 index bc42786fb2..0000000000 --- a/src/app/+community-page/community-page.component.js +++ /dev/null @@ -1,41 +0,0 @@ -import * as tslib_1 from "tslib"; -import { mergeMap, filter, map } from 'rxjs/operators'; -import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { CommunityDataService } from '../core/data/community-data.service'; -import { MetadataService } from '../core/metadata/metadata.service'; -import { fadeInOut } from '../shared/animations/fade'; -import { hasValue } from '../shared/empty.util'; -import { redirectToPageNotFoundOn404 } from '../core/shared/operators'; -var CommunityPageComponent = /** @class */ (function () { - function CommunityPageComponent(communityDataService, metadata, route, router) { - this.communityDataService = communityDataService; - this.metadata = metadata; - this.route = route; - this.router = router; - } - CommunityPageComponent.prototype.ngOnInit = function () { - this.communityRD$ = this.route.data.pipe(map(function (data) { return data.community; }), redirectToPageNotFoundOn404(this.router)); - this.logoRD$ = this.communityRD$.pipe(map(function (rd) { return rd.payload; }), filter(function (community) { return hasValue(community); }), mergeMap(function (community) { return community.logo; })); - }; - CommunityPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-community-page', - styleUrls: ['./community-page.component.scss'], - templateUrl: './community-page.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [fadeInOut] - }) - /** - * This component represents a detail page for a single community - */ - , - tslib_1.__metadata("design:paramtypes", [CommunityDataService, - MetadataService, - ActivatedRoute, - Router]) - ], CommunityPageComponent); - return CommunityPageComponent; -}()); -export { CommunityPageComponent }; -//# sourceMappingURL=community-page.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-page.component.js.map b/src/app/+community-page/community-page.component.js.map deleted file mode 100644 index 07d717eb39..0000000000 --- a/src/app/+community-page/community-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-page.component.js","sourceRoot":"","sources":["community-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAqB,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAM3E,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAYvE;IAUE,gCACU,oBAA0C,EAC1C,QAAyB,EACzB,KAAqB,EACrB,MAAc;QAHd,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,aAAQ,GAAR,QAAQ,CAAiB;QACzB,UAAK,GAAL,KAAK,CAAgB;QACrB,WAAM,GAAN,MAAM,CAAQ;IAGxB,CAAC;IAED,yCAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CACtC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,SAAkC,EAAvC,CAAuC,CAAC,EACtD,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CACzC,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CACnC,GAAG,CAAC,UAAC,EAAyB,IAAK,OAAA,EAAE,CAAC,OAAO,EAAV,CAAU,CAAC,EAC9C,MAAM,CAAC,UAAC,SAAoB,IAAK,OAAA,QAAQ,CAAC,SAAS,CAAC,EAAnB,CAAmB,CAAC,EACrD,QAAQ,CAAC,UAAC,SAAoB,IAAK,OAAA,SAAS,CAAC,IAAI,EAAd,CAAc,CAAC,CAAC,CAAC;IACxD,CAAC;IA5BU,sBAAsB;QAVlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;YAC9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QACF;;WAEG;;iDAY+B,oBAAoB;YAChC,eAAe;YAClB,cAAc;YACb,MAAM;OAdb,sBAAsB,CA8BlC;IAAD,6BAAC;CAAA,AA9BD,IA8BC;SA9BY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+community-page/community-page.module.js b/src/app/+community-page/community-page.module.js deleted file mode 100644 index 539cd88251..0000000000 --- a/src/app/+community-page/community-page.module.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { SharedModule } from '../shared/shared.module'; -import { CommunityPageComponent } from './community-page.component'; -import { CommunityPageSubCollectionListComponent } from './sub-collection-list/community-page-sub-collection-list.component'; -import { CommunityPageRoutingModule } from './community-page-routing.module'; -import { CommunityPageSubCommunityListComponent } from './sub-community-list/community-page-sub-community-list.component'; -import { CreateCommunityPageComponent } from './create-community-page/create-community-page.component'; -import { CommunityFormComponent } from './community-form/community-form.component'; -import { EditCommunityPageComponent } from './edit-community-page/edit-community-page.component'; -import { DeleteCommunityPageComponent } from './delete-community-page/delete-community-page.component'; -var CommunityPageModule = /** @class */ (function () { - function CommunityPageModule() { - } - CommunityPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule, - CommunityPageRoutingModule - ], - declarations: [ - CommunityPageComponent, - CommunityPageSubCollectionListComponent, - CommunityPageSubCommunityListComponent, - CreateCommunityPageComponent, - EditCommunityPageComponent, - DeleteCommunityPageComponent, - CommunityFormComponent - ] - }) - ], CommunityPageModule); - return CommunityPageModule; -}()); -export { CommunityPageModule }; -//# sourceMappingURL=community-page.module.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-page.module.js.map b/src/app/+community-page/community-page.module.js.map deleted file mode 100644 index cb88b79c67..0000000000 --- a/src/app/+community-page/community-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-page.module.js","sourceRoot":"","sources":["community-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,uCAAuC,EAAE,MAAM,oEAAoE,CAAC;AAC7H,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAC,sCAAsC,EAAC,MAAM,kEAAkE,CAAC;AACxH,OAAO,EAAE,4BAA4B,EAAE,MAAM,yDAAyD,CAAC;AACvG,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,4BAA4B,EAAE,MAAM,yDAAyD,CAAC;AAmBvG;IAAA;IAEA,CAAC;IAFY,mBAAmB;QAjB/B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,0BAA0B;aAC3B;YACD,YAAY,EAAE;gBACZ,sBAAsB;gBACtB,uCAAuC;gBACvC,sCAAsC;gBACtC,4BAA4B;gBAC5B,0BAA0B;gBAC1B,4BAA4B;gBAC5B,sBAAsB;aACvB;SACF,CAAC;OAEW,mBAAmB,CAE/B;IAAD,0BAAC;CAAA,AAFD,IAEC;SAFY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+community-page/community-page.resolver.js b/src/app/+community-page/community-page.resolver.js deleted file mode 100644 index 0396229374..0000000000 --- a/src/app/+community-page/community-page.resolver.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { CommunityDataService } from '../core/data/community-data.service'; -import { find } from 'rxjs/operators'; -import { hasValue } from '../shared/empty.util'; -/** - * This class represents a resolver that requests a specific community before the route is activated - */ -var CommunityPageResolver = /** @class */ (function () { - function CommunityPageResolver(communityService) { - this.communityService = communityService; - } - /** - * Method for resolving a community based on the parameters in the current route - * @param {ActivatedRouteSnapshot} route The current ActivatedRouteSnapshot - * @param {RouterStateSnapshot} state The current RouterStateSnapshot - * @returns Observable<> Emits the found community based on the parameters in the current route, - * or an error if something went wrong - */ - CommunityPageResolver.prototype.resolve = function (route, state) { - return this.communityService.findById(route.params.id).pipe(find(function (RD) { return hasValue(RD.error) || RD.hasSucceeded; })); - }; - CommunityPageResolver = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [CommunityDataService]) - ], CommunityPageResolver); - return CommunityPageResolver; -}()); -export { CommunityPageResolver }; -//# sourceMappingURL=community-page.resolver.js.map \ No newline at end of file diff --git a/src/app/+community-page/community-page.resolver.js.map b/src/app/+community-page/community-page.resolver.js.map deleted file mode 100644 index 0eb94034bf..0000000000 --- a/src/app/+community-page/community-page.resolver.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-page.resolver.js","sourceRoot":"","sources":["community-page.resolver.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAK3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;GAEG;AAEH;IACE,+BAAoB,gBAAsC;QAAtC,qBAAgB,GAAhB,gBAAgB,CAAsB;IAC1D,CAAC;IAED;;;;;;OAMG;IACH,uCAAO,GAAP,UAAQ,KAA6B,EAAE,KAA0B;QAC/D,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CACzD,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,YAAY,EAArC,CAAqC,CAAC,CACpD,CAAC;IACJ,CAAC;IAfU,qBAAqB;QADjC,UAAU,EAAE;iDAE2B,oBAAoB;OAD/C,qBAAqB,CAgBjC;IAAD,4BAAC;CAAA,AAhBD,IAgBC;SAhBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+community-page/create-community-page/create-community-page.component.js b/src/app/+community-page/create-community-page/create-community-page.component.js deleted file mode 100644 index ffab1ff99d..0000000000 --- a/src/app/+community-page/create-community-page/create-community-page.component.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { CommunityDataService } from '../../core/data/community-data.service'; -import { RouteService } from '../../shared/services/route.service'; -import { Router } from '@angular/router'; -import { CreateComColPageComponent } from '../../shared/comcol-forms/create-comcol-page/create-comcol-page.component'; -/** - * Component that represents the page where a user can create a new Community - */ -var CreateCommunityPageComponent = /** @class */ (function (_super) { - tslib_1.__extends(CreateCommunityPageComponent, _super); - function CreateCommunityPageComponent(communityDataService, routeService, router) { - var _this = _super.call(this, communityDataService, communityDataService, routeService, router) || this; - _this.communityDataService = communityDataService; - _this.routeService = routeService; - _this.router = router; - _this.frontendURL = '/communities/'; - return _this; - } - CreateCommunityPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-create-community', - styleUrls: ['./create-community-page.component.scss'], - templateUrl: './create-community-page.component.html' - }), - tslib_1.__metadata("design:paramtypes", [CommunityDataService, - RouteService, - Router]) - ], CreateCommunityPageComponent); - return CreateCommunityPageComponent; -}(CreateComColPageComponent)); -export { CreateCommunityPageComponent }; -//# sourceMappingURL=create-community-page.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/create-community-page/create-community-page.component.js.map b/src/app/+community-page/create-community-page/create-community-page.component.js.map deleted file mode 100644 index 8b942217e7..0000000000 --- a/src/app/+community-page/create-community-page/create-community-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"create-community-page.component.js","sourceRoot":"","sources":["create-community-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2EAA2E,CAAC;AAEtH;;GAEG;AAMH;IAAkD,wDAAoC;IAGpF,sCACY,oBAA0C,EAC1C,YAA0B,EAC1B,MAAc;QAH1B,YAKE,kBAAM,oBAAoB,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,CAAC,SACxE;QALW,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,kBAAY,GAAZ,YAAY,CAAc;QAC1B,YAAM,GAAN,MAAM,CAAQ;QALhB,iBAAW,GAAG,eAAe,CAAC;;IAQxC,CAAC;IATU,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;SACtD,CAAC;iDAKkC,oBAAoB;YAC5B,YAAY;YAClB,MAAM;OANf,4BAA4B,CAUxC;IAAD,mCAAC;CAAA,AAVD,CAAkD,yBAAyB,GAU1E;SAVY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+community-page/create-community-page/create-community-page.guard.js b/src/app/+community-page/create-community-page/create-community-page.guard.js deleted file mode 100644 index 13ca3f2f3f..0000000000 --- a/src/app/+community-page/create-community-page/create-community-page.guard.js +++ /dev/null @@ -1,44 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Router } from '@angular/router'; -import { hasNoValue, hasValue } from '../../shared/empty.util'; -import { CommunityDataService } from '../../core/data/community-data.service'; -import { getFinishedRemoteData } from '../../core/shared/operators'; -import { map, tap } from 'rxjs/operators'; -import { of as observableOf } from 'rxjs'; -/** - * Prevent creation of a community with an invalid parent community provided - * @class CreateCommunityPageGuard - */ -var CreateCommunityPageGuard = /** @class */ (function () { - function CreateCommunityPageGuard(router, communityService) { - this.router = router; - this.communityService = communityService; - } - /** - * True when either NO parent ID query parameter has been provided, or the parent ID resolves to a valid parent community - * Reroutes to a 404 page when the page cannot be activated - * @method canActivate - */ - CreateCommunityPageGuard.prototype.canActivate = function (route, state) { - var _this = this; - var parentID = route.queryParams.parent; - if (hasNoValue(parentID)) { - return observableOf(true); - } - var parent = this.communityService.findById(parentID) - .pipe(getFinishedRemoteData()); - return parent.pipe(map(function (communityRD) { return hasValue(communityRD) && communityRD.hasSucceeded && hasValue(communityRD.payload); }), tap(function (isValid) { - if (!isValid) { - _this.router.navigate(['/404']); - } - })); - }; - CreateCommunityPageGuard = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Router, CommunityDataService]) - ], CreateCommunityPageGuard); - return CreateCommunityPageGuard; -}()); -export { CreateCommunityPageGuard }; -//# sourceMappingURL=create-community-page.guard.js.map \ No newline at end of file diff --git a/src/app/+community-page/create-community-page/create-community-page.guard.js.map b/src/app/+community-page/create-community-page/create-community-page.guard.js.map deleted file mode 100644 index 4ce6534e18..0000000000 --- a/src/app/+community-page/create-community-page/create-community-page.guard.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"create-community-page.guard.js","sourceRoot":"","sources":["create-community-page.guard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAuC,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAG9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAEtD;;;GAGG;AAEH;IACE,kCAA2B,MAAc,EAAU,gBAAsC;QAA9D,WAAM,GAAN,MAAM,CAAQ;QAAU,qBAAgB,GAAhB,gBAAgB,CAAsB;IACzF,CAAC;IAED;;;;OAIG;IACH,8CAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QAArE,iBAmBC;QAlBC,IAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;QAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;YACxB,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;SAC3B;QAED,IAAM,MAAM,GAAsC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;aACvF,IAAI,CACH,qBAAqB,EAAE,CACxB,CAAC;QAEJ,OAAO,MAAM,CAAC,IAAI,CAChB,GAAG,CAAC,UAAC,WAAkC,IAAK,OAAA,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,YAAY,IAAI,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,EAAlF,CAAkF,CAAC,EAC/H,GAAG,CAAC,UAAC,OAAgB;YACnB,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IA5BU,wBAAwB;QADpC,UAAU,EAAE;iDAEwB,MAAM,EAA4B,oBAAoB;OAD9E,wBAAwB,CA6BpC;IAAD,+BAAC;CAAA,AA7BD,IA6BC;SA7BY,wBAAwB"} \ No newline at end of file diff --git a/src/app/+community-page/delete-community-page/delete-community-page.component.js b/src/app/+community-page/delete-community-page/delete-community-page.component.js deleted file mode 100644 index d440855302..0000000000 --- a/src/app/+community-page/delete-community-page/delete-community-page.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { CommunityDataService } from '../../core/data/community-data.service'; -import { ActivatedRoute, Router } from '@angular/router'; -import { DeleteComColPageComponent } from '../../shared/comcol-forms/delete-comcol-page/delete-comcol-page.component'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { TranslateService } from '@ngx-translate/core'; -/** - * Component that represents the page where a user can delete an existing Community - */ -var DeleteCommunityPageComponent = /** @class */ (function (_super) { - tslib_1.__extends(DeleteCommunityPageComponent, _super); - function DeleteCommunityPageComponent(dsoDataService, router, route, notifications, translate) { - var _this = _super.call(this, dsoDataService, router, route, notifications, translate) || this; - _this.dsoDataService = dsoDataService; - _this.router = router; - _this.route = route; - _this.notifications = notifications; - _this.translate = translate; - _this.frontendURL = '/communities/'; - return _this; - } - DeleteCommunityPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-delete-community', - styleUrls: ['./delete-community-page.component.scss'], - templateUrl: './delete-community-page.component.html' - }), - tslib_1.__metadata("design:paramtypes", [CommunityDataService, - Router, - ActivatedRoute, - NotificationsService, - TranslateService]) - ], DeleteCommunityPageComponent); - return DeleteCommunityPageComponent; -}(DeleteComColPageComponent)); -export { DeleteCommunityPageComponent }; -//# sourceMappingURL=delete-community-page.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/delete-community-page/delete-community-page.component.js.map b/src/app/+community-page/delete-community-page/delete-community-page.component.js.map deleted file mode 100644 index 33e1b40085..0000000000 --- a/src/app/+community-page/delete-community-page/delete-community-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"delete-community-page.component.js","sourceRoot":"","sources":["delete-community-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2EAA2E,CAAC;AACtH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;GAEG;AAMH;IAAkD,wDAAoC;IAGpF,sCACY,cAAoC,EACpC,MAAc,EACd,KAAqB,EACrB,aAAmC,EACnC,SAA2B;QALvC,YAOE,kBAAM,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,SAC/D;QAPW,oBAAc,GAAd,cAAc,CAAsB;QACpC,YAAM,GAAN,MAAM,CAAQ;QACd,WAAK,GAAL,KAAK,CAAgB;QACrB,mBAAa,GAAb,aAAa,CAAsB;QACnC,eAAS,GAAT,SAAS,CAAkB;QAP7B,iBAAW,GAAG,eAAe,CAAC;;IAUxC,CAAC;IAXU,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;SACtD,CAAC;iDAK4B,oBAAoB;YAC5B,MAAM;YACP,cAAc;YACN,oBAAoB;YACxB,gBAAgB;OAR5B,4BAA4B,CAYxC;IAAD,mCAAC;CAAA,AAZD,CAAkD,yBAAyB,GAY1E;SAZY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+community-page/edit-community-page/edit-community-page.component.js b/src/app/+community-page/edit-community-page/edit-community-page.component.js deleted file mode 100644 index 0f35b2512d..0000000000 --- a/src/app/+community-page/edit-community-page/edit-community-page.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { CommunityDataService } from '../../core/data/community-data.service'; -import { ActivatedRoute, Router } from '@angular/router'; -import { EditComColPageComponent } from '../../shared/comcol-forms/edit-comcol-page/edit-comcol-page.component'; -/** - * Component that represents the page where a user can edit an existing Community - */ -var EditCommunityPageComponent = /** @class */ (function (_super) { - tslib_1.__extends(EditCommunityPageComponent, _super); - function EditCommunityPageComponent(communityDataService, router, route) { - var _this = _super.call(this, communityDataService, router, route) || this; - _this.communityDataService = communityDataService; - _this.router = router; - _this.route = route; - _this.frontendURL = '/communities/'; - return _this; - } - EditCommunityPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-edit-community', - styleUrls: ['./edit-community-page.component.scss'], - templateUrl: './edit-community-page.component.html' - }), - tslib_1.__metadata("design:paramtypes", [CommunityDataService, - Router, - ActivatedRoute]) - ], EditCommunityPageComponent); - return EditCommunityPageComponent; -}(EditComColPageComponent)); -export { EditCommunityPageComponent }; -//# sourceMappingURL=edit-community-page.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/edit-community-page/edit-community-page.component.js.map b/src/app/+community-page/edit-community-page/edit-community-page.component.js.map deleted file mode 100644 index c887e94a53..0000000000 --- a/src/app/+community-page/edit-community-page/edit-community-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-community-page.component.js","sourceRoot":"","sources":["edit-community-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uEAAuE,CAAC;AAEhH;;GAEG;AAMH;IAAgD,sDAAkC;IAGhF,oCACY,oBAA0C,EAC1C,MAAc,EACd,KAAqB;QAHjC,YAKE,kBAAM,oBAAoB,EAAE,MAAM,EAAE,KAAK,CAAC,SAC3C;QALW,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,YAAM,GAAN,MAAM,CAAQ;QACd,WAAK,GAAL,KAAK,CAAgB;QALvB,iBAAW,GAAG,eAAe,CAAC;;IAQxC,CAAC;IATU,0BAA0B;QALtC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;iDAKkC,oBAAoB;YAClC,MAAM;YACP,cAAc;OANtB,0BAA0B,CAUtC;IAAD,iCAAC;CAAA,AAVD,CAAgD,uBAAuB,GAUtE;SAVY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js b/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js deleted file mode 100644 index fc4b186bcc..0000000000 --- a/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Community } from '../../core/shared/community.model'; -import { fadeIn } from '../../shared/animations/fade'; -var CommunityPageSubCollectionListComponent = /** @class */ (function () { - function CommunityPageSubCollectionListComponent() { - } - CommunityPageSubCollectionListComponent.prototype.ngOnInit = function () { - this.subCollectionsRDObs = this.community.collections; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Community) - ], CommunityPageSubCollectionListComponent.prototype, "community", void 0); - CommunityPageSubCollectionListComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-community-page-sub-collection-list', - styleUrls: ['./community-page-sub-collection-list.component.scss'], - templateUrl: './community-page-sub-collection-list.component.html', - animations: [fadeIn] - }) - ], CommunityPageSubCollectionListComponent); - return CommunityPageSubCollectionListComponent; -}()); -export { CommunityPageSubCollectionListComponent }; -//# sourceMappingURL=community-page-sub-collection-list.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js.map b/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js.map deleted file mode 100644 index c0755b38ff..0000000000 --- a/src/app/+community-page/sub-collection-list/community-page-sub-collection-list.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-page-sub-collection-list.component.js","sourceRoot":"","sources":["community-page-sub-collection-list.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAKzD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAE9D,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAStD;IAAA;IAOA,CAAC;IAHC,0DAAQ,GAAR;QACE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;IACxD,CAAC;IALQ;QAAR,KAAK,EAAE;0CAAY,SAAS;8EAAC;IADnB,uCAAuC;QANnD,SAAS,CAAC;YACT,QAAQ,EAAE,uCAAuC;YACjD,SAAS,EAAE,CAAC,qDAAqD,CAAC;YAClE,WAAW,EAAE,qDAAqD;YAClE,UAAU,EAAC,CAAC,MAAM,CAAC;SACpB,CAAC;OACW,uCAAuC,CAOnD;IAAD,8CAAC;CAAA,AAPD,IAOC;SAPY,uCAAuC"} \ No newline at end of file diff --git a/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js b/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js deleted file mode 100644 index ca0cda801f..0000000000 --- a/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Community } from '../../core/shared/community.model'; -import { fadeIn } from '../../shared/animations/fade'; -var CommunityPageSubCommunityListComponent = /** @class */ (function () { - /** - * Component to render the sub-communities of a Community - */ - function CommunityPageSubCommunityListComponent() { - } - CommunityPageSubCommunityListComponent.prototype.ngOnInit = function () { - this.subCommunitiesRDObs = this.community.subcommunities; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Community) - ], CommunityPageSubCommunityListComponent.prototype, "community", void 0); - CommunityPageSubCommunityListComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-community-page-sub-community-list', - styleUrls: ['./community-page-sub-community-list.component.scss'], - templateUrl: './community-page-sub-community-list.component.html', - animations: [fadeIn] - }) - /** - * Component to render the sub-communities of a Community - */ - ], CommunityPageSubCommunityListComponent); - return CommunityPageSubCommunityListComponent; -}()); -export { CommunityPageSubCommunityListComponent }; -//# sourceMappingURL=community-page-sub-community-list.component.js.map \ No newline at end of file diff --git a/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js.map b/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js.map deleted file mode 100644 index 83b0940e12..0000000000 --- a/src/app/+community-page/sub-community-list/community-page-sub-community-list.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-page-sub-community-list.component.js","sourceRoot":"","sources":["community-page-sub-community-list.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAE9D,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAatD;IAHA;;OAEG;IACH;IAOA,CAAC;IAHC,yDAAQ,GAAR;QACE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;IAC3D,CAAC;IALQ;QAAR,KAAK,EAAE;0CAAY,SAAS;6EAAC;IADnB,sCAAsC;QATlD,SAAS,CAAC;YACT,QAAQ,EAAE,sCAAsC;YAChD,SAAS,EAAE,CAAC,oDAAoD,CAAC;YACjE,WAAW,EAAE,oDAAoD;YACjE,UAAU,EAAC,CAAC,MAAM,CAAC;SACpB,CAAC;QACF;;WAEG;OACU,sCAAsC,CAOlD;IAAD,6CAAC;CAAA,AAPD,IAOC;SAPY,sCAAsC"} \ No newline at end of file diff --git a/src/app/+home-page/home-news/home-news.component.js b/src/app/+home-page/home-news/home-news.component.js deleted file mode 100644 index 12efdd2381..0000000000 --- a/src/app/+home-page/home-news/home-news.component.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -var HomeNewsComponent = /** @class */ (function () { - /** - * Component to render the news section on the home page - */ - function HomeNewsComponent() { - } - HomeNewsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-home-news', - styleUrls: ['./home-news.component.scss'], - templateUrl: './home-news.component.html' - }) - /** - * Component to render the news section on the home page - */ - ], HomeNewsComponent); - return HomeNewsComponent; -}()); -export { HomeNewsComponent }; -//# sourceMappingURL=home-news.component.js.map \ No newline at end of file diff --git a/src/app/+home-page/home-news/home-news.component.js.map b/src/app/+home-page/home-news/home-news.component.js.map deleted file mode 100644 index 3f9db2ee72..0000000000 --- a/src/app/+home-page/home-news/home-news.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"home-news.component.js","sourceRoot":"","sources":["home-news.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAW1C;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,iBAAiB;QAT7B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;SAC1C,CAAC;QAEF;;WAEG;OACU,iBAAiB,CAE7B;IAAD,wBAAC;CAAA,AAFD,IAEC;SAFY,iBAAiB"} \ No newline at end of file diff --git a/src/app/+home-page/home-page-routing.module.js b/src/app/+home-page/home-page-routing.module.js deleted file mode 100644 index 8da63d71ee..0000000000 --- a/src/app/+home-page/home-page-routing.module.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { HomePageComponent } from './home-page.component'; -var HomePageRoutingModule = /** @class */ (function () { - function HomePageRoutingModule() { - } - HomePageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { path: '', component: HomePageComponent, pathMatch: 'full', data: { title: 'home.title' } } - ]) - ] - }) - ], HomePageRoutingModule); - return HomePageRoutingModule; -}()); -export { HomePageRoutingModule }; -//# sourceMappingURL=home-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+home-page/home-page-routing.module.js.map b/src/app/+home-page/home-page-routing.module.js.map deleted file mode 100644 index 0399763fc2..0000000000 --- a/src/app/+home-page/home-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"home-page-routing.module.js","sourceRoot":"","sources":["home-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAS1D;IAAA;IAAqC,CAAC;IAAzB,qBAAqB;QAPjC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;iBAC7F,CAAC;aACH;SACF,CAAC;OACW,qBAAqB,CAAI;IAAD,4BAAC;CAAA,AAAtC,IAAsC;SAAzB,qBAAqB"} \ No newline at end of file diff --git a/src/app/+home-page/home-page.component.js b/src/app/+home-page/home-page.component.js deleted file mode 100644 index 2b848cda4d..0000000000 --- a/src/app/+home-page/home-page.component.js +++ /dev/null @@ -1,16 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -var HomePageComponent = /** @class */ (function () { - function HomePageComponent() { - } - HomePageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-home-page', - styleUrls: ['./home-page.component.scss'], - templateUrl: './home-page.component.html' - }) - ], HomePageComponent); - return HomePageComponent; -}()); -export { HomePageComponent }; -//# sourceMappingURL=home-page.component.js.map \ No newline at end of file diff --git a/src/app/+home-page/home-page.component.js.map b/src/app/+home-page/home-page.component.js.map deleted file mode 100644 index af97770d9b..0000000000 --- a/src/app/+home-page/home-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"home-page.component.js","sourceRoot":"","sources":["home-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAO1C;IAAA;IACA,CAAC;IADY,iBAAiB;QAL7B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;SAC1C,CAAC;OACW,iBAAiB,CAC7B;IAAD,wBAAC;CAAA,AADD,IACC;SADY,iBAAiB"} \ No newline at end of file diff --git a/src/app/+home-page/home-page.module.js b/src/app/+home-page/home-page.module.js deleted file mode 100644 index d751a3636f..0000000000 --- a/src/app/+home-page/home-page.module.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { HomeNewsComponent } from './home-news/home-news.component'; -import { HomePageRoutingModule } from './home-page-routing.module'; -import { HomePageComponent } from './home-page.component'; -import { TopLevelCommunityListComponent } from './top-level-community-list/top-level-community-list.component'; -var HomePageModule = /** @class */ (function () { - function HomePageModule() { - } - HomePageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule, - HomePageRoutingModule - ], - declarations: [ - HomePageComponent, - TopLevelCommunityListComponent, - HomeNewsComponent, - ] - }) - ], HomePageModule); - return HomePageModule; -}()); -export { HomePageModule }; -//# sourceMappingURL=home-page.module.js.map \ No newline at end of file diff --git a/src/app/+home-page/home-page.module.js.map b/src/app/+home-page/home-page.module.js.map deleted file mode 100644 index ccc83d3a93..0000000000 --- a/src/app/+home-page/home-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"home-page.module.js","sourceRoot":"","sources":["home-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+DAA+D,CAAC;AAc/G;IAAA;IAEA,CAAC;IAFY,cAAc;QAZ1B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,qBAAqB;aACtB;YACD,YAAY,EAAE;gBACZ,iBAAiB;gBACjB,8BAA8B;gBAC9B,iBAAiB;aAClB;SACF,CAAC;OACW,cAAc,CAE1B;IAAD,qBAAC;CAAA,AAFD,IAEC;SAFY,cAAc"} \ No newline at end of file diff --git a/src/app/+home-page/top-level-community-list/top-level-community-list.component.js b/src/app/+home-page/top-level-community-list/top-level-community-list.component.js deleted file mode 100644 index b5cce1cade..0000000000 --- a/src/app/+home-page/top-level-community-list/top-level-community-list.component.js +++ /dev/null @@ -1,65 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { BehaviorSubject } from 'rxjs'; -import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; -import { CommunityDataService } from '../../core/data/community-data.service'; -import { fadeInOut } from '../../shared/animations/fade'; -import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; -import { take } from 'rxjs/operators'; -/** - * this component renders the Top-Level Community list - */ -var TopLevelCommunityListComponent = /** @class */ (function () { - function TopLevelCommunityListComponent(cds) { - this.cds = cds; - /** - * A list of remote data objects of all top communities - */ - this.communitiesRD$ = new BehaviorSubject({}); - this.config = new PaginationComponentOptions(); - this.config.id = 'top-level-pagination'; - this.config.pageSize = 5; - this.config.currentPage = 1; - this.sortConfig = new SortOptions('dc.title', SortDirection.ASC); - } - TopLevelCommunityListComponent.prototype.ngOnInit = function () { - this.updatePage(); - }; - /** - * Called when one of the pagination settings is changed - * @param event The new pagination data - */ - TopLevelCommunityListComponent.prototype.onPaginationChange = function (event) { - this.config.currentPage = event.page; - this.config.pageSize = event.pageSize; - this.sortConfig.field = event.sortField; - this.sortConfig.direction = event.sortDirection; - this.updatePage(); - }; - /** - * Update the list of top communities - */ - TopLevelCommunityListComponent.prototype.updatePage = function () { - var _this = this; - this.cds.findTop({ - currentPage: this.config.currentPage, - elementsPerPage: this.config.pageSize, - sort: { field: this.sortConfig.field, direction: this.sortConfig.direction } - }).pipe(take(1)).subscribe(function (results) { - _this.communitiesRD$.next(results); - }); - }; - TopLevelCommunityListComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-top-level-community-list', - styleUrls: ['./top-level-community-list.component.scss'], - templateUrl: './top-level-community-list.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [fadeInOut] - }), - tslib_1.__metadata("design:paramtypes", [CommunityDataService]) - ], TopLevelCommunityListComponent); - return TopLevelCommunityListComponent; -}()); -export { TopLevelCommunityListComponent }; -//# sourceMappingURL=top-level-community-list.component.js.map \ No newline at end of file diff --git a/src/app/+home-page/top-level-community-list/top-level-community-list.component.js.map b/src/app/+home-page/top-level-community-list/top-level-community-list.component.js.map deleted file mode 100644 index 2b88ba2755..0000000000 --- a/src/app/+home-page/top-level-community-list/top-level-community-list.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"top-level-community-list.component.js","sourceRoot":"","sources":["top-level-community-list.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAc,MAAM,MAAM,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAM9E,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4DAA4D,CAAC;AACxG,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC;;GAEG;AASH;IAgBE,wCAAoB,GAAyB;QAAzB,QAAG,GAAH,GAAG,CAAsB;QAf7C;;WAEG;QACH,mBAAc,GAA0D,IAAI,eAAe,CAAuC,EAAS,CAAC,CAAC;QAa3I,IAAI,CAAC,MAAM,GAAG,IAAI,0BAA0B,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,sBAAsB,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,WAAW,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;IACnE,CAAC;IAED,iDAAQ,GAAR;QACE,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,2DAAkB,GAAlB,UAAmB,KAAK;QACtB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACtC,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC;QAChD,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,mDAAU,GAAV;QAAA,iBAQC;QAPC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YACf,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YACrC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;SAC7E,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,OAAO;YACjC,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IAnDU,8BAA8B;QAR1C,SAAS,CAAC;YACT,QAAQ,EAAE,6BAA6B;YACvC,SAAS,EAAE,CAAC,2CAA2C,CAAC;YACxD,WAAW,EAAE,2CAA2C;YACxD,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;iDAkByB,oBAAoB;OAhBlC,8BAA8B,CAoD1C;IAAD,qCAAC;CAAA,AApDD,IAoDC;SApDY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-operators.js b/src/app/+item-page/edit-item-page/edit-item-operators.js deleted file mode 100644 index c2df697b4c..0000000000 --- a/src/app/+item-page/edit-item-page/edit-item-operators.js +++ /dev/null @@ -1,12 +0,0 @@ -import { first } from 'rxjs/operators'; -import { getAllSucceededRemoteData } from '../../core/shared/operators'; -/** - * Return first Observable of a RemoteData object that complies to the provided predicate - * @param predicate - */ -export var findSuccessfulAccordingTo = function (predicate) { - return function (source) { - return source.pipe(getAllSucceededRemoteData(), first(predicate)); - }; -}; -//# sourceMappingURL=edit-item-operators.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-operators.js.map b/src/app/+item-page/edit-item-page/edit-item-operators.js.map deleted file mode 100644 index 978b047b60..0000000000 --- a/src/app/+item-page/edit-item-page/edit-item-operators.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-item-operators.js","sourceRoot":"","sources":["edit-item-operators.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,KAAK,EAAC,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAC,yBAAyB,EAAC,MAAM,6BAA6B,CAAC;AAEtE;;;GAGG;AACH,MAAM,CAAC,IAAM,yBAAyB,GAAG,UAAI,SAAyC;IACpF,OAAA,UAAC,MAAiC;QAChC,OAAA,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EACrC,KAAK,CAAC,SAAS,CAAC,CAAC;IADnB,CACmB;AAFrB,CAEqB,CAAC"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.component.js b/src/app/+item-page/edit-item-page/edit-item-page.component.js deleted file mode 100644 index 66db98092f..0000000000 --- a/src/app/+item-page/edit-item-page/edit-item-page.component.js +++ /dev/null @@ -1,49 +0,0 @@ -import * as tslib_1 from "tslib"; -import { fadeIn, fadeInOut } from '../../shared/animations/fade'; -import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { map } from 'rxjs/operators'; -import { isNotEmpty } from '../../shared/empty.util'; -import { getItemPageRoute } from '../item-page-routing.module'; -var EditItemPageComponent = /** @class */ (function () { - function EditItemPageComponent(route, router) { - var _this = this; - this.route = route; - this.router = router; - this.router.events.subscribe(function () { - _this.currentPage = _this.route.snapshot.firstChild.routeConfig.path; - }); - } - EditItemPageComponent.prototype.ngOnInit = function () { - this.pages = this.route.routeConfig.children - .map(function (child) { return child.path; }) - .filter(function (path) { return isNotEmpty(path); }); // ignore reroutes - this.itemRD$ = this.route.data.pipe(map(function (data) { return data.item; })); - }; - /** - * Get the item page url - * @param item The item for which the url is requested - */ - EditItemPageComponent.prototype.getItemPage = function (item) { - return getItemPageRoute(item.id); - }; - EditItemPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-edit-item-page', - templateUrl: './edit-item-page.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [ - fadeIn, - fadeInOut - ] - }) - /** - * Page component for editing an item - */ - , - tslib_1.__metadata("design:paramtypes", [ActivatedRoute, Router]) - ], EditItemPageComponent); - return EditItemPageComponent; -}()); -export { EditItemPageComponent }; -//# sourceMappingURL=edit-item-page.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.component.js.map b/src/app/+item-page/edit-item-page/edit-item-page.component.js.map deleted file mode 100644 index 4aa3f73f47..0000000000 --- a/src/app/+item-page/edit-item-page/edit-item-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-item-page.component.js","sourceRoot":"","sources":["edit-item-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAc/D;IAiBE,+BAAoB,KAAqB,EAAU,MAAc;QAAjE,iBAIC;QAJmB,UAAK,GAAL,KAAK,CAAgB;QAAU,WAAM,GAAN,MAAM,CAAQ;QAC/D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;YAC3B,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,wCAAQ,GAAR;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ;aACzC,GAAG,CAAC,UAAC,KAAU,IAAK,OAAA,KAAK,CAAC,IAAI,EAAV,CAAU,CAAC;aAC/B,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,CAAC,CAAC,kBAAkB;QACjE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,EAAT,CAAS,CAAC,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACH,2CAAW,GAAX,UAAY,IAAU;QACpB,OAAO,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAClC,CAAC;IApCU,qBAAqB;QAZjC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;YAC9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE;gBACV,MAAM;gBACN,SAAS;aACV;SACF,CAAC;QACF;;WAEG;;iDAkB0B,cAAc,EAAkB,MAAM;OAjBtD,qBAAqB,CAqCjC;IAAD,4BAAC;CAAA,AArCD,IAqCC;SArCY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.module.js b/src/app/+item-page/edit-item-page/edit-item-page.module.js deleted file mode 100644 index e2bde7edc4..0000000000 --- a/src/app/+item-page/edit-item-page/edit-item-page.module.js +++ /dev/null @@ -1,52 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { SharedModule } from '../../shared/shared.module'; -import { EditItemPageRoutingModule } from './edit-item-page.routing.module'; -import { EditItemPageComponent } from './edit-item-page.component'; -import { ItemStatusComponent } from './item-status/item-status.component'; -import { ItemOperationComponent } from './item-operation/item-operation.component'; -import { ModifyItemOverviewComponent } from './modify-item-overview/modify-item-overview.component'; -import { ItemWithdrawComponent } from './item-withdraw/item-withdraw.component'; -import { ItemReinstateComponent } from './item-reinstate/item-reinstate.component'; -import { AbstractSimpleItemActionComponent } from './simple-item-action/abstract-simple-item-action.component'; -import { ItemPrivateComponent } from './item-private/item-private.component'; -import { ItemPublicComponent } from './item-public/item-public.component'; -import { ItemDeleteComponent } from './item-delete/item-delete.component'; -import { ItemMetadataComponent } from './item-metadata/item-metadata.component'; -import { EditInPlaceFieldComponent } from './item-metadata/edit-in-place-field/edit-in-place-field.component'; -import { ItemBitstreamsComponent } from './item-bitstreams/item-bitstreams.component'; -/** - * Module that contains all components related to the Edit Item page administrator functionality - */ -var EditItemPageModule = /** @class */ (function () { - function EditItemPageModule() { - } - EditItemPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule, - EditItemPageRoutingModule - ], - declarations: [ - EditItemPageComponent, - ItemOperationComponent, - AbstractSimpleItemActionComponent, - ModifyItemOverviewComponent, - ItemWithdrawComponent, - ItemReinstateComponent, - ItemPrivateComponent, - ItemPublicComponent, - ItemDeleteComponent, - ItemStatusComponent, - ItemMetadataComponent, - ItemBitstreamsComponent, - EditInPlaceFieldComponent - ] - }) - ], EditItemPageModule); - return EditItemPageModule; -}()); -export { EditItemPageModule }; -//# sourceMappingURL=edit-item-page.module.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.module.js.map b/src/app/+item-page/edit-item-page/edit-item-page.module.js.map deleted file mode 100644 index 430f30c211..0000000000 --- a/src/app/+item-page/edit-item-page/edit-item-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-item-page.module.js","sourceRoot":"","sources":["edit-item-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,iCAAiC,EAAE,MAAM,4DAA4D,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mEAAmE,CAAC;AAC9G,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAEtF;;GAEG;AAuBH;IAAA;IAEA,CAAC;IAFY,kBAAkB;QAtB9B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,yBAAyB;aAC1B;YACD,YAAY,EAAE;gBACZ,qBAAqB;gBACrB,sBAAsB;gBACtB,iCAAiC;gBACjC,2BAA2B;gBAC3B,qBAAqB;gBACrB,sBAAsB;gBACtB,oBAAoB;gBACpB,mBAAmB;gBACnB,mBAAmB;gBACnB,mBAAmB;gBACnB,qBAAqB;gBACrB,uBAAuB;gBACvB,yBAAyB;aAC1B;SACF,CAAC;OACW,kBAAkB,CAE9B;IAAD,yBAAC;CAAA,AAFD,IAEC;SAFY,kBAAkB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js b/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js deleted file mode 100644 index 1893e5e894..0000000000 --- a/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js +++ /dev/null @@ -1,114 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ItemPageResolver } from '../item-page.resolver'; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { EditItemPageComponent } from './edit-item-page.component'; -import { ItemWithdrawComponent } from './item-withdraw/item-withdraw.component'; -import { ItemReinstateComponent } from './item-reinstate/item-reinstate.component'; -import { ItemPrivateComponent } from './item-private/item-private.component'; -import { ItemPublicComponent } from './item-public/item-public.component'; -import { ItemDeleteComponent } from './item-delete/item-delete.component'; -import { ItemStatusComponent } from './item-status/item-status.component'; -import { ItemMetadataComponent } from './item-metadata/item-metadata.component'; -import { ItemBitstreamsComponent } from './item-bitstreams/item-bitstreams.component'; -var ITEM_EDIT_WITHDRAW_PATH = 'withdraw'; -var ITEM_EDIT_REINSTATE_PATH = 'reinstate'; -var ITEM_EDIT_PRIVATE_PATH = 'private'; -var ITEM_EDIT_PUBLIC_PATH = 'public'; -var ITEM_EDIT_DELETE_PATH = 'delete'; -/** - * Routing module that handles the routing for the Edit Item page administrator functionality - */ -var EditItemPageRoutingModule = /** @class */ (function () { - function EditItemPageRoutingModule() { - } - EditItemPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { - path: '', - component: EditItemPageComponent, - resolve: { - item: ItemPageResolver - }, - children: [ - { - path: '', - redirectTo: 'status', - }, - { - path: 'status', - component: ItemStatusComponent, - data: { title: 'item.edit.tabs.status.title' } - }, - { - path: 'bitstreams', - component: ItemBitstreamsComponent, - data: { title: 'item.edit.tabs.bitstreams.title' } - }, - { - path: 'metadata', - component: ItemMetadataComponent, - data: { title: 'item.edit.tabs.metadata.title' } - }, - { - path: 'view', - /* TODO - change when view page exists */ - component: ItemBitstreamsComponent, - data: { title: 'item.edit.tabs.view.title' } - }, - { - path: 'curate', - /* TODO - change when curate page exists */ - component: ItemBitstreamsComponent, - data: { title: 'item.edit.tabs.curate.title' } - }, - ] - }, - { - path: ITEM_EDIT_WITHDRAW_PATH, - component: ItemWithdrawComponent, - resolve: { - item: ItemPageResolver - } - }, - { - path: ITEM_EDIT_REINSTATE_PATH, - component: ItemReinstateComponent, - resolve: { - item: ItemPageResolver - } - }, - { - path: ITEM_EDIT_PRIVATE_PATH, - component: ItemPrivateComponent, - resolve: { - item: ItemPageResolver - } - }, - { - path: ITEM_EDIT_PUBLIC_PATH, - component: ItemPublicComponent, - resolve: { - item: ItemPageResolver - } - }, - { - path: ITEM_EDIT_DELETE_PATH, - component: ItemDeleteComponent, - resolve: { - item: ItemPageResolver - } - } - ]) - ], - providers: [ - ItemPageResolver, - ] - }) - ], EditItemPageRoutingModule); - return EditItemPageRoutingModule; -}()); -export { EditItemPageRoutingModule }; -//# sourceMappingURL=edit-item-page.routing.module.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js.map b/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js.map deleted file mode 100644 index 85c2e5f787..0000000000 --- a/src/app/+item-page/edit-item-page/edit-item-page.routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-item-page.routing.module.js","sourceRoot":"","sources":["edit-item-page.routing.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js b/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js deleted file mode 100644 index 38c0841ba8..0000000000 --- a/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -var ItemBitstreamsComponent = /** @class */ (function () { - /** - * Component for displaying an item's bitstreams edit page - */ - function ItemBitstreamsComponent() { - } - ItemBitstreamsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-bitstreams', - styleUrls: ['./item-bitstreams.component.scss'], - templateUrl: './item-bitstreams.component.html', - }) - /** - * Component for displaying an item's bitstreams edit page - */ - ], ItemBitstreamsComponent); - return ItemBitstreamsComponent; -}()); -export { ItemBitstreamsComponent }; -//# sourceMappingURL=item-bitstreams.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js.map b/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js.map deleted file mode 100644 index 3398c40f25..0000000000 --- a/src/app/+item-page/edit-item-page/item-bitstreams/item-bitstreams.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-bitstreams.component.js","sourceRoot":"","sources":["item-bitstreams.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAU1C;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,uBAAuB;QARnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,kCAAkC,CAAC;YAC/C,WAAW,EAAE,kCAAkC;SAChD,CAAC;QACF;;WAEG;OACU,uBAAuB,CAEnC;IAAD,8BAAC;CAAA,AAFD,IAEC;SAFY,uBAAuB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js b/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js deleted file mode 100644 index bc12c6d8ec..0000000000 --- a/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js +++ /dev/null @@ -1,48 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { first } from 'rxjs/operators'; -import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; -import { getItemEditPath } from '../../item-page-routing.module'; -var ItemDeleteComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemDeleteComponent, _super); - function ItemDeleteComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.messageKey = 'delete'; - return _this; - } - /** - * Perform the delete action to the item - */ - ItemDeleteComponent.prototype.performAction = function () { - var _this = this; - this.itemDataService.delete(this.item).pipe(first()).subscribe(function (succeeded) { - _this.notify(succeeded); - }); - }; - /** - * When the item is successfully delete, navigate to the homepage, otherwise navigate back to the item edit page - * @param response - */ - ItemDeleteComponent.prototype.notify = function (succeeded) { - if (succeeded) { - this.notificationsService.success(this.translateService.get('item.edit.' + this.messageKey + '.success')); - this.router.navigate(['']); - } - else { - this.notificationsService.error(this.translateService.get('item.edit.' + this.messageKey + '.error')); - this.router.navigate([getItemEditPath(this.item.id)]); - } - }; - ItemDeleteComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-delete', - templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' - }) - /** - * Component responsible for rendering the item delete page - */ - ], ItemDeleteComponent); - return ItemDeleteComponent; -}(AbstractSimpleItemActionComponent)); -export { ItemDeleteComponent }; -//# sourceMappingURL=item-delete.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js.map b/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js.map deleted file mode 100644 index 41b8303672..0000000000 --- a/src/app/+item-page/edit-item-page/item-delete/item-delete.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-delete.component.js","sourceRoot":"","sources":["item-delete.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAChH,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAUjE;IAAyC,+CAAiC;IAP1E;QAAA,qEAmCC;QA1BW,gBAAU,GAAG,QAAQ,CAAC;;IA0BlC,CAAC;IAxBC;;OAEG;IACH,2CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC5D,UAAC,SAAkB;YACjB,KAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,oCAAM,GAAN,UAAO,SAAkB;QACvB,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC;YAC1G,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC5B;aAAM;YACL,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC;YACtG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SACvD;IACH,CAAC;IA3BU,mBAAmB;QAP/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,mBAAmB,CA4B/B;IAAD,0BAAC;CAAA,AA5BD,CAAyC,iCAAiC,GA4BzE;SA5BY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js b/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js deleted file mode 100644 index 714a487ce3..0000000000 --- a/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js +++ /dev/null @@ -1,159 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { hasValue, isNotEmpty } from '../../../../shared/empty.util'; -import { RegistryService } from '../../../../core/registry/registry.service'; -import { cloneDeep } from 'lodash'; -import { BehaviorSubject, of as observableOf } from 'rxjs'; -import { map, take } from 'rxjs/operators'; -import { FieldChangeType } from '../../../../core/data/object-updates/object-updates.actions'; -import { ObjectUpdatesService } from '../../../../core/data/object-updates/object-updates.service'; -var EditInPlaceFieldComponent = /** @class */ (function () { - function EditInPlaceFieldComponent(metadataFieldService, objectUpdatesService) { - this.metadataFieldService = metadataFieldService; - this.objectUpdatesService = objectUpdatesService; - /** - * The current suggestions for the metadatafield when editing - */ - this.metadataFieldSuggestions = new BehaviorSubject([]); - } - /** - * Sets up an observable that keeps track of the current editable and valid state of this field - */ - EditInPlaceFieldComponent.prototype.ngOnInit = function () { - this.editable = this.objectUpdatesService.isEditable(this.url, this.metadata.uuid); - this.valid = this.objectUpdatesService.isValid(this.url, this.metadata.uuid); - }; - /** - * Sends a new change update for this field to the object updates service - */ - EditInPlaceFieldComponent.prototype.update = function (ngModel) { - this.objectUpdatesService.saveChangeFieldUpdate(this.url, this.metadata); - if (hasValue(ngModel)) { - this.checkValidity(ngModel); - } - }; - /** - * Method to check the validity of a form control - * @param ngModel - */ - EditInPlaceFieldComponent.prototype.checkValidity = function (ngModel) { - ngModel.control.setValue(ngModel.viewModel); - ngModel.control.updateValueAndValidity(); - this.objectUpdatesService.setValidFieldUpdate(this.url, this.metadata.uuid, ngModel.control.valid); - }; - /** - * Sends a new editable state for this field to the service to change it - * @param editable The new editable state for this field - */ - EditInPlaceFieldComponent.prototype.setEditable = function (editable) { - this.objectUpdatesService.setEditableFieldUpdate(this.url, this.metadata.uuid, editable); - }; - /** - * Sends a new remove update for this field to the object updates service - */ - EditInPlaceFieldComponent.prototype.remove = function () { - this.objectUpdatesService.saveRemoveFieldUpdate(this.url, this.metadata); - }; - /** - * Notifies the object updates service that the updates for the current field can be removed - */ - EditInPlaceFieldComponent.prototype.removeChangesFromField = function () { - this.objectUpdatesService.removeSingleFieldUpdate(this.url, this.metadata.uuid); - }; - /** - * Sets the current metadatafield based on the fieldUpdate input field - */ - EditInPlaceFieldComponent.prototype.ngOnChanges = function () { - this.metadata = cloneDeep(this.fieldUpdate.field); - }; - /** - * Requests all metadata fields that contain the query string in their key - * Then sets all found metadata fields as metadataFieldSuggestions - * @param query The query to look for - */ - EditInPlaceFieldComponent.prototype.findMetadataFieldSuggestions = function (query) { - var _this = this; - if (isNotEmpty(query)) { - this.metadataFieldService.queryMetadataFields(query).pipe( - // getSucceededRemoteData(), - take(1), map(function (data) { return data.payload.page; })).subscribe(function (fields) { return _this.metadataFieldSuggestions.next(fields.map(function (field) { - return { - displayValue: field.toString().split('.').join('.​'), - value: field.toString() - }; - })); }); - } - else { - this.metadataFieldSuggestions.next([]); - } - }; - /** - * Check if a user should be allowed to edit this field - * @return an observable that emits true when the user should be able to edit this field and false when they should not - */ - EditInPlaceFieldComponent.prototype.canSetEditable = function () { - var _this = this; - return this.editable.pipe(map(function (editable) { - if (editable) { - return false; - } - else { - return _this.fieldUpdate.changeType !== FieldChangeType.REMOVE; - } - })); - }; - /** - * Check if a user should be allowed to disabled editing this field - * @return an observable that emits true when the user should be able to disable editing this field and false when they should not - */ - EditInPlaceFieldComponent.prototype.canSetUneditable = function () { - return this.editable; - }; - /** - * Check if a user should be allowed to remove this field - * @return an observable that emits true when the user should be able to remove this field and false when they should not - */ - EditInPlaceFieldComponent.prototype.canRemove = function () { - return observableOf(this.fieldUpdate.changeType !== FieldChangeType.REMOVE && this.fieldUpdate.changeType !== FieldChangeType.ADD); - }; - /** - * Check if a user should be allowed to undo changes to this field - * @return an observable that emits true when the user should be able to undo changes to this field and false when they should not - */ - EditInPlaceFieldComponent.prototype.canUndo = function () { - var _this = this; - return this.editable.pipe(map(function (editable) { return _this.fieldUpdate.changeType >= 0 || editable; })); - }; - EditInPlaceFieldComponent.prototype.isNotEmpty = function (value) { - return isNotEmpty(value); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], EditInPlaceFieldComponent.prototype, "fieldUpdate", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], EditInPlaceFieldComponent.prototype, "url", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], EditInPlaceFieldComponent.prototype, "metadataFields", void 0); - EditInPlaceFieldComponent = tslib_1.__decorate([ - Component({ - // tslint:disable-next-line:component-selector - selector: '[ds-edit-in-place-field]', - styleUrls: ['./edit-in-place-field.component.scss'], - templateUrl: './edit-in-place-field.component.html', - }) - /** - * Component that displays a single metadatum of an item on the edit page - */ - , - tslib_1.__metadata("design:paramtypes", [RegistryService, - ObjectUpdatesService]) - ], EditInPlaceFieldComponent); - return EditInPlaceFieldComponent; -}()); -export { EditInPlaceFieldComponent }; -//# sourceMappingURL=edit-in-place-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js.map b/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js.map deleted file mode 100644 index c54ec9f493..0000000000 --- a/src/app/+item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-in-place-field.component.js","sourceRoot":"","sources":["edit-in-place-field.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js b/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js deleted file mode 100644 index f9a20872c9..0000000000 --- a/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js +++ /dev/null @@ -1,186 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { ItemDataService } from '../../../core/data/item-data.service'; -import { ObjectUpdatesService } from '../../../core/data/object-updates/object-updates.service'; -import { ActivatedRoute, Router } from '@angular/router'; -import { cloneDeep } from 'lodash'; -import { first, map, switchMap, take, tap } from 'rxjs/operators'; -import { getSucceededRemoteData } from '../../../core/shared/operators'; -import { NotificationsService } from '../../../shared/notifications/notifications.service'; -import { GLOBAL_CONFIG } from '../../../../config'; -import { TranslateService } from '@ngx-translate/core'; -import { RegistryService } from '../../../core/registry/registry.service'; -import { MetadatumViewModel } from '../../../core/shared/metadata.models'; -import { Metadata } from '../../../core/shared/metadata.utils'; -var ItemMetadataComponent = /** @class */ (function () { - function ItemMetadataComponent(itemService, objectUpdatesService, router, notificationsService, translateService, EnvConfig, route, metadataFieldService) { - this.itemService = itemService; - this.objectUpdatesService = objectUpdatesService; - this.router = router; - this.notificationsService = notificationsService; - this.translateService = translateService; - this.EnvConfig = EnvConfig; - this.route = route; - this.metadataFieldService = metadataFieldService; - /** - * Prefix for this component's notification translate keys - */ - this.notificationsPrefix = 'item.edit.metadata.notifications.'; - } - /** - * Set up and initialize all fields - */ - ItemMetadataComponent.prototype.ngOnInit = function () { - var _this = this; - this.metadataFields$ = this.findMetadataFields(); - this.route.parent.data.pipe(map(function (data) { return data.item; })) - .pipe(first(), map(function (data) { return data.payload; })).subscribe(function (item) { - _this.item = item; - }); - this.discardTimeOut = this.EnvConfig.item.edit.undoTimeout; - this.url = this.router.url; - if (this.url.indexOf('?') > 0) { - this.url = this.url.substr(0, this.url.indexOf('?')); - } - this.hasChanges().pipe(first()).subscribe(function (hasChanges) { - if (!hasChanges) { - _this.initializeOriginalFields(); - } - else { - _this.checkLastModified(); - } - }); - this.updates$ = this.objectUpdatesService.getFieldUpdates(this.url, this.item.metadataAsList); - }; - /** - * Sends a new add update for a field to the object updates service - * @param metadata The metadata to add, if no parameter is supplied, create a new Metadatum - */ - ItemMetadataComponent.prototype.add = function (metadata) { - if (metadata === void 0) { metadata = new MetadatumViewModel(); } - this.objectUpdatesService.saveAddFieldUpdate(this.url, metadata); - }; - /** - * Request the object updates service to discard all current changes to this item - * Shows a notification to remind the user that they can undo this - */ - ItemMetadataComponent.prototype.discard = function () { - var undoNotification = this.notificationsService.info(this.getNotificationTitle('discarded'), this.getNotificationContent('discarded'), { timeOut: this.discardTimeOut }); - this.objectUpdatesService.discardFieldUpdates(this.url, undoNotification); - }; - /** - * Request the object updates service to undo discarding all changes to this item - */ - ItemMetadataComponent.prototype.reinstate = function () { - this.objectUpdatesService.reinstateFieldUpdates(this.url); - }; - /** - * Sends all initial values of this item to the object updates service - */ - ItemMetadataComponent.prototype.initializeOriginalFields = function () { - this.objectUpdatesService.initialize(this.url, this.item.metadataAsList, this.item.lastModified); - }; - /** - * Prevent unnecessary rerendering so fields don't lose focus - */ - ItemMetadataComponent.prototype.trackUpdate = function (index, update) { - return update && update.field ? update.field.uuid : undefined; - }; - /** - * Requests all current metadata for this item and requests the item service to update the item - * Makes sure the new version of the item is rendered on the page - */ - ItemMetadataComponent.prototype.submit = function () { - var _this = this; - this.isValid().pipe(first()).subscribe(function (isValid) { - if (isValid) { - var metadata$ = _this.objectUpdatesService.getUpdatedFields(_this.url, _this.item.metadataAsList); - metadata$.pipe(first(), switchMap(function (metadata) { - var updatedItem = Object.assign(cloneDeep(_this.item), { metadata: Metadata.toMetadataMap(metadata) }); - return _this.itemService.update(updatedItem); - }), tap(function () { return _this.itemService.commitUpdates(); }), getSucceededRemoteData()).subscribe(function (rd) { - _this.item = rd.payload; - _this.initializeOriginalFields(); - _this.updates$ = _this.objectUpdatesService.getFieldUpdates(_this.url, _this.item.metadataAsList); - _this.notificationsService.success(_this.getNotificationTitle('saved'), _this.getNotificationContent('saved')); - }); - } - else { - _this.notificationsService.error(_this.getNotificationTitle('invalid'), _this.getNotificationContent('invalid')); - } - }); - }; - /** - * Checks whether or not there are currently updates for this item - */ - ItemMetadataComponent.prototype.hasChanges = function () { - return this.objectUpdatesService.hasUpdates(this.url); - }; - /** - * Checks whether or not the item is currently reinstatable - */ - ItemMetadataComponent.prototype.isReinstatable = function () { - return this.objectUpdatesService.isReinstatable(this.url); - }; - /** - * Checks if the current item is still in sync with the version in the store - * If it's not, a notification is shown and the changes are removed - */ - ItemMetadataComponent.prototype.checkLastModified = function () { - var _this = this; - var currentVersion = this.item.lastModified; - this.objectUpdatesService.getLastModified(this.url).pipe(first()).subscribe(function (updateVersion) { - if (updateVersion.getDate() !== currentVersion.getDate()) { - _this.notificationsService.warning(_this.getNotificationTitle('outdated'), _this.getNotificationContent('outdated')); - _this.initializeOriginalFields(); - } - }); - }; - /** - * Check if the current page is entirely valid - */ - ItemMetadataComponent.prototype.isValid = function () { - return this.objectUpdatesService.isValidPage(this.url); - }; - /** - * Get translated notification title - * @param key - */ - ItemMetadataComponent.prototype.getNotificationTitle = function (key) { - return this.translateService.instant(this.notificationsPrefix + key + '.title'); - }; - /** - * Get translated notification content - * @param key - */ - ItemMetadataComponent.prototype.getNotificationContent = function (key) { - return this.translateService.instant(this.notificationsPrefix + key + '.content'); - }; - /** - * Method to request all metadata fields and convert them to a list of strings - */ - ItemMetadataComponent.prototype.findMetadataFields = function () { - return this.metadataFieldService.getAllMetadataFields().pipe(getSucceededRemoteData(), take(1), map(function (remoteData$) { return remoteData$.payload.page.map(function (field) { return field.toString(); }); })); - }; - ItemMetadataComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-metadata', - styleUrls: ['./item-metadata.component.scss'], - templateUrl: './item-metadata.component.html', - }) - /** - * Component for displaying an item's metadata edit page - */ - , - tslib_1.__param(5, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [ItemDataService, - ObjectUpdatesService, - Router, - NotificationsService, - TranslateService, Object, ActivatedRoute, - RegistryService]) - ], ItemMetadataComponent); - return ItemMetadataComponent; -}()); -export { ItemMetadataComponent }; -//# sourceMappingURL=item-metadata.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js.map b/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js.map deleted file mode 100644 index 2efc5bc4e1..0000000000 --- a/src/app/+item-page/edit-item-page/item-metadata/item-metadata.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-metadata.component.js","sourceRoot":"","sources":["item-metadata.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js b/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js deleted file mode 100644 index ac6cc8378a..0000000000 --- a/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { ItemOperation } from './itemOperation.model'; -var ItemOperationComponent = /** @class */ (function () { - /** - * Operation that can be performed on an item - */ - function ItemOperationComponent() { - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", ItemOperation) - ], ItemOperationComponent.prototype, "operation", void 0); - ItemOperationComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-operation', - templateUrl: './item-operation.component.html' - }) - /** - * Operation that can be performed on an item - */ - ], ItemOperationComponent); - return ItemOperationComponent; -}()); -export { ItemOperationComponent }; -//# sourceMappingURL=item-operation.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js.map b/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js.map deleted file mode 100644 index b19f8a3412..0000000000 --- a/src/app/+item-page/edit-item-page/item-operation/item-operation.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-operation.component.js","sourceRoot":"","sources":["item-operation.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,EAAC,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AASpD;IAHA;;OAEG;IACH;IAIA,CAAC;IAFU;QAAR,KAAK,EAAE;0CAAY,aAAa;6DAAC;IAFvB,sBAAsB;QAPlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACF;;WAEG;OACU,sBAAsB,CAIlC;IAAD,6BAAC;CAAA,AAJD,IAIC;SAJY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js b/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js deleted file mode 100644 index 582d03e091..0000000000 --- a/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js +++ /dev/null @@ -1,21 +0,0 @@ -/** - * Represents an item operation used on the edit item page with a key, an operation URL to which will be navigated - * when performing the action and an option to disable the operation. - */ -var ItemOperation = /** @class */ (function () { - function ItemOperation(operationKey, operationUrl) { - this.operationKey = operationKey; - this.operationUrl = operationUrl; - this.setDisabled(false); - } - /** - * Set whether this operation should be disabled - * @param disabled - */ - ItemOperation.prototype.setDisabled = function (disabled) { - this.disabled = disabled; - }; - return ItemOperation; -}()); -export { ItemOperation }; -//# sourceMappingURL=itemOperation.model.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js.map b/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js.map deleted file mode 100644 index 302a9610f4..0000000000 --- a/src/app/+item-page/edit-item-page/item-operation/itemOperation.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"itemOperation.model.js","sourceRoot":"","sources":["itemOperation.model.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH;IAME,uBAAY,YAAoB,EAAE,YAAoB;QACpD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,mCAAW,GAAX,UAAY,QAAiB;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEH,oBAAC;AAAD,CAAC,AApBD,IAoBC"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-private/item-private.component.js b/src/app/+item-page/edit-item-page/item-private/item-private.component.js deleted file mode 100644 index 95d003f645..0000000000 --- a/src/app/+item-page/edit-item-page/item-private/item-private.component.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { first } from 'rxjs/operators'; -import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; -var ItemPrivateComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemPrivateComponent, _super); - function ItemPrivateComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.messageKey = 'private'; - _this.predicate = function (rd) { return !rd.payload.isDiscoverable; }; - return _this; - } - /** - * Perform the make private action to the item - */ - ItemPrivateComponent.prototype.performAction = function () { - var _this = this; - this.itemDataService.setDiscoverable(this.item.id, false).pipe(first()).subscribe(function (response) { - _this.processRestResponse(response); - }); - }; - ItemPrivateComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-private', - templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' - }) - /** - * Component responsible for rendering the make item private page - */ - ], ItemPrivateComponent); - return ItemPrivateComponent; -}(AbstractSimpleItemActionComponent)); -export { ItemPrivateComponent }; -//# sourceMappingURL=item-private.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-private/item-private.component.js.map b/src/app/+item-page/edit-item-page/item-private/item-private.component.js.map deleted file mode 100644 index 71ff598e2e..0000000000 --- a/src/app/+item-page/edit-item-page/item-private/item-private.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-private.component.js","sourceRoot":"","sources":["item-private.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAYhH;IAA0C,gDAAiC;IAP3E;QAAA,qEAsBC;QAbW,gBAAU,GAAG,SAAS,CAAC;QACvB,eAAS,GAAG,UAAC,EAAoB,IAAK,OAAA,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,EAA1B,CAA0B,CAAC;;IAY7E,CAAC;IAVC;;OAEG;IACH,4CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC/E,UAAC,QAAsB;YACrB,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAdU,oBAAoB;QAPhC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,oBAAoB,CAehC;IAAD,2BAAC;CAAA,AAfD,CAA0C,iCAAiC,GAe1E;SAfY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-public/item-public.component.js b/src/app/+item-page/edit-item-page/item-public/item-public.component.js deleted file mode 100644 index 34d76abab2..0000000000 --- a/src/app/+item-page/edit-item-page/item-public/item-public.component.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { first } from 'rxjs/operators'; -import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; -var ItemPublicComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemPublicComponent, _super); - function ItemPublicComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.messageKey = 'public'; - _this.predicate = function (rd) { return rd.payload.isDiscoverable; }; - return _this; - } - /** - * Perform the make public action to the item - */ - ItemPublicComponent.prototype.performAction = function () { - var _this = this; - this.itemDataService.setDiscoverable(this.item.id, true).pipe(first()).subscribe(function (response) { - _this.processRestResponse(response); - }); - }; - ItemPublicComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-public', - templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' - }) - /** - * Component responsible for rendering the make item public page - */ - ], ItemPublicComponent); - return ItemPublicComponent; -}(AbstractSimpleItemActionComponent)); -export { ItemPublicComponent }; -//# sourceMappingURL=item-public.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-public/item-public.component.js.map b/src/app/+item-page/edit-item-page/item-public/item-public.component.js.map deleted file mode 100644 index 9a71a24c7f..0000000000 --- a/src/app/+item-page/edit-item-page/item-public/item-public.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-public.component.js","sourceRoot":"","sources":["item-public.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAYhH;IAAyC,+CAAiC;IAP1E;QAAA,qEAsBC;QAbW,gBAAU,GAAG,QAAQ,CAAC;QACtB,eAAS,GAAG,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,OAAO,CAAC,cAAc,EAAzB,CAAyB,CAAC;;IAY5E,CAAC;IAVC;;OAEG;IACH,2CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC9E,UAAC,QAAsB;YACrB,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAdU,mBAAmB;QAP/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,mBAAmB,CAe/B;IAAD,0BAAC;CAAA,AAfD,CAAyC,iCAAiC,GAezE;SAfY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js b/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js deleted file mode 100644 index 470c381f5d..0000000000 --- a/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { first } from 'rxjs/operators'; -import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; -var ItemReinstateComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemReinstateComponent, _super); - function ItemReinstateComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.messageKey = 'reinstate'; - _this.predicate = function (rd) { return !rd.payload.isWithdrawn; }; - return _this; - } - /** - * Perform the reinstate action to the item - */ - ItemReinstateComponent.prototype.performAction = function () { - var _this = this; - this.itemDataService.setWithDrawn(this.item.id, false).pipe(first()).subscribe(function (response) { - _this.processRestResponse(response); - }); - }; - ItemReinstateComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-reinstate', - templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' - }) - /** - * Component responsible for rendering the Item Reinstate page - */ - ], ItemReinstateComponent); - return ItemReinstateComponent; -}(AbstractSimpleItemActionComponent)); -export { ItemReinstateComponent }; -//# sourceMappingURL=item-reinstate.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js.map b/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js.map deleted file mode 100644 index 367f0a837a..0000000000 --- a/src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-reinstate.component.js","sourceRoot":"","sources":["item-reinstate.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAYhH;IAA4C,kDAAiC;IAP7E;QAAA,qEAsBC;QAbW,gBAAU,GAAG,WAAW,CAAC;QACzB,eAAS,GAAG,UAAC,EAAoB,IAAK,OAAA,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAvB,CAAuB,CAAC;;IAY1E,CAAC;IAVC;;OAEG;IACH,8CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC5E,UAAC,QAAsB;YACrB,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAdU,sBAAsB;QAPlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,sBAAsB,CAelC;IAAD,6BAAC;CAAA,AAfD,CAA4C,iCAAiC,GAe5E;SAfY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-status/item-status.component.js b/src/app/+item-page/edit-item-page/item-status/item-status.component.js deleted file mode 100644 index b85b66ff05..0000000000 --- a/src/app/+item-page/edit-item-page/item-status/item-status.component.js +++ /dev/null @@ -1,76 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { fadeIn, fadeInOut } from '../../../shared/animations/fade'; -import { ActivatedRoute } from '@angular/router'; -import { ItemOperation } from '../item-operation/itemOperation.model'; -import { first, map } from 'rxjs/operators'; -import { getItemEditPath, getItemPageRoute } from '../../item-page-routing.module'; -var ItemStatusComponent = /** @class */ (function () { - function ItemStatusComponent(route) { - this.route = route; - } - ItemStatusComponent.prototype.ngOnInit = function () { - var _this = this; - this.itemRD$ = this.route.parent.data.pipe(map(function (data) { return data.item; })); - this.itemRD$.pipe(first(), map(function (data) { return data.payload; })).subscribe(function (item) { - _this.statusData = Object.assign({ - id: item.id, - handle: item.handle, - lastModified: item.lastModified - }); - _this.statusDataKeys = Object.keys(_this.statusData); - /* - The key is used to build messages - i18n example: 'item.edit.tabs.status.buttons..label' - The value is supposed to be a href for the button - */ - _this.operations = []; - if (item.isWithdrawn) { - _this.operations.push(new ItemOperation('reinstate', _this.getCurrentUrl(item) + '/reinstate')); - } - else { - _this.operations.push(new ItemOperation('withdraw', _this.getCurrentUrl(item) + '/withdraw')); - } - if (item.isDiscoverable) { - _this.operations.push(new ItemOperation('private', _this.getCurrentUrl(item) + '/private')); - } - else { - _this.operations.push(new ItemOperation('public', _this.getCurrentUrl(item) + '/public')); - } - _this.operations.push(new ItemOperation('delete', _this.getCurrentUrl(item) + '/delete')); - }); - }; - /** - * Get the url to the simple item page - * @returns {string} url - */ - ItemStatusComponent.prototype.getItemPage = function (item) { - return getItemPageRoute(item.id); - }; - /** - * Get the current url without query params - * @returns {string} url - */ - ItemStatusComponent.prototype.getCurrentUrl = function (item) { - return getItemEditPath(item.id); - }; - ItemStatusComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-status', - templateUrl: './item-status.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [ - fadeIn, - fadeInOut - ] - }) - /** - * Component for displaying an item's status - */ - , - tslib_1.__metadata("design:paramtypes", [ActivatedRoute]) - ], ItemStatusComponent); - return ItemStatusComponent; -}()); -export { ItemStatusComponent }; -//# sourceMappingURL=item-status.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-status/item-status.component.js.map b/src/app/+item-page/edit-item-page/item-status/item-status.component.js.map deleted file mode 100644 index fdb5deeb72..0000000000 --- a/src/app/+item-page/edit-item-page/item-status/item-status.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-status.component.js","sourceRoot":"","sources":["item-status.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js b/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js deleted file mode 100644 index 0fc78dfbc4..0000000000 --- a/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { first } from 'rxjs/operators'; -import { AbstractSimpleItemActionComponent } from '../simple-item-action/abstract-simple-item-action.component'; -var ItemWithdrawComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemWithdrawComponent, _super); - function ItemWithdrawComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.messageKey = 'withdraw'; - _this.predicate = function (rd) { return rd.payload.isWithdrawn; }; - return _this; - } - /** - * Perform the withdraw action to the item - */ - ItemWithdrawComponent.prototype.performAction = function () { - var _this = this; - this.itemDataService.setWithDrawn(this.item.id, true).pipe(first()).subscribe(function (response) { - _this.processRestResponse(response); - }); - }; - ItemWithdrawComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-withdraw', - templateUrl: '../simple-item-action/abstract-simple-item-action.component.html' - }) - /** - * Component responsible for rendering the Item Withdraw page - */ - ], ItemWithdrawComponent); - return ItemWithdrawComponent; -}(AbstractSimpleItemActionComponent)); -export { ItemWithdrawComponent }; -//# sourceMappingURL=item-withdraw.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js.map b/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js.map deleted file mode 100644 index ab69e37d3a..0000000000 --- a/src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-withdraw.component.js","sourceRoot":"","sources":["item-withdraw.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,6DAA6D,CAAC;AAYhH;IAA2C,iDAAiC;IAP5E;QAAA,qEAsBC;QAbW,gBAAU,GAAG,UAAU,CAAC;QACxB,eAAS,GAAG,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,OAAO,CAAC,WAAW,EAAtB,CAAsB,CAAC;;IAYzE,CAAC;IAVC;;OAEG;IACH,6CAAa,GAAb;QAAA,iBAMC;QALC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAC3E,UAAC,QAAsB;YACrB,KAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CACF,CAAC;IACJ,CAAC;IAdU,qBAAqB;QAPjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF;;WAEG;OACU,qBAAqB,CAejC;IAAD,4BAAC;CAAA,AAfD,CAA2C,iCAAiC,GAe3E;SAfY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js b/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js deleted file mode 100644 index 29d7d1b974..0000000000 --- a/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../core/shared/item.model'; -var ModifyItemOverviewComponent = /** @class */ (function () { - /** - * Component responsible for rendering a table containing the metadatavalues from the to be edited item - */ - function ModifyItemOverviewComponent() { - } - ModifyItemOverviewComponent.prototype.ngOnInit = function () { - this.metadata = this.item.metadata; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ModifyItemOverviewComponent.prototype, "item", void 0); - ModifyItemOverviewComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-modify-item-overview', - templateUrl: './modify-item-overview.component.html' - }) - /** - * Component responsible for rendering a table containing the metadatavalues from the to be edited item - */ - ], ModifyItemOverviewComponent); - return ModifyItemOverviewComponent; -}()); -export { ModifyItemOverviewComponent }; -//# sourceMappingURL=modify-item-overview.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js.map b/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js.map deleted file mode 100644 index fb94baa3be..0000000000 --- a/src/app/+item-page/edit-item-page/modify-item-overview/modify-item-overview.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"modify-item-overview.component.js","sourceRoot":"","sources":["modify-item-overview.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,SAAS,EAAE,KAAK,EAAS,MAAM,eAAe,CAAC;AACvD,OAAO,EAAC,IAAI,EAAC,MAAM,iCAAiC,CAAC;AAUrD;IAHA;;OAEG;IACH;IAQA,CAAC;IAHC,8CAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IACrC,CAAC;IALQ;QAAR,KAAK,EAAE;0CAAO,IAAI;6DAAC;IAFT,2BAA2B;QAPvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;OACU,2BAA2B,CAQvC;IAAD,kCAAC;CAAA,AARD,IAQC;SARY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js deleted file mode 100644 index 3ff17e9605..0000000000 --- a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js +++ /dev/null @@ -1,72 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { NotificationsService } from '../../../shared/notifications/notifications.service'; -import { ItemDataService } from '../../../core/data/item-data.service'; -import { TranslateService } from '@ngx-translate/core'; -import { getSucceededRemoteData } from '../../../core/shared/operators'; -import { first, map } from 'rxjs/operators'; -import { findSuccessfulAccordingTo } from '../edit-item-operators'; -import { getItemEditPath } from '../../item-page-routing.module'; -/** - * Component to render and handle simple item edit actions such as withdrawal and reinstatement. - * This component is not meant to be used itself but to be extended. - */ -var AbstractSimpleItemActionComponent = /** @class */ (function () { - function AbstractSimpleItemActionComponent(route, router, notificationsService, itemDataService, translateService) { - this.route = route; - this.router = router; - this.notificationsService = notificationsService; - this.itemDataService = itemDataService; - this.translateService = translateService; - } - AbstractSimpleItemActionComponent.prototype.ngOnInit = function () { - var _this = this; - this.itemRD$ = this.route.data.pipe(map(function (data) { return data.item; }), getSucceededRemoteData()); - this.itemRD$.pipe(first()).subscribe(function (rd) { - _this.item = rd.payload; - }); - this.confirmMessage = 'item.edit.' + this.messageKey + '.confirm'; - this.cancelMessage = 'item.edit.' + this.messageKey + '.cancel'; - this.headerMessage = 'item.edit.' + this.messageKey + '.header'; - this.descriptionMessage = 'item.edit.' + this.messageKey + '.description'; - }; - /** - * Perform the operation linked to this action - */ - AbstractSimpleItemActionComponent.prototype.performAction = function () { - // Overwrite in subclasses - }; - ; - /** - * Process the response obtained during the performAction method and navigate back to the edit page - * @param response from the action in the performAction method - */ - AbstractSimpleItemActionComponent.prototype.processRestResponse = function (response) { - var _this = this; - if (response.isSuccessful) { - this.itemDataService.findById(this.item.id).pipe(findSuccessfulAccordingTo(this.predicate)).subscribe(function () { - _this.notificationsService.success(_this.translateService.get('item.edit.' + _this.messageKey + '.success')); - _this.router.navigate([getItemEditPath(_this.item.id)]); - }); - } - else { - this.notificationsService.error(this.translateService.get('item.edit.' + this.messageKey + '.error')); - this.router.navigate([getItemEditPath(this.item.id)]); - } - }; - AbstractSimpleItemActionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-simple-action', - templateUrl: './abstract-simple-item-action.component.html' - }), - tslib_1.__metadata("design:paramtypes", [ActivatedRoute, - Router, - NotificationsService, - ItemDataService, - TranslateService]) - ], AbstractSimpleItemActionComponent); - return AbstractSimpleItemActionComponent; -}()); -export { AbstractSimpleItemActionComponent }; -//# sourceMappingURL=abstract-simple-item-action.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js.map b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js.map deleted file mode 100644 index 9b2ef7e6a2..0000000000 --- a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"abstract-simple-item-action.component.js","sourceRoot":"","sources":["abstract-simple-item-action.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js deleted file mode 100644 index d24aeddd3d..0000000000 --- a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js +++ /dev/null @@ -1,129 +0,0 @@ -import * as tslib_1 from "tslib"; -import { async, TestBed } from '@angular/core/testing'; -import { Item } from '../../../core/shared/item.model'; -import { RouterStub } from '../../../shared/testing/router-stub'; -import { CommonModule } from '@angular/common'; -import { RouterTestingModule } from '@angular/router/testing'; -import { TranslateModule } from '@ngx-translate/core'; -import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; -import { ActivatedRoute, Router } from '@angular/router'; -import { NotificationsServiceStub } from '../../../shared/testing/notifications-service-stub'; -import { NotificationsService } from '../../../shared/notifications/notifications.service'; -import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; -import { FormsModule } from '@angular/forms'; -import { ItemDataService } from '../../../core/data/item-data.service'; -import { RemoteData } from '../../../core/data/remote-data'; -import { AbstractSimpleItemActionComponent } from './abstract-simple-item-action.component'; -import { By } from '@angular/platform-browser'; -import { of as observableOf } from 'rxjs'; -import { getItemEditPath } from '../../item-page-routing.module'; -import { RestResponse } from '../../../core/cache/response.models'; -/** - * Test component that implements the AbstractSimpleItemActionComponent used to test the - * AbstractSimpleItemActionComponent component - */ -var MySimpleItemActionComponent = /** @class */ (function (_super) { - tslib_1.__extends(MySimpleItemActionComponent, _super); - function MySimpleItemActionComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.messageKey = 'myEditAction'; - _this.predicate = function (rd) { return rd.payload.isWithdrawn; }; - return _this; - } - MySimpleItemActionComponent.prototype.performAction = function () { - // do nothing - }; - MySimpleItemActionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-simple-action', - templateUrl: './abstract-simple-item-action.component.html' - }) - ], MySimpleItemActionComponent); - return MySimpleItemActionComponent; -}(AbstractSimpleItemActionComponent)); -export { MySimpleItemActionComponent }; -var comp; -var fixture; -var mockItem; -var itemPageUrl; -var routerStub; -var mockItemDataService; -var routeStub; -var notificationsServiceStub; -var successfulRestResponse; -var failRestResponse; -describe('AbstractSimpleItemActionComponent', function () { - beforeEach(async(function () { - mockItem = Object.assign(new Item(), { - id: 'fake-id', - handle: 'fake/handle', - lastModified: '2018', - isWithdrawn: true - }); - itemPageUrl = "fake-url/" + mockItem.id; - routerStub = Object.assign(new RouterStub(), { - url: itemPageUrl + "/edit" - }); - mockItemDataService = jasmine.createSpyObj({ - findById: observableOf(new RemoteData(false, false, true, undefined, mockItem)) - }); - routeStub = { - data: observableOf({ - item: new RemoteData(false, false, true, null, { - id: 'fake-id' - }) - }) - }; - notificationsServiceStub = new NotificationsServiceStub(); - TestBed.configureTestingModule({ - imports: [CommonModule, FormsModule, RouterTestingModule.withRoutes([]), TranslateModule.forRoot(), NgbModule.forRoot()], - declarations: [MySimpleItemActionComponent], - providers: [ - { provide: ActivatedRoute, useValue: routeStub }, - { provide: Router, useValue: routerStub }, - { provide: ItemDataService, useValue: mockItemDataService }, - { provide: NotificationsService, useValue: notificationsServiceStub }, - ], schemas: [ - CUSTOM_ELEMENTS_SCHEMA - ] - }).compileComponents(); - })); - beforeEach(function () { - successfulRestResponse = new RestResponse(true, 200, 'OK'); - failRestResponse = new RestResponse(false, 500, 'Internal Server Error'); - fixture = TestBed.createComponent(MySimpleItemActionComponent); - comp = fixture.componentInstance; - fixture.detectChanges(); - }); - afterEach(function () { - fixture.destroy(); - comp = null; - }); - it('should render a page with messages based on the provided messageKey', function () { - var header = fixture.debugElement.query(By.css('h2')).nativeElement; - expect(header.innerHTML).toContain('item.edit.myEditAction.header'); - var description = fixture.debugElement.query(By.css('p')).nativeElement; - expect(description.innerHTML).toContain('item.edit.myEditAction.description'); - var confirmButton = fixture.debugElement.query(By.css('button.perform-action')).nativeElement; - expect(confirmButton.innerHTML).toContain('item.edit.myEditAction.confirm'); - var cancelButton = fixture.debugElement.query(By.css('button.cancel')).nativeElement; - expect(cancelButton.innerHTML).toContain('item.edit.myEditAction.cancel'); - }); - it('should perform action when the button is clicked', function () { - spyOn(comp, 'performAction'); - var performButton = fixture.debugElement.query(By.css('.perform-action')); - performButton.triggerEventHandler('click', null); - expect(comp.performAction).toHaveBeenCalled(); - }); - it('should process a RestResponse to navigate and display success notification', function () { - comp.processRestResponse(successfulRestResponse); - expect(notificationsServiceStub.success).toHaveBeenCalled(); - expect(routerStub.navigate).toHaveBeenCalledWith([getItemEditPath(mockItem.id)]); - }); - it('should process a RestResponse to navigate and display success notification', function () { - comp.processRestResponse(failRestResponse); - expect(notificationsServiceStub.error).toHaveBeenCalled(); - expect(routerStub.navigate).toHaveBeenCalledWith([getItemEditPath(mockItem.id)]); - }); -}); -//# sourceMappingURL=abstract-simple-item-action.component.spec.js.map \ No newline at end of file diff --git a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js.map b/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js.map deleted file mode 100644 index 00ef61cb27..0000000000 --- a/src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"abstract-simple-item-action.component.spec.js","sourceRoot":"","sources":["abstract-simple-item-action.component.spec.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/field-components/collections/collections.component.js b/src/app/+item-page/field-components/collections/collections.component.js deleted file mode 100644 index e5aa6e770f..0000000000 --- a/src/app/+item-page/field-components/collections/collections.component.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map } from 'rxjs/operators'; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../core/shared/item.model'; -import { RemoteDataBuildService } from '../../../core/cache/builders/remote-data-build.service'; -/** - * This component renders the parent collections section of the item - * inside a 'ds-metadata-field-wrapper' component. - */ -var CollectionsComponent = /** @class */ (function () { - function CollectionsComponent(rdbs) { - this.rdbs = rdbs; - this.label = 'item.page.collections'; - this.separator = '
'; - } - CollectionsComponent.prototype.ngOnInit = function () { - // this.collections = this.item.parents.payload; - // TODO: this should use parents, but the collections - // for an Item aren't returned by the REST API yet, - // only the owning collection - this.collections = this.item.owner.pipe(map(function (rd) { return [rd.payload]; })); - }; - CollectionsComponent.prototype.hasSucceeded = function () { - return this.item.owner.pipe(map(function (rd) { return rd.hasSucceeded; })); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], CollectionsComponent.prototype, "item", void 0); - CollectionsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page-collections', - templateUrl: './collections.component.html' - }), - tslib_1.__metadata("design:paramtypes", [RemoteDataBuildService]) - ], CollectionsComponent); - return CollectionsComponent; -}()); -export { CollectionsComponent }; -//# sourceMappingURL=collections.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/field-components/collections/collections.component.js.map b/src/app/+item-page/field-components/collections/collections.component.js.map deleted file mode 100644 index 7f40f64d6c..0000000000 --- a/src/app/+item-page/field-components/collections/collections.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collections.component.js","sourceRoot":"","sources":["collections.component.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAIzD,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wDAAwD,CAAC;AAGhG;;;GAGG;AAMH;IAUE,8BAAoB,IAA4B;QAA5B,SAAI,GAAJ,IAAI,CAAwB;QANhD,UAAK,GAAG,uBAAuB,CAAC;QAEhC,cAAS,GAAG,OAAO,CAAC;IAMpB,CAAC;IAED,uCAAQ,GAAR;QACE,kDAAkD;QAElD,qDAAqD;QACrD,mDAAmD;QACnD,6BAA6B;QAC7B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,EAA0B,IAAK,OAAA,CAAC,EAAE,CAAC,OAAO,CAAC,EAAZ,CAAY,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,2CAAY,GAAZ;QACE,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,EAA0B,IAAK,OAAA,EAAE,CAAC,YAAY,EAAf,CAAe,CAAC,CAAC,CAAC;IACpF,CAAC;IAvBQ;QAAR,KAAK,EAAE;0CAAO,IAAI;sDAAC;IAFT,oBAAoB;QAJhC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,WAAW,EAAE,8BAA8B;SAC5C,CAAC;iDAW0B,sBAAsB;OAVrC,oBAAoB,CA2BhC;IAAD,2BAAC;CAAA,AA3BD,IA2BC;SA3BY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js b/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js deleted file mode 100644 index fa01685529..0000000000 --- a/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { hasNoValue } from '../../../shared/empty.util'; -/** - * This component renders any content inside this wrapper. - * The wrapper prints a label before the content (if available) - */ -var MetadataFieldWrapperComponent = /** @class */ (function () { - function MetadataFieldWrapperComponent() { - } - /** - * Make hasNoValue() available in the template - */ - MetadataFieldWrapperComponent.prototype.hasNoValue = function (o) { - return hasNoValue(o); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], MetadataFieldWrapperComponent.prototype, "label", void 0); - MetadataFieldWrapperComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-field-wrapper', - styleUrls: ['./metadata-field-wrapper.component.scss'], - templateUrl: './metadata-field-wrapper.component.html' - }) - ], MetadataFieldWrapperComponent); - return MetadataFieldWrapperComponent; -}()); -export { MetadataFieldWrapperComponent }; -//# sourceMappingURL=metadata-field-wrapper.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js.map b/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js.map deleted file mode 100644 index 2742660ca9..0000000000 --- a/src/app/+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-field-wrapper.component.js","sourceRoot":"","sources":["metadata-field-wrapper.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD;;;GAGG;AAMH;IAAA;IAaA,CAAC;IANC;;OAEG;IACH,kDAAU,GAAV,UAAW,CAAM;QACf,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAPQ;QAAR,KAAK,EAAE;;gEAAe;IALZ,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;OACW,6BAA6B,CAazC;IAAD,oCAAC;CAAA,AAbD,IAaC;SAbY,6BAA6B"} \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js b/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js deleted file mode 100644 index b82b95572f..0000000000 --- a/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { MetadataValuesComponent } from '../metadata-values/metadata-values.component'; -/** - * This component renders the configured 'values' into the ds-metadata-field-wrapper component as a link. - * It puts the given 'separator' between each two values - * and creates an 'a' tag for each value, - * using the 'linktext' as it's value (if it exists) - * and using the values as the 'href' attribute (and as value of the tag when no 'linktext' is defined) - */ -var MetadataUriValuesComponent = /** @class */ (function (_super) { - tslib_1.__extends(MetadataUriValuesComponent, _super); - function MetadataUriValuesComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], MetadataUriValuesComponent.prototype, "linktext", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], MetadataUriValuesComponent.prototype, "mdValues", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], MetadataUriValuesComponent.prototype, "separator", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], MetadataUriValuesComponent.prototype, "label", void 0); - MetadataUriValuesComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-uri-values', - styleUrls: ['./metadata-uri-values.component.scss'], - templateUrl: './metadata-uri-values.component.html' - }) - ], MetadataUriValuesComponent); - return MetadataUriValuesComponent; -}(MetadataValuesComponent)); -export { MetadataUriValuesComponent }; -//# sourceMappingURL=metadata-uri-values.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js.map b/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js.map deleted file mode 100644 index a3fa56a34f..0000000000 --- a/src/app/+item-page/field-components/metadata-uri-values/metadata-uri-values.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-uri-values.component.js","sourceRoot":"","sources":["metadata-uri-values.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAGvF;;;;;;GAMG;AAMH;IAAgD,sDAAuB;IAAvE;;IAsBA,CAAC;IAhBU;QAAR,KAAK,EAAE;;gEAAe;IAKd;QAAR,KAAK,EAAE;;gEAA2B;IAK1B;QAAR,KAAK,EAAE;;iEAAmB;IAKlB;QAAR,KAAK,EAAE;;6DAAe;IArBZ,0BAA0B;QALtC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;OACW,0BAA0B,CAsBtC;IAAD,iCAAC;CAAA,AAtBD,CAAgD,uBAAuB,GAsBtE;SAtBY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-values/metadata-values.component.js b/src/app/+item-page/field-components/metadata-values/metadata-values.component.js deleted file mode 100644 index 34e5520561..0000000000 --- a/src/app/+item-page/field-components/metadata-values/metadata-values.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -/** - * This component renders the configured 'values' into the ds-metadata-field-wrapper component. - * It puts the given 'separator' between each two values. - */ -var MetadataValuesComponent = /** @class */ (function () { - function MetadataValuesComponent() { - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], MetadataValuesComponent.prototype, "mdValues", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], MetadataValuesComponent.prototype, "separator", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], MetadataValuesComponent.prototype, "label", void 0); - MetadataValuesComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-values', - styleUrls: ['./metadata-values.component.scss'], - templateUrl: './metadata-values.component.html' - }) - ], MetadataValuesComponent); - return MetadataValuesComponent; -}()); -export { MetadataValuesComponent }; -//# sourceMappingURL=metadata-values.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/field-components/metadata-values/metadata-values.component.js.map b/src/app/+item-page/field-components/metadata-values/metadata-values.component.js.map deleted file mode 100644 index 5a6bf32478..0000000000 --- a/src/app/+item-page/field-components/metadata-values/metadata-values.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-values.component.js","sourceRoot":"","sources":["metadata-values.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGjD;;;GAGG;AAMH;IAAA;IAiBA,CAAC;IAZU;QAAR,KAAK,EAAE;;6DAA2B;IAK1B;QAAR,KAAK,EAAE;;8DAAmB;IAKlB;QAAR,KAAK,EAAE;;0DAAe;IAfZ,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,kCAAkC,CAAC;YAC/C,WAAW,EAAE,kCAAkC;SAChD,CAAC;OACW,uBAAuB,CAiBnC;IAAD,8BAAC;CAAA,AAjBD,IAiBC;SAjBY,uBAAuB"} \ No newline at end of file diff --git a/src/app/+item-page/full/field-components/file-section/full-file-section.component.js b/src/app/+item-page/full/field-components/file-section/full-file-section.component.js deleted file mode 100644 index 17521d2a84..0000000000 --- a/src/app/+item-page/full/field-components/file-section/full-file-section.component.js +++ /dev/null @@ -1,50 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../core/shared/item.model'; -import { FileSectionComponent } from '../../../simple/field-components/file-section/file-section.component'; -import { map } from 'rxjs/operators'; -/** - * This component renders the file section of the item - * inside a 'ds-metadata-field-wrapper' component. - */ -var FullFileSectionComponent = /** @class */ (function (_super) { - tslib_1.__extends(FullFileSectionComponent, _super); - function FullFileSectionComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.thumbnails = new Map(); - return _this; - } - FullFileSectionComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - }; - FullFileSectionComponent.prototype.initialize = function () { - var _this = this; - var originals = this.item.getFiles(); - var licenses = this.item.getBitstreamsByBundleName('LICENSE'); - this.bitstreamsObs = observableCombineLatest(originals, licenses).pipe(map(function (_a) { - var o = _a[0], l = _a[1]; - return o.concat(l); - })); - this.bitstreamsObs.subscribe(function (files) { - return files.forEach(function (original) { - var thumbnail = _this.item.getThumbnailForOriginal(original); - _this.thumbnails.set(original.id, thumbnail); - }); - }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], FullFileSectionComponent.prototype, "item", void 0); - FullFileSectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page-full-file-section', - styleUrls: ['./full-file-section.component.scss'], - templateUrl: './full-file-section.component.html' - }) - ], FullFileSectionComponent); - return FullFileSectionComponent; -}(FileSectionComponent)); -export { FullFileSectionComponent }; -//# sourceMappingURL=full-file-section.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/full/field-components/file-section/full-file-section.component.js.map b/src/app/+item-page/full/field-components/file-section/full-file-section.component.js.map deleted file mode 100644 index 034e5ed744..0000000000 --- a/src/app/+item-page/full/field-components/file-section/full-file-section.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"full-file-section.component.js","sourceRoot":"","sources":["full-file-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,MAAM,MAAM,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sEAAsE,CAAC;AAC5G,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC;;;GAGG;AAOH;IAA8C,oDAAoB;IALlE;QAAA,qEAkCC;QArBC,gBAAU,GAAuC,IAAI,GAAG,EAAE,CAAC;;IAqB7D,CAAC;IAnBC,2CAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;IACnB,CAAC;IAED,6CAAU,GAAV;QAAA,iBAaC;QAZC,IAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvC,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,CAAC,aAAa,GAAG,uBAAuB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,EAAM;gBAAL,SAAC,EAAE,SAAC;YAAM,OAAI,CAAC,QAAK,CAAC;QAAX,CAAY,CAAC,CAAC,CAAC;QACtG,IAAI,CAAC,aAAa,CAAC,SAAS,CAC1B,UAAC,KAAK;YACJ,OAAA,KAAK,CAAC,OAAO,CACX,UAAC,QAAQ;gBACP,IAAM,SAAS,GAA0B,KAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;gBACrF,KAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC9C,CAAC,CACF;QALD,CAKC,CACJ,CAAA;IACH,CAAC;IAzBQ;QAAR,KAAK,EAAE;0CAAO,IAAI;0DAAC;IAFT,wBAAwB;QALpC,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;OACW,wBAAwB,CA6BpC;IAAD,+BAAC;CAAA,AA7BD,CAA8C,oBAAoB,GA6BjE;SA7BY,wBAAwB"} \ No newline at end of file diff --git a/src/app/+item-page/full/full-item-page.component.js b/src/app/+item-page/full/full-item-page.component.js deleted file mode 100644 index a4392e855b..0000000000 --- a/src/app/+item-page/full/full-item-page.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { filter, map } from 'rxjs/operators'; -import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { ItemPageComponent } from '../simple/item-page.component'; -import { ItemDataService } from '../../core/data/item-data.service'; -import { MetadataService } from '../../core/metadata/metadata.service'; -import { fadeInOut } from '../../shared/animations/fade'; -import { hasValue } from '../../shared/empty.util'; -/** - * This component renders a simple item page. - * The route parameter 'id' is used to request the item it represents. - * All fields of the item that should be displayed, are defined in its template. - */ -var FullItemPageComponent = /** @class */ (function (_super) { - tslib_1.__extends(FullItemPageComponent, _super); - function FullItemPageComponent(route, router, items, metadataService) { - return _super.call(this, route, router, items, metadataService) || this; - } - /*** AoT inheritance fix, will hopefully be resolved in the near future **/ - FullItemPageComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - this.metadata$ = this.itemRD$.pipe(map(function (rd) { return rd.payload; }), filter(function (item) { return hasValue(item); }), map(function (item) { return item.metadata; })); - }; - FullItemPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-full-item-page', - styleUrls: ['./full-item-page.component.scss'], - templateUrl: './full-item-page.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [fadeInOut] - }), - tslib_1.__metadata("design:paramtypes", [ActivatedRoute, Router, ItemDataService, MetadataService]) - ], FullItemPageComponent); - return FullItemPageComponent; -}(ItemPageComponent)); -export { FullItemPageComponent }; -//# sourceMappingURL=full-item-page.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/full/full-item-page.component.js.map b/src/app/+item-page/full/full-item-page.component.js.map deleted file mode 100644 index 56adea9a53..0000000000 --- a/src/app/+item-page/full/full-item-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"full-item-page.component.js","sourceRoot":"","sources":["full-item-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,MAAM,EAAE,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAKpE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD;;;;GAIG;AASH;IAA2C,iDAAiB;IAM1D,+BAAY,KAAqB,EAAE,MAAc,EAAE,KAAsB,EAAE,eAAgC;eACzG,kBAAM,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,CAAC;IAC9C,CAAC;IAED,2EAA2E;IAC3E,wCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAChC,GAAG,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,OAAO,EAAV,CAAU,CAAC,EACzC,MAAM,CAAC,UAAC,IAAU,IAAK,OAAA,QAAQ,CAAC,IAAI,CAAC,EAAd,CAAc,CAAC,EACtC,GAAG,CAAC,UAAC,IAAU,IAAK,OAAA,IAAI,CAAC,QAAQ,EAAb,CAAa,CAAC,CAAE,CAAC;IACzC,CAAC;IAjBU,qBAAqB;QAPjC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;YAC9C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;iDAOmB,cAAc,EAAU,MAAM,EAAS,eAAe,EAAmB,eAAe;OANhG,qBAAqB,CAkBjC;IAAD,4BAAC;CAAA,AAlBD,CAA2C,iBAAiB,GAkB3D;SAlBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/item-page-routing.module.js b/src/app/+item-page/item-page-routing.module.js deleted file mode 100644 index 180fa894cb..0000000000 --- a/src/app/+item-page/item-page-routing.module.js +++ /dev/null @@ -1,54 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { ItemPageComponent } from './simple/item-page.component'; -import { FullItemPageComponent } from './full/full-item-page.component'; -import { ItemPageResolver } from './item-page.resolver'; -import { URLCombiner } from '../core/url-combiner/url-combiner'; -import { getItemModulePath } from '../app-routing.module'; -import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; -export function getItemPageRoute(itemId) { - return new URLCombiner(getItemModulePath(), itemId).toString(); -} -export function getItemEditPath(id) { - return new URLCombiner(getItemModulePath(), ITEM_EDIT_PATH.replace(/:id/, id)).toString(); -} -var ITEM_EDIT_PATH = ':id/edit'; -var ItemPageRoutingModule = /** @class */ (function () { - function ItemPageRoutingModule() { - } - ItemPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { - path: ':id', - component: ItemPageComponent, - pathMatch: 'full', - resolve: { - item: ItemPageResolver - } - }, - { - path: ':id/full', - component: FullItemPageComponent, - resolve: { - item: ItemPageResolver - } - }, - { - path: ITEM_EDIT_PATH, - loadChildren: './edit-item-page/edit-item-page.module#EditItemPageModule', - canActivate: [AuthenticatedGuard] - }, - ]) - ], - providers: [ - ItemPageResolver, - ] - }) - ], ItemPageRoutingModule); - return ItemPageRoutingModule; -}()); -export { ItemPageRoutingModule }; -//# sourceMappingURL=item-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+item-page/item-page-routing.module.js.map b/src/app/+item-page/item-page-routing.module.js.map deleted file mode 100644 index d22d886dce..0000000000 --- a/src/app/+item-page/item-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page-routing.module.js","sourceRoot":"","sources":["item-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,MAAM,2BAA2B,MAAc;IAC7C,OAAO,IAAI,WAAW,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;AACjE,CAAC;AACD,MAAM,0BAA0B,EAAU;IACxC,OAAO,IAAI,WAAW,CAAC,iBAAiB,EAAE,EAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC1F,CAAC;AAED,IAAM,cAAc,GAAG,UAAU,CAAC;AA+BlC;IAAA;IAEA,CAAC;IAFY,qBAAqB;QA7BjC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,KAAK;wBACX,SAAS,EAAE,iBAAiB;wBAC5B,SAAS,EAAE,MAAM;wBACjB,OAAO,EAAE;4BACP,IAAI,EAAE,gBAAgB;yBACvB;qBACF;oBACD;wBACE,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,qBAAqB;wBAChC,OAAO,EAAE;4BACP,IAAI,EAAE,gBAAgB;yBACvB;qBACF;oBACD;wBACE,IAAI,EAAE,cAAc;wBACpB,YAAY,EAAE,2DAA2D;wBACzE,WAAW,EAAE,CAAC,kBAAkB,CAAC;qBAClC;iBACF,CAAC;aACH;YACD,SAAS,EAAE;gBACT,gBAAgB;aACjB;SACF,CAAC;OACW,qBAAqB,CAEjC;IAAD,4BAAC;CAAA,AAFD,IAEC;SAFY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/item-page.module.js b/src/app/+item-page/item-page.module.js deleted file mode 100644 index 2b7e17d5c3..0000000000 --- a/src/app/+item-page/item-page.module.js +++ /dev/null @@ -1,84 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { SharedModule } from './../shared/shared.module'; -import { GenericItemPageFieldComponent } from './simple/field-components/specific-field/generic/generic-item-page-field.component'; -import { ItemPageComponent } from './simple/item-page.component'; -import { ItemPageRoutingModule } from './item-page-routing.module'; -import { MetadataUriValuesComponent } from './field-components/metadata-uri-values/metadata-uri-values.component'; -import { ItemPageAuthorFieldComponent } from './simple/field-components/specific-field/author/item-page-author-field.component'; -import { ItemPageDateFieldComponent } from './simple/field-components/specific-field/date/item-page-date-field.component'; -import { ItemPageAbstractFieldComponent } from './simple/field-components/specific-field/abstract/item-page-abstract-field.component'; -import { ItemPageUriFieldComponent } from './simple/field-components/specific-field/uri/item-page-uri-field.component'; -import { ItemPageTitleFieldComponent } from './simple/field-components/specific-field/title/item-page-title-field.component'; -import { ItemPageFieldComponent } from './simple/field-components/specific-field/item-page-field.component'; -import { FileSectionComponent } from './simple/field-components/file-section/file-section.component'; -import { CollectionsComponent } from './field-components/collections/collections.component'; -import { FullItemPageComponent } from './full/full-item-page.component'; -import { FullFileSectionComponent } from './full/field-components/file-section/full-file-section.component'; -import { RelatedItemsComponent } from './simple/related-items/related-items-component'; -import { SearchPageModule } from '../+search-page/search-page.module'; -import { PublicationComponent } from './simple/item-types/publication/publication.component'; -import { PersonComponent } from './simple/item-types/person/person.component'; -import { OrgunitComponent } from './simple/item-types/orgunit/orgunit.component'; -import { ProjectComponent } from './simple/item-types/project/project.component'; -import { JournalComponent } from './simple/item-types/journal/journal.component'; -import { JournalVolumeComponent } from './simple/item-types/journal-volume/journal-volume.component'; -import { JournalIssueComponent } from './simple/item-types/journal-issue/journal-issue.component'; -import { ItemComponent } from './simple/item-types/shared/item.component'; -import { EditItemPageModule } from './edit-item-page/edit-item-page.module'; -import { MetadataRepresentationListComponent } from './simple/metadata-representation-list/metadata-representation-list.component'; -import { RelatedEntitiesSearchComponent } from './simple/related-entities/related-entities-search/related-entities-search.component'; -var ItemPageModule = /** @class */ (function () { - function ItemPageModule() { - } - ItemPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule, - EditItemPageModule, - ItemPageRoutingModule, - SearchPageModule - ], - declarations: [ - ItemPageComponent, - FullItemPageComponent, - MetadataUriValuesComponent, - ItemPageAuthorFieldComponent, - ItemPageDateFieldComponent, - ItemPageAbstractFieldComponent, - ItemPageUriFieldComponent, - ItemPageTitleFieldComponent, - ItemPageFieldComponent, - FileSectionComponent, - CollectionsComponent, - FullFileSectionComponent, - PublicationComponent, - ProjectComponent, - OrgunitComponent, - PersonComponent, - RelatedItemsComponent, - ItemComponent, - GenericItemPageFieldComponent, - JournalComponent, - JournalIssueComponent, - JournalVolumeComponent, - MetadataRepresentationListComponent, - RelatedEntitiesSearchComponent - ], - entryComponents: [ - PublicationComponent, - ProjectComponent, - OrgunitComponent, - PersonComponent, - JournalComponent, - JournalIssueComponent, - JournalVolumeComponent - ] - }) - ], ItemPageModule); - return ItemPageModule; -}()); -export { ItemPageModule }; -//# sourceMappingURL=item-page.module.js.map \ No newline at end of file diff --git a/src/app/+item-page/item-page.module.js.map b/src/app/+item-page/item-page.module.js.map deleted file mode 100644 index 1ce9a77657..0000000000 --- a/src/app/+item-page/item-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page.module.js","sourceRoot":"","sources":["item-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oFAAoF,CAAC;AAEnI,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sEAAsE,CAAC;AAClH,OAAO,EAAE,4BAA4B,EAAE,MAAM,kFAAkF,CAAC;AAChI,OAAO,EAAE,0BAA0B,EAAE,MAAM,8EAA8E,CAAC;AAC1H,OAAO,EAAE,8BAA8B,EAAE,MAAM,sFAAsF,CAAC;AACtI,OAAO,EAAE,yBAAyB,EAAE,MAAM,4EAA4E,CAAC;AACvH,OAAO,EAAE,2BAA2B,EAAE,MAAM,gFAAgF,CAAC;AAC7H,OAAO,EAAE,sBAAsB,EAAE,MAAM,oEAAoE,CAAC;AAC5G,OAAO,EAAE,oBAAoB,EAAE,MAAM,+DAA+D,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kEAAkE,CAAC;AAC5G,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6DAA6D,CAAC;AACrG,OAAO,EAAE,qBAAqB,EAAE,MAAM,2DAA2D,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,mCAAmC,EAAE,MAAM,8EAA8E,CAAC;AACnI,OAAO,EAAE,8BAA8B,EAAE,MAAM,qFAAqF,CAAC;AA8CrI;IAAA;IAEA,CAAC;IAFY,cAAc;QA5C1B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,kBAAkB;gBAClB,qBAAqB;gBACrB,gBAAgB;aACjB;YACD,YAAY,EAAE;gBACZ,iBAAiB;gBACjB,qBAAqB;gBACrB,0BAA0B;gBAC1B,4BAA4B;gBAC5B,0BAA0B;gBAC1B,8BAA8B;gBAC9B,yBAAyB;gBACzB,2BAA2B;gBAC3B,sBAAsB;gBACtB,oBAAoB;gBACpB,oBAAoB;gBACpB,wBAAwB;gBACxB,oBAAoB;gBACpB,gBAAgB;gBAChB,gBAAgB;gBAChB,eAAe;gBACf,qBAAqB;gBACrB,aAAa;gBACb,6BAA6B;gBAC7B,gBAAgB;gBAChB,qBAAqB;gBACrB,sBAAsB;gBACtB,mCAAmC;gBACnC,8BAA8B;aAC/B;YACD,eAAe,EAAE;gBACf,oBAAoB;gBACpB,gBAAgB;gBAChB,gBAAgB;gBAChB,eAAe;gBACf,gBAAgB;gBAChB,qBAAqB;gBACrB,sBAAsB;aACvB;SACF,CAAC;OACW,cAAc,CAE1B;IAAD,qBAAC;CAAA,AAFD,IAEC;SAFY,cAAc"} \ No newline at end of file diff --git a/src/app/+item-page/item-page.resolver.js b/src/app/+item-page/item-page.resolver.js deleted file mode 100644 index 4d3a9401e4..0000000000 --- a/src/app/+item-page/item-page.resolver.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { ItemDataService } from '../core/data/item-data.service'; -import { hasValue } from '../shared/empty.util'; -import { find } from 'rxjs/operators'; -/** - * This class represents a resolver that requests a specific item before the route is activated - */ -var ItemPageResolver = /** @class */ (function () { - function ItemPageResolver(itemService) { - this.itemService = itemService; - } - /** - * Method for resolving an item based on the parameters in the current route - * @param {ActivatedRouteSnapshot} route The current ActivatedRouteSnapshot - * @param {RouterStateSnapshot} state The current RouterStateSnapshot - * @returns Observable<> Emits the found item based on the parameters in the current route, - * or an error if something went wrong - */ - ItemPageResolver.prototype.resolve = function (route, state) { - return this.itemService.findById(route.params.id) - .pipe(find(function (RD) { return hasValue(RD.error) || RD.hasSucceeded; })); - }; - ItemPageResolver = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [ItemDataService]) - ], ItemPageResolver); - return ItemPageResolver; -}()); -export { ItemPageResolver }; -//# sourceMappingURL=item-page.resolver.js.map \ No newline at end of file diff --git a/src/app/+item-page/item-page.resolver.js.map b/src/app/+item-page/item-page.resolver.js.map deleted file mode 100644 index 87eabedf05..0000000000 --- a/src/app/+item-page/item-page.resolver.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page.resolver.js","sourceRoot":"","sources":["item-page.resolver.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC;;GAEG;AAEH;IACE,0BAAoB,WAA4B;QAA5B,gBAAW,GAAX,WAAW,CAAiB;IAChD,CAAC;IAED;;;;;;OAMG;IACH,kCAAO,GAAP,UAAQ,KAA6B,EAAE,KAA0B;QAC/D,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;aAC9C,IAAI,CACH,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,YAAY,EAArC,CAAqC,CAAC,CACpD,CAAC;IACN,CAAC;IAhBU,gBAAgB;QAD5B,UAAU,EAAE;iDAEsB,eAAe;OADrC,gBAAgB,CAiB5B;IAAD,uBAAC;CAAA,AAjBD,IAiBC;SAjBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/file-section/file-section.component.js b/src/app/+item-page/simple/field-components/file-section/file-section.component.js deleted file mode 100644 index 68e9e5da35..0000000000 --- a/src/app/+item-page/simple/field-components/file-section/file-section.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../core/shared/item.model'; -/** - * This component renders the file section of the item - * inside a 'ds-metadata-field-wrapper' component. - */ -var FileSectionComponent = /** @class */ (function () { - function FileSectionComponent() { - this.label = 'item.page.files'; - this.separator = '
'; - } - FileSectionComponent.prototype.ngOnInit = function () { - this.initialize(); - }; - FileSectionComponent.prototype.initialize = function () { - this.bitstreamsObs = this.item.getFiles(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], FileSectionComponent.prototype, "item", void 0); - FileSectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page-file-section', - templateUrl: './file-section.component.html' - }) - ], FileSectionComponent); - return FileSectionComponent; -}()); -export { FileSectionComponent }; -//# sourceMappingURL=file-section.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/file-section/file-section.component.js.map b/src/app/+item-page/simple/field-components/file-section/file-section.component.js.map deleted file mode 100644 index 8a183516b2..0000000000 --- a/src/app/+item-page/simple/field-components/file-section/file-section.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"file-section.component.js","sourceRoot":"","sources":["file-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAIzD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D;;;GAGG;AAKH;IAJA;QAQE,UAAK,GAAG,iBAAiB,CAAC;QAE1B,cAAS,GAAG,OAAO,CAAC;IAYtB,CAAC;IARC,uCAAQ,GAAR;QACE,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,yCAAU,GAAV;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC5C,CAAC;IAdQ;QAAR,KAAK,EAAE;0CAAO,IAAI;sDAAC;IAFT,oBAAoB;QAJhC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,WAAW,EAAE,+BAA+B;SAC7C,CAAC;OACW,oBAAoB,CAkBhC;IAAD,2BAAC;CAAA,AAlBD,IAkBC;SAlBY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js b/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js deleted file mode 100644 index 0465ab5242..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../../core/shared/item.model'; -import { ItemPageFieldComponent } from '../item-page-field.component'; -var ItemPageAbstractFieldComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemPageAbstractFieldComponent, _super); - function ItemPageAbstractFieldComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Fields (schema.element.qualifier) used to render their values. - * In this component, we want to display values for metadata 'dc.description.abstract' - */ - _this.fields = [ - 'dc.description.abstract' - ]; - /** - * Label i18n key for the rendered metadata - */ - _this.label = 'item.page.abstract'; - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemPageAbstractFieldComponent.prototype, "item", void 0); - ItemPageAbstractFieldComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page-abstract-field', - templateUrl: '../item-page-field.component.html' - }) - /** - * This component is used for displaying the abstract (dc.description.abstract) of an item - */ - ], ItemPageAbstractFieldComponent); - return ItemPageAbstractFieldComponent; -}(ItemPageFieldComponent)); -export { ItemPageAbstractFieldComponent }; -//# sourceMappingURL=item-page-abstract-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js.map deleted file mode 100644 index 12f6d277a6..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/abstract/item-page-abstract-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page-abstract-field.component.js","sourceRoot":"","sources":["item-page-abstract-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAAoD,0DAAsB;IAP1E;QAAA,qEAiCC;QAbG;;;WAGG;QACH,YAAM,GAAa;YACf,yBAAyB;SAC5B,CAAC;QAEF;;WAEG;QACH,WAAK,GAAG,oBAAoB,CAAC;;IAEjC,CAAC;IArBY;QAAR,KAAK,EAAE;0CAAO,IAAI;gEAAC;IALX,8BAA8B;QAP1C,SAAS,CAAC;YACP,QAAQ,EAAE,6BAA6B;YACvC,WAAW,EAAE,mCAAmC;SACnD,CAAC;QACF;;WAEG;OACU,8BAA8B,CA0B1C;IAAD,qCAAC;CAAA,AA1BD,CAAoD,sBAAsB,GA0BzE;SA1BY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js b/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js deleted file mode 100644 index b551a43564..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../../core/shared/item.model'; -import { ItemPageFieldComponent } from '../item-page-field.component'; -var ItemPageAuthorFieldComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemPageAuthorFieldComponent, _super); - function ItemPageAuthorFieldComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Fields (schema.element.qualifier) used to render their values. - * In this component, we want to display values for metadata 'dc.contributor.author', 'dc.creator' and 'dc.contributor' - */ - _this.fields = [ - 'dc.contributor.author', - 'dc.creator', - 'dc.contributor' - ]; - /** - * Label i18n key for the rendered metadata - */ - _this.label = 'item.page.author'; - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemPageAuthorFieldComponent.prototype, "item", void 0); - ItemPageAuthorFieldComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page-author-field', - templateUrl: '../item-page-field.component.html' - }) - /** - * This component is used for displaying the author (dc.contributor.author, dc.creator and dc.contributor) metadata of an item - */ - ], ItemPageAuthorFieldComponent); - return ItemPageAuthorFieldComponent; -}(ItemPageFieldComponent)); -export { ItemPageAuthorFieldComponent }; -//# sourceMappingURL=item-page-author-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js.map deleted file mode 100644 index 6195e969b9..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/author/item-page-author-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page-author-field.component.js","sourceRoot":"","sources":["item-page-author-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAAkD,wDAAsB;IAPxE;QAAA,qEAmCC;QAfC;;;WAGG;QACH,YAAM,GAAa;YACjB,uBAAuB;YACvB,YAAY;YACZ,gBAAgB;SACjB,CAAC;QAEF;;WAEG;QACH,WAAK,GAAG,kBAAkB,CAAC;;IAE7B,CAAC;IAvBU;QAAR,KAAK,EAAE;0CAAO,IAAI;8DAAC;IALT,4BAA4B;QAPxC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,WAAW,EAAE,mCAAmC;SACjD,CAAC;QACF;;WAEG;OACU,4BAA4B,CA4BxC;IAAD,mCAAC;CAAA,AA5BD,CAAkD,sBAAsB,GA4BvE;SA5BY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js b/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js deleted file mode 100644 index e2634843b7..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js +++ /dev/null @@ -1,43 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../../core/shared/item.model'; -import { ItemPageFieldComponent } from '../item-page-field.component'; -var ItemPageDateFieldComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemPageDateFieldComponent, _super); - function ItemPageDateFieldComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Separator string between multiple values of the metadata fields defined - * @type {string} - */ - _this.separator = ', '; - /** - * Fields (schema.element.qualifier) used to render their values. - * In this component, we want to display values for metadata 'dc.date.issued' - */ - _this.fields = [ - 'dc.date.issued' - ]; - /** - * Label i18n key for the rendered metadata - */ - _this.label = 'item.page.date'; - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemPageDateFieldComponent.prototype, "item", void 0); - ItemPageDateFieldComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page-date-field', - templateUrl: '../item-page-field.component.html' - }) - /** - * This component is used for displaying the issue date (dc.date.issued) metadata of an item - */ - ], ItemPageDateFieldComponent); - return ItemPageDateFieldComponent; -}(ItemPageFieldComponent)); -export { ItemPageDateFieldComponent }; -//# sourceMappingURL=item-page-date-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js.map deleted file mode 100644 index 081f0efca1..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/date/item-page-date-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page-date-field.component.js","sourceRoot":"","sources":["item-page-date-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAAgD,sDAAsB;IAPtE;QAAA,qEAiCC;QAnBG;;;WAGG;QACH,eAAS,GAAG,IAAI,CAAC;QAEjB;;;WAGG;QACH,YAAM,GAAa;YACf,gBAAgB;SACnB,CAAC;QAEF;;WAEG;QACH,WAAK,GAAG,gBAAgB,CAAC;;IAE7B,CAAC;IArBY;QAAR,KAAK,EAAE;0CAAO,IAAI;4DAAC;IALX,0BAA0B;QAPtC,SAAS,CAAC;YACP,QAAQ,EAAE,yBAAyB;YACnC,WAAW,EAAE,mCAAmC;SACnD,CAAC;QACF;;WAEG;OACU,0BAA0B,CA0BtC;IAAD,iCAAC;CAAA,AA1BD,CAAgD,sBAAsB,GA0BrE;SA1BY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js b/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js deleted file mode 100644 index 17df38ec6a..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js +++ /dev/null @@ -1,45 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../../core/shared/item.model'; -import { ItemPageFieldComponent } from '../item-page-field.component'; -var GenericItemPageFieldComponent = /** @class */ (function (_super) { - tslib_1.__extends(GenericItemPageFieldComponent, _super); - /** - * This component can be used to represent metadata on a simple item page. - * It is the most generic way of displaying metadata values - * It expects 4 parameters: The item, a seperator, the metadata keys and an i18n key - */ - function GenericItemPageFieldComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], GenericItemPageFieldComponent.prototype, "item", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], GenericItemPageFieldComponent.prototype, "separator", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], GenericItemPageFieldComponent.prototype, "fields", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], GenericItemPageFieldComponent.prototype, "label", void 0); - GenericItemPageFieldComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-generic-item-page-field', - templateUrl: '../item-page-field.component.html' - }) - /** - * This component can be used to represent metadata on a simple item page. - * It is the most generic way of displaying metadata values - * It expects 4 parameters: The item, a seperator, the metadata keys and an i18n key - */ - ], GenericItemPageFieldComponent); - return GenericItemPageFieldComponent; -}(ItemPageFieldComponent)); -export { GenericItemPageFieldComponent }; -//# sourceMappingURL=generic-item-page-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js.map deleted file mode 100644 index ec14171019..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/generic/generic-item-page-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"generic-item-page-field.component.js","sourceRoot":"","sources":["generic-item-page-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAWtE;IAAmD,yDAAsB;IALzE;;;;OAIG;IACH;;IAuBA,CAAC;IAlBU;QAAR,KAAK,EAAE;0CAAO,IAAI;+DAAC;IAMX;QAAR,KAAK,EAAE;;oEAAmB;IAKlB;QAAR,KAAK,EAAE;;iEAAkB;IAKjB;QAAR,KAAK,EAAE;;gEAAe;IArBZ,6BAA6B;QATzC,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,WAAW,EAAE,mCAAmC;SACjD,CAAC;QACF;;;;WAIG;OACU,6BAA6B,CAuBzC;IAAD,oCAAC;CAAA,AAvBD,CAAmD,sBAAsB,GAuBxE;SAvBY,6BAA6B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js b/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js deleted file mode 100644 index 8e6486e9a9..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../core/shared/item.model'; -/** - * This component can be used to represent metadata on a simple item page. - * It expects one input parameter of type Item to which the metadata belongs. - * This class can be extended to print certain metadata. - */ -var ItemPageFieldComponent = /** @class */ (function () { - function ItemPageFieldComponent() { - /** - * Separator string between multiple values of the metadata fields defined - * @type {string} - */ - this.separator = '
'; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemPageFieldComponent.prototype, "item", void 0); - ItemPageFieldComponent = tslib_1.__decorate([ - Component({ - templateUrl: './item-page-field.component.html' - }) - ], ItemPageFieldComponent); - return ItemPageFieldComponent; -}()); -export { ItemPageFieldComponent }; -//# sourceMappingURL=item-page-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js.map deleted file mode 100644 index c1aca673a6..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/item-page-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page-field.component.js","sourceRoot":"","sources":["item-page-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D;;;;GAIG;AAKH;IAHA;QAoBI;;;WAGG;QACH,cAAS,GAAG,OAAO,CAAC;IAExB,CAAC;IAlBY;QAAR,KAAK,EAAE;0CAAO,IAAI;wDAAC;IALX,sBAAsB;QAHlC,SAAS,CAAC;YACP,WAAW,EAAE,kCAAkC;SAClD,CAAC;OACW,sBAAsB,CAuBlC;IAAD,6BAAC;CAAA,AAvBD,IAuBC;SAvBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js b/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js deleted file mode 100644 index 7f2a131cd1..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../../core/shared/item.model'; -import { ItemPageFieldComponent } from '../item-page-field.component'; -var ItemPageTitleFieldComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemPageTitleFieldComponent, _super); - function ItemPageTitleFieldComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Fields (schema.element.qualifier) used to render their values. - * In this component, we want to display values for metadata 'dc.title' - */ - _this.fields = [ - 'dc.title' - ]; - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemPageTitleFieldComponent.prototype, "item", void 0); - ItemPageTitleFieldComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page-title-field', - templateUrl: './item-page-title-field.component.html' - }) - /** - * This component is used for displaying the title (dc.title) of an item - */ - ], ItemPageTitleFieldComponent); - return ItemPageTitleFieldComponent; -}(ItemPageFieldComponent)); -export { ItemPageTitleFieldComponent }; -//# sourceMappingURL=item-page-title-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js.map deleted file mode 100644 index c2ea12c81c..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/title/item-page-title-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page-title-field.component.js","sourceRoot":"","sources":["item-page-title-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAAiD,uDAAsB;IAPvE;QAAA,qEA4BC;QARG;;;WAGG;QACH,YAAM,GAAa;YACf,UAAU;SACb,CAAC;;IAEN,CAAC;IAhBY;QAAR,KAAK,EAAE;0CAAO,IAAI;6DAAC;IALX,2BAA2B;QAPvC,SAAS,CAAC;YACP,QAAQ,EAAE,0BAA0B;YACpC,WAAW,EAAE,wCAAwC;SACxD,CAAC;QACF;;WAEG;OACU,2BAA2B,CAqBvC;IAAD,kCAAC;CAAA,AArBD,CAAiD,sBAAsB,GAqBtE;SArBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js b/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js deleted file mode 100644 index 5375baa440..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../../core/shared/item.model'; -import { ItemPageFieldComponent } from '../item-page-field.component'; -var ItemPageUriFieldComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemPageUriFieldComponent, _super); - function ItemPageUriFieldComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Fields (schema.element.qualifier) used to render their values. - * In this component, we want to display values for metadata 'dc.identifier.uri' - */ - _this.fields = [ - 'dc.identifier.uri' - ]; - /** - * Label i18n key for the rendered metadata - */ - _this.label = 'item.page.uri'; - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemPageUriFieldComponent.prototype, "item", void 0); - ItemPageUriFieldComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page-uri-field', - templateUrl: './item-page-uri-field.component.html' - }) - /** - * This component is used for displaying the uri (dc.identifier.uri) metadata of an item - */ - ], ItemPageUriFieldComponent); - return ItemPageUriFieldComponent; -}(ItemPageFieldComponent)); -export { ItemPageUriFieldComponent }; -//# sourceMappingURL=item-page-uri-field.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js.map b/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js.map deleted file mode 100644 index 19a60b8c67..0000000000 --- a/src/app/+item-page/simple/field-components/specific-field/uri/item-page-uri-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page-uri-field.component.js","sourceRoot":"","sources":["item-page-uri-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAStE;IAA+C,qDAAsB;IAPrE;QAAA,qEAiCC;QAbC;;;WAGG;QACH,YAAM,GAAa;YACjB,mBAAmB;SACpB,CAAC;QAEF;;WAEG;QACH,WAAK,GAAG,eAAe,CAAC;;IAE1B,CAAC;IArBU;QAAR,KAAK,EAAE;0CAAO,IAAI;2DAAC;IALT,yBAAyB;QAPrC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,WAAW,EAAE,sCAAsC;SACpD,CAAC;QACF;;WAEG;OACU,yBAAyB,CA0BrC;IAAD,gCAAC;CAAA,AA1BD,CAA+C,sBAAsB,GA0BpE;SA1BY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-page.component.js b/src/app/+item-page/simple/item-page.component.js deleted file mode 100644 index 13a0b9d906..0000000000 --- a/src/app/+item-page/simple/item-page.component.js +++ /dev/null @@ -1,46 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map } from 'rxjs/operators'; -import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { ItemDataService } from '../../core/data/item-data.service'; -import { MetadataService } from '../../core/metadata/metadata.service'; -import { fadeInOut } from '../../shared/animations/fade'; -import { redirectToPageNotFoundOn404 } from '../../core/shared/operators'; -import { ItemViewMode } from '../../shared/items/item-type-decorator'; -/** - * This component renders a simple item page. - * The route parameter 'id' is used to request the item it represents. - * All fields of the item that should be displayed, are defined in its template. - */ -var ItemPageComponent = /** @class */ (function () { - function ItemPageComponent(route, router, items, metadataService) { - this.route = route; - this.router = router; - this.items = items; - this.metadataService = metadataService; - /** - * The view-mode we're currently on - */ - this.viewMode = ItemViewMode.Full; - } - ItemPageComponent.prototype.ngOnInit = function () { - this.itemRD$ = this.route.data.pipe(map(function (data) { return data.item; }), redirectToPageNotFoundOn404(this.router)); - this.metadataService.processRemoteData(this.itemRD$); - }; - ItemPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-page', - styleUrls: ['./item-page.component.scss'], - templateUrl: './item-page.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [fadeInOut] - }), - tslib_1.__metadata("design:paramtypes", [ActivatedRoute, - Router, - ItemDataService, - MetadataService]) - ], ItemPageComponent); - return ItemPageComponent; -}()); -export { ItemPageComponent }; -//# sourceMappingURL=item-page.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-page.component.js.map b/src/app/+item-page/simple/item-page.component.js.map deleted file mode 100644 index 71d03e30b8..0000000000 --- a/src/app/+item-page/simple/item-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page.component.js","sourceRoot":"","sources":["item-page.component.ts"],"names":[],"mappings":";AACA,OAAO,EAAoB,GAAG,EAAa,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAMpE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAEtE;;;;GAIG;AAQH;IAiBE,2BACU,KAAqB,EACrB,MAAc,EACd,KAAsB,EACtB,eAAgC;QAHhC,UAAK,GAAL,KAAK,CAAgB;QACrB,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAiB;QACtB,oBAAe,GAAf,eAAe,CAAiB;QAT1C;;WAEG;QACH,aAAQ,GAAG,YAAY,CAAC,IAAI,CAAC;IAOzB,CAAC;IAEL,oCAAQ,GAAR;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CACjC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAwB,EAA7B,CAA6B,CAAC,EAC5C,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CACzC,CAAC;QACF,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IA9BU,iBAAiB;QAP7B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;YACzC,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;iDAmBiB,cAAc;YACb,MAAM;YACP,eAAe;YACL,eAAe;OArB/B,iBAAiB,CA+B7B;IAAD,wBAAC;CAAA,AA/BD,IA+BC;SA/BY,iBAAiB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js deleted file mode 100644 index 7067f2b92f..0000000000 --- a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js +++ /dev/null @@ -1,43 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { ItemDataService } from '../../../../core/data/item-data.service'; -import { Item } from '../../../../core/shared/item.model'; -import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; -import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; -import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; -var JournalIssueComponent = /** @class */ (function (_super) { - tslib_1.__extends(JournalIssueComponent, _super); - function JournalIssueComponent(item, ids) { - var _this = _super.call(this, item) || this; - _this.item = item; - _this.ids = ids; - return _this; - } - JournalIssueComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - if (isNotEmpty(this.resolvedRelsAndTypes$)) { - this.volumes$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isJournalVolumeOfIssue'), relationsToItems(this.item.id, this.ids)); - this.publications$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPublicationOfJournalIssue'), relationsToItems(this.item.id, this.ids)); - } - }; - JournalIssueComponent = tslib_1.__decorate([ - rendersItemType('JournalIssue', ItemViewMode.Full), - Component({ - selector: 'ds-journal-issue', - styleUrls: ['./journal-issue.component.scss'], - templateUrl: './journal-issue.component.html' - }) - /** - * The component for displaying metadata and relations of an item of the type Journal Issue - */ - , - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Item, - ItemDataService]) - ], JournalIssueComponent); - return JournalIssueComponent; -}(ItemComponent)); -export { JournalIssueComponent }; -//# sourceMappingURL=journal-issue.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js.map b/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js.map deleted file mode 100644 index 32e7878a23..0000000000 --- a/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"journal-issue.component.js","sourceRoot":"","sources":["journal-issue.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAA2C,iDAAa;IAWtD,+BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IACD,wCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC7C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAClD,0BAA0B,CAAC,6BAA6B,CAAC,EACzD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IA9BU,qBAAqB;QATjC,eAAe,CAAC,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC;QAClD,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,CAAC,gCAAgC,CAAC;YAC7C,WAAW,EAAE,gCAAgC;SAC9C,CAAC;QACF;;WAEG;;QAaE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAbnB,qBAAqB,CA+BjC;IAAD,4BAAC;CAAA,AA/BD,CAA2C,aAAa,GA+BvD;SA/BY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js deleted file mode 100644 index 4c5985eb6f..0000000000 --- a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js +++ /dev/null @@ -1,43 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { ItemDataService } from '../../../../core/data/item-data.service'; -import { Item } from '../../../../core/shared/item.model'; -import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; -import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; -import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; -var JournalVolumeComponent = /** @class */ (function (_super) { - tslib_1.__extends(JournalVolumeComponent, _super); - function JournalVolumeComponent(item, ids) { - var _this = _super.call(this, item) || this; - _this.item = item; - _this.ids = ids; - return _this; - } - JournalVolumeComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - if (isNotEmpty(this.resolvedRelsAndTypes$)) { - this.journals$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isJournalOfVolume'), relationsToItems(this.item.id, this.ids)); - this.issues$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isIssueOfJournalVolume'), relationsToItems(this.item.id, this.ids)); - } - }; - JournalVolumeComponent = tslib_1.__decorate([ - rendersItemType('JournalVolume', ItemViewMode.Full), - Component({ - selector: 'ds-journal-volume', - styleUrls: ['./journal-volume.component.scss'], - templateUrl: './journal-volume.component.html' - }) - /** - * The component for displaying metadata and relations of an item of the type Journal Volume - */ - , - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Item, - ItemDataService]) - ], JournalVolumeComponent); - return JournalVolumeComponent; -}(ItemComponent)); -export { JournalVolumeComponent }; -//# sourceMappingURL=journal-volume.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js.map b/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js.map deleted file mode 100644 index f058ca29d1..0000000000 --- a/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"journal-volume.component.js","sourceRoot":"","sources":["journal-volume.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAA4C,kDAAa;IAWvD,gCACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IACD,yCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC5C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IA9BU,sBAAsB;QATlC,eAAe,CAAC,eAAe,EAAE,YAAY,CAAC,IAAI,CAAC;QACnD,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACF;;WAEG;;QAaE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAbnB,sBAAsB,CA+BlC;IAAD,6BAAC;CAAA,AA/BD,CAA4C,aAAa,GA+BxD;SA/BY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal/journal.component.js b/src/app/+item-page/simple/item-types/journal/journal.component.js deleted file mode 100644 index 8c528e7910..0000000000 --- a/src/app/+item-page/simple/item-types/journal/journal.component.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { ItemDataService } from '../../../../core/data/item-data.service'; -import { Item } from '../../../../core/shared/item.model'; -import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; -import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; -import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; -var JournalComponent = /** @class */ (function (_super) { - tslib_1.__extends(JournalComponent, _super); - function JournalComponent(item, ids) { - var _this = _super.call(this, item) || this; - _this.item = item; - _this.ids = ids; - return _this; - } - JournalComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - if (isNotEmpty(this.resolvedRelsAndTypes$)) { - this.volumes$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isVolumeOfJournal'), relationsToItems(this.item.id, this.ids)); - } - }; - JournalComponent = tslib_1.__decorate([ - rendersItemType('Journal', ItemViewMode.Full), - Component({ - selector: 'ds-journal', - styleUrls: ['./journal.component.scss'], - templateUrl: './journal.component.html' - }) - /** - * The component for displaying metadata and relations of an item of the type Journal - */ - , - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Item, - ItemDataService]) - ], JournalComponent); - return JournalComponent; -}(ItemComponent)); -export { JournalComponent }; -//# sourceMappingURL=journal.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/journal/journal.component.js.map b/src/app/+item-page/simple/item-types/journal/journal.component.js.map deleted file mode 100644 index 48133a11ad..0000000000 --- a/src/app/+item-page/simple/item-types/journal/journal.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"journal.component.js","sourceRoot":"","sources":["journal.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAAsC,4CAAa;IAMjD,0BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IACD,mCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC7C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IArBU,gBAAgB;QAT5B,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC;QAC7C,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,WAAW,EAAE,0BAA0B;SACxC,CAAC;QACF;;WAEG;;QAQE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OARnB,gBAAgB,CAsB5B;IAAD,uBAAC;CAAA,AAtBD,CAAsC,aAAa,GAsBlD;SAtBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js deleted file mode 100644 index b83f97d0dd..0000000000 --- a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js +++ /dev/null @@ -1,44 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { ItemDataService } from '../../../../core/data/item-data.service'; -import { Item } from '../../../../core/shared/item.model'; -import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; -import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; -import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; -var OrgunitComponent = /** @class */ (function (_super) { - tslib_1.__extends(OrgunitComponent, _super); - function OrgunitComponent(item, ids) { - var _this = _super.call(this, item) || this; - _this.item = item; - _this.ids = ids; - return _this; - } - OrgunitComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - if (isNotEmpty(this.resolvedRelsAndTypes$)) { - this.people$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPersonOfOrgUnit'), relationsToItems(this.item.id, this.ids)); - this.projects$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isProjectOfOrgUnit'), relationsToItems(this.item.id, this.ids)); - this.publications$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPublicationOfOrgUnit'), relationsToItems(this.item.id, this.ids)); - } - }; - OrgunitComponent = tslib_1.__decorate([ - rendersItemType('OrgUnit', ItemViewMode.Full), - Component({ - selector: 'ds-orgunit', - styleUrls: ['./orgunit.component.scss'], - templateUrl: './orgunit.component.html' - }) - /** - * The component for displaying metadata and relations of an item of the type Organisation Unit - */ - , - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Item, - ItemDataService]) - ], OrgunitComponent); - return OrgunitComponent; -}(ItemComponent)); -export { OrgunitComponent }; -//# sourceMappingURL=orgunit.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js.map b/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js.map deleted file mode 100644 index f49ad6c787..0000000000 --- a/src/app/+item-page/simple/item-types/orgunit/orgunit.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"orgunit.component.js","sourceRoot":"","sources":["orgunit.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAAsC,4CAAa;IAgBjD,0BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IAED,mCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC5C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,oBAAoB,CAAC,EAChD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAClD,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IA1CU,gBAAgB;QAT5B,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC;QAC7C,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,WAAW,EAAE,0BAA0B;SACxC,CAAC;QACF;;WAEG;;QAkBE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAlBnB,gBAAgB,CA0CzB;IAAD,uBAAC;CAAA,AA1CJ,CAAsC,aAAa,GA0C/C;SA1CS,gBAAgB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/person/person.component.js b/src/app/+item-page/simple/item-types/person/person.component.js deleted file mode 100644 index d9743160b2..0000000000 --- a/src/app/+item-page/simple/item-types/person/person.component.js +++ /dev/null @@ -1,50 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { ItemDataService } from '../../../../core/data/item-data.service'; -import { Item } from '../../../../core/shared/item.model'; -import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; -import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; -import { SearchFixedFilterService } from '../../../../+search-page/search-filters/search-filter/search-fixed-filter.service'; -import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; -var PersonComponent = /** @class */ (function (_super) { - tslib_1.__extends(PersonComponent, _super); - function PersonComponent(item, ids, fixedFilterService) { - var _this = _super.call(this, item) || this; - _this.item = item; - _this.ids = ids; - _this.fixedFilterService = fixedFilterService; - return _this; - } - PersonComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - if (isNotEmpty(this.resolvedRelsAndTypes$)) { - this.publications$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPublicationOfAuthor'), relationsToItems(this.item.id, this.ids)); - this.projects$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isProjectOfPerson'), relationsToItems(this.item.id, this.ids)); - this.orgUnits$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isOrgUnitOfPerson'), relationsToItems(this.item.id, this.ids)); - this.fixedFilterQuery = this.fixedFilterService.getQueryByRelations('isAuthorOfPublication', this.item.id); - this.fixedFilter$ = observableOf('publication'); - } - }; - PersonComponent = tslib_1.__decorate([ - rendersItemType('Person', ItemViewMode.Full), - Component({ - selector: 'ds-person', - styleUrls: ['./person.component.scss'], - templateUrl: './person.component.html' - }) - /** - * The component for displaying metadata and relations of an item of the type Person - */ - , - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Item, - ItemDataService, - SearchFixedFilterService]) - ], PersonComponent); - return PersonComponent; -}(ItemComponent)); -export { PersonComponent }; -//# sourceMappingURL=person.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/person/person.component.js.map b/src/app/+item-page/simple/item-types/person/person.component.js.map deleted file mode 100644 index 66f27ec1bc..0000000000 --- a/src/app/+item-page/simple/item-types/person/person.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"person.component.js","sourceRoot":"","sources":["person.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAgB,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,mFAAmF,CAAC;AAC7H,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAAqC,2CAAa;IA0BhD,yBACuB,IAAU,EACvB,GAAoB,EACpB,kBAA4C;QAHtD,YAKE,kBAAM,IAAI,CAAC,SACZ;QALsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;QACpB,wBAAkB,GAAlB,kBAAkB,CAA0B;;IAGtD,CAAC;IACD,kCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAClD,0BAA0B,CAAC,uBAAuB,CAAC,EACnD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,uBAAuB,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3G,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;SACjD;IACH,CAAC;IAvDU,eAAe;QAT3B,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC;QAC5C,SAAS,CAAC;YACT,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,CAAC,yBAAyB,CAAC;YACtC,WAAW,EAAE,yBAAyB;SACvC,CAAC;QACF;;WAEG;;QA4BE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;YACA,wBAAwB;OA7B3C,eAAe,CAwD3B;IAAD,sBAAC;CAAA,AAxDD,CAAqC,aAAa,GAwDjD;SAxDY,eAAe"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/project/project.component.js b/src/app/+item-page/simple/item-types/project/project.component.js deleted file mode 100644 index c90aaf4a78..0000000000 --- a/src/app/+item-page/simple/item-types/project/project.component.js +++ /dev/null @@ -1,45 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { ItemDataService } from '../../../../core/data/item-data.service'; -import { Item } from '../../../../core/shared/item.model'; -import { ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; -import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; -import { isNotEmpty } from '../../../../shared/empty.util'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; -var ProjectComponent = /** @class */ (function (_super) { - tslib_1.__extends(ProjectComponent, _super); - function ProjectComponent(item, ids) { - var _this = _super.call(this, item) || this; - _this.item = item; - _this.ids = ids; - return _this; - } - ProjectComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - if (isNotEmpty(this.resolvedRelsAndTypes$)) { - this.contributors$ = this.buildRepresentations('OrgUnit', 'project.contributor.other', this.ids); - this.people$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPersonOfProject'), relationsToItems(this.item.id, this.ids)); - this.publications$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isPublicationOfProject'), relationsToItems(this.item.id, this.ids)); - this.orgUnits$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isOrgUnitOfProject'), relationsToItems(this.item.id, this.ids)); - } - }; - ProjectComponent = tslib_1.__decorate([ - rendersItemType('Project', ItemViewMode.Full), - Component({ - selector: 'ds-project', - styleUrls: ['./project.component.scss'], - templateUrl: './project.component.html' - }) - /** - * The component for displaying metadata and relations of an item of the type Project - */ - , - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Item, - ItemDataService]) - ], ProjectComponent); - return ProjectComponent; -}(ItemComponent)); -export { ProjectComponent }; -//# sourceMappingURL=project.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/project/project.component.js.map b/src/app/+item-page/simple/item-types/project/project.component.js.map deleted file mode 100644 index 698e52bbdd..0000000000 --- a/src/app/+item-page/simple/item-types/project/project.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"project.component.js","sourceRoot":"","sources":["project.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAWlG;IAAsC,4CAAa;IAqBjD,0BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IAED,mCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,2BAA2B,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAEjG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC5C,0BAA0B,CAAC,mBAAmB,CAAC,EAC/C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAClD,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,oBAAoB,CAAC,EAChD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SACH;IACH,CAAC;IAjDU,gBAAgB;QAT5B,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC;QAC7C,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,WAAW,EAAE,0BAA0B;SACxC,CAAC;QACF;;WAEG;;QAuBE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAvBnB,gBAAgB,CAkD5B;IAAD,uBAAC;CAAA,AAlDD,CAAsC,aAAa,GAkDlD;SAlDY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/publication/publication.component.js b/src/app/+item-page/simple/item-types/publication/publication.component.js deleted file mode 100644 index 637eebce78..0000000000 --- a/src/app/+item-page/simple/item-types/publication/publication.component.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component, Inject } from '@angular/core'; -import { ItemDataService } from '../../../../core/data/item-data.service'; -import { Item } from '../../../../core/shared/item.model'; -import { DEFAULT_ITEM_TYPE, ItemViewMode, rendersItemType } from '../../../../shared/items/item-type-decorator'; -import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; -import { ItemComponent } from '../shared/item.component'; -import { filterRelationsByTypeLabel, relationsToItems } from '../shared/item-relationships-utils'; -var PublicationComponent = /** @class */ (function (_super) { - tslib_1.__extends(PublicationComponent, _super); - function PublicationComponent(item, ids) { - var _this = _super.call(this, item) || this; - _this.item = item; - _this.ids = ids; - return _this; - } - PublicationComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - if (this.resolvedRelsAndTypes$) { - this.authors$ = this.buildRepresentations('Person', 'dc.contributor.author', this.ids); - this.projects$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isProjectOfPublication'), relationsToItems(this.item.id, this.ids)); - this.orgUnits$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isOrgUnitOfPublication'), relationsToItems(this.item.id, this.ids)); - this.journalIssues$ = this.resolvedRelsAndTypes$.pipe(filterRelationsByTypeLabel('isJournalIssueOfPublication'), relationsToItems(this.item.id, this.ids)); - } - }; - PublicationComponent = tslib_1.__decorate([ - rendersItemType('Publication', ItemViewMode.Full), - rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Full), - Component({ - selector: 'ds-publication', - styleUrls: ['./publication.component.scss'], - templateUrl: './publication.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - }), - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Item, - ItemDataService]) - ], PublicationComponent); - return PublicationComponent; -}(ItemComponent)); -export { PublicationComponent }; -//# sourceMappingURL=publication.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/publication/publication.component.js.map b/src/app/+item-page/simple/item-types/publication/publication.component.js.map deleted file mode 100644 index 6698442ee8..0000000000 --- a/src/app/+item-page/simple/item-types/publication/publication.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"publication.component.js","sourceRoot":"","sources":["publication.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAEnF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EACL,iBAAiB,EAAE,YAAY,EAC/B,eAAe,EAChB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAUlG;IAA0C,gDAAa;IAqBrD,8BACuB,IAAU,EACvB,GAAoB;QAF9B,YAIE,kBAAM,IAAI,CAAC,SACZ;QAJsB,UAAI,GAAJ,IAAI,CAAM;QACvB,SAAG,GAAH,GAAG,CAAiB;;IAG9B,CAAC;IAED,uCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;QAEjB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAE9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,uBAAuB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YAEvF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAC9C,0BAA0B,CAAC,wBAAwB,CAAC,EACpD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;YAEF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CACnD,0BAA0B,CAAC,6BAA6B,CAAC,EACzD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CACzC,CAAC;SAEH;IACH,CAAC;IAnDU,oBAAoB;QARhC,eAAe,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,CAAC;QACjD,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,IAAI,CAAC;QACrD,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;YAC3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;SAChD,CAAC;QAuBG,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;YAClB,eAAe;OAvBnB,oBAAoB,CAoDhC;IAAD,2BAAC;CAAA,AApDD,CAA0C,aAAa,GAoDtD;SApDY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js b/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js deleted file mode 100644 index becf6c21c4..0000000000 --- a/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js +++ /dev/null @@ -1,103 +0,0 @@ -import { ItemMetadataRepresentation } from '../../../../core/shared/metadata-representation/item/item-metadata-representation.model'; -import { MetadatumRepresentation } from '../../../../core/shared/metadata-representation/metadatum/metadatum-representation.model'; -import { MetadataValue } from '../../../../core/shared/metadata.models'; -import { getSucceededRemoteData } from '../../../../core/shared/operators'; -import { hasValue } from '../../../../shared/empty.util'; -import { distinctUntilChanged, flatMap, map } from 'rxjs/operators'; -import { of as observableOf, zip as observableZip } from 'rxjs'; -/** - * Operator for comparing arrays using a mapping function - * The mapping function should turn the source array into an array of basic types, so that the array can - * be compared using these basic types. - * For example: "(o) => o.id" will compare the two arrays by comparing their content by id. - * @param mapFn Function for mapping the arrays - */ -export var compareArraysUsing = function (mapFn) { - return function (a, b) { - if (!Array.isArray(a) || !Array.isArray(b)) { - return false; - } - var aIds = a.map(mapFn); - var bIds = b.map(mapFn); - return aIds.length === bIds.length && - aIds.every(function (e) { return bIds.includes(e); }) && - bIds.every(function (e) { return aIds.includes(e); }); - }; -}; -/** - * Operator for comparing arrays using the object's ids - */ -export var compareArraysUsingIds = function () { - return compareArraysUsing(function (t) { return hasValue(t) ? t.id : undefined; }); -}; -/** - * Fetch the relationships which match the type label given - * @param {string} label Type label - * @returns {(source: Observable<[Relationship[] , RelationshipType[]]>) => Observable} - */ -export var filterRelationsByTypeLabel = function (label) { - return function (source) { - return source.pipe(map(function (_a) { - var relsCurrentPage = _a[0], relTypesCurrentPage = _a[1]; - return relsCurrentPage.filter(function (rel, idx) { - return hasValue(relTypesCurrentPage[idx]) && (relTypesCurrentPage[idx].leftLabel === label || - relTypesCurrentPage[idx].rightLabel === label); - }); - }), distinctUntilChanged(compareArraysUsingIds())); - }; -}; -/** - * Operator for turning a list of relationships into a list of the relevant items - * @param {string} thisId The item's id of which the relations belong to - * @param {ItemDataService} ids The ItemDataService to fetch items from the REST API - * @returns {(source: Observable) => Observable} - */ -export var relationsToItems = function (thisId, ids) { - return function (source) { - return source.pipe(flatMap(function (rels) { - return observableZip.apply(void 0, rels.map(function (rel) { - var queryId = rel.leftId; - if (rel.leftId === thisId) { - queryId = rel.rightId; - } - return ids.findById(queryId); - })); - }), map(function (arr) { - return arr - .filter(function (d) { return d.hasSucceeded; }) - .map(function (d) { return d.payload; }); - }), distinctUntilChanged(compareArraysUsingIds())); - }; -}; -/** - * Operator for turning a list of relationships into a list of metadatarepresentations given the original metadata - * @param parentId The id of the parent item - * @param itemType The type of relation this list resembles (for creating representations) - * @param metadata The list of original Metadatum objects - * @param ids The ItemDataService to use for fetching Items from the Rest API - */ -export var relationsToRepresentations = function (parentId, itemType, metadata, ids) { - return function (source) { - return source.pipe(flatMap(function (rels) { - return observableZip.apply(void 0, metadata - .map(function (metadatum) { return Object.assign(new MetadataValue(), metadatum); }) - .map(function (metadatum) { - if (metadatum.isVirtual) { - var matchingRels = rels.filter(function (rel) { return ('' + rel.id) === metadatum.virtualValue; }); - if (matchingRels.length > 0) { - var matchingRel = matchingRels[0]; - var queryId = matchingRel.leftId; - if (matchingRel.leftId === parentId) { - queryId = matchingRel.rightId; - } - return ids.findById(queryId).pipe(getSucceededRemoteData(), map(function (d) { return Object.assign(new ItemMetadataRepresentation(), d.payload); })); - } - } - else { - return observableOf(Object.assign(new MetadatumRepresentation(itemType), metadatum)); - } - })); - })); - }; -}; -//# sourceMappingURL=item-relationships-utils.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js.map b/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js.map deleted file mode 100644 index a11c9dbf1c..0000000000 --- a/src/app/+item-page/simple/item-types/shared/item-relationships-utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-relationships-utils.js","sourceRoot":"","sources":["item-relationships-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/shared/item.component.js b/src/app/+item-page/simple/item-types/shared/item.component.js deleted file mode 100644 index de31db6666..0000000000 --- a/src/app/+item-page/simple/item-types/shared/item.component.js +++ /dev/null @@ -1,53 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { combineLatest as observableCombineLatest, zip as observableZip } from 'rxjs'; -import { distinctUntilChanged, filter, flatMap, map } from 'rxjs/operators'; -import { Item } from '../../../../core/shared/item.model'; -import { getRemoteDataPayload, getSucceededRemoteData } from '../../../../core/shared/operators'; -import { ITEM } from '../../../../shared/items/switcher/item-type-switcher.component'; -import { compareArraysUsingIds, relationsToRepresentations } from './item-relationships-utils'; -var ItemComponent = /** @class */ (function () { - function ItemComponent(item) { - this.item = item; - } - ItemComponent.prototype.ngOnInit = function () { - var relationships$ = this.item.relationships; - if (relationships$) { - var relsCurrentPage$ = relationships$.pipe(filter(function (rd) { return rd.hasSucceeded; }), getRemoteDataPayload(), map(function (pl) { return pl.page; }), distinctUntilChanged(compareArraysUsingIds())); - var relTypesCurrentPage$ = relsCurrentPage$.pipe(flatMap(function (rels) { - return observableZip.apply(void 0, rels.map(function (rel) { return rel.relationshipType; })).pipe(map(function (_a) { - var arr = _a.slice(0); - return arr.map(function (d) { return d.payload; }); - })); - }), distinctUntilChanged(compareArraysUsingIds())); - this.resolvedRelsAndTypes$ = observableCombineLatest(relsCurrentPage$, relTypesCurrentPage$); - } - }; - /** - * Build a list of MetadataRepresentations for the current item. This combines all metadata and relationships of a - * certain type. - * @param itemType The type of item we're building representations of. Used for matching templates. - * @param metadataField The metadata field that resembles the item type. - * @param itemDataService ItemDataService to turn relations into items. - */ - ItemComponent.prototype.buildRepresentations = function (itemType, metadataField, itemDataService) { - var metadata = this.item.findMetadataSortedByPlace(metadataField); - var relsCurrentPage$ = this.item.relationships.pipe(getSucceededRemoteData(), getRemoteDataPayload(), map(function (pl) { return pl.page; }), distinctUntilChanged(compareArraysUsingIds())); - return relsCurrentPage$.pipe(relationsToRepresentations(this.item.id, itemType, metadata, itemDataService)); - }; - ItemComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item', - template: '' - }) - /** - * A generic component for displaying metadata and relations of an item - */ - , - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Item]) - ], ItemComponent); - return ItemComponent; -}()); -export { ItemComponent }; -//# sourceMappingURL=item.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/item-types/shared/item.component.js.map b/src/app/+item-page/simple/item-types/shared/item.component.js.map deleted file mode 100644 index cc6aad248b..0000000000 --- a/src/app/+item-page/simple/item-types/shared/item.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item.component.js","sourceRoot":"","sources":["item.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,GAAG,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAClG,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAM5E,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AACjG,OAAO,EAAE,IAAI,EAAE,MAAM,gEAAgE,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAS/F;IAME,uBACuB,IAAU;QAAV,SAAI,GAAJ,IAAI,CAAM;IAC9B,CAAC;IAEJ,gCAAQ,GAAR;QACE,IAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;QAC/C,IAAI,cAAc,EAAE;YAClB,IAAM,gBAAgB,GAAG,cAAc,CAAC,IAAI,CAC1C,MAAM,CAAC,UAAC,EAA2C,IAAK,OAAA,EAAE,CAAC,YAAY,EAAf,CAAe,CAAC,EACxE,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,EAA+B,IAAK,OAAA,EAAE,CAAC,IAAI,EAAP,CAAO,CAAC,EACjD,oBAAoB,CAAC,qBAAqB,EAAE,CAAC,CAC9C,CAAC;YAEF,IAAM,oBAAoB,GAAG,gBAAgB,CAAC,IAAI,CAChD,OAAO,CAAC,UAAC,IAAoB;gBAC3B,OAAA,aAAa,eAAI,IAAI,CAAC,GAAG,CAAC,UAAC,GAAiB,IAAK,OAAA,GAAG,CAAC,gBAAgB,EAApB,CAAoB,CAAC,EAAE,IAAI,CAC1E,GAAG,CAAC,UAAC,EAA6C;wBAA5C,iBAAM;oBAA2C,OAAA,GAAG,CAAC,GAAG,CAAC,UAAC,CAA+B,IAAK,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAC;gBAAvD,CAAuD,CAAC,CAChH;YAFD,CAEC,CACF,EACD,oBAAoB,CAAC,qBAAqB,EAAE,CAAC,CAC9C,CAAC;YAEF,IAAI,CAAC,qBAAqB,GAAG,uBAAuB,CAClD,gBAAgB,EAChB,oBAAoB,CACrB,CAAC;SACH;IACH,CAAC;IAED;;;;;;OAMG;IACH,4CAAoB,GAApB,UAAqB,QAAgB,EAAE,aAAqB,EAAE,eAAgC;QAC5F,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;QACpE,IAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CACnD,sBAAsB,EAAE,EACxB,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,EAA+B,IAAK,OAAA,EAAE,CAAC,IAAI,EAAP,CAAO,CAAC,EACjD,oBAAoB,CAAC,qBAAqB,EAAE,CAAC,CAC9C,CAAC;QAEF,OAAO,gBAAgB,CAAC,IAAI,CAC1B,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,CAC9E,CAAC;IACJ,CAAC;IAvDU,aAAa;QAPzB,SAAS,CAAC;YACT,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,EAAE;SACb,CAAC;QACF;;WAEG;;QAQE,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDAAc,IAAI;OAPtB,aAAa,CAyDzB;IAAD,oBAAC;CAAA,AAzDD,IAyDC;SAzDY,aAAa"} \ No newline at end of file diff --git a/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js b/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js deleted file mode 100644 index 91ce6bc391..0000000000 --- a/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { ItemViewMode } from '../../../shared/items/item-type-decorator'; -var MetadataRepresentationListComponent = /** @class */ (function () { - function MetadataRepresentationListComponent() { - /** - * The view-mode we're currently on - * @type {ElementViewMode} - */ - this.viewMode = ItemViewMode.Metadata; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], MetadataRepresentationListComponent.prototype, "representations", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], MetadataRepresentationListComponent.prototype, "label", void 0); - MetadataRepresentationListComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-representation-list', - templateUrl: './metadata-representation-list.component.html' - }) - /** - * This component is used for displaying metadata - * It expects a list of MetadataRepresentation objects and a label to put on top of the list - */ - ], MetadataRepresentationListComponent); - return MetadataRepresentationListComponent; -}()); -export { MetadataRepresentationListComponent }; -//# sourceMappingURL=metadata-representation-list.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js.map b/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js.map deleted file mode 100644 index d09bca3bb1..0000000000 --- a/src/app/+item-page/simple/metadata-representation-list/metadata-representation-list.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-representation-list.component.js","sourceRoot":"","sources":["metadata-representation-list.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAUzE;IARA;QAmBE;;;WAGG;QACH,aAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;IACnC,CAAC;IAZU;QAAR,KAAK,EAAE;;gFAA2C;IAK1C;QAAR,KAAK,EAAE;;sEAAe;IATZ,mCAAmC;QAR/C,SAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,WAAW,EAAE,+CAA+C;SAC7D,CAAC;QACF;;;WAGG;OACU,mCAAmC,CAgB/C;IAAD,0CAAC;CAAA,AAhBD,IAgBC;SAhBY,mCAAmC"} \ No newline at end of file diff --git a/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js b/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js deleted file mode 100644 index 4ac1ddc54a..0000000000 --- a/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js +++ /dev/null @@ -1,65 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../core/shared/item.model'; -import { SearchFixedFilterService } from '../../../../+search-page/search-filters/search-filter/search-fixed-filter.service'; -import { isNotEmpty } from '../../../../shared/empty.util'; -import { of } from 'rxjs/internal/observable/of'; -var RelatedEntitiesSearchComponent = /** @class */ (function () { - function RelatedEntitiesSearchComponent(fixedFilterService) { - this.fixedFilterService = fixedFilterService; - /** - * Whether or not the search bar and title should be displayed (defaults to true) - * @type {boolean} - */ - this.searchEnabled = true; - /** - * The ratio of the sidebar's width compared to the search results (1-12) (defaults to 4) - * @type {number} - */ - this.sideBarWidth = 4; - } - RelatedEntitiesSearchComponent.prototype.ngOnInit = function () { - if (isNotEmpty(this.relationType) && isNotEmpty(this.item)) { - this.fixedFilter = this.fixedFilterService.getFilterByRelation(this.relationType, this.item.id); - } - if (isNotEmpty(this.relationEntityType)) { - this.fixedFilter$ = of(this.relationEntityType); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], RelatedEntitiesSearchComponent.prototype, "relationType", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], RelatedEntitiesSearchComponent.prototype, "item", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], RelatedEntitiesSearchComponent.prototype, "relationEntityType", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], RelatedEntitiesSearchComponent.prototype, "searchEnabled", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], RelatedEntitiesSearchComponent.prototype, "sideBarWidth", void 0); - RelatedEntitiesSearchComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-related-entities-search', - templateUrl: './related-entities-search.component.html' - }) - /** - * A component to show related items as search results. - * Related items can be facetted, or queried using an - * optional search box. - */ - , - tslib_1.__metadata("design:paramtypes", [SearchFixedFilterService]) - ], RelatedEntitiesSearchComponent); - return RelatedEntitiesSearchComponent; -}()); -export { RelatedEntitiesSearchComponent }; -//# sourceMappingURL=related-entities-search.component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js.map b/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js.map deleted file mode 100644 index f09324c7e3..0000000000 --- a/src/app/+item-page/simple/related-entities/related-entities-search/related-entities-search.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"related-entities-search.component.js","sourceRoot":"","sources":["related-entities-search.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,mFAAmF,CAAC;AAC7H,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAWjD;IAmCE,wCAAoB,kBAA4C;QAA5C,uBAAkB,GAAlB,kBAAkB,CAA0B;QAfhE;;;WAGG;QACM,kBAAa,GAAG,IAAI,CAAC;QAE9B;;;WAGG;QACM,iBAAY,GAAG,CAAC,CAAC;IAM1B,CAAC;IAED,iDAAQ,GAAR;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC1D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACjG;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;YACvC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SACjD;IACH,CAAC;IAvCQ;QAAR,KAAK,EAAE;;wEAAsB;IAKrB;QAAR,KAAK,EAAE;0CAAO,IAAI;gEAAC;IAOX;QAAR,KAAK,EAAE;;8EAA4B;IAM3B;QAAR,KAAK,EAAE;;yEAAsB;IAMrB;QAAR,KAAK,EAAE;;wEAAkB;IA9Bf,8BAA8B;QAT1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,WAAW,EAAE,0CAA0C;SACxD,CAAC;QACF;;;;WAIG;;iDAoCuC,wBAAwB;OAnCrD,8BAA8B,CA+C1C;IAAD,qCAAC;CAAA,AA/CD,IA+CC;SA/CY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+item-page/simple/related-items/related-items-component.js b/src/app/+item-page/simple/related-items/related-items-component.js deleted file mode 100644 index 291213a01a..0000000000 --- a/src/app/+item-page/simple/related-items/related-items-component.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { ItemViewMode } from '../../../shared/items/item-type-decorator'; -var RelatedItemsComponent = /** @class */ (function () { - function RelatedItemsComponent() { - /** - * The view-mode we're currently on - * @type {ElementViewMode} - */ - this.viewMode = ItemViewMode.Element; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], RelatedItemsComponent.prototype, "items", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], RelatedItemsComponent.prototype, "label", void 0); - RelatedItemsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-related-items', - styleUrls: ['./related-items.component.scss'], - templateUrl: './related-items.component.html' - }) - /** - * This component is used for displaying relations between items - * It expects a list of items to display and a label to put on top - */ - ], RelatedItemsComponent); - return RelatedItemsComponent; -}()); -export { RelatedItemsComponent }; -//# sourceMappingURL=related-items-component.js.map \ No newline at end of file diff --git a/src/app/+item-page/simple/related-items/related-items-component.js.map b/src/app/+item-page/simple/related-items/related-items-component.js.map deleted file mode 100644 index 38a3f95374..0000000000 --- a/src/app/+item-page/simple/related-items/related-items-component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"related-items-component.js","sourceRoot":"","sources":["related-items-component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAWzE;IATA;QAoBE;;;WAGG;QACH,aAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;IAClC,CAAC;IAZU;QAAR,KAAK,EAAE;;wDAAe;IAKd;QAAR,KAAK,EAAE;;wDAAe;IATZ,qBAAqB;QATjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,CAAC,gCAAgC,CAAC;YAC7C,WAAW,EAAE,gCAAgC;SAC9C,CAAC;QACF;;;WAGG;OACU,qBAAqB,CAgBjC;IAAD,4BAAC;CAAA,AAhBD,IAgBC;SAhBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+login-page/login-page-routing.module.js b/src/app/+login-page/login-page-routing.module.js deleted file mode 100644 index 5f1a44d159..0000000000 --- a/src/app/+login-page/login-page-routing.module.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { LoginPageComponent } from './login-page.component'; -var LoginPageRoutingModule = /** @class */ (function () { - function LoginPageRoutingModule() { - } - LoginPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { path: '', pathMatch: 'full', component: LoginPageComponent, data: { title: 'login.title' } } - ]) - ] - }) - ], LoginPageRoutingModule); - return LoginPageRoutingModule; -}()); -export { LoginPageRoutingModule }; -//# sourceMappingURL=login-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+login-page/login-page-routing.module.js.map b/src/app/+login-page/login-page-routing.module.js.map deleted file mode 100644 index adbe2f99c6..0000000000 --- a/src/app/+login-page/login-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"login-page-routing.module.js","sourceRoot":"","sources":["login-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAS5D;IAAA;IAAsC,CAAC;IAA1B,sBAAsB;QAPlC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAG,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE;iBAChG,CAAC;aACH;SACF,CAAC;OACW,sBAAsB,CAAI;IAAD,6BAAC;CAAA,AAAvC,IAAuC;SAA1B,sBAAsB"} \ No newline at end of file diff --git a/src/app/+login-page/login-page.component.js b/src/app/+login-page/login-page.component.js deleted file mode 100644 index e8575bf49a..0000000000 --- a/src/app/+login-page/login-page.component.js +++ /dev/null @@ -1,78 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute } from '@angular/router'; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { filter, take } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; -import { AddAuthenticationMessageAction, AuthenticatedAction, AuthenticationSuccessAction, ResetAuthenticationMessagesAction } from '../core/auth/auth.actions'; -import { hasValue, isNotEmpty } from '../shared/empty.util'; -import { AuthTokenInfo } from '../core/auth/models/auth-token-info.model'; -import { isAuthenticated } from '../core/auth/selectors'; -/** - * This component represents the login page - */ -var LoginPageComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ActivatedRoute} route - * @param {Store} store - */ - function LoginPageComponent(route, store) { - this.route = route; - this.store = store; - } - /** - * Initialize instance variables - */ - LoginPageComponent.prototype.ngOnInit = function () { - var _this = this; - var queryParamsObs = this.route.queryParams; - var authenticated = this.store.select(isAuthenticated); - this.sub = observableCombineLatest(queryParamsObs, authenticated).pipe(filter(function (_a) { - var params = _a[0], auth = _a[1]; - return isNotEmpty(params.token) || isNotEmpty(params.expired); - }), take(1)).subscribe(function (_a) { - var params = _a[0], auth = _a[1]; - var token = params.token; - var authToken; - if (!auth) { - if (isNotEmpty(token)) { - authToken = new AuthTokenInfo(token); - _this.store.dispatch(new AuthenticatedAction(authToken)); - } - else if (isNotEmpty(params.expired)) { - _this.store.dispatch(new AddAuthenticationMessageAction('auth.messages.expired')); - } - } - else { - if (isNotEmpty(token)) { - authToken = new AuthTokenInfo(token); - _this.store.dispatch(new AuthenticationSuccessAction(authToken)); - } - } - }); - }; - /** - * Unsubscribe from subscription - */ - LoginPageComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - // Clear all authentication messages when leaving login page - this.store.dispatch(new ResetAuthenticationMessagesAction()); - }; - LoginPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-login-page', - styleUrls: ['./login-page.component.scss'], - templateUrl: './login-page.component.html' - }), - tslib_1.__metadata("design:paramtypes", [ActivatedRoute, - Store]) - ], LoginPageComponent); - return LoginPageComponent; -}()); -export { LoginPageComponent }; -//# sourceMappingURL=login-page.component.js.map \ No newline at end of file diff --git a/src/app/+login-page/login-page.component.js.map b/src/app/+login-page/login-page.component.js.map deleted file mode 100644 index 011a82cb4d..0000000000 --- a/src/app/+login-page/login-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"login-page.component.js","sourceRoot":"","sources":["login-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+login-page/login-page.module.js b/src/app/+login-page/login-page.module.js deleted file mode 100644 index ddbe2e7613..0000000000 --- a/src/app/+login-page/login-page.module.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { LoginPageComponent } from './login-page.component'; -import { LoginPageRoutingModule } from './login-page-routing.module'; -var LoginPageModule = /** @class */ (function () { - function LoginPageModule() { - } - LoginPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - LoginPageRoutingModule, - CommonModule, - SharedModule, - ], - declarations: [ - LoginPageComponent - ] - }) - ], LoginPageModule); - return LoginPageModule; -}()); -export { LoginPageModule }; -//# sourceMappingURL=login-page.module.js.map \ No newline at end of file diff --git a/src/app/+login-page/login-page.module.js.map b/src/app/+login-page/login-page.module.js.map deleted file mode 100644 index ace808e89e..0000000000 --- a/src/app/+login-page/login-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"login-page.module.js","sourceRoot":"","sources":["login-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAYrE;IAAA;IAEA,CAAC;IAFY,eAAe;QAV3B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,sBAAsB;gBACtB,YAAY;gBACZ,YAAY;aACb;YACD,YAAY,EAAE;gBACZ,kBAAkB;aACnB;SACF,CAAC;OACW,eAAe,CAE3B;IAAD,sBAAC;CAAA,AAFD,IAEC;SAFY,eAAe"} \ No newline at end of file diff --git a/src/app/+logout-page/logout-page-routing.module.js b/src/app/+logout-page/logout-page-routing.module.js deleted file mode 100644 index 781089bb22..0000000000 --- a/src/app/+logout-page/logout-page-routing.module.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { LogoutPageComponent } from './logout-page.component'; -import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; -var LogoutPageRoutingModule = /** @class */ (function () { - function LogoutPageRoutingModule() { - } - LogoutPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { - canActivate: [AuthenticatedGuard], - path: '', - component: LogoutPageComponent, - data: { title: 'logout.title' } - } - ]) - ] - }) - ], LogoutPageRoutingModule); - return LogoutPageRoutingModule; -}()); -export { LogoutPageRoutingModule }; -//# sourceMappingURL=logout-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+logout-page/logout-page-routing.module.js.map b/src/app/+logout-page/logout-page-routing.module.js.map deleted file mode 100644 index 18127e387f..0000000000 --- a/src/app/+logout-page/logout-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"logout-page-routing.module.js","sourceRoot":"","sources":["logout-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AActE;IAAA;IAAuC,CAAC;IAA3B,uBAAuB;QAZnC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,IAAI,EAAE,EAAE;wBACR,SAAS,EAAE,mBAAmB;wBAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE;qBAChC;iBACF,CAAC;aACH;SACF,CAAC;OACW,uBAAuB,CAAI;IAAD,8BAAC;CAAA,AAAxC,IAAwC;SAA3B,uBAAuB"} \ No newline at end of file diff --git a/src/app/+logout-page/logout-page.component.js b/src/app/+logout-page/logout-page.component.js deleted file mode 100644 index 472ad78915..0000000000 --- a/src/app/+logout-page/logout-page.component.js +++ /dev/null @@ -1,16 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -var LogoutPageComponent = /** @class */ (function () { - function LogoutPageComponent() { - } - LogoutPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-logout-page', - styleUrls: ['./logout-page.component.scss'], - templateUrl: './logout-page.component.html' - }) - ], LogoutPageComponent); - return LogoutPageComponent; -}()); -export { LogoutPageComponent }; -//# sourceMappingURL=logout-page.component.js.map \ No newline at end of file diff --git a/src/app/+logout-page/logout-page.component.js.map b/src/app/+logout-page/logout-page.component.js.map deleted file mode 100644 index 8c633c70b3..0000000000 --- a/src/app/+logout-page/logout-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"logout-page.component.js","sourceRoot":"","sources":["logout-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAO1C;IAAA;IAEA,CAAC;IAFY,mBAAmB;QAL/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;SAC5C,CAAC;OACW,mBAAmB,CAE/B;IAAD,0BAAC;CAAA,AAFD,IAEC;SAFY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+logout-page/logout-page.module.js b/src/app/+logout-page/logout-page.module.js deleted file mode 100644 index cfe66270c9..0000000000 --- a/src/app/+logout-page/logout-page.module.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { LogoutPageComponent } from './logout-page.component'; -import { LogoutPageRoutingModule } from './logout-page-routing.module'; -var LogoutPageModule = /** @class */ (function () { - function LogoutPageModule() { - } - LogoutPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - LogoutPageRoutingModule, - CommonModule, - SharedModule, - ], - declarations: [ - LogoutPageComponent - ] - }) - ], LogoutPageModule); - return LogoutPageModule; -}()); -export { LogoutPageModule }; -//# sourceMappingURL=logout-page.module.js.map \ No newline at end of file diff --git a/src/app/+logout-page/logout-page.module.js.map b/src/app/+logout-page/logout-page.module.js.map deleted file mode 100644 index b3f715b52a..0000000000 --- a/src/app/+logout-page/logout-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"logout-page.module.js","sourceRoot":"","sources":["logout-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAYvE;IAAA;IAEA,CAAC;IAFY,gBAAgB;QAV5B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,uBAAuB;gBACvB,YAAY;gBACZ,YAAY;aACb;YACD,YAAY,EAAE;gBACZ,mBAAmB;aACpB;SACF,CAAC;OACW,gBAAgB,CAE5B;IAAD,uBAAC;CAAA,AAFD,IAEC;SAFY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-configuration-value-type.js b/src/app/+my-dspace-page/my-dspace-configuration-value-type.js deleted file mode 100644 index b376f30f32..0000000000 --- a/src/app/+my-dspace-page/my-dspace-configuration-value-type.js +++ /dev/null @@ -1,6 +0,0 @@ -export var MyDSpaceConfigurationValueType; -(function (MyDSpaceConfigurationValueType) { - MyDSpaceConfigurationValueType["Workspace"] = "workspace"; - MyDSpaceConfigurationValueType["Workflow"] = "workflow"; -})(MyDSpaceConfigurationValueType || (MyDSpaceConfigurationValueType = {})); -//# sourceMappingURL=my-dspace-configuration-value-type.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-configuration-value-type.js.map b/src/app/+my-dspace-page/my-dspace-configuration-value-type.js.map deleted file mode 100644 index b9a6659d3d..0000000000 --- a/src/app/+my-dspace-page/my-dspace-configuration-value-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-configuration-value-type.js","sourceRoot":"","sources":["my-dspace-configuration-value-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,8BAGX;AAHD,WAAY,8BAA8B;IACxC,yDAAuB,CAAA;IACvB,uDAAqB,CAAA;AACvB,CAAC,EAHW,8BAA8B,KAA9B,8BAA8B,QAGzC"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-configuration.service.js b/src/app/+my-dspace-page/my-dspace-configuration.service.js deleted file mode 100644 index 05cb9192fd..0000000000 --- a/src/app/+my-dspace-page/my-dspace-configuration.service.js +++ /dev/null @@ -1,110 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { ActivatedRoute } from '@angular/router'; -import { combineLatest } from 'rxjs'; -import { first, map } from 'rxjs/operators'; -import { MyDSpaceConfigurationValueType } from './my-dspace-configuration-value-type'; -import { RoleService } from '../core/roles/role.service'; -import { SearchConfigurationService } from '../+search-page/search-service/search-configuration.service'; -import { RouteService } from '../shared/services/route.service'; -import { PaginationComponentOptions } from '../shared/pagination/pagination-component-options.model'; -import { SortDirection, SortOptions } from '../core/cache/models/sort-options.model'; -import { SearchFixedFilterService } from '../+search-page/search-filters/search-filter/search-fixed-filter.service'; -/** - * Service that performs all actions that have to do with the current mydspace configuration - */ -var MyDSpaceConfigurationService = /** @class */ (function (_super) { - tslib_1.__extends(MyDSpaceConfigurationService, _super); - /** - * Initialize class - * - * @param {roleService} roleService - * @param {SearchFixedFilterService} fixedFilterService - * @param {RouteService} routeService - * @param {ActivatedRoute} route - */ - function MyDSpaceConfigurationService(roleService, fixedFilterService, routeService, route) { - var _this = _super.call(this, routeService, fixedFilterService, route) || this; - _this.roleService = roleService; - _this.fixedFilterService = fixedFilterService; - _this.routeService = routeService; - _this.route = route; - /** - * Default pagination settings - */ - _this.defaultPagination = Object.assign(new PaginationComponentOptions(), { - id: 'mydspace-page', - pageSize: 10, - currentPage: 1 - }); - /** - * Default sort settings - */ - _this.defaultSort = new SortOptions('dc.date.issued', SortDirection.DESC); - /** - * Default configuration parameter setting - */ - _this.defaultConfiguration = 'workspace'; - /** - * Default scope setting - */ - _this.defaultScope = ''; - /** - * Default query setting - */ - _this.defaultQuery = ''; - // override parent class initialization - _this._defaults = null; - _this.initDefaults(); - _this.isSubmitter$ = _this.roleService.isSubmitter(); - _this.isController$ = _this.roleService.isController(); - _this.isAdmin$ = _this.roleService.isAdmin(); - return _this; - } - /** - * Returns the list of available configuration depend on the user role - * - * @return {Observable} - * Emits the available configuration list - */ - MyDSpaceConfigurationService.prototype.getAvailableConfigurationTypes = function () { - return combineLatest(this.isSubmitter$, this.isController$, this.isAdmin$).pipe(first(), map(function (_a) { - var isSubmitter = _a[0], isController = _a[1], isAdmin = _a[2]; - var availableConf = []; - if (isSubmitter) { - availableConf.push(MyDSpaceConfigurationValueType.Workspace); - } - if (isController || isAdmin) { - availableConf.push(MyDSpaceConfigurationValueType.Workflow); - } - return availableConf; - })); - }; - /** - * Returns the select options for the available configuration list - * - * @return {Observable} - * Emits the select options list - */ - MyDSpaceConfigurationService.prototype.getAvailableConfigurationOptions = function () { - return this.getAvailableConfigurationTypes().pipe(first(), map(function (availableConfigurationTypes) { - var configurationOptions = []; - availableConfigurationTypes.forEach(function (type) { - var value = type; - var label = "mydspace.show." + value; - configurationOptions.push({ value: value, label: label }); - }); - return configurationOptions; - })); - }; - MyDSpaceConfigurationService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RoleService, - SearchFixedFilterService, - RouteService, - ActivatedRoute]) - ], MyDSpaceConfigurationService); - return MyDSpaceConfigurationService; -}(SearchConfigurationService)); -export { MyDSpaceConfigurationService }; -//# sourceMappingURL=my-dspace-configuration.service.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-configuration.service.js.map b/src/app/+my-dspace-page/my-dspace-configuration.service.js.map deleted file mode 100644 index 77d772a3c0..0000000000 --- a/src/app/+my-dspace-page/my-dspace-configuration.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-configuration.service.js","sourceRoot":"","sources":["my-dspace-configuration.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js b/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js deleted file mode 100644 index a9e7c20e2f..0000000000 --- a/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js +++ /dev/null @@ -1,110 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Output } from '@angular/core'; -import { first } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; -import { TranslateService } from '@ngx-translate/core'; -import { AuthService } from '../../core/auth/auth.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { NotificationOptions } from '../../shared/notifications/models/notification-options.model'; -import { HALEndpointService } from '../../core/shared/hal-endpoint.service'; -import { NotificationType } from '../../shared/notifications/models/notification-type'; -import { hasValue } from '../../shared/empty.util'; -/** - * This component represents the whole mydspace page header - */ -var MyDSpaceNewSubmissionComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {AuthService} authService - * @param {ChangeDetectorRef} changeDetectorRef - * @param {HALEndpointService} halService - * @param {NotificationsService} notificationsService - * @param {Store} store - * @param {TranslateService} translate - */ - function MyDSpaceNewSubmissionComponent(authService, changeDetectorRef, halService, notificationsService, store, translate) { - this.authService = authService; - this.changeDetectorRef = changeDetectorRef; - this.halService = halService; - this.notificationsService = notificationsService; - this.store = store; - this.translate = translate; - this.uploadEnd = new EventEmitter(); - /** - * The UploaderOptions object - */ - this.uploadFilesOptions = { - url: '', - authToken: null, - disableMultipart: false, - itemAlias: null - }; - } - /** - * Initialize url and Bearer token - */ - MyDSpaceNewSubmissionComponent.prototype.ngOnInit = function () { - var _this = this; - this.sub = this.halService.getEndpoint('workspaceitems').pipe(first()).subscribe(function (url) { - _this.uploadFilesOptions.url = url; - _this.uploadFilesOptions.authToken = _this.authService.buildAuthHeader(); - _this.changeDetectorRef.detectChanges(); - }); - }; - /** - * Method called when file upload is completed to notify upload status - */ - MyDSpaceNewSubmissionComponent.prototype.onCompleteItem = function (res) { - if (res && res._embedded && res._embedded.workspaceitems && res._embedded.workspaceitems.length > 0) { - var workspaceitems = res._embedded.workspaceitems; - this.uploadEnd.emit(workspaceitems); - if (workspaceitems.length === 1) { - var options = new NotificationOptions(); - options.timeOut = 0; - var link = '/workspaceitems/' + workspaceitems[0].id + '/edit'; - this.notificationsService.notificationWithAnchor(NotificationType.Success, options, link, 'mydspace.general.text-here', 'mydspace.upload.upload-successful', 'here'); - } - else if (workspaceitems.length > 1) { - this.notificationsService.success(null, this.translate.get('mydspace.upload.upload-multiple-successful', { qty: workspaceitems.length })); - } - } - else { - this.notificationsService.error(null, this.translate.get('mydspace.upload.upload-failed')); - } - }; - /** - * Method called on file upload error - */ - MyDSpaceNewSubmissionComponent.prototype.onUploadError = function () { - this.notificationsService.error(null, this.translate.get('mydspace.upload.upload-failed')); - }; - /** - * Unsubscribe from the subscription - */ - MyDSpaceNewSubmissionComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], MyDSpaceNewSubmissionComponent.prototype, "uploadEnd", void 0); - MyDSpaceNewSubmissionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-my-dspace-new-submission', - styleUrls: ['./my-dspace-new-submission.component.scss'], - templateUrl: './my-dspace-new-submission.component.html' - }), - tslib_1.__metadata("design:paramtypes", [AuthService, - ChangeDetectorRef, - HALEndpointService, - NotificationsService, - Store, - TranslateService]) - ], MyDSpaceNewSubmissionComponent); - return MyDSpaceNewSubmissionComponent; -}()); -export { MyDSpaceNewSubmissionComponent }; -//# sourceMappingURL=my-dspace-new-submission.component.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js.map b/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js.map deleted file mode 100644 index 2f9653bc44..0000000000 --- a/src/app/+my-dspace-page/my-dspace-new-submission/my-dspace-new-submission.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-new-submission.component.js","sourceRoot":"","sources":["my-dspace-new-submission.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page-routing.module.js b/src/app/+my-dspace-page/my-dspace-page-routing.module.js deleted file mode 100644 index b99e2dd359..0000000000 --- a/src/app/+my-dspace-page/my-dspace-page-routing.module.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { MyDSpacePageComponent } from './my-dspace-page.component'; -import { MyDSpaceGuard } from './my-dspace.guard'; -var MyDspacePageRoutingModule = /** @class */ (function () { - /** - * This module defines the default component to load when navigating to the mydspace page path. - */ - function MyDspacePageRoutingModule() { - } - MyDspacePageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { - path: '', - component: MyDSpacePageComponent, - data: { title: 'mydspace.title' }, - canActivate: [ - MyDSpaceGuard - ] - } - ]) - ] - }) - /** - * This module defines the default component to load when navigating to the mydspace page path. - */ - ], MyDspacePageRoutingModule); - return MyDspacePageRoutingModule; -}()); -export { MyDspacePageRoutingModule }; -//# sourceMappingURL=my-dspace-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page-routing.module.js.map b/src/app/+my-dspace-page/my-dspace-page-routing.module.js.map deleted file mode 100644 index 7cb2103924..0000000000 --- a/src/app/+my-dspace-page/my-dspace-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-page-routing.module.js","sourceRoot":"","sources":["my-dspace-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAmBlD;IAHA;;OAEG;IACH;IACA,CAAC;IADY,yBAAyB;QAjBrC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,IAAI,EAAE,EAAE;wBACR,SAAS,EAAE,qBAAqB;wBAChC,IAAI,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;wBACjC,WAAW,EAAE;4BACX,aAAa;yBACd;qBACF;iBACF,CAAC;aACH;SACF,CAAC;QACF;;WAEG;OACU,yBAAyB,CACrC;IAAD,gCAAC;CAAA,AADD,IACC;SADY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page.component.js b/src/app/+my-dspace-page/my-dspace-page.component.js deleted file mode 100644 index cdd72e6d47..0000000000 --- a/src/app/+my-dspace-page/my-dspace-page.component.js +++ /dev/null @@ -1,125 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component, Inject, InjectionToken, Input } from '@angular/core'; -import { BehaviorSubject } from 'rxjs'; -import { switchMap, tap, } from 'rxjs/operators'; -import { pushInOut } from '../shared/animations/push'; -import { HostWindowService } from '../shared/host-window.service'; -import { SearchService } from '../+search-page/search-service/search.service'; -import { SearchSidebarService } from '../+search-page/search-sidebar/search-sidebar.service'; -import { hasValue } from '../shared/empty.util'; -import { getSucceededRemoteData } from '../core/shared/operators'; -import { MyDSpaceResponseParsingService } from '../core/data/mydspace-response-parsing.service'; -import { RoleType } from '../core/roles/role-types'; -import { MyDSpaceConfigurationService } from './my-dspace-configuration.service'; -import { ViewMode } from '../core/shared/view-mode.model'; -import { MyDSpaceRequest } from '../core/data/request.models'; -export var MYDSPACE_ROUTE = '/mydspace'; -export var SEARCH_CONFIG_SERVICE = new InjectionToken('searchConfigurationService'); -/** - * This component represents the whole mydspace page - */ -var MyDSpacePageComponent = /** @class */ (function () { - function MyDSpacePageComponent(service, sidebarService, windowService, searchConfigService) { - this.service = service; - this.sidebarService = sidebarService; - this.windowService = windowService; - this.searchConfigService = searchConfigService; - /** - * True when the search component should show results on the current page - */ - this.inPlaceSearch = true; - /** - * The current search results - */ - this.resultsRD$ = new BehaviorSubject(null); - /** - * Variable for enumeration RoleType - */ - this.roleTypeEnum = RoleType; - /** - * List of available view mode - */ - this.viewModeList = [ViewMode.List, ViewMode.Detail]; - this.isXsOrSm$ = this.windowService.isXsOrSm(); - this.service.setServiceOptions(MyDSpaceResponseParsingService, MyDSpaceRequest); - } - /** - * Initialize available configuration list - * - * Listening to changes in the paginated search options - * If something changes, update the search results - * - * Listen to changes in the scope - * If something changes, update the list of scopes for the dropdown - */ - MyDSpacePageComponent.prototype.ngOnInit = function () { - var _this = this; - this.configurationList$ = this.searchConfigService.getAvailableConfigurationOptions(); - this.searchOptions$ = this.searchConfigService.paginatedSearchOptions; - this.sub = this.searchOptions$.pipe(tap(function () { return _this.resultsRD$.next(null); }), switchMap(function (options) { return _this.service.search(options).pipe(getSucceededRemoteData()); })) - .subscribe(function (results) { - _this.resultsRD$.next(results); - }); - this.scopeListRD$ = this.searchConfigService.getCurrentScope('').pipe(switchMap(function (scopeId) { return _this.service.getScopes(scopeId); })); - }; - /** - * Set the sidebar to a collapsed state - */ - MyDSpacePageComponent.prototype.closeSidebar = function () { - this.sidebarService.collapse(); - }; - /** - * Set the sidebar to an expanded state - */ - MyDSpacePageComponent.prototype.openSidebar = function () { - this.sidebarService.expand(); - }; - /** - * Check if the sidebar is collapsed - * @returns {Observable} emits true if the sidebar is currently collapsed, false if it is expanded - */ - MyDSpacePageComponent.prototype.isSidebarCollapsed = function () { - return this.sidebarService.isCollapsed; - }; - /** - * @returns {string} The base path to the search page - */ - MyDSpacePageComponent.prototype.getSearchLink = function () { - return this.service.getSearchLink(); - }; - /** - * Unsubscribe from the subscription - */ - MyDSpacePageComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], MyDSpacePageComponent.prototype, "inPlaceSearch", void 0); - MyDSpacePageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-my-dspace-page', - styleUrls: ['./my-dspace-page.component.scss'], - templateUrl: './my-dspace-page.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [pushInOut], - providers: [ - { - provide: SEARCH_CONFIG_SERVICE, - useClass: MyDSpaceConfigurationService - } - ] - }), - tslib_1.__param(3, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchSidebarService, - HostWindowService, - MyDSpaceConfigurationService]) - ], MyDSpacePageComponent); - return MyDSpacePageComponent; -}()); -export { MyDSpacePageComponent }; -//# sourceMappingURL=my-dspace-page.component.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page.component.js.map b/src/app/+my-dspace-page/my-dspace-page.component.js.map deleted file mode 100644 index cb4c79b8d6..0000000000 --- a/src/app/+my-dspace-page/my-dspace-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-page.component.js","sourceRoot":"","sources":["my-dspace-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page.module.js b/src/app/+my-dspace-page/my-dspace-page.module.js deleted file mode 100644 index 8467c7193c..0000000000 --- a/src/app/+my-dspace-page/my-dspace-page.module.js +++ /dev/null @@ -1,75 +0,0 @@ -import * as tslib_1 from "tslib"; -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { MyDspacePageRoutingModule } from './my-dspace-page-routing.module'; -import { MyDSpacePageComponent } from './my-dspace-page.component'; -import { SearchPageModule } from '../+search-page/search-page.module'; -import { MyDSpaceResultsComponent } from './my-dspace-results/my-dspace-results.component'; -import { WorkspaceitemMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component'; -import { ItemMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component'; -import { WorkflowitemMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component'; -import { ClaimedMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component'; -import { PoolMyDSpaceResultListElementComponent } from '../shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component'; -import { MyDSpaceNewSubmissionComponent } from './my-dspace-new-submission/my-dspace-new-submission.component'; -import { ItemMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component'; -import { WorkspaceitemMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component'; -import { WorkflowitemMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component'; -import { ClaimedMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component'; -import { PoolMyDSpaceResultDetailElementComponent } from '../shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component'; -import { MyDSpaceGuard } from './my-dspace.guard'; -import { MyDSpaceConfigurationService } from './my-dspace-configuration.service'; -var MyDSpacePageModule = /** @class */ (function () { - /** - * This module handles all components that are necessary for the mydspace page - */ - function MyDSpacePageModule() { - } - MyDSpacePageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule, - MyDspacePageRoutingModule, - SearchPageModule - ], - declarations: [ - MyDSpacePageComponent, - MyDSpaceResultsComponent, - ItemMyDSpaceResultListElementComponent, - WorkspaceitemMyDSpaceResultListElementComponent, - WorkflowitemMyDSpaceResultListElementComponent, - ClaimedMyDSpaceResultListElementComponent, - PoolMyDSpaceResultListElementComponent, - ItemMyDSpaceResultDetailElementComponent, - WorkspaceitemMyDSpaceResultDetailElementComponent, - WorkflowitemMyDSpaceResultDetailElementComponent, - ClaimedMyDSpaceResultDetailElementComponent, - PoolMyDSpaceResultDetailElementComponent, - MyDSpaceNewSubmissionComponent - ], - providers: [ - MyDSpaceGuard, - MyDSpaceConfigurationService - ], - entryComponents: [ - ItemMyDSpaceResultListElementComponent, - WorkspaceitemMyDSpaceResultListElementComponent, - WorkflowitemMyDSpaceResultListElementComponent, - ClaimedMyDSpaceResultListElementComponent, - PoolMyDSpaceResultListElementComponent, - ItemMyDSpaceResultDetailElementComponent, - WorkspaceitemMyDSpaceResultDetailElementComponent, - WorkflowitemMyDSpaceResultDetailElementComponent, - ClaimedMyDSpaceResultDetailElementComponent, - PoolMyDSpaceResultDetailElementComponent - ] - }) - /** - * This module handles all components that are necessary for the mydspace page - */ - ], MyDSpacePageModule); - return MyDSpacePageModule; -}()); -export { MyDSpacePageModule }; -//# sourceMappingURL=my-dspace-page.module.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-page.module.js.map b/src/app/+my-dspace-page/my-dspace-page.module.js.map deleted file mode 100644 index ce351275b3..0000000000 --- a/src/app/+my-dspace-page/my-dspace-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-page.module.js","sourceRoot":"","sources":["my-dspace-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAE,+CAA+C,EAAE,MAAM,0IAA0I,CAAC;AAC3M,OAAO,EAAE,sCAAsC,EAAE,MAAM,wHAAwH,CAAC;AAChL,OAAO,EAAE,8CAA8C,EAAE,MAAM,wIAAwI,CAAC;AACxM,OAAO,EAAE,yCAAyC,EAAE,MAAM,8HAA8H,CAAC;AACzL,OAAO,EAAE,sCAAsC,EAAE,MAAM,wHAAwH,CAAC;AAChL,OAAO,EAAE,8BAA8B,EAAE,MAAM,+DAA+D,CAAC;AAC/G,OAAO,EAAE,wCAAwC,EAAE,MAAM,8HAA8H,CAAC;AACxL,OAAO,EAAE,iDAAiD,EAAE,MAAM,gJAAgJ,CAAC;AACnN,OAAO,EAAE,gDAAgD,EAAE,MAAM,8IAA8I,CAAC;AAChN,OAAO,EAAE,2CAA2C,EAAE,MAAM,oIAAoI,CAAC;AACjM,OAAO,EAAE,wCAAwC,EAAE,MAAM,6HAA6H,CAAC;AACvL,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AA6CjF;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,kBAAkB;QA3C9B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,yBAAyB;gBACzB,gBAAgB;aACjB;YACD,YAAY,EAAE;gBACZ,qBAAqB;gBACrB,wBAAwB;gBACxB,sCAAsC;gBACtC,+CAA+C;gBAC/C,8CAA8C;gBAC9C,yCAAyC;gBACzC,sCAAsC;gBACtC,wCAAwC;gBACxC,iDAAiD;gBACjD,gDAAgD;gBAChD,2CAA2C;gBAC3C,wCAAwC;gBACxC,8BAA8B;aAC/B;YACD,SAAS,EAAE;gBACT,aAAa;gBACb,4BAA4B;aAC7B;YACD,eAAe,EAAE;gBACf,sCAAsC;gBACtC,+CAA+C;gBAC/C,8CAA8C;gBAC9C,yCAAyC;gBACzC,sCAAsC;gBACtC,wCAAwC;gBACxC,iDAAiD;gBACjD,gDAAgD;gBAChD,2CAA2C;gBAC3C,wCAAwC;aACzC;SACF,CAAC;QAEF;;WAEG;OACU,kBAAkB,CAE9B;IAAD,yBAAC;CAAA,AAFD,IAEC;SAFY,kBAAkB"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-result.model.js b/src/app/+my-dspace-page/my-dspace-result.model.js deleted file mode 100644 index ad78c4dda3..0000000000 --- a/src/app/+my-dspace-page/my-dspace-result.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Represents a search result object of a certain () DSpaceObject - */ -var MyDSpaceResult = /** @class */ (function () { - function MyDSpaceResult() { - } - return MyDSpaceResult; -}()); -export { MyDSpaceResult }; -//# sourceMappingURL=my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-result.model.js.map b/src/app/+my-dspace-page/my-dspace-result.model.js.map deleted file mode 100644 index d0b3965ec7..0000000000 --- a/src/app/+my-dspace-page/my-dspace-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-result.model.js","sourceRoot":"","sources":["my-dspace-result.model.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH;IAAA;IAWA,CAAC;IAAD,qBAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js b/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js deleted file mode 100644 index 25c023bcc2..0000000000 --- a/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js +++ /dev/null @@ -1,49 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { RemoteData } from '../../core/data/remote-data'; -import { fadeIn, fadeInOut } from '../../shared/animations/fade'; -import { SearchOptions } from '../../+search-page/search-options.model'; -import { ViewMode } from '../../core/shared/view-mode.model'; -import { isEmpty } from '../../shared/empty.util'; -/** - * Component that represents all results for mydspace page - */ -var MyDSpaceResultsComponent = /** @class */ (function () { - function MyDSpaceResultsComponent() { - /** - * A boolean representing if search results entry are separated by a line - */ - this.hasBorder = true; - } - /** - * Check if mydspace search results are loading - */ - MyDSpaceResultsComponent.prototype.isLoading = function () { - return !this.searchResults || isEmpty(this.searchResults) || this.searchResults.isLoading; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", RemoteData) - ], MyDSpaceResultsComponent.prototype, "searchResults", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SearchOptions) - ], MyDSpaceResultsComponent.prototype, "searchConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], MyDSpaceResultsComponent.prototype, "viewMode", void 0); - MyDSpaceResultsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-my-dspace-results', - templateUrl: './my-dspace-results.component.html', - animations: [ - fadeIn, - fadeInOut - ] - }) - ], MyDSpaceResultsComponent); - return MyDSpaceResultsComponent; -}()); -export { MyDSpaceResultsComponent }; -//# sourceMappingURL=my-dspace-results.component.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js.map b/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js.map deleted file mode 100644 index 30f1ba499f..0000000000 --- a/src/app/+my-dspace-page/my-dspace-results/my-dspace-results.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-results.component.js","sourceRoot":"","sources":["my-dspace-results.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;GAEG;AASH;IARA;QAyBE;;WAEG;QACH,cAAS,GAAG,IAAI,CAAC;IAQnB,CAAC;IANC;;OAEG;IACH,4CAAS,GAAT;QACE,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;IAC5F,CAAC;IAtBQ;QAAR,KAAK,EAAE;0CAAgB,UAAU;mEAA8C;IAKvE;QAAR,KAAK,EAAE;0CAAe,aAAa;kEAAC;IAK5B;QAAR,KAAK,EAAE;;8DAAoB;IAfjB,wBAAwB;QARpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,WAAW,EAAE,oCAAoC;YACjD,UAAU,EAAE;gBACV,MAAM;gBACN,SAAS;aACV;SACF,CAAC;OACW,wBAAwB,CA4BpC;IAAD,+BAAC;CAAA,AA5BD,IA4BC;SA5BY,wBAAwB"} \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace.guard.js b/src/app/+my-dspace-page/my-dspace.guard.js deleted file mode 100644 index 764b202b44..0000000000 --- a/src/app/+my-dspace-page/my-dspace.guard.js +++ /dev/null @@ -1,58 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Router } from '@angular/router'; -import { first, map } from 'rxjs/operators'; -import { isEmpty } from '../shared/empty.util'; -import { MYDSPACE_ROUTE } from './my-dspace-page.component'; -import { MyDSpaceConfigurationService } from './my-dspace-configuration.service'; -/** - * Prevent unauthorized activating and loading of mydspace configuration - * @class MyDSpaceGuard - */ -var MyDSpaceGuard = /** @class */ (function () { - /** - * @constructor - */ - function MyDSpaceGuard(configurationService, router) { - this.configurationService = configurationService; - this.router = router; - } - /** - * True when configuration is valid - * @method canActivate - */ - MyDSpaceGuard.prototype.canActivate = function (route, state) { - var _this = this; - return this.configurationService.getAvailableConfigurationTypes().pipe(first(), map(function (configurationList) { return _this.validateConfigurationParam(route.queryParamMap.get('configuration'), configurationList); })); - }; - /** - * Check if the given configuration is present in the list of those available - * - * @param configuration - * the configuration to validate - * @param configurationList - * the list of available configuration - * - */ - MyDSpaceGuard.prototype.validateConfigurationParam = function (configuration, configurationList) { - var configurationDefault = configurationList[0]; - if (isEmpty(configuration) || !configurationList.includes(configuration)) { - // If configuration param is empty or is not included in available configurations redirect to a default configuration value - var navigationExtras = { - queryParams: { configuration: configurationDefault } - }; - this.router.navigate([MYDSPACE_ROUTE], navigationExtras); - return false; - } - else { - return true; - } - }; - MyDSpaceGuard = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [MyDSpaceConfigurationService, Router]) - ], MyDSpaceGuard); - return MyDSpaceGuard; -}()); -export { MyDSpaceGuard }; -//# sourceMappingURL=my-dspace.guard.js.map \ No newline at end of file diff --git a/src/app/+my-dspace-page/my-dspace.guard.js.map b/src/app/+my-dspace-page/my-dspace.guard.js.map deleted file mode 100644 index 4d5a62145c..0000000000 --- a/src/app/+my-dspace-page/my-dspace.guard.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace.guard.js","sourceRoot":"","sources":["my-dspace.guard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAyD,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAGrH,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF;;;GAGG;AAEH;IAEE;;OAEG;IACH,uBAAoB,oBAAkD,EAAU,MAAc;QAA1E,yBAAoB,GAApB,oBAAoB,CAA8B;QAAU,WAAM,GAAN,MAAM,CAAQ;IAC9F,CAAC;IAED;;;OAGG;IACH,mCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QAArE,iBAIC;QAHC,OAAO,IAAI,CAAC,oBAAoB,CAAC,8BAA8B,EAAE,CAAC,IAAI,CACpE,KAAK,EAAE,EACP,GAAG,CAAC,UAAC,iBAAiB,IAAK,OAAA,KAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,iBAAiB,CAAC,EAA5F,CAA4F,CAAC,CAAC,CAAC;IAC9H,CAAC;IAED;;;;;;;;OAQG;IACK,kDAA0B,GAAlC,UAAmC,aAAqB,EAAE,iBAAmD;QAC3G,IAAM,oBAAoB,GAAW,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,aAA+C,CAAC,EAAE;YAC1G,2HAA2H;YAC3H,IAAM,gBAAgB,GAAqB;gBACzC,WAAW,EAAE,EAAC,aAAa,EAAE,oBAAoB,EAAC;aACnD,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE,gBAAgB,CAAC,CAAC;YACzD,OAAO,KAAK,CAAC;SACd;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAxCU,aAAa;QADzB,UAAU,EAAE;iDAM+B,4BAA4B,EAAkB,MAAM;OALnF,aAAa,CAyCzB;IAAD,oBAAC;CAAA,AAzCD,IAyCC;SAzCY,aAAa"} \ No newline at end of file diff --git a/src/app/+search-page/filtered-search-page.component.js b/src/app/+search-page/filtered-search-page.component.js deleted file mode 100644 index 88508309bf..0000000000 --- a/src/app/+search-page/filtered-search-page.component.js +++ /dev/null @@ -1,64 +0,0 @@ -import * as tslib_1 from "tslib"; -import { HostWindowService } from '../shared/host-window.service'; -import { SearchService } from './search-service/search.service'; -import { SearchSidebarService } from './search-sidebar/search-sidebar.service'; -import { SearchPageComponent } from './search-page.component'; -import { ChangeDetectionStrategy, Component, Inject, Input } from '@angular/core'; -import { pushInOut } from '../shared/animations/push'; -import { RouteService } from '../shared/services/route.service'; -import { SearchConfigurationService } from './search-service/search-configuration.service'; -import { SEARCH_CONFIG_SERVICE } from '../+my-dspace-page/my-dspace-page.component'; -/** - * This component renders a simple item page. - * The route parameter 'id' is used to request the item it represents. - * All fields of the item that should be displayed, are defined in its template. - */ -var FilteredSearchPageComponent = /** @class */ (function (_super) { - tslib_1.__extends(FilteredSearchPageComponent, _super); - function FilteredSearchPageComponent(service, sidebarService, windowService, searchConfigService, routeService) { - var _this = _super.call(this, service, sidebarService, windowService, searchConfigService, routeService) || this; - _this.service = service; - _this.sidebarService = sidebarService; - _this.windowService = windowService; - _this.searchConfigService = searchConfigService; - _this.routeService = routeService; - return _this; - } - /** - * Get the current paginated search options after updating the fixed filter using the fixedFilterQuery input - * This is to make sure the fixed filter is included in the paginated search options, as it is not part of any - * query or route parameters - * @returns {Observable} - */ - FilteredSearchPageComponent.prototype.getSearchOptions = function () { - this.searchConfigService.updateFixedFilter(this.fixedFilterQuery); - return this.searchConfigService.paginatedSearchOptions; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], FilteredSearchPageComponent.prototype, "fixedFilterQuery", void 0); - FilteredSearchPageComponent = tslib_1.__decorate([ - Component({ selector: 'ds-filtered-search-page', - styleUrls: ['./search-page.component.scss'], - templateUrl: './search-page.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [pushInOut], - providers: [ - { - provide: SEARCH_CONFIG_SERVICE, - useClass: SearchConfigurationService - } - ] - }), - tslib_1.__param(3, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchSidebarService, - HostWindowService, - SearchConfigurationService, - RouteService]) - ], FilteredSearchPageComponent); - return FilteredSearchPageComponent; -}(SearchPageComponent)); -export { FilteredSearchPageComponent }; -//# sourceMappingURL=filtered-search-page.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/filtered-search-page.component.js.map b/src/app/+search-page/filtered-search-page.component.js.map deleted file mode 100644 index 6d20938921..0000000000 --- a/src/app/+search-page/filtered-search-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"filtered-search-page.component.js","sourceRoot":"","sources":["filtered-search-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+CAA+C,CAAC;AAG3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAEpF;;;;GAIG;AAcH;IAAiD,uDAAmB;IAQlE,qCAAsB,OAAsB,EACtB,cAAoC,EACpC,aAAgC,EACJ,mBAA+C,EAC3E,YAA0B;QAJhD,YAKE,kBAAM,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,mBAAmB,EAAE,YAAY,CAAC,SACjF;QANqB,aAAO,GAAP,OAAO,CAAe;QACtB,oBAAc,GAAd,cAAc,CAAsB;QACpC,mBAAa,GAAb,aAAa,CAAmB;QACJ,yBAAmB,GAAnB,mBAAmB,CAA4B;QAC3E,kBAAY,GAAZ,YAAY,CAAc;;IAEhD,CAAC;IAED;;;;;OAKG;IACO,sDAAgB,GAA1B;QACE,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC;IACzD,CAAC;IAnBQ;QAAR,KAAK,EAAE;;yEAA0B;IANvB,2BAA2B;QAbvC,SAAS,CAAC,EAAC,QAAQ,EAAE,yBAAyB;YAC7C,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;YAC3C,eAAe,EAAE,uBAAuB,CAAC,MAAM;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,qBAAqB;oBAC9B,QAAQ,EAAE,0BAA0B;iBACrC;aACF;SACF,CAAC;QAaa,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDAHX,aAAa;YACN,oBAAoB;YACrB,iBAAiB;YACiB,0BAA0B;YAC7D,YAAY;OAZrC,2BAA2B,CA2BvC;IAAD,kCAAC;CAAA,AA3BD,CAAiD,mBAAmB,GA2BnE;SA3BY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+search-page/filtered-search-page.guard.js b/src/app/+search-page/filtered-search-page.guard.js deleted file mode 100644 index bdcd16be92..0000000000 --- a/src/app/+search-page/filtered-search-page.guard.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -var FilteredSearchPageGuard = /** @class */ (function () { - /** - * Assemble the correct i18n key for the filtered search page's title depending on the current route's filter parameter - * and title data. - * The format of the key will be "{title}{filter}.title" with: - * - title: The prefix of the key stored in route.data - * - filter: The current filter stored in route.params - */ - function FilteredSearchPageGuard() { - } - FilteredSearchPageGuard.prototype.canActivate = function (route, state) { - var filter = route.params.filter; - var newTitle = route.data.title + filter + '.title'; - route.data = { title: newTitle }; - return true; - }; - FilteredSearchPageGuard = tslib_1.__decorate([ - Injectable() - /** - * Assemble the correct i18n key for the filtered search page's title depending on the current route's filter parameter - * and title data. - * The format of the key will be "{title}{filter}.title" with: - * - title: The prefix of the key stored in route.data - * - filter: The current filter stored in route.params - */ - ], FilteredSearchPageGuard); - return FilteredSearchPageGuard; -}()); -export { FilteredSearchPageGuard }; -//# sourceMappingURL=filtered-search-page.guard.js.map \ No newline at end of file diff --git a/src/app/+search-page/filtered-search-page.guard.js.map b/src/app/+search-page/filtered-search-page.guard.js.map deleted file mode 100644 index 8d79db77c6..0000000000 --- a/src/app/+search-page/filtered-search-page.guard.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"filtered-search-page.guard.js","sourceRoot":"","sources":["filtered-search-page.guard.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAY3C;IAPA;;;;;;OAMG;IACH;IAWA,CAAC;IAVC,6CAAW,GAAX,UACE,KAA6B,EAC7B,KAA0B;QAC1B,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAEnC,IAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;QAEtD,KAAK,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAVU,uBAAuB;QARnC,UAAU,EAAE;QACb;;;;;;WAMG;OACU,uBAAuB,CAWnC;IAAD,8BAAC;CAAA,AAXD,IAWC;SAXY,uBAAuB"} \ No newline at end of file diff --git a/src/app/+search-page/normalized-search-result.model.js b/src/app/+search-page/normalized-search-result.model.js deleted file mode 100644 index e2eb112dcc..0000000000 --- a/src/app/+search-page/normalized-search-result.model.js +++ /dev/null @@ -1,21 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize } from 'cerialize'; -import { MetadataMap } from '../core/shared/metadata.models'; -/** - * Represents a normalized version of a search result object of a certain DSpaceObject - */ -var NormalizedSearchResult = /** @class */ (function () { - function NormalizedSearchResult() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedSearchResult.prototype, "indexableObject", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", MetadataMap) - ], NormalizedSearchResult.prototype, "hitHighlights", void 0); - return NormalizedSearchResult; -}()); -export { NormalizedSearchResult }; -//# sourceMappingURL=normalized-search-result.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/normalized-search-result.model.js.map b/src/app/+search-page/normalized-search-result.model.js.map deleted file mode 100644 index 93ab151537..0000000000 --- a/src/app/+search-page/normalized-search-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-search-result.model.js","sourceRoot":"","sources":["normalized-search-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAmB,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAG7D;;GAEG;AACH;IAAA;IAaA,CAAC;IARC;QADC,aAAa;;mEACU;IAMxB;QADC,aAAa;0CACC,WAAW;iEAAC;IAE7B,6BAAC;CAAA,AAbD,IAaC;SAbY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+search-page/paginated-search-options.model.js b/src/app/+search-page/paginated-search-options.model.js deleted file mode 100644 index 1fb02b758b..0000000000 --- a/src/app/+search-page/paginated-search-options.model.js +++ /dev/null @@ -1,35 +0,0 @@ -import * as tslib_1 from "tslib"; -import { isNotEmpty } from '../shared/empty.util'; -import { SearchOptions } from './search-options.model'; -/** - * This model class represents all parameters needed to request information about a certain page of a search request, in a certain order - */ -var PaginatedSearchOptions = /** @class */ (function (_super) { - tslib_1.__extends(PaginatedSearchOptions, _super); - function PaginatedSearchOptions(options) { - var _this = _super.call(this, options) || this; - _this.pagination = options.pagination; - _this.sort = options.sort; - return _this; - } - /** - * Method to generate the URL that can be used to request a certain page with specific sort options - * @param {string} url The URL to the REST endpoint - * @param {string[]} args A list of query arguments that should be included in the URL - * @returns {string} URL with all paginated search options and passed arguments as query parameters - */ - PaginatedSearchOptions.prototype.toRestUrl = function (url, args) { - if (args === void 0) { args = []; } - if (isNotEmpty(this.sort)) { - args.push("sort=" + this.sort.field + "," + this.sort.direction); - } - if (isNotEmpty(this.pagination)) { - args.push("page=" + (this.pagination.currentPage - 1)); - args.push("size=" + this.pagination.pageSize); - } - return _super.prototype.toRestUrl.call(this, url, args); - }; - return PaginatedSearchOptions; -}(SearchOptions)); -export { PaginatedSearchOptions }; -//# sourceMappingURL=paginated-search-options.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/paginated-search-options.model.js.map b/src/app/+search-page/paginated-search-options.model.js.map deleted file mode 100644 index 0f76a75ef4..0000000000 --- a/src/app/+search-page/paginated-search-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"paginated-search-options.model.js","sourceRoot":"","sources":["paginated-search-options.model.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAIvD;;GAEG;AACH;IAA4C,kDAAa;IAIvD,gCAAY,OAAuM;QAAnN,YACE,kBAAM,OAAO,CAAC,SAGf;QAFC,KAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,KAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;;IAC3B,CAAC;IAED;;;;;OAKG;IACH,0CAAS,GAAT,UAAU,GAAW,EAAE,IAAmB;QAAnB,qBAAA,EAAA,SAAmB;QACxC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACzB,IAAI,CAAC,IAAI,CAAC,UAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,SAAI,IAAI,CAAC,IAAI,CAAC,SAAW,CAAC,CAAC;SAC7D;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,WAAQ,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,CAAC,CAAE,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,CAAC,UAAQ,IAAI,CAAC,UAAU,CAAC,QAAU,CAAC,CAAC;SAC/C;QACD,OAAO,iBAAM,SAAS,YAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IACH,6BAAC;AAAD,CAAC,AA1BD,CAA4C,aAAa,GA0BxD"} \ No newline at end of file diff --git a/src/app/+search-page/search-filter.model.js b/src/app/+search-page/search-filter.model.js deleted file mode 100644 index 09d992cdda..0000000000 --- a/src/app/+search-page/search-filter.model.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Represents a search filter - */ -import { hasValue } from '../shared/empty.util'; -var SearchFilter = /** @class */ (function () { - function SearchFilter(key, values, operator) { - this.key = key; - this.values = values; - if (hasValue(operator)) { - this.operator = operator; - } - else { - this.operator = 'query'; - } - } - return SearchFilter; -}()); -export { SearchFilter }; -//# sourceMappingURL=search-filter.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filter.model.js.map b/src/app/+search-page/search-filter.model.js.map deleted file mode 100644 index 3ea619f211..0000000000 --- a/src/app/+search-page/search-filter.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-filter.model.js","sourceRoot":"","sources":["search-filter.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;IAKE,sBAAY,GAAW,EAAE,MAAgB,EAAE,QAAiB;QAC1D,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;SACzB;IACH,CAAC;IACH,mBAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js deleted file mode 100644 index c60af10c9d..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js +++ /dev/null @@ -1,41 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { FilterType } from '../../../search-service/filter-type.model'; -import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; -import { renderFacetFor } from '../search-filter-type-decorator'; -var SearchAuthorityFilterComponent = /** @class */ (function (_super) { - tslib_1.__extends(SearchAuthorityFilterComponent, _super); - function SearchAuthorityFilterComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - /** - * TODO to review after https://github.com/DSpace/dspace-angular/issues/368 is resolved - * Retrieve facet value from search link - */ - SearchAuthorityFilterComponent.prototype.getFacetValue = function (facet) { - var search = facet.search; - var hashes = search.slice(search.indexOf('?') + 1).split('&'); - var params = {}; - hashes.map(function (hash) { - var _a = hash.split('='), key = _a[0], val = _a[1]; - params[key] = decodeURIComponent(val); - }); - return params[this.filterConfig.paramName]; - }; - SearchAuthorityFilterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-authority-filter', - styleUrls: ['./search-authority-filter.component.scss'], - templateUrl: './search-authority-filter.component.html', - animations: [facetLoad] - }) - /** - * Component that represents an authority facet for a specific filter configuration - */ - , - renderFacetFor(FilterType.authority) - ], SearchAuthorityFilterComponent); - return SearchAuthorityFilterComponent; -}(SearchFacetFilterComponent)); -export { SearchAuthorityFilterComponent }; -//# sourceMappingURL=search-authority-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js.map deleted file mode 100644 index dece0f17bf..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-authority-filter/search-authority-filter.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-authority-filter.component.js","sourceRoot":"","sources":["search-authority-filter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AAC7G,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAcjE;IAAoD,0DAA0B;IAA9E;;IAiBA,CAAC;IAfC;;;OAGG;IACO,sDAAa,GAAvB,UAAwB,KAAiB;QACvC,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChE,IAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,UAAC,IAAI;YACR,IAAA,oBAA4B,EAA3B,WAAG,EAAE,WAAG,CAAoB;YACnC,MAAM,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAhBU,8BAA8B;QAX1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,SAAS,EAAE,CAAC,0CAA0C,CAAC;YACvD,WAAW,EAAE,0CAA0C;YACvD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QAEF;;WAEG;;QACF,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC;OACxB,8BAA8B,CAiB1C;IAAD,qCAAC;CAAA,AAjBD,CAAoD,0BAA0B,GAiB7E;SAjBY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js deleted file mode 100644 index 13c8bf6667..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { FilterType } from '../../../search-service/filter-type.model'; -import { renderFacetFor } from '../search-filter-type-decorator'; -import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; -var SearchBooleanFilterComponent = /** @class */ (function (_super) { - tslib_1.__extends(SearchBooleanFilterComponent, _super); - function SearchBooleanFilterComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - SearchBooleanFilterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-boolean-filter', - styleUrls: ['./search-boolean-filter.component.scss'], - templateUrl: './search-boolean-filter.component.html', - animations: [facetLoad] - }) - /** - * Component that represents a boolean facet for a specific filter configuration - */ - , - renderFacetFor(FilterType.boolean) - ], SearchBooleanFilterComponent); - return SearchBooleanFilterComponent; -}(SearchFacetFilterComponent)); -export { SearchBooleanFilterComponent }; -//# sourceMappingURL=search-boolean-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js.map deleted file mode 100644 index 7f1313439a..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-boolean-filter/search-boolean-filter.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-boolean-filter.component.js","sourceRoot":"","sources":["search-boolean-filter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,SAAS,EACT,0BAA0B,EAC3B,MAAM,sDAAsD,CAAC;AAa9D;IAAkD,wDAA0B;IAA5E;;IACA,CAAC;IADY,4BAA4B;QAXxC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;YACrD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QAEF;;WAEG;;QACF,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC;OACtB,4BAA4B,CACxC;IAAD,mCAAC;CAAA,AADD,CAAkD,0BAA0B,GAC3E;SADY,4BAA4B"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js deleted file mode 100644 index df9ea204fd..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js +++ /dev/null @@ -1,119 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest, Observable } from 'rxjs'; -import { map } from 'rxjs/operators'; -import { Component, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { FacetValue } from '../../../../search-service/facet-value.model'; -import { SearchFilterConfig } from '../../../../search-service/search-filter-config.model'; -import { SearchService } from '../../../../search-service/search.service'; -import { SearchFilterService } from '../../search-filter.service'; -import { SearchConfigurationService } from '../../../../search-service/search-configuration.service'; -import { hasValue } from '../../../../../shared/empty.util'; -import { FilterType } from '../../../../search-service/filter-type.model'; -var SearchFacetOptionComponent = /** @class */ (function () { - function SearchFacetOptionComponent(searchService, filterService, searchConfigService, router) { - this.searchService = searchService; - this.filterService = filterService; - this.searchConfigService = searchConfigService; - this.router = router; - } - /** - * Initializes all observable instance variables and starts listening to them - */ - SearchFacetOptionComponent.prototype.ngOnInit = function () { - var _this = this; - this.isVisible = this.isChecked().pipe(map(function (checked) { return !checked; })); - this.sub = observableCombineLatest(this.selectedValues$, this.searchConfigService.searchOptions) - .subscribe(function (_a) { - var selectedValues = _a[0], searchOptions = _a[1]; - _this.updateAddParams(selectedValues); - }); - }; - /** - * Checks if a value for this filter is currently active - */ - SearchFacetOptionComponent.prototype.isChecked = function () { - return this.filterService.isFilterActiveWithValue(this.filterConfig.paramName, this.getFacetValue()); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchFacetOptionComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.searchService.getSearchLink(); - }; - /** - * Calculates the parameters that should change if a given value for this filter would be added to the active filters - * @param {string[]} selectedValues The values that are currently selected for this filter - */ - SearchFacetOptionComponent.prototype.updateAddParams = function (selectedValues) { - var _a; - this.addQueryParams = (_a = {}, - _a[this.filterConfig.paramName] = selectedValues.map(function (facetValue) { return facetValue.label; }).concat([this.getFacetValue()]), - _a.page = 1, - _a); - }; - /** - * TODO to review after https://github.com/DSpace/dspace-angular/issues/368 is resolved - * Retrieve facet value related to facet type - */ - SearchFacetOptionComponent.prototype.getFacetValue = function () { - if (this.filterConfig.type === FilterType.authority) { - var search = this.filterValue.search; - var hashes = search.slice(search.indexOf('?') + 1).split('&'); - var params_1 = {}; - hashes.map(function (hash) { - var _a = hash.split('='), key = _a[0], val = _a[1]; - params_1[key] = decodeURIComponent(val); - }); - return params_1[this.filterConfig.paramName]; - } - else { - return this.filterValue.value; - } - }; - /** - * Make sure the subscription is unsubscribed from when this component is destroyed - */ - SearchFacetOptionComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FacetValue) - ], SearchFacetOptionComponent.prototype, "filterValue", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SearchFilterConfig) - ], SearchFacetOptionComponent.prototype, "filterConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Observable) - ], SearchFacetOptionComponent.prototype, "selectedValues$", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchFacetOptionComponent.prototype, "inPlaceSearch", void 0); - SearchFacetOptionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-facet-option', - styleUrls: ['./search-facet-option.component.scss'], - templateUrl: './search-facet-option.component.html', - }) - /** - * Represents a single option in a filter facet - */ - , - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchFilterService, - SearchConfigurationService, - Router]) - ], SearchFacetOptionComponent); - return SearchFacetOptionComponent; -}()); -export { SearchFacetOptionComponent }; -//# sourceMappingURL=search-facet-option.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js.map deleted file mode 100644 index 7288ceb481..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-facet-option.component.js","sourceRoot":"","sources":["search-facet-option.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,UAAU,EAAgB,MAAM,MAAM,CAAC;AAC1F,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uDAAuD,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAC;AACrG,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAC;AAW1E;IAoCE,oCAAsB,aAA4B,EAC5B,aAAkC,EAClC,mBAA+C,EAC/C,MAAc;QAHd,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAqB;QAClC,wBAAmB,GAAnB,mBAAmB,CAA4B;QAC/C,WAAM,GAAN,MAAM,CAAQ;IAEpC,CAAC;IAED;;OAEG;IACH,6CAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,OAAgB,IAAK,OAAA,CAAC,OAAO,EAAR,CAAQ,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,GAAG,GAAG,uBAAuB,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC;aAC7F,SAAS,CAAC,UAAC,EAA+B;gBAA9B,sBAAc,EAAE,qBAAa;YACxC,KAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAA;QACtC,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,8CAAS,GAAjB;QACE,OAAO,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IACvG,CAAC;IAED;;OAEG;IACI,kDAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACK,oDAAe,GAAvB,UAAwB,cAA4B;;QAClD,IAAI,CAAC,cAAc;YACjB,GAAC,IAAI,CAAC,YAAY,CAAC,SAAS,IAAO,cAAc,CAAC,GAAG,CAAC,UAAC,UAAsB,IAAK,OAAA,UAAU,CAAC,KAAK,EAAhB,CAAgB,CAAC,SAAE,IAAI,CAAC,aAAa,EAAE,EAAC;YAC1H,OAAI,GAAE,CAAC;eACR,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,kDAAa,GAArB;QACE,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,UAAU,CAAC,SAAS,EAAE;YACnD,IAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACvC,IAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAChE,IAAM,QAAM,GAAG,EAAE,CAAC;YAClB,MAAM,CAAC,GAAG,CAAC,UAAC,IAAI;gBACR,IAAA,oBAA4B,EAA3B,WAAG,EAAE,WAAG,CAAoB;gBACnC,QAAM,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;YACvC,CAAC,CAAC,CAAC;YAEH,OAAO,QAAM,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;SAC5C;aAAM;YACL,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;SAC/B;IACH,CAAC;IAED;;OAEG;IACH,gDAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IAzGQ;QAAR,KAAK,EAAE;0CAAc,UAAU;mEAAC;IAKxB;QAAR,KAAK,EAAE;0CAAe,kBAAkB;oEAAC;IAKjC;QAAR,KAAK,EAAE;0CAAkB,UAAU;uEAAe;IAK1C;QAAR,KAAK,EAAE;;qEAAe;IAnBZ,0BAA0B;QATtC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;QAEF;;WAEG;;iDAqCoC,aAAa;YACb,mBAAmB;YACb,0BAA0B;YACvC,MAAM;OAvCzB,0BAA0B,CA8GtC;IAAD,iCAAC;CAAA,AA9GD,IA8GC;SA9GY,0BAA0B"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js deleted file mode 100644 index 96439ed56f..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js +++ /dev/null @@ -1,97 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map } from 'rxjs/operators'; -import { Component, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { FacetValue } from '../../../../search-service/facet-value.model'; -import { SearchFilterConfig } from '../../../../search-service/search-filter-config.model'; -import { SearchService } from '../../../../search-service/search.service'; -import { SearchFilterService } from '../../search-filter.service'; -import { RANGE_FILTER_MAX_SUFFIX, RANGE_FILTER_MIN_SUFFIX } from '../../search-range-filter/search-range-filter.component'; -import { SearchConfigurationService } from '../../../../search-service/search-configuration.service'; -import { hasValue } from '../../../../../shared/empty.util'; -var rangeDelimiter = '-'; -var SearchFacetRangeOptionComponent = /** @class */ (function () { - function SearchFacetRangeOptionComponent(searchService, filterService, searchConfigService, router) { - this.searchService = searchService; - this.filterService = filterService; - this.searchConfigService = searchConfigService; - this.router = router; - } - /** - * Initializes all observable instance variables and starts listening to them - */ - SearchFacetRangeOptionComponent.prototype.ngOnInit = function () { - var _this = this; - this.isVisible = this.isChecked().pipe(map(function (checked) { return !checked; })); - this.sub = this.searchConfigService.searchOptions.subscribe(function () { - _this.updateChangeParams(); - }); - }; - /** - * Checks if a value for this filter is currently active - */ - SearchFacetRangeOptionComponent.prototype.isChecked = function () { - return this.filterService.isFilterActiveWithValue(this.filterConfig.paramName, this.filterValue.value); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchFacetRangeOptionComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.searchService.getSearchLink(); - }; - /** - * Calculates the parameters that should change if a given values for this range filter would be changed - */ - SearchFacetRangeOptionComponent.prototype.updateChangeParams = function () { - var _a; - var parts = this.filterValue.value.split(rangeDelimiter); - var min = parts.length > 1 ? parts[0].trim() : this.filterValue.value; - var max = parts.length > 1 ? parts[1].trim() : this.filterValue.value; - this.changeQueryParams = (_a = {}, - _a[this.filterConfig.paramName + RANGE_FILTER_MIN_SUFFIX] = [min], - _a[this.filterConfig.paramName + RANGE_FILTER_MAX_SUFFIX] = [max], - _a.page = 1, - _a); - }; - /** - * Make sure the subscription is unsubscribed from when this component is destroyed - */ - SearchFacetRangeOptionComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FacetValue) - ], SearchFacetRangeOptionComponent.prototype, "filterValue", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SearchFilterConfig) - ], SearchFacetRangeOptionComponent.prototype, "filterConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchFacetRangeOptionComponent.prototype, "inPlaceSearch", void 0); - SearchFacetRangeOptionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-facet-range-option', - styleUrls: ['./search-facet-range-option.component.scss'], - templateUrl: './search-facet-range-option.component.html', - }) - /** - * Represents a single option in a range filter facet - */ - , - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchFilterService, - SearchConfigurationService, - Router]) - ], SearchFacetRangeOptionComponent); - return SearchFacetRangeOptionComponent; -}()); -export { SearchFacetRangeOptionComponent }; -//# sourceMappingURL=search-facet-range-option.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js.map deleted file mode 100644 index 1be8dad372..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-facet-range-option.component.js","sourceRoot":"","sources":["search-facet-range-option.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js deleted file mode 100644 index 4696e08d7f..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js +++ /dev/null @@ -1,114 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest, Observable } from 'rxjs'; -import { Component, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { SearchFilterConfig } from '../../../../search-service/search-filter-config.model'; -import { SearchService } from '../../../../search-service/search.service'; -import { SearchFilterService } from '../../search-filter.service'; -import { hasValue } from '../../../../../shared/empty.util'; -import { SearchConfigurationService } from '../../../../search-service/search-configuration.service'; -import { FacetValue } from '../../../../search-service/facet-value.model'; -import { FilterType } from '../../../../search-service/filter-type.model'; -var SearchFacetSelectedOptionComponent = /** @class */ (function () { - function SearchFacetSelectedOptionComponent(searchService, filterService, searchConfigService, router) { - this.searchService = searchService; - this.filterService = filterService; - this.searchConfigService = searchConfigService; - this.router = router; - } - /** - * Initializes all observable instance variables and starts listening to them - */ - SearchFacetSelectedOptionComponent.prototype.ngOnInit = function () { - var _this = this; - this.sub = observableCombineLatest(this.selectedValues$, this.searchConfigService.searchOptions) - .subscribe(function (_a) { - var selectedValues = _a[0], searchOptions = _a[1]; - _this.updateRemoveParams(selectedValues); - }); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchFacetSelectedOptionComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.searchService.getSearchLink(); - }; - /** - * Calculates the parameters that should change if a given value for this filter would be removed from the active filters - * @param {string[]} selectedValues The values that are currently selected for this filter - */ - SearchFacetSelectedOptionComponent.prototype.updateRemoveParams = function (selectedValues) { - var _this = this; - var _a; - this.removeQueryParams = (_a = {}, - _a[this.filterConfig.paramName] = selectedValues - .filter(function (facetValue) { return facetValue.label !== _this.selectedValue.label; }) - .map(function (facetValue) { return _this.getFacetValue(facetValue); }), - _a.page = 1, - _a); - }; - /** - * TODO to review after https://github.com/DSpace/dspace-angular/issues/368 is resolved - * Retrieve facet value related to facet type - */ - SearchFacetSelectedOptionComponent.prototype.getFacetValue = function (facetValue) { - if (this.filterConfig.type === FilterType.authority) { - var search = facetValue.search; - var hashes = search.slice(search.indexOf('?') + 1).split('&'); - var params_1 = {}; - hashes.map(function (hash) { - var _a = hash.split('='), key = _a[0], val = _a[1]; - params_1[key] = decodeURIComponent(val); - }); - return params_1[this.filterConfig.paramName]; - } - else { - return facetValue.value; - } - }; - /** - * Make sure the subscription is unsubscribed from when this component is destroyed - */ - SearchFacetSelectedOptionComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FacetValue) - ], SearchFacetSelectedOptionComponent.prototype, "selectedValue", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SearchFilterConfig) - ], SearchFacetSelectedOptionComponent.prototype, "filterConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Observable) - ], SearchFacetSelectedOptionComponent.prototype, "selectedValues$", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchFacetSelectedOptionComponent.prototype, "inPlaceSearch", void 0); - SearchFacetSelectedOptionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-facet-selected-option', - styleUrls: ['./search-facet-selected-option.component.scss'], - templateUrl: './search-facet-selected-option.component.html', - }) - /** - * Represents a single selected option in a filter facet - */ - , - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchFilterService, - SearchConfigurationService, - Router]) - ], SearchFacetSelectedOptionComponent); - return SearchFacetSelectedOptionComponent; -}()); -export { SearchFacetSelectedOptionComponent }; -//# sourceMappingURL=search-facet-selected-option.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js.map deleted file mode 100644 index c4abc53a8f..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-facet-selected-option.component.js","sourceRoot":"","sources":["search-facet-selected-option.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js deleted file mode 100644 index 4568cd59d5..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js +++ /dev/null @@ -1,53 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { renderFilterType } from '../search-filter-type-decorator'; -import { SearchFilterConfig } from '../../../search-service/search-filter-config.model'; -import { FILTER_CONFIG, IN_PLACE_SEARCH } from '../search-filter.service'; -var SearchFacetFilterWrapperComponent = /** @class */ (function () { - function SearchFacetFilterWrapperComponent(injector) { - this.injector = injector; - } - /** - * Initialize and add the filter config to the injector - */ - SearchFacetFilterWrapperComponent.prototype.ngOnInit = function () { - var _this = this; - this.searchFilter = this.getSearchFilter(); - this.objectInjector = Injector.create({ - providers: [ - { provide: FILTER_CONFIG, useFactory: function () { return (_this.filterConfig); }, deps: [] }, - { provide: IN_PLACE_SEARCH, useFactory: function () { return (_this.inPlaceSearch); }, deps: [] } - ], - parent: this.injector - }); - }; - /** - * Find the correct component based on the filter config's type - */ - SearchFacetFilterWrapperComponent.prototype.getSearchFilter = function () { - var type = this.filterConfig.type; - return renderFilterType(type); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SearchFilterConfig) - ], SearchFacetFilterWrapperComponent.prototype, "filterConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchFacetFilterWrapperComponent.prototype, "inPlaceSearch", void 0); - SearchFacetFilterWrapperComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-facet-filter-wrapper', - templateUrl: './search-facet-filter-wrapper.component.html' - }) - /** - * Wrapper component that renders a specific facet filter based on the filter config's type - */ - , - tslib_1.__metadata("design:paramtypes", [Injector]) - ], SearchFacetFilterWrapperComponent); - return SearchFacetFilterWrapperComponent; -}()); -export { SearchFacetFilterWrapperComponent }; -//# sourceMappingURL=search-facet-filter-wrapper.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js.map deleted file mode 100644 index 3a9d5693bf..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-facet-filter-wrapper.component.js","sourceRoot":"","sources":["search-facet-filter-wrapper.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAY1E;IAoBE,2CAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtC,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR;QAAA,iBASC;QARC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,YAAY,CAAC,EAAnB,CAAmB,EAAE,IAAI,EAAE,EAAE,EAAE;gBAC3E,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,aAAa,CAAC,EAApB,CAAoB,EAAE,IAAI,EAAE,EAAE,EAAE;aAC/E;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,2DAAe,GAAvB;QACE,IAAM,IAAI,GAAe,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QAChD,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAvCQ;QAAR,KAAK,EAAE;0CAAe,kBAAkB;2EAAC;IAKjC;QAAR,KAAK,EAAE;;4EAAe;IATZ,iCAAiC;QAR7C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,WAAW,EAAE,8CAA8C;SAC5D,CAAC;QAEF;;WAEG;;iDAqB6B,QAAQ;OApB3B,iCAAiC,CA4C7C;IAAD,wCAAC;CAAA,AA5CD,IA4CC;SA5CY,iCAAiC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js deleted file mode 100644 index b81b89113b..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js +++ /dev/null @@ -1,268 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest, of as observableOf, BehaviorSubject } from 'rxjs'; -import { switchMap, distinctUntilChanged, map, take, tap } from 'rxjs/operators'; -import { animate, state, style, transition, trigger } from '@angular/animations'; -import { Component, Inject } from '@angular/core'; -import { Router } from '@angular/router'; -import { RemoteDataBuildService } from '../../../../core/cache/builders/remote-data-build.service'; -import { RemoteData } from '../../../../core/data/remote-data'; -import { hasNoValue, hasValue, isNotEmpty } from '../../../../shared/empty.util'; -import { EmphasizePipe } from '../../../../shared/utils/emphasize.pipe'; -import { FacetValue } from '../../../search-service/facet-value.model'; -import { SearchFilterConfig } from '../../../search-service/search-filter-config.model'; -import { SearchService } from '../../../search-service/search.service'; -import { FILTER_CONFIG, IN_PLACE_SEARCH, SearchFilterService } from '../search-filter.service'; -import { SearchConfigurationService } from '../../../search-service/search-configuration.service'; -import { getSucceededRemoteData } from '../../../../core/shared/operators'; -import { SEARCH_CONFIG_SERVICE } from '../../../../+my-dspace-page/my-dspace-page.component'; -var SearchFacetFilterComponent = /** @class */ (function () { - function SearchFacetFilterComponent(searchService, filterService, rdbs, router, searchConfigService, inPlaceSearch, filterConfig) { - this.searchService = searchService; - this.filterService = filterService; - this.rdbs = rdbs; - this.router = router; - this.searchConfigService = searchConfigService; - this.inPlaceSearch = inPlaceSearch; - this.filterConfig = filterConfig; - /** - * Emits true if the current page is also the last page available - */ - this.isLastPage$ = new BehaviorSubject(false); - /** - * List of subscriptions to unsubscribe from - */ - this.subs = []; - /** - * Emits the result values for this filter found by the current filter query - */ - this.filterSearchResults = observableOf([]); - this.collapseNextUpdate = true; - /** - * State of the requested facets used to time the animation - */ - this.animationState = 'loading'; - } - /** - * Initializes all observable instance variables and starts listening to them - */ - SearchFacetFilterComponent.prototype.ngOnInit = function () { - var _this = this; - this.filterValues$ = new BehaviorSubject(new RemoteData(true, false, undefined, undefined, undefined)); - this.currentPage = this.getCurrentPage().pipe(distinctUntilChanged()); - this.searchOptions$ = this.searchConfigService.searchOptions; - this.subs.push(this.searchOptions$.subscribe(function () { return _this.updateFilterValueList(); })); - var facetValues$ = observableCombineLatest(this.searchOptions$, this.currentPage).pipe(map(function (_a) { - var options = _a[0], page = _a[1]; - return { options: options, page: page }; - }), switchMap(function (_a) { - var options = _a.options, page = _a.page; - return _this.searchService.getFacetValuesFor(_this.filterConfig, page, options) - .pipe(getSucceededRemoteData(), map(function (results) { - return { - values: observableOf(results), - page: page - }; - })); - })); - var filterValues = []; - this.subs.push(facetValues$.subscribe(function (facetOutcome) { - var newValues$ = facetOutcome.values; - if (_this.collapseNextUpdate) { - _this.showFirstPageOnly(); - facetOutcome.page = 1; - _this.collapseNextUpdate = false; - } - if (facetOutcome.page === 1) { - filterValues = []; - } - filterValues = filterValues.concat([newValues$]); - _this.subs.push(_this.rdbs.aggregate(filterValues).pipe(tap(function (rd) { - _this.selectedValues$ = _this.filterService.getSelectedValuesForFilter(_this.filterConfig).pipe(map(function (selectedValues) { - return selectedValues.map(function (value) { - var fValue = [].concat.apply([], rd.payload.map(function (page) { return page.page; })).find(function (facetValue) { return facetValue.value === value; }); - if (hasValue(fValue)) { - return fValue; - } - return Object.assign(new FacetValue(), { label: value, value: value }); - }); - })); - })).subscribe(function (rd) { - _this.animationState = 'ready'; - _this.filterValues$.next(rd); - })); - _this.subs.push(newValues$.pipe(take(1)).subscribe(function (rd) { - _this.isLastPage$.next(hasNoValue(rd.payload.next)); - })); - })); - }; - /** - * Prepare for refreshing the values of this filter - */ - SearchFacetFilterComponent.prototype.updateFilterValueList = function () { - this.animationState = 'loading'; - this.collapseNextUpdate = true; - this.filter = ''; - }; - /** - * Checks if a value for this filter is currently active - */ - SearchFacetFilterComponent.prototype.isChecked = function (value) { - return this.filterService.isFilterActiveWithValue(this.filterConfig.paramName, value.value); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchFacetFilterComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.searchService.getSearchLink(); - }; - /** - * @returns {string[]} The base path to the search page, or the current page when inPlaceSearch is true, split in separate pieces - */ - SearchFacetFilterComponent.prototype.getSearchLinkParts = function () { - if (this.inPlaceSearch) { - return []; - } - return this.getSearchLink().split('/'); - }; - /** - * Show the next page as well - */ - SearchFacetFilterComponent.prototype.showMore = function () { - this.filterService.incrementPage(this.filterConfig.name); - }; - /** - * Make sure only the first page is shown - */ - SearchFacetFilterComponent.prototype.showFirstPageOnly = function () { - this.filterService.resetPage(this.filterConfig.name); - }; - /** - * @returns {Observable} The current page of this filter - */ - SearchFacetFilterComponent.prototype.getCurrentPage = function () { - return this.filterService.getPage(this.filterConfig.name); - }; - /** - * @returns {string} the current URL - */ - SearchFacetFilterComponent.prototype.getCurrentUrl = function () { - return this.router.url; - }; - /** - * Submits a new active custom value to the filter from the input field - * @param data The string from the input field - */ - SearchFacetFilterComponent.prototype.onSubmit = function (data) { - var _this = this; - this.selectedValues$.pipe(take(1)).subscribe(function (selectedValues) { - var _a; - if (isNotEmpty(data)) { - _this.router.navigate(_this.getSearchLinkParts(), { - queryParams: (_a = {}, - _a[_this.filterConfig.paramName] = selectedValues.map(function (facet) { return _this.getFacetValue(facet); }).concat([ - data - ]), - _a), - queryParamsHandling: 'merge' - }); - _this.filter = ''; - } - _this.filterSearchResults = observableOf([]); - }); - }; - /** - * On click, set the input's value to the clicked data - * @param data The value of the option that was clicked - */ - SearchFacetFilterComponent.prototype.onClick = function (data) { - this.filter = data; - }; - /** - * For usage of the hasValue function in the template - */ - SearchFacetFilterComponent.prototype.hasValue = function (o) { - return hasValue(o); - }; - /** - * Unsubscribe from all subscriptions - */ - SearchFacetFilterComponent.prototype.ngOnDestroy = function () { - this.subs - .filter(function (sub) { return hasValue(sub); }) - .forEach(function (sub) { return sub.unsubscribe(); }); - }; - /** - * Updates the found facet value suggestions for a given query - * Transforms the found values into display values - * @param data The query for which is being searched - */ - SearchFacetFilterComponent.prototype.findSuggestions = function (data) { - var _this = this; - if (isNotEmpty(data)) { - this.searchOptions$.pipe(take(1)).subscribe(function (options) { - _this.filterSearchResults = _this.searchService.getFacetValuesFor(_this.filterConfig, 1, options, data.toLowerCase()) - .pipe(getSucceededRemoteData(), map(function (rd) { - return rd.payload.page.map(function (facet) { - return { - displayValue: _this.getDisplayValue(facet, data), - value: _this.getFacetValue(facet) - }; - }); - })); - }); - } - else { - this.filterSearchResults = observableOf([]); - } - }; - /** - * Retrieve facet value - */ - SearchFacetFilterComponent.prototype.getFacetValue = function (facet) { - return facet.value; - }; - /** - * Transforms the facet value string, so if the query matches part of the value, it's emphasized in the value - * @param {FacetValue} facet The value of the facet as returned by the server - * @param {string} query The query that was used to search facet values - * @returns {string} The facet value with the query part emphasized - */ - SearchFacetFilterComponent.prototype.getDisplayValue = function (facet, query) { - return new EmphasizePipe().transform(facet.value, query) + ' (' + facet.count + ')'; - }; - /** - * Prevent unnecessary rerendering - */ - SearchFacetFilterComponent.prototype.trackUpdate = function (index, value) { - return value ? value.search : undefined; - }; - SearchFacetFilterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-facet-filter', - template: "", - }) - /** - * Super class for all different representations of facets - */ - , - tslib_1.__param(4, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__param(5, Inject(IN_PLACE_SEARCH)), - tslib_1.__param(6, Inject(FILTER_CONFIG)), - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchFilterService, - RemoteDataBuildService, - Router, - SearchConfigurationService, Boolean, SearchFilterConfig]) - ], SearchFacetFilterComponent); - return SearchFacetFilterComponent; -}()); -export { SearchFacetFilterComponent }; -export var facetLoad = trigger('facetLoad', [ - state('ready', style({ opacity: 1 })), - state('loading', style({ opacity: 0 })), - transition('loading <=> ready', animate(100)), -]); -//# sourceMappingURL=search-facet-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js.map deleted file mode 100644 index bdc01cd6f9..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-facet-filter.component.js","sourceRoot":"","sources":["search-facet-filter.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js b/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js deleted file mode 100644 index 93c6385690..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Contains the mapping between a facet component and a FilterType - */ -var filterTypeMap = new Map(); -/** - * Sets the mapping for a facet component in relation to a filter type - * @param {FilterType} type The type for which the matching component is mapped - * @returns Decorator function that performs the actual mapping on initialization of the facet component - */ -export function renderFacetFor(type) { - return function decorator(objectElement) { - if (!objectElement) { - return; - } - filterTypeMap.set(type, objectElement); - }; -} -/** - * Requests the matching facet component based on a given filter type - * @param {FilterType} type The filter type for which the facet component is requested - * @returns The facet component's constructor that matches the given filter type - */ -export function renderFilterType(type) { - return filterTypeMap.get(type); -} -//# sourceMappingURL=search-filter-type-decorator.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js.map b/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js.map deleted file mode 100644 index 8158a42178..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter-type-decorator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-filter-type-decorator.js","sourceRoot":"","sources":["search-filter-type-decorator.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,IAAM,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;AAEhC;;;;GAIG;AACH,MAAM,yBAAyB,IAAgB;IAC7C,OAAO,mBAAmB,aAAkB;QAC1C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,2BAA2B,IAAgB;IAC/C,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.actions.js b/src/app/+search-page/search-filters/search-filter/search-filter.actions.js deleted file mode 100644 index e71accb843..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter.actions.js +++ /dev/null @@ -1,125 +0,0 @@ -import * as tslib_1 from "tslib"; -import { type } from '../../../shared/ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var SearchFilterActionTypes = { - COLLAPSE: type('dspace/search-filter/COLLAPSE'), - INITIALIZE: type('dspace/search-filter/INITIALIZE'), - EXPAND: type('dspace/search-filter/EXPAND'), - TOGGLE: type('dspace/search-filter/TOGGLE'), - DECREMENT_PAGE: type('dspace/search-filter/DECREMENT_PAGE'), - INCREMENT_PAGE: type('dspace/search-filter/INCREMENT_PAGE'), - RESET_PAGE: type('dspace/search-filter/RESET_PAGE') -}; -var SearchFilterAction = /** @class */ (function () { - /** - * Initialize with the filter's name - * @param {string} name of the filter - */ - function SearchFilterAction(name) { - this.filterName = name; - } - return SearchFilterAction; -}()); -export { SearchFilterAction }; -/* tslint:disable:max-classes-per-file */ -/** - * Used to collapse a filter - */ -var SearchFilterCollapseAction = /** @class */ (function (_super) { - tslib_1.__extends(SearchFilterCollapseAction, _super); - function SearchFilterCollapseAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = SearchFilterActionTypes.COLLAPSE; - return _this; - } - return SearchFilterCollapseAction; -}(SearchFilterAction)); -export { SearchFilterCollapseAction }; -/** - * Used to expand a filter - */ -var SearchFilterExpandAction = /** @class */ (function (_super) { - tslib_1.__extends(SearchFilterExpandAction, _super); - function SearchFilterExpandAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = SearchFilterActionTypes.EXPAND; - return _this; - } - return SearchFilterExpandAction; -}(SearchFilterAction)); -export { SearchFilterExpandAction }; -/** - * Used to collapse a filter when it's expanded and expand it when it's collapsed - */ -var SearchFilterToggleAction = /** @class */ (function (_super) { - tslib_1.__extends(SearchFilterToggleAction, _super); - function SearchFilterToggleAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = SearchFilterActionTypes.TOGGLE; - return _this; - } - return SearchFilterToggleAction; -}(SearchFilterAction)); -export { SearchFilterToggleAction }; -/** - * Used to set the initial state of a filter - */ -var SearchFilterInitializeAction = /** @class */ (function (_super) { - tslib_1.__extends(SearchFilterInitializeAction, _super); - function SearchFilterInitializeAction(filter) { - var _this = _super.call(this, filter.name) || this; - _this.type = SearchFilterActionTypes.INITIALIZE; - _this.initiallyExpanded = filter.isOpenByDefault; - return _this; - } - return SearchFilterInitializeAction; -}(SearchFilterAction)); -export { SearchFilterInitializeAction }; -/** - * Used to set the state of a filter to the previous page - */ -var SearchFilterDecrementPageAction = /** @class */ (function (_super) { - tslib_1.__extends(SearchFilterDecrementPageAction, _super); - function SearchFilterDecrementPageAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = SearchFilterActionTypes.DECREMENT_PAGE; - return _this; - } - return SearchFilterDecrementPageAction; -}(SearchFilterAction)); -export { SearchFilterDecrementPageAction }; -/** - * Used to set the state of a filter to the next page - */ -var SearchFilterIncrementPageAction = /** @class */ (function (_super) { - tslib_1.__extends(SearchFilterIncrementPageAction, _super); - function SearchFilterIncrementPageAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = SearchFilterActionTypes.INCREMENT_PAGE; - return _this; - } - return SearchFilterIncrementPageAction; -}(SearchFilterAction)); -export { SearchFilterIncrementPageAction }; -/** - * Used to set the state of a filter to the first page - */ -var SearchFilterResetPageAction = /** @class */ (function (_super) { - tslib_1.__extends(SearchFilterResetPageAction, _super); - function SearchFilterResetPageAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = SearchFilterActionTypes.RESET_PAGE; - return _this; - } - return SearchFilterResetPageAction; -}(SearchFilterAction)); -export { SearchFilterResetPageAction }; -/* tslint:enable:max-classes-per-file */ -//# sourceMappingURL=search-filter.actions.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.actions.js.map b/src/app/+search-page/search-filters/search-filter/search-filter.actions.js.map deleted file mode 100644 index 93f1be5b65..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-filter.actions.js","sourceRoot":"","sources":["search-filter.actions.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAGjD;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,uBAAuB,GAAG;IACrC,QAAQ,EAAE,IAAI,CAAC,+BAA+B,CAAC;IAC/C,UAAU,EAAE,IAAI,CAAC,iCAAiC,CAAC;IACnD,MAAM,EAAE,IAAI,CAAC,6BAA6B,CAAC;IAC3C,MAAM,EAAE,IAAI,CAAC,6BAA6B,CAAC;IAC3C,cAAc,EAAE,IAAI,CAAC,qCAAqC,CAAC;IAC3D,cAAc,EAAE,IAAI,CAAC,qCAAqC,CAAC;IAC3D,UAAU,EAAE,IAAI,CAAC,iCAAiC,CAAC;CACpD,CAAC;AAEF;IAWE;;;OAGG;IACH,4BAAY,IAAY;QACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;IACH,yBAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED,yCAAyC;AACzC;;GAEG;AACH;IAAgD,sDAAkB;IAAlE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,QAAQ,CAAC;;IAC1C,CAAC;IAAD,iCAAC;AAAD,CAAC,AAFD,CAAgD,kBAAkB,GAEjE;;AAED;;GAEG;AACH;IAA8C,oDAAkB;IAAhE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC;;IACxC,CAAC;IAAD,+BAAC;AAAD,CAAC,AAFD,CAA8C,kBAAkB,GAE/D;;AAED;;GAEG;AACH;IAA8C,oDAAkB;IAAhE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC;;IACxC,CAAC;IAAD,+BAAC;AAAD,CAAC,AAFD,CAA8C,kBAAkB,GAE/D;;AAED;;GAEG;AACH;IAAkD,wDAAkB;IAGlE,sCAAY,MAA0B;QAAtC,YACE,kBAAM,MAAM,CAAC,IAAI,CAAC,SAEnB;QALD,UAAI,GAAG,uBAAuB,CAAC,UAAU,CAAC;QAIxC,KAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,eAAe,CAAC;;IAClD,CAAC;IACH,mCAAC;AAAD,CAAC,AAPD,CAAkD,kBAAkB,GAOnE;;AAED;;GAEG;AACH;IAAqD,2DAAkB;IAAvE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,cAAc,CAAC;;IAChD,CAAC;IAAD,sCAAC;AAAD,CAAC,AAFD,CAAqD,kBAAkB,GAEtE;;AAED;;GAEG;AACH;IAAqD,2DAAkB;IAAvE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,cAAc,CAAC;;IAChD,CAAC;IAAD,sCAAC;AAAD,CAAC,AAFD,CAAqD,kBAAkB,GAEtE;;AAED;;GAEG;AACH;IAAiD,uDAAkB;IAAnE;QAAA,qEAEC;QADC,UAAI,GAAG,uBAAuB,CAAC,UAAU,CAAC;;IAC5C,CAAC;IAAD,kCAAC;AAAD,CAAC,AAFD,CAAiD,kBAAkB,GAElE;;AACD,wCAAwC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-filter.component.js deleted file mode 100644 index c0e2b075b6..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter.component.js +++ /dev/null @@ -1,128 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Input } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { filter, map, startWith, switchMap, take } from 'rxjs/operators'; -import { SearchFilterConfig } from '../../search-service/search-filter-config.model'; -import { SearchFilterService } from './search-filter.service'; -import { slide } from '../../../shared/animations/slide'; -import { isNotEmpty } from '../../../shared/empty.util'; -import { SearchService } from '../../search-service/search.service'; -import { SearchConfigurationService } from '../../search-service/search-configuration.service'; -import { SEARCH_CONFIG_SERVICE } from '../../../+my-dspace-page/my-dspace-page.component'; -var SearchFilterComponent = /** @class */ (function () { - function SearchFilterComponent(filterService, searchService, searchConfigService) { - this.filterService = filterService; - this.searchService = searchService; - this.searchConfigService = searchConfigService; - /** - * True when the filter is 100% collapsed in the UI - */ - this.closed = true; - } - /** - * Requests the current set values for this filter - * If the filter config is open by default OR the filter has at least one value, the filter should be initially expanded - * Else, the filter should initially be collapsed - */ - SearchFilterComponent.prototype.ngOnInit = function () { - var _this = this; - this.selectedValues$ = this.getSelectedValues(); - this.active$ = this.isActive(); - this.collapsed$ = this.isCollapsed(); - this.initializeFilter(); - this.selectedValues$.pipe(take(1)).subscribe(function (selectedValues) { - if (isNotEmpty(selectedValues)) { - _this.filterService.expand(_this.filter.name); - } - }); - }; - /** - * Changes the state for this filter to collapsed when it's expanded and to expanded it when it's collapsed - */ - SearchFilterComponent.prototype.toggle = function () { - this.filterService.toggle(this.filter.name); - }; - /** - * Checks if the filter is currently collapsed - * @returns {Observable} Emits true when the current state of the filter is collapsed, false when it's expanded - */ - SearchFilterComponent.prototype.isCollapsed = function () { - return this.filterService.isCollapsed(this.filter.name); - }; - /** - * Sets the initial state of the filter - */ - SearchFilterComponent.prototype.initializeFilter = function () { - this.filterService.initializeFilter(this.filter); - }; - /** - * @returns {Observable} Emits a list of all values that are currently active for this filter - */ - SearchFilterComponent.prototype.getSelectedValues = function () { - return this.filterService.getSelectedValuesForFilter(this.filter); - }; - /** - * Method to change this.collapsed to false when the slide animation ends and is sliding open - * @param event The animation event - */ - SearchFilterComponent.prototype.finishSlide = function (event) { - if (event.fromState === 'collapsed') { - this.closed = false; - } - }; - /** - * Method to change this.collapsed to true when the slide animation starts and is sliding closed - * @param event The animation event - */ - SearchFilterComponent.prototype.startSlide = function (event) { - if (event.toState === 'collapsed') { - this.closed = true; - } - }; - /** - * Check if a given filter is supposed to be shown or not - * @returns {Observable} Emits true whenever a given filter config should be shown - */ - SearchFilterComponent.prototype.isActive = function () { - var _this = this; - return this.selectedValues$.pipe(switchMap(function (isActive) { - if (isNotEmpty(isActive)) { - return observableOf(true); - } - else { - return _this.searchConfigService.searchOptions.pipe(switchMap(function (options) { - return _this.searchService.getFacetValuesFor(_this.filter, 1, options).pipe(filter(function (RD) { return !RD.isLoading; }), map(function (valuesRD) { - return valuesRD.payload.totalElements > 0; - })); - })); - } - }), startWith(true)); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SearchFilterConfig) - ], SearchFilterComponent.prototype, "filter", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchFilterComponent.prototype, "inPlaceSearch", void 0); - SearchFilterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-filter', - styleUrls: ['./search-filter.component.scss'], - templateUrl: './search-filter.component.html', - animations: [slide], - }) - /** - * Represents a part of the filter section for a single type of filter - */ - , - tslib_1.__param(2, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__metadata("design:paramtypes", [SearchFilterService, - SearchService, - SearchConfigurationService]) - ], SearchFilterComponent); - return SearchFilterComponent; -}()); -export { SearchFilterComponent }; -//# sourceMappingURL=search-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-filter.component.js.map deleted file mode 100644 index 5487ebcfd9..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-filter.component.js","sourceRoot":"","sources":["search-filter.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js b/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js deleted file mode 100644 index 4faacb58ea..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js +++ /dev/null @@ -1,77 +0,0 @@ -import { SearchFilterActionTypes } from './search-filter.actions'; -var initialState = Object.create(null); -/** - * Performs a search filter action on the current state - * @param {SearchFiltersState} state The state before the action is performed - * @param {SearchFilterAction} action The action that should be performed - * @returns {SearchFiltersState} The state after the action is performed - */ -export function filterReducer(state, action) { - if (state === void 0) { state = initialState; } - var _a, _b, _c, _d, _e, _f, _g; - switch (action.type) { - case SearchFilterActionTypes.INITIALIZE: { - var initAction = action; - return Object.assign({}, state, (_a = {}, - _a[action.filterName] = { - filterCollapsed: !initAction.initiallyExpanded, - page: 1 - }, - _a)); - return state; - } - case SearchFilterActionTypes.COLLAPSE: { - return Object.assign({}, state, (_b = {}, - _b[action.filterName] = { - filterCollapsed: true, - page: state[action.filterName].page - }, - _b)); - } - case SearchFilterActionTypes.EXPAND: { - return Object.assign({}, state, (_c = {}, - _c[action.filterName] = { - filterCollapsed: false, - page: state[action.filterName].page - }, - _c)); - } - case SearchFilterActionTypes.DECREMENT_PAGE: { - var page = state[action.filterName].page - 1; - return Object.assign({}, state, (_d = {}, - _d[action.filterName] = { - filterCollapsed: state[action.filterName].filterCollapsed, - page: (page >= 1 ? page : 1) - }, - _d)); - } - case SearchFilterActionTypes.INCREMENT_PAGE: { - return Object.assign({}, state, (_e = {}, - _e[action.filterName] = { - filterCollapsed: state[action.filterName].filterCollapsed, - page: state[action.filterName].page + 1 - }, - _e)); - } - case SearchFilterActionTypes.RESET_PAGE: { - return Object.assign({}, state, (_f = {}, - _f[action.filterName] = { - filterCollapsed: state[action.filterName].filterCollapsed, - page: 1 - }, - _f)); - } - case SearchFilterActionTypes.TOGGLE: { - return Object.assign({}, state, (_g = {}, - _g[action.filterName] = { - filterCollapsed: !state[action.filterName].filterCollapsed, - page: state[action.filterName].page - }, - _g)); - } - default: { - return state; - } - } -} -//# sourceMappingURL=search-filter.reducer.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js.map b/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js.map deleted file mode 100644 index b92bdebe3f..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-filter.reducer.js","sourceRoot":"","sources":["search-filter.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,uBAAuB,EAAgC,MAAM,yBAAyB,CAAC;AAiBpH,IAAM,YAAY,GAAuB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,wBAAwB,KAAoB,EAAE,MAA0B;IAAhD,sBAAA,EAAA,oBAAoB;;IAEhD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACvC,IAAM,UAAU,GAAI,MAAuC,CAAC;YAC5D,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,UAAU,IAAG;oBACnB,eAAe,EAAE,CAAC,UAAU,CAAC,iBAAiB;oBAC9C,IAAI,EAAE,CAAC;iBACR;oBACD,CAAC;YACH,OAAO,KAAK,CAAC;SACd;QAED,KAAK,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YACrC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,UAAU,IAAG;oBACnB,eAAe,EAAE,IAAI;oBACrB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI;iBACpC;oBACD,CAAC;SACJ;QAED,KAAK,uBAAuB,CAAC,MAAM,CAAC,CAAC;YACnC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,UAAU,IAAG;oBACnB,eAAe,EAAE,KAAK;oBACtB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI;iBACpC;oBACD,CAAC;SAEJ;QAED,KAAK,uBAAuB,CAAC,cAAc,CAAC,CAAC;YAC3C,IAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,UAAU,IAAG;oBACnB,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,eAAe;oBACzD,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC7B;oBACD,CAAC;SACJ;QAED,KAAK,uBAAuB,CAAC,cAAc,CAAC,CAAC;YAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,UAAU,IAAG;oBACnB,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,eAAe;oBACzD,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,CAAC;iBACxC;oBACD,CAAC;SAEJ;QACD,KAAK,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACvC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,UAAU,IAAG;oBACnB,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,eAAe;oBACzD,IAAI,EAAE,CAAC;iBACR;oBACD,CAAC;SAEJ;QAED,KAAK,uBAAuB,CAAC,MAAM,CAAC,CAAC;YACnC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,UAAU,IAAG;oBACnB,eAAe,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,eAAe;oBAC1D,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI;iBACpC;oBACD,CAAC;SAEJ;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.service.js b/src/app/+search-page/search-filters/search-filter/search-filter.service.js deleted file mode 100644 index 968b10698e..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter.service.js +++ /dev/null @@ -1,230 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { mergeMap, map, distinctUntilChanged } from 'rxjs/operators'; -import { Injectable, InjectionToken } from '@angular/core'; -import { createSelector, select, Store } from '@ngrx/store'; -import { SearchFilterCollapseAction, SearchFilterDecrementPageAction, SearchFilterExpandAction, SearchFilterIncrementPageAction, SearchFilterInitializeAction, SearchFilterResetPageAction, SearchFilterToggleAction } from './search-filter.actions'; -import { hasValue, isNotEmpty, } from '../../../shared/empty.util'; -import { RouteService } from '../../../shared/services/route.service'; -import { SortDirection, SortOptions } from '../../../core/cache/models/sort-options.model'; -import { PaginationComponentOptions } from '../../../shared/pagination/pagination-component-options.model'; -import { SearchFixedFilterService } from './search-fixed-filter.service'; -// const spy = create(); -var filterStateSelector = function (state) { return state.searchFilter; }; -export var FILTER_CONFIG = new InjectionToken('filterConfig'); -export var IN_PLACE_SEARCH = new InjectionToken('inPlaceSearch'); -/** - * Service that performs all actions that have to do with search filters and facets - */ -var SearchFilterService = /** @class */ (function () { - function SearchFilterService(store, routeService, fixedFilterService) { - this.store = store; - this.routeService = routeService; - this.fixedFilterService = fixedFilterService; - } - /** - * Checks if a given filter is active with a given value - * @param {string} paramName The parameter name of the filter's configuration for which to search - * @param {string} filterValue The value for which to search - * @returns {Observable} Emit true when the filter is active with the given value - */ - SearchFilterService.prototype.isFilterActiveWithValue = function (paramName, filterValue) { - return this.routeService.hasQueryParamWithValue(paramName, filterValue); - }; - /** - * Checks if a given filter is active with any value - * @param {string} paramName The parameter name of the filter's configuration for which to search - * @returns {Observable} Emit true when the filter is active with any value - */ - SearchFilterService.prototype.isFilterActive = function (paramName) { - return this.routeService.hasQueryParam(paramName); - }; - /** - * Fetch the current active scope from the query parameters - * @returns {Observable} - */ - SearchFilterService.prototype.getCurrentScope = function () { - return this.routeService.getQueryParameterValue('scope'); - }; - /** - * Fetch the current query from the query parameters - * @returns {Observable} - */ - SearchFilterService.prototype.getCurrentQuery = function () { - return this.routeService.getQueryParameterValue('query'); - }; - /** - * Fetch the current pagination from query parameters 'page' and 'pageSize' - * and combine them with a given pagination - * @param pagination Pagination options to combine the query parameters with - * @returns {Observable} - */ - SearchFilterService.prototype.getCurrentPagination = function (pagination) { - if (pagination === void 0) { pagination = {}; } - var page$ = this.routeService.getQueryParameterValue('page'); - var size$ = this.routeService.getQueryParameterValue('pageSize'); - return observableCombineLatest(page$, size$).pipe(map(function (_a) { - var page = _a[0], size = _a[1]; - return Object.assign(new PaginationComponentOptions(), pagination, { - currentPage: page || 1, - pageSize: size || pagination.pageSize - }); - })); - }; - /** - * Fetch the current sorting options from query parameters 'sortDirection' and 'sortField' - * and combine them with given sorting options - * @param {SortOptions} defaultSort Sorting options to combine the query parameters with - * @returns {Observable} - */ - SearchFilterService.prototype.getCurrentSort = function (defaultSort) { - var sortDirection$ = this.routeService.getQueryParameterValue('sortDirection'); - var sortField$ = this.routeService.getQueryParameterValue('sortField'); - return observableCombineLatest(sortDirection$, sortField$).pipe(map(function (_a) { - var sortDirection = _a[0], sortField = _a[1]; - var field = sortField || defaultSort.field; - var direction = SortDirection[sortDirection] || defaultSort.direction; - return new SortOptions(field, direction); - })); - }; - /** - * Fetch the current active filters from the query parameters - * @returns {Observable} - */ - SearchFilterService.prototype.getCurrentFilters = function () { - return this.routeService.getQueryParamsWithPrefix('f.'); - }; - /** - * Fetch the current active fixed filter from the route parameters and return the query by filter name - * @returns {Observable} - */ - SearchFilterService.prototype.getCurrentFixedFilter = function () { - var _this = this; - var filter = this.routeService.getRouteParameterValue('filter'); - return filter.pipe(mergeMap(function (f) { return _this.fixedFilterService.getQueryByFilterName(f); })); - }; - /** - * Fetch the current view from the query parameters - * @returns {Observable} - */ - SearchFilterService.prototype.getCurrentView = function () { - return this.routeService.getQueryParameterValue('view'); - }; - /** - * Requests the active filter values set for a given filter - * @param {SearchFilterConfig} filterConfig The configuration for which the filters are active - * @returns {Observable} Emits the active filters for the given filter configuration - */ - SearchFilterService.prototype.getSelectedValuesForFilter = function (filterConfig) { - var values$ = this.routeService.getQueryParameterValues(filterConfig.paramName); - var prefixValues$ = this.routeService.getQueryParamsWithPrefix(filterConfig.paramName + '.').pipe(map(function (params) { return [].concat.apply([], Object.values(params)); })); - return observableCombineLatest(values$, prefixValues$).pipe(map(function (_a) { - var values = _a[0], prefixValues = _a[1]; - if (isNotEmpty(values)) { - return values; - } - return prefixValues; - })); - }; - /** - * Checks if the state of a given filter is currently collapsed or not - * @param {string} filterName The filtername for which the collapsed state is checked - * @returns {Observable} Emits the current collapsed state of the given filter, if it's unavailable, return false - */ - SearchFilterService.prototype.isCollapsed = function (filterName) { - return this.store.pipe(select(filterByNameSelector(filterName)), map(function (object) { - if (object) { - return object.filterCollapsed; - } - else { - return false; - } - }), distinctUntilChanged()); - }; - /** - * Request the current page of a given filter - * @param {string} filterName The filter name for which the page state is checked - * @returns {Observable} Emits the current page state of the given filter, if it's unavailable, return 1 - */ - SearchFilterService.prototype.getPage = function (filterName) { - return this.store.pipe(select(filterByNameSelector(filterName)), map(function (object) { - if (object) { - return object.page; - } - else { - return 1; - } - }), distinctUntilChanged()); - }; - /** - * Dispatches a collapse action to the store for a given filter - * @param {string} filterName The filter for which the action is dispatched - */ - SearchFilterService.prototype.collapse = function (filterName) { - this.store.dispatch(new SearchFilterCollapseAction(filterName)); - }; - /** - * Dispatches an expand action to the store for a given filter - * @param {string} filterName The filter for which the action is dispatched - */ - SearchFilterService.prototype.expand = function (filterName) { - this.store.dispatch(new SearchFilterExpandAction(filterName)); - }; - /** - * Dispatches a toggle action to the store for a given filter - * @param {string} filterName The filter for which the action is dispatched - */ - SearchFilterService.prototype.toggle = function (filterName) { - this.store.dispatch(new SearchFilterToggleAction(filterName)); - }; - /** - * Dispatches an initialize action to the store for a given filter - * @param {SearchFilterConfig} filter The filter for which the action is dispatched - */ - SearchFilterService.prototype.initializeFilter = function (filter) { - this.store.dispatch(new SearchFilterInitializeAction(filter)); - }; - /** - * Dispatches a decrement action to the store for a given filter - * @param {string} filterName The filter for which the action is dispatched - */ - SearchFilterService.prototype.decrementPage = function (filterName) { - this.store.dispatch(new SearchFilterDecrementPageAction(filterName)); - }; - /** - * Dispatches an increment page action to the store for a given filter - * @param {string} filterName The filter for which the action is dispatched - */ - SearchFilterService.prototype.incrementPage = function (filterName) { - this.store.dispatch(new SearchFilterIncrementPageAction(filterName)); - }; - /** - * Dispatches a reset page action to the store for a given filter - * @param {string} filterName The filter for which the action is dispatched - */ - SearchFilterService.prototype.resetPage = function (filterName) { - this.store.dispatch(new SearchFilterResetPageAction(filterName)); - }; - SearchFilterService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store, - RouteService, - SearchFixedFilterService]) - ], SearchFilterService); - return SearchFilterService; -}()); -export { SearchFilterService }; -function filterByNameSelector(name) { - return keySelector(name); -} -export function keySelector(key) { - return createSelector(filterStateSelector, function (state) { - if (hasValue(state)) { - return state[key]; - } - else { - return undefined; - } - }); -} -//# sourceMappingURL=search-filter.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-filter.service.js.map b/src/app/+search-page/search-filters/search-filter/search-filter.service.js.map deleted file mode 100644 index 301699c23b..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-filter.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-filter.service.js","sourceRoot":"","sources":["search-filter.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js b/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js deleted file mode 100644 index abdd3cf6b7..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js +++ /dev/null @@ -1,73 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { map } from 'rxjs/operators'; -import { of as observableOf } from 'rxjs'; -import { HALEndpointService } from '../../../core/shared/hal-endpoint.service'; -import { GetRequest } from '../../../core/data/request.models'; -import { RequestService } from '../../../core/data/request.service'; -import { FilteredDiscoveryPageResponseParsingService } from '../../../core/data/filtered-discovery-page-response-parsing.service'; -import { hasValue } from '../../../shared/empty.util'; -import { configureRequest, getResponseFromEntry } from '../../../core/shared/operators'; -import { RouteService } from '../../../shared/services/route.service'; -/** - * Service for performing actions on the filtered-discovery-pages REST endpoint - */ -var SearchFixedFilterService = /** @class */ (function () { - function SearchFixedFilterService(routeService, requestService, halService) { - this.routeService = routeService; - this.requestService = requestService; - this.halService = halService; - this.queryByFilterPath = 'filtered-discovery-pages'; - } - /** - * Get the filter query for a certain filter by name - * @param {string} filterName Name of the filter - * @returns {Observable} Filter query - */ - SearchFixedFilterService.prototype.getQueryByFilterName = function (filterName) { - if (hasValue(filterName)) { - var requestUuid_1 = this.requestService.generateRequestId(); - this.halService.getEndpoint(this.queryByFilterPath).pipe(map(function (url) { - url += ('/' + filterName); - var request = new GetRequest(requestUuid_1, url); - return Object.assign(request, { - getResponseParser: function () { - return FilteredDiscoveryPageResponseParsingService; - } - }); - }), configureRequest(this.requestService)).subscribe(); - // get search results from response cache - var filterQuery = this.requestService.getByUUID(requestUuid_1).pipe(getResponseFromEntry(), map(function (response) { - return response.filterQuery; - })); - return filterQuery; - } - return observableOf(undefined); - }; - /** - * Get the query for looking up items by relation type - * @param {string} relationType Relation type - * @param {string} itemUUID Item UUID - * @returns {string} Query - */ - SearchFixedFilterService.prototype.getQueryByRelations = function (relationType, itemUUID) { - return "query=relation." + relationType + ":" + itemUUID; - }; - /** - * Get the filter for a relation with the item's UUID - * @param relationType The type of relation e.g. 'isAuthorOfPublication' - * @param itemUUID The item's UUID - */ - SearchFixedFilterService.prototype.getFilterByRelation = function (relationType, itemUUID) { - return "f." + relationType + "=" + itemUUID; - }; - SearchFixedFilterService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RouteService, - RequestService, - HALEndpointService]) - ], SearchFixedFilterService); - return SearchFixedFilterService; -}()); -export { SearchFixedFilterService }; -//# sourceMappingURL=search-fixed-filter.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js.map b/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js.map deleted file mode 100644 index c8db35eb42..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-fixed-filter.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-fixed-filter.service.js","sourceRoot":"","sources":["search-fixed-filter.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAW,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAgB,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAe,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE,OAAO,EAAE,2CAA2C,EAAE,MAAM,qEAAqE,CAAC;AAClI,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAGtE;;GAEG;AAEH;IAGE,kCAAoB,YAA0B,EACxB,cAA8B,EAChC,UAA8B;QAF9B,iBAAY,GAAZ,YAAY,CAAc;QACxB,mBAAc,GAAd,cAAc,CAAgB;QAChC,eAAU,GAAV,UAAU,CAAoB;QAJ1C,sBAAiB,GAAG,0BAA0B,CAAC;IAMvD,CAAC;IAED;;;;OAIG;IACH,uDAAoB,GAApB,UAAqB,UAAkB;QACrC,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;YACxB,IAAM,aAAW,GAAG,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;YAC5D,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CACtD,GAAG,CAAC,UAAC,GAAW;gBACd,GAAG,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,CAAC;gBAC1B,IAAM,OAAO,GAAG,IAAI,UAAU,CAAC,aAAW,EAAE,GAAG,CAAC,CAAC;gBACjD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;oBAC5B,iBAAiB,EAAjB;wBACE,OAAO,2CAA2C,CAAC;oBACrD,CAAC;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,EACF,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CACtC,CAAC,SAAS,EAAE,CAAC;YAEd,yCAAyC;YACzC,IAAM,WAAW,GAAuB,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,aAAW,CAAC,CAAC,IAAI,CACrF,oBAAoB,EAAE,EACtB,GAAG,CAAC,UAAC,QAAwC;gBAC3C,OAAA,QAAQ,CAAC,WAAW;YAApB,CAAoB,CACrB,CAAC,CAAC;YACL,OAAO,WAAW,CAAC;SACpB;QACD,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,sDAAmB,GAAnB,UAAoB,YAAoB,EAAE,QAAgB;QACxD,OAAO,oBAAkB,YAAY,SAAI,QAAU,CAAC;IACtD,CAAC;IAED;;;;OAIG;IACH,sDAAmB,GAAnB,UAAoB,YAAoB,EAAE,QAAgB;QACxD,OAAO,OAAK,YAAY,SAAI,QAAU,CAAC;IACzC,CAAC;IA1DU,wBAAwB;QADpC,UAAU,EAAE;iDAIuB,YAAY;YACR,cAAc;YACpB,kBAAkB;OALvC,wBAAwB,CA4DpC;IAAD,+BAAC;CAAA,AA5DD,IA4DC;SA5DY,wBAAwB"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js deleted file mode 100644 index 09c692a143..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { FilterType } from '../../../search-service/filter-type.model'; -import { renderFacetFor } from '../search-filter-type-decorator'; -import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; -var SearchHierarchyFilterComponent = /** @class */ (function (_super) { - tslib_1.__extends(SearchHierarchyFilterComponent, _super); - function SearchHierarchyFilterComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - SearchHierarchyFilterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-hierarchy-filter', - styleUrls: ['./search-hierarchy-filter.component.scss'], - templateUrl: './search-hierarchy-filter.component.html', - animations: [facetLoad] - }) - /** - * Component that represents a hierarchy facet for a specific filter configuration - */ - , - renderFacetFor(FilterType.hierarchy) - ], SearchHierarchyFilterComponent); - return SearchHierarchyFilterComponent; -}(SearchFacetFilterComponent)); -export { SearchHierarchyFilterComponent }; -//# sourceMappingURL=search-hierarchy-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js.map deleted file mode 100644 index d8838f8f27..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-hierarchy-filter.component.js","sourceRoot":"","sources":["search-hierarchy-filter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,SAAS,EACT,0BAA0B,EAC3B,MAAM,sDAAsD,CAAC;AAa9D;IAAoD,0DAA0B;IAA9E;;IACA,CAAC;IADY,8BAA8B;QAX1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,SAAS,EAAE,CAAC,0CAA0C,CAAC;YACvD,WAAW,EAAE,0CAA0C;YACvD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QAEF;;WAEG;;QACF,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC;OACxB,8BAA8B,CAC1C;IAAD,qCAAC;CAAA,AADD,CAAoD,0BAA0B,GAC7E;SADY,8BAA8B"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js deleted file mode 100644 index ff1ccbacb5..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js +++ /dev/null @@ -1,135 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { map, startWith } from 'rxjs/operators'; -import { isPlatformBrowser } from '@angular/common'; -import { Component, Inject, PLATFORM_ID } from '@angular/core'; -import { RemoteDataBuildService } from '../../../../core/cache/builders/remote-data-build.service'; -import { FilterType } from '../../../search-service/filter-type.model'; -import { renderFacetFor } from '../search-filter-type-decorator'; -import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; -import { SearchFilterConfig } from '../../../search-service/search-filter-config.model'; -import { FILTER_CONFIG, IN_PLACE_SEARCH, SearchFilterService } from '../search-filter.service'; -import { SearchService } from '../../../search-service/search.service'; -import { Router } from '@angular/router'; -import * as moment from 'moment'; -import { RouteService } from '../../../../shared/services/route.service'; -import { hasValue } from '../../../../shared/empty.util'; -import { SearchConfigurationService } from '../../../search-service/search-configuration.service'; -import { SEARCH_CONFIG_SERVICE } from '../../../../+my-dspace-page/my-dspace-page.component'; -/** - * The suffix for a range filters' minimum in the frontend URL - */ -export var RANGE_FILTER_MIN_SUFFIX = '.min'; -/** - * The suffix for a range filters' maximum in the frontend URL - */ -export var RANGE_FILTER_MAX_SUFFIX = '.max'; -/** - * The date formats that are possible to appear in a date filter - */ -var dateFormats = ['YYYY', 'YYYY-MM', 'YYYY-MM-DD']; -/** - * This component renders a simple item page. - * The route parameter 'id' is used to request the item it represents. - * All fields of the item that should be displayed, are defined in its template. - */ -var SearchRangeFilterComponent = /** @class */ (function (_super) { - tslib_1.__extends(SearchRangeFilterComponent, _super); - function SearchRangeFilterComponent(searchService, filterService, router, rdbs, searchConfigService, inPlaceSearch, filterConfig, platformId, route) { - var _this = _super.call(this, searchService, filterService, rdbs, router, searchConfigService, inPlaceSearch, filterConfig) || this; - _this.searchService = searchService; - _this.filterService = filterService; - _this.router = router; - _this.rdbs = rdbs; - _this.searchConfigService = searchConfigService; - _this.inPlaceSearch = inPlaceSearch; - _this.filterConfig = filterConfig; - _this.platformId = platformId; - _this.route = route; - /** - * Fallback minimum for the range - */ - _this.min = 1950; - /** - * Fallback maximum for the range - */ - _this.max = 2018; - return _this; - } - /** - * Initialize with the min and max values as configured in the filter configuration - * Set the initial values of the range - */ - SearchRangeFilterComponent.prototype.ngOnInit = function () { - var _this = this; - _super.prototype.ngOnInit.call(this); - this.min = moment(this.filterConfig.minValue, dateFormats).year() || this.min; - this.max = moment(this.filterConfig.maxValue, dateFormats).year() || this.max; - var iniMin = this.route.getQueryParameterValue(this.filterConfig.paramName + RANGE_FILTER_MIN_SUFFIX).pipe(startWith(undefined)); - var iniMax = this.route.getQueryParameterValue(this.filterConfig.paramName + RANGE_FILTER_MAX_SUFFIX).pipe(startWith(undefined)); - this.sub = observableCombineLatest(iniMin, iniMax).pipe(map(function (_a) { - var min = _a[0], max = _a[1]; - var minimum = hasValue(min) ? min : _this.min; - var maximum = hasValue(max) ? max : _this.max; - return [minimum, maximum]; - })).subscribe(function (minmax) { return _this.range = minmax; }); - }; - /** - * Submits new custom range values to the range filter from the widget - */ - SearchRangeFilterComponent.prototype.onSubmit = function () { - var _a; - var newMin = this.range[0] !== this.min ? [this.range[0]] : null; - var newMax = this.range[1] !== this.max ? [this.range[1]] : null; - this.router.navigate(this.getSearchLinkParts(), { - queryParams: (_a = {}, - _a[this.filterConfig.paramName + RANGE_FILTER_MIN_SUFFIX] = newMin, - _a[this.filterConfig.paramName + RANGE_FILTER_MAX_SUFFIX] = newMax, - _a), - queryParamsHandling: 'merge' - }); - this.filter = ''; - }; - /** - * TODO when upgrading nouislider, verify that this check is still needed. - * Prevents AoT bug - * @returns {boolean} True if the platformId is a platform browser - */ - SearchRangeFilterComponent.prototype.shouldShowSlider = function () { - return isPlatformBrowser(this.platformId); - }; - /** - * Unsubscribe from all subscriptions - */ - SearchRangeFilterComponent.prototype.ngOnDestroy = function () { - _super.prototype.ngOnDestroy.call(this); - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - SearchRangeFilterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-range-filter', - styleUrls: ['./search-range-filter.component.scss'], - templateUrl: './search-range-filter.component.html', - animations: [facetLoad] - }) - /** - * Component that represents a range facet for a specific filter configuration - */ - , - renderFacetFor(FilterType.range), - tslib_1.__param(4, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__param(5, Inject(IN_PLACE_SEARCH)), - tslib_1.__param(6, Inject(FILTER_CONFIG)), - tslib_1.__param(7, Inject(PLATFORM_ID)), - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchFilterService, - Router, - RemoteDataBuildService, - SearchConfigurationService, Boolean, SearchFilterConfig, Object, RouteService]) - ], SearchRangeFilterComponent); - return SearchRangeFilterComponent; -}(SearchFacetFilterComponent)); -export { SearchRangeFilterComponent }; -//# sourceMappingURL=search-range-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js.map deleted file mode 100644 index bed7729db0..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-range-filter.component.js","sourceRoot":"","sources":["search-range-filter.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js b/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js deleted file mode 100644 index 18d28f8e62..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { FilterType } from '../../../search-service/filter-type.model'; -import { facetLoad, SearchFacetFilterComponent } from '../search-facet-filter/search-facet-filter.component'; -import { renderFacetFor } from '../search-filter-type-decorator'; -/** - * This component renders a simple item page. - * The route parameter 'id' is used to request the item it represents. - * All fields of the item that should be displayed, are defined in its template. - */ -var SearchTextFilterComponent = /** @class */ (function (_super) { - tslib_1.__extends(SearchTextFilterComponent, _super); - function SearchTextFilterComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - SearchTextFilterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-text-filter', - styleUrls: ['./search-text-filter.component.scss'], - templateUrl: './search-text-filter.component.html', - animations: [facetLoad] - }) - /** - * Component that represents a text facet for a specific filter configuration - */ - , - renderFacetFor(FilterType.text) - ], SearchTextFilterComponent); - return SearchTextFilterComponent; -}(SearchFacetFilterComponent)); -export { SearchTextFilterComponent }; -//# sourceMappingURL=search-text-filter.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js.map b/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js.map deleted file mode 100644 index 71627953b9..0000000000 --- a/src/app/+search-page/search-filters/search-filter/search-text-filter/search-text-filter.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-text-filter.component.js","sourceRoot":"","sources":["search-text-filter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AACvE,OAAO,EACL,SAAS,EACT,0BAA0B,EAC3B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;;;GAIG;AAaH;IAA+C,qDAA0B;IAAzE;;IACA,CAAC;IADY,yBAAyB;QAXrC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,SAAS,EAAE,CAAC,qCAAqC,CAAC;YAClD,WAAW,EAAE,qCAAqC;YAClD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;QAEF;;WAEG;;QACF,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC;OACnB,yBAAyB,CACrC;IAAD,gCAAC;CAAA,AADD,CAA+C,0BAA0B,GACxE;SADY,yBAAyB"} \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filters.component.js b/src/app/+search-page/search-filters/search-filters.component.js deleted file mode 100644 index 6891734cde..0000000000 --- a/src/app/+search-page/search-filters/search-filters.component.js +++ /dev/null @@ -1,66 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Input } from '@angular/core'; -import { map, switchMap } from 'rxjs/operators'; -import { SearchService } from '../search-service/search.service'; -import { SearchConfigurationService } from '../search-service/search-configuration.service'; -import { SearchFilterService } from './search-filter/search-filter.service'; -import { getSucceededRemoteData } from '../../core/shared/operators'; -import { SEARCH_CONFIG_SERVICE } from '../../+my-dspace-page/my-dspace-page.component'; -var SearchFiltersComponent = /** @class */ (function () { - /** - * Initialize instance variables - * @param {SearchService} searchService - * @param {SearchConfigurationService} searchConfigService - * @param {SearchFilterService} filterService - */ - function SearchFiltersComponent(searchService, filterService, searchConfigService) { - this.searchService = searchService; - this.filterService = filterService; - this.searchConfigService = searchConfigService; - } - SearchFiltersComponent.prototype.ngOnInit = function () { - var _this = this; - this.filters = this.searchConfigService.searchOptions.pipe(switchMap(function (options) { return _this.searchService.getConfig(options.scope, options.configuration).pipe(getSucceededRemoteData()); })); - this.clearParams = this.searchConfigService.getCurrentFrontendFilters().pipe(map(function (filters) { - Object.keys(filters).forEach(function (f) { return filters[f] = null; }); - return filters; - })); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchFiltersComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.searchService.getSearchLink(); - }; - /** - * Prevent unnecessary rerendering - */ - SearchFiltersComponent.prototype.trackUpdate = function (index, config) { - return config ? config.name : undefined; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchFiltersComponent.prototype, "inPlaceSearch", void 0); - SearchFiltersComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-filters', - styleUrls: ['./search-filters.component.scss'], - templateUrl: './search-filters.component.html', - }) - /** - * This component represents the part of the search sidebar that contains filters. - */ - , - tslib_1.__param(2, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchFilterService, - SearchConfigurationService]) - ], SearchFiltersComponent); - return SearchFiltersComponent; -}()); -export { SearchFiltersComponent }; -//# sourceMappingURL=search-filters.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-filters/search-filters.component.js.map b/src/app/+search-page/search-filters/search-filters.component.js.map deleted file mode 100644 index bb04fb1904..0000000000 --- a/src/app/+search-page/search-filters/search-filters.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-filters.component.js","sourceRoot":"","sources":["search-filters.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGjE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAGjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAWvF;IAiBE;;;;;OAKG;IACH,gCACU,aAA4B,EAC5B,aAAkC,EACH,mBAA+C;QAF9E,kBAAa,GAAb,aAAa,CAAe;QAC5B,kBAAa,GAAb,aAAa,CAAqB;QACH,wBAAmB,GAAnB,mBAAmB,CAA4B;IAExF,CAAC;IAED,yCAAQ,GAAR;QAAA,iBAUC;QARC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,IAAI,CACxD,SAAS,CAAC,UAAC,OAAO,IAAK,OAAA,KAAI,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC,EAAjG,CAAiG,CAAC,CAC1H,CAAC;QAEF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,OAAO;YACvF,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,EAAjB,CAAiB,CAAC,CAAC;YACvD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,8CAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,4CAAW,GAAX,UAAY,KAAK,EAAE,MAA0B;QAC3C,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1C,CAAC;IA1CQ;QAAR,KAAK,EAAE;;iEAAe;IAfZ,sBAAsB;QATlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QAEF;;WAEG;;QA2BE,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDAFP,aAAa;YACb,mBAAmB;YACkB,0BAA0B;OA1B7E,sBAAsB,CA2DlC;IAAD,6BAAC;CAAA,AA3DD,IA2DC;SA3DY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+search-page/search-labels/search-labels.component.js b/src/app/+search-page/search-labels/search-labels.component.js deleted file mode 100644 index 220e4c9d5a..0000000000 --- a/src/app/+search-page/search-labels/search-labels.component.js +++ /dev/null @@ -1,76 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Input } from '@angular/core'; -import { SearchService } from '../search-service/search.service'; -import { map } from 'rxjs/operators'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { SearchConfigurationService } from '../search-service/search-configuration.service'; -import { SEARCH_CONFIG_SERVICE } from '../../+my-dspace-page/my-dspace-page.component'; -var SearchLabelsComponent = /** @class */ (function () { - /** - * Initialize the instance variable - */ - function SearchLabelsComponent(searchService, searchConfigService) { - this.searchService = searchService; - this.searchConfigService = searchConfigService; - this.appliedFilters = this.searchConfigService.getCurrentFrontendFilters(); - } - /** - * Calculates the parameters that should change if a given value for the given filter would be removed from the active filters - * @param {string} filterField The filter field parameter name from which the value should be removed - * @param {string} filterValue The value that is removed for this given filter field - * @returns {Observable} The changed filter parameters - */ - SearchLabelsComponent.prototype.getRemoveParams = function (filterField, filterValue) { - return this.appliedFilters.pipe(map(function (filters) { - var _a; - var field = Object.keys(filters).find(function (f) { return f === filterField; }); - var newValues = hasValue(filters[field]) ? filters[field].filter(function (v) { return v !== filterValue; }) : null; - return _a = {}, - _a[field] = isNotEmpty(newValues) ? newValues : null, - _a.page = 1, - _a; - })); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchLabelsComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.searchService.getSearchLink(); - }; - /** - * TODO to review after https://github.com/DSpace/dspace-angular/issues/368 is resolved - * Strips authority operator from filter value - * e.g. 'test ,authority' => 'test' - * - * @param value - */ - SearchLabelsComponent.prototype.normalizeFilterValue = function (value) { - // const pattern = /,[^,]*$/g; - var pattern = /,authority*$/g; - return value.replace(pattern, ''); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchLabelsComponent.prototype, "inPlaceSearch", void 0); - SearchLabelsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-labels', - styleUrls: ['./search-labels.component.scss'], - templateUrl: './search-labels.component.html', - }) - /** - * Component that represents the labels containing the currently active filters - */ - , - tslib_1.__param(1, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchConfigurationService]) - ], SearchLabelsComponent); - return SearchLabelsComponent; -}()); -export { SearchLabelsComponent }; -//# sourceMappingURL=search-labels.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-labels/search-labels.component.js.map b/src/app/+search-page/search-labels/search-labels.component.js.map deleted file mode 100644 index 8667c2d341..0000000000 --- a/src/app/+search-page/search-labels/search-labels.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-labels.component.js","sourceRoot":"","sources":["search-labels.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAGjE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AAWvF;IAWE;;OAEG;IACH,+BACU,aAA4B,EACE,mBAA+C;QAD7E,kBAAa,GAAb,aAAa,CAAe;QACE,wBAAmB,GAAnB,mBAAmB,CAA4B;QACrF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,CAAC;IAC7E,CAAC;IAED;;;;;OAKG;IACH,+CAAe,GAAf,UAAgB,WAAmB,EAAE,WAAmB;QACtD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAC7B,GAAG,CAAC,UAAC,OAAO;;YACV,IAAM,KAAK,GAAW,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,WAAW,EAAjB,CAAiB,CAAC,CAAC;YAC1E,IAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,WAAW,EAAjB,CAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACpG;gBACE,GAAC,KAAK,IAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;gBACjD,OAAI,GAAE,CAAC;mBACP;QACJ,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED;;OAEG;IACI,6CAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;;OAMG;IACH,oDAAoB,GAApB,UAAqB,KAAa;QAChC,8BAA8B;QAC9B,IAAM,OAAO,GAAG,eAAe,CAAC;QAChC,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAnDQ;QAAR,KAAK,EAAE;;gEAAe;IATZ,qBAAqB;QATjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,CAAC,gCAAgC,CAAC;YAC7C,WAAW,EAAE,gCAAgC;SAC9C,CAAC;QAEF;;WAEG;;QAiBE,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDADP,aAAa;YACuB,0BAA0B;OAhB5E,qBAAqB,CA6DjC;IAAD,4BAAC;CAAA,AA7DD,IA6DC;SA7DY,qBAAqB"} \ No newline at end of file diff --git a/src/app/+search-page/search-options.model.js b/src/app/+search-page/search-options.model.js deleted file mode 100644 index 5ef1cf890e..0000000000 --- a/src/app/+search-page/search-options.model.js +++ /dev/null @@ -1,57 +0,0 @@ -import { isNotEmpty } from '../shared/empty.util'; -import { URLCombiner } from '../core/url-combiner/url-combiner'; -import 'core-js/library/fn/object/entries'; -import { SetViewMode } from '../shared/view-mode'; -/** - * This model class represents all parameters needed to request information about a certain search request - */ -var SearchOptions = /** @class */ (function () { - function SearchOptions(options) { - this.view = SetViewMode.List; - this.configuration = options.configuration; - this.scope = options.scope; - this.query = options.query; - this.dsoType = options.dsoType; - this.filters = options.filters; - this.fixedFilter = options.fixedFilter; - } - /** - * Method to generate the URL that can be used request information about a search request - * @param {string} url The URL to the REST endpoint - * @param {string[]} args A list of query arguments that should be included in the URL - * @returns {string} URL with all search options and passed arguments as query parameters - */ - SearchOptions.prototype.toRestUrl = function (url, args) { - if (args === void 0) { args = []; } - if (isNotEmpty(this.configuration)) { - args.push("configuration=" + this.configuration); - } - if (isNotEmpty(this.fixedFilter)) { - args.push(this.fixedFilter); - } - if (isNotEmpty(this.query)) { - args.push("query=" + this.query); - } - if (isNotEmpty(this.scope)) { - args.push("scope=" + this.scope); - } - if (isNotEmpty(this.dsoType)) { - args.push("dsoType=" + this.dsoType); - } - if (isNotEmpty(this.filters)) { - this.filters.forEach(function (filter) { - filter.values.forEach(function (value) { - var filterValue = value.includes(',') ? "" + value : value + "," + filter.operator; - args.push(filter.key + "=" + filterValue); - }); - }); - } - if (isNotEmpty(args)) { - url = new URLCombiner(url, "?" + args.join('&')).toString(); - } - return url; - }; - return SearchOptions; -}()); -export { SearchOptions }; -//# sourceMappingURL=search-options.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-options.model.js.map b/src/app/+search-page/search-options.model.js.map deleted file mode 100644 index fce041dabd..0000000000 --- a/src/app/+search-page/search-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-options.model.js","sourceRoot":"","sources":["search-options.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,mCAAmC,CAAC;AAG3C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD;;GAEG;AACH;IASE,uBAAY,OAA0I;QAPtJ,SAAI,GAAiB,WAAW,CAAC,IAAI,CAAC;QAQlC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACH,iCAAS,GAAT,UAAU,GAAW,EAAE,IAAmB;QAAnB,qBAAA,EAAA,SAAmB;QACxC,IAAI,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,mBAAiB,IAAI,CAAC,aAAe,CAAC,CAAC;SAClD;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC7B;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,WAAS,IAAI,CAAC,KAAO,CAAC,CAAC;SAClC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,WAAS,IAAI,CAAC,KAAO,CAAC,CAAC;SAClC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,aAAW,IAAI,CAAC,OAAS,CAAC,CAAC;SACtC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC5B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAC,MAAoB;gBACxC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK;oBAC1B,IAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAG,KAAO,CAAC,CAAC,CAAI,KAAK,SAAI,MAAM,CAAC,QAAU,CAAC;oBACrF,IAAI,CAAC,IAAI,CAAI,MAAM,CAAC,GAAG,SAAI,WAAa,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;YACpB,GAAG,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,MAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;SAC7D;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACH,oBAAC;AAAD,CAAC,AArDD,IAqDC"} \ No newline at end of file diff --git a/src/app/+search-page/search-page-routing.module.js b/src/app/+search-page/search-page-routing.module.js deleted file mode 100644 index 1f9647fcd1..0000000000 --- a/src/app/+search-page/search-page-routing.module.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { SearchPageComponent } from './search-page.component'; -import { FilteredSearchPageComponent } from './filtered-search-page.component'; -import { FilteredSearchPageGuard } from './filtered-search-page.guard'; -var SearchPageRoutingModule = /** @class */ (function () { - function SearchPageRoutingModule() { - } - SearchPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { path: '', component: SearchPageComponent, data: { title: 'search.title' } }, - { path: ':filter', component: FilteredSearchPageComponent, canActivate: [FilteredSearchPageGuard], data: { title: 'search.' } } - ]) - ] - }) - ], SearchPageRoutingModule); - return SearchPageRoutingModule; -}()); -export { SearchPageRoutingModule }; -//# sourceMappingURL=search-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-page-routing.module.js.map b/src/app/+search-page/search-page-routing.module.js.map deleted file mode 100644 index f732e3deb7..0000000000 --- a/src/app/+search-page/search-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-page-routing.module.js","sourceRoot":"","sources":["search-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAUvE;IAAA;IAAuC,CAAC;IAA3B,uBAAuB;QARnC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;oBAC7E,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,2BAA2B,EAAE,WAAW,EAAE,CAAC,uBAAuB,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAC;iBAC/H,CAAC;aACH;SACF,CAAC;OACW,uBAAuB,CAAI;IAAD,8BAAC;CAAA,AAAxC,IAAwC;SAA3B,uBAAuB"} \ No newline at end of file diff --git a/src/app/+search-page/search-page.component.js b/src/app/+search-page/search-page.component.js deleted file mode 100644 index 108971af35..0000000000 --- a/src/app/+search-page/search-page.component.js +++ /dev/null @@ -1,152 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component, Inject, Input } from '@angular/core'; -import { Observable, BehaviorSubject } from 'rxjs'; -import { switchMap, } from 'rxjs/operators'; -import { pushInOut } from '../shared/animations/push'; -import { HostWindowService } from '../shared/host-window.service'; -import { SearchService } from './search-service/search.service'; -import { SearchSidebarService } from './search-sidebar/search-sidebar.service'; -import { hasValue, isNotEmpty } from '../shared/empty.util'; -import { SearchConfigurationService } from './search-service/search-configuration.service'; -import { getSucceededRemoteData } from '../core/shared/operators'; -import { RouteService } from '../shared/services/route.service'; -import { SEARCH_CONFIG_SERVICE } from '../+my-dspace-page/my-dspace-page.component'; -export var SEARCH_ROUTE = '/search'; -/** - * This component renders a simple item page. - * The route parameter 'id' is used to request the item it represents. - * All fields of the item that should be displayed, are defined in its template. - */ -var SearchPageComponent = /** @class */ (function () { - function SearchPageComponent(service, sidebarService, windowService, searchConfigService, routeService) { - this.service = service; - this.sidebarService = sidebarService; - this.windowService = windowService; - this.searchConfigService = searchConfigService; - this.routeService = routeService; - /** - * The current search results - */ - this.resultsRD$ = new BehaviorSubject(null); - /** - * True when the search component should show results on the current page - */ - this.inPlaceSearch = true; - /** - * Whether or not the search bar should be visible - */ - this.searchEnabled = true; - /** - * The width of the sidebar (bootstrap columns) - */ - this.sideBarWidth = 3; - this.isXsOrSm$ = this.windowService.isXsOrSm(); - } - /** - * Listening to changes in the paginated search options - * If something changes, update the search results - * - * Listen to changes in the scope - * If something changes, update the list of scopes for the dropdown - */ - SearchPageComponent.prototype.ngOnInit = function () { - var _this = this; - this.searchOptions$ = this.getSearchOptions(); - this.sub = this.searchOptions$.pipe(switchMap(function (options) { return _this.service.search(options).pipe(getSucceededRemoteData()); })) - .subscribe(function (results) { - _this.resultsRD$.next(results); - }); - this.scopeListRD$ = this.searchConfigService.getCurrentScope('').pipe(switchMap(function (scopeId) { return _this.service.getScopes(scopeId); })); - if (!isNotEmpty(this.fixedFilter$)) { - this.fixedFilter$ = this.routeService.getRouteParameterValue('filter'); - } - }; - /** - * Get the current paginated search options - * @returns {Observable} - */ - SearchPageComponent.prototype.getSearchOptions = function () { - return this.searchConfigService.paginatedSearchOptions; - }; - /** - * Set the sidebar to a collapsed state - */ - SearchPageComponent.prototype.closeSidebar = function () { - this.sidebarService.collapse(); - }; - /** - * Set the sidebar to an expanded state - */ - SearchPageComponent.prototype.openSidebar = function () { - this.sidebarService.expand(); - }; - /** - * Check if the sidebar is collapsed - * @returns {Observable} emits true if the sidebar is currently collapsed, false if it is expanded - */ - SearchPageComponent.prototype.isSidebarCollapsed = function () { - return this.sidebarService.isCollapsed; - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchPageComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.service.getSearchLink(); - }; - /** - * Unsubscribe from the subscription - */ - SearchPageComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchPageComponent.prototype, "inPlaceSearch", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchPageComponent.prototype, "searchEnabled", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchPageComponent.prototype, "sideBarWidth", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Observable) - ], SearchPageComponent.prototype, "fixedFilter$", void 0); - SearchPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-page', - styleUrls: ['./search-page.component.scss'], - templateUrl: './search-page.component.html', - changeDetection: ChangeDetectionStrategy.OnPush, - animations: [pushInOut], - providers: [ - { - provide: SEARCH_CONFIG_SERVICE, - useClass: SearchConfigurationService - } - ] - }) - /** - * This component represents the whole search page - * It renders search results depending on the current search options - */ - , - tslib_1.__param(3, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__metadata("design:paramtypes", [SearchService, - SearchSidebarService, - HostWindowService, - SearchConfigurationService, - RouteService]) - ], SearchPageComponent); - return SearchPageComponent; -}()); -export { SearchPageComponent }; -//# sourceMappingURL=search-page.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-page.component.js.map b/src/app/+search-page/search-page.component.js.map deleted file mode 100644 index c92bd82da8..0000000000 --- a/src/app/+search-page/search-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-page.component.js","sourceRoot":"","sources":["search-page.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-page.module.js b/src/app/+search-page/search-page.module.js deleted file mode 100644 index 6162af9d69..0000000000 --- a/src/app/+search-page/search-page.module.js +++ /dev/null @@ -1,111 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { CoreModule } from '../core/core.module'; -import { SharedModule } from '../shared/shared.module'; -import { SearchPageRoutingModule } from './search-page-routing.module'; -import { SearchPageComponent } from './search-page.component'; -import { SearchResultsComponent } from './search-results/search-results.component'; -import { ItemSearchResultGridElementComponent } from '../shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component'; -import { CommunitySearchResultGridElementComponent } from '../shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component'; -import { CollectionSearchResultGridElementComponent } from '../shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component'; -import { SearchSidebarComponent } from './search-sidebar/search-sidebar.component'; -import { SearchSidebarService } from './search-sidebar/search-sidebar.service'; -import { SearchSidebarEffects } from './search-sidebar/search-sidebar.effects'; -import { SearchSettingsComponent } from './search-settings/search-settings.component'; -import { EffectsModule } from '@ngrx/effects'; -import { SearchFiltersComponent } from './search-filters/search-filters.component'; -import { SearchFilterComponent } from './search-filters/search-filter/search-filter.component'; -import { SearchFacetFilterComponent } from './search-filters/search-filter/search-facet-filter/search-facet-filter.component'; -import { SearchFilterService } from './search-filters/search-filter/search-filter.service'; -import { FilteredSearchPageComponent } from './filtered-search-page.component'; -import { SearchFixedFilterService } from './search-filters/search-filter/search-fixed-filter.service'; -import { FilteredSearchPageGuard } from './filtered-search-page.guard'; -import { SearchLabelsComponent } from './search-labels/search-labels.component'; -import { SearchRangeFilterComponent } from './search-filters/search-filter/search-range-filter/search-range-filter.component'; -import { SearchTextFilterComponent } from './search-filters/search-filter/search-text-filter/search-text-filter.component'; -import { SearchFacetFilterWrapperComponent } from './search-filters/search-filter/search-facet-filter-wrapper/search-facet-filter-wrapper.component'; -import { SearchBooleanFilterComponent } from './search-filters/search-filter/search-boolean-filter/search-boolean-filter.component'; -import { SearchHierarchyFilterComponent } from './search-filters/search-filter/search-hierarchy-filter/search-hierarchy-filter.component'; -import { SearchConfigurationService } from './search-service/search-configuration.service'; -import { SearchFacetOptionComponent } from './search-filters/search-filter/search-facet-filter-options/search-facet-option/search-facet-option.component'; -import { SearchFacetSelectedOptionComponent } from './search-filters/search-filter/search-facet-filter-options/search-facet-selected-option/search-facet-selected-option.component'; -import { SearchFacetRangeOptionComponent } from './search-filters/search-filter/search-facet-filter-options/search-facet-range-option/search-facet-range-option.component'; -import { SearchSwitchConfigurationComponent } from './search-switch-configuration/search-switch-configuration.component'; -import { SearchAuthorityFilterComponent } from './search-filters/search-filter/search-authority-filter/search-authority-filter.component'; -var effects = [ - SearchSidebarEffects -]; -var components = [ - SearchPageComponent, - SearchResultsComponent, - SearchSidebarComponent, - SearchSettingsComponent, - ItemSearchResultGridElementComponent, - CollectionSearchResultGridElementComponent, - CommunitySearchResultGridElementComponent, - SearchFiltersComponent, - SearchFilterComponent, - SearchFacetFilterComponent, - SearchLabelsComponent, - SearchFacetFilterComponent, - SearchFacetFilterWrapperComponent, - SearchRangeFilterComponent, - SearchTextFilterComponent, - SearchHierarchyFilterComponent, - SearchBooleanFilterComponent, - SearchFacetOptionComponent, - SearchFacetSelectedOptionComponent, - SearchFacetRangeOptionComponent, - SearchSwitchConfigurationComponent, - SearchAuthorityFilterComponent, - FilteredSearchPageComponent -]; -var SearchPageModule = /** @class */ (function () { - /** - * This module handles all components and pipes that are necessary for the search page - */ - function SearchPageModule() { - } - SearchPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - SearchPageRoutingModule, - CommonModule, - SharedModule, - EffectsModule.forFeature(effects), - CoreModule.forRoot() - ], - declarations: components, - providers: [ - SearchSidebarService, - SearchFilterService, - SearchFixedFilterService, - FilteredSearchPageGuard, - SearchFilterService, - SearchConfigurationService - ], - entryComponents: [ - ItemSearchResultGridElementComponent, - CollectionSearchResultGridElementComponent, - CommunitySearchResultGridElementComponent, - SearchFacetFilterComponent, - SearchRangeFilterComponent, - SearchTextFilterComponent, - SearchHierarchyFilterComponent, - SearchBooleanFilterComponent, - SearchFacetOptionComponent, - SearchFacetSelectedOptionComponent, - SearchFacetRangeOptionComponent, - SearchAuthorityFilterComponent - ], - exports: components - }) - /** - * This module handles all components and pipes that are necessary for the search page - */ - ], SearchPageModule); - return SearchPageModule; -}()); -export { SearchPageModule }; -//# sourceMappingURL=search-page.module.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-page.module.js.map b/src/app/+search-page/search-page.module.js.map deleted file mode 100644 index 628bc18c81..0000000000 --- a/src/app/+search-page/search-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-page.module.js","sourceRoot":"","sources":["search-page.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-result.model.js b/src/app/+search-page/search-result.model.js deleted file mode 100644 index c3ce849864..0000000000 --- a/src/app/+search-page/search-result.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Represents a search result object of a certain () DSpaceObject - */ -var SearchResult = /** @class */ (function () { - function SearchResult() { - } - return SearchResult; -}()); -export { SearchResult }; -//# sourceMappingURL=search-result.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-result.model.js.map b/src/app/+search-page/search-result.model.js.map deleted file mode 100644 index 05c50b603a..0000000000 --- a/src/app/+search-page/search-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-result.model.js","sourceRoot":"","sources":["search-result.model.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH;IAAA;IAWA,CAAC;IAAD,mBAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/+search-page/search-results/search-results.component.js b/src/app/+search-page/search-results/search-results.component.js deleted file mode 100644 index e9cab0d935..0000000000 --- a/src/app/+search-page/search-results/search-results.component.js +++ /dev/null @@ -1,80 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { RemoteData } from '../../core/data/remote-data'; -import { fadeIn, fadeInOut } from '../../shared/animations/fade'; -import { SetViewMode } from '../../shared/view-mode'; -import { SearchOptions } from '../search-options.model'; -import { isNotEmpty } from '../../shared/empty.util'; -import { SortOptions } from '../../core/cache/models/sort-options.model'; -var SearchResultsComponent = /** @class */ (function () { - function SearchResultsComponent() { - /** - * Whether or not to hide the header of the results - * Defaults to a visible header - */ - this.disableHeader = false; - } - /** - * Get the i18n key for the title depending on the fixed filter - * Defaults to 'search.results.head' if there's no fixed filter found - * @returns {string} - */ - SearchResultsComponent.prototype.getTitleKey = function () { - if (isNotEmpty(this.fixedFilter)) { - return 'search.' + this.fixedFilter + '.results.head'; - } - else { - return 'search.results.head'; - } - }; - /** - * Method to change the given string by surrounding it by quotes if not already present. - */ - SearchResultsComponent.prototype.surroundStringWithQuotes = function (input) { - var result = input; - if (isNotEmpty(result) && !(result.startsWith('\"') && result.endsWith('\"'))) { - result = "\"" + result + "\""; - } - return result; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", RemoteData) - ], SearchResultsComponent.prototype, "searchResults", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SearchOptions) - ], SearchResultsComponent.prototype, "searchConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SortOptions) - ], SearchResultsComponent.prototype, "sortConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SearchResultsComponent.prototype, "viewMode", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SearchResultsComponent.prototype, "fixedFilter", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchResultsComponent.prototype, "disableHeader", void 0); - SearchResultsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-results', - templateUrl: './search-results.component.html', - animations: [ - fadeIn, - fadeInOut - ] - }) - /** - * Component that represents all results from a search - */ - ], SearchResultsComponent); - return SearchResultsComponent; -}()); -export { SearchResultsComponent }; -//# sourceMappingURL=search-results.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-results/search-results.component.js.map b/src/app/+search-page/search-results/search-results.component.js.map deleted file mode 100644 index e9c7499aaa..0000000000 --- a/src/app/+search-page/search-results/search-results.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-results.component.js","sourceRoot":"","sources":["search-results.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAczE;IAZA;QAsCE;;;WAGG;QACM,kBAAa,GAAG,KAAK,CAAC;IA2BjC,CAAC;IAzBC;;;;OAIG;IACH,4CAAW,GAAX;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAChC,OAAO,SAAS,GAAG,IAAI,CAAC,WAAW,GAAG,eAAe,CAAA;SACtD;aAAM;YACL,OAAO,qBAAqB,CAAC;SAC9B;IACH,CAAC;IAED;;OAEG;IACH,yDAAwB,GAAxB,UAAyB,KAAa;QACpC,IAAI,MAAM,GAAG,KAAK,CAAC;QAEnB,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE;YAC7E,MAAM,GAAG,OAAI,MAAM,OAAG,CAAC;SACxB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IApDQ;QAAR,KAAK,EAAE;0CAAgB,UAAU;iEAA4C;IAKrE;QAAR,KAAK,EAAE;0CAAe,aAAa;gEAAC;IAK5B;QAAR,KAAK,EAAE;0CAAa,WAAW;8DAAC;IAKxB;QAAR,KAAK,EAAE;;4DAAuB;IAKtB;QAAR,KAAK,EAAE;;+DAAqB;IAMpB;QAAR,KAAK,EAAE;;iEAAuB;IA9BpB,sBAAsB;QAZlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;YAC9C,UAAU,EAAE;gBACV,MAAM;gBACN,SAAS;aACV;SACF,CAAC;QAEF;;WAEG;OACU,sBAAsB,CAyDlC;IAAD,6BAAC;CAAA,AAzDD,IAyDC;SAzDY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/facet-value.model.js b/src/app/+search-page/search-service/facet-value.model.js deleted file mode 100644 index 282b1f6b8f..0000000000 --- a/src/app/+search-page/search-service/facet-value.model.js +++ /dev/null @@ -1,28 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs } from 'cerialize'; -/** - * Class representing possible values for a certain filter - */ -var FacetValue = /** @class */ (function () { - function FacetValue() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], FacetValue.prototype, "label", void 0); - tslib_1.__decorate([ - autoserializeAs(String, 'label'), - tslib_1.__metadata("design:type", String) - ], FacetValue.prototype, "value", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], FacetValue.prototype, "count", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], FacetValue.prototype, "search", void 0); - return FacetValue; -}()); -export { FacetValue }; -//# sourceMappingURL=facet-value.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/facet-value.model.js.map b/src/app/+search-page/search-service/facet-value.model.js.map deleted file mode 100644 index 0e7b9e7285..0000000000 --- a/src/app/+search-page/search-service/facet-value.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"facet-value.model.js","sourceRoot":"","sources":["facet-value.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE3D;;GAEG;AACH;IAAA;IAwBA,CAAC;IAnBC;QADC,aAAa;;6CACA;IAMd;QADC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC;;6CACnB;IAMd;QADC,aAAa;;6CACA;IAMd;QADC,aAAa;;8CACC;IACjB,iBAAC;CAAA,AAxBD,IAwBC;SAxBY,UAAU"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/filter-type.model.js b/src/app/+search-page/search-service/filter-type.model.js deleted file mode 100644 index 2f4007d130..0000000000 --- a/src/app/+search-page/search-service/filter-type.model.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * Enumeration containing all possible types for filters - */ -export var FilterType; -(function (FilterType) { - /** - * Represents authority facets - */ - FilterType["authority"] = "authority"; - /** - * Represents simple text facets - */ - FilterType["text"] = "text"; - /** - * Represents date facets - */ - FilterType["range"] = "date"; - /** - * Represents hierarchically structured facets - */ - FilterType["hierarchy"] = "hierarchical"; - /** - * Represents binary facets - */ - FilterType["boolean"] = "standard"; -})(FilterType || (FilterType = {})); -//# sourceMappingURL=filter-type.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/filter-type.model.js.map b/src/app/+search-page/search-service/filter-type.model.js.map deleted file mode 100644 index 0d78daf73d..0000000000 --- a/src/app/+search-page/search-service/filter-type.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"filter-type.model.js","sourceRoot":"","sources":["filter-type.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,UAyBX;AAzBD,WAAY,UAAU;IACpB;;OAEG;IACH,qCAAuB,CAAA;IAEvB;;OAEG;IACH,2BAAa,CAAA;IAEb;;OAEG;IACH,4BAAc,CAAA;IAEd;;OAEG;IACH,wCAA0B,CAAA;IAE1B;;OAEG;IACH,kCAAoB,CAAA;AACtB,CAAC,EAzBW,UAAU,KAAV,UAAU,QAyBrB"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-configuration.service.js b/src/app/+search-page/search-service/search-configuration.service.js deleted file mode 100644 index 82d397801a..0000000000 --- a/src/app/+search-page/search-service/search-configuration.service.js +++ /dev/null @@ -1,313 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { ActivatedRoute } from '@angular/router'; -import { BehaviorSubject, combineLatest as observableCombineLatest, merge as observableMerge, of as observableOf } from 'rxjs'; -import { filter, flatMap, map } from 'rxjs/operators'; -import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; -import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; -import { PaginatedSearchOptions } from '../paginated-search-options.model'; -import { RouteService } from '../../shared/services/route.service'; -import { hasNoValue, hasValue, isNotEmpty, isNotEmptyOperator } from '../../shared/empty.util'; -import { RemoteData } from '../../core/data/remote-data'; -import { getSucceededRemoteData } from '../../core/shared/operators'; -import { SearchFilter } from '../search-filter.model'; -import { DSpaceObjectType } from '../../core/shared/dspace-object-type.model'; -import { SearchFixedFilterService } from '../search-filters/search-filter/search-fixed-filter.service'; -/** - * Service that performs all actions that have to do with the current search configuration - */ -var SearchConfigurationService = /** @class */ (function () { - /** - * Initialize the search options - * @param {RouteService} routeService - * @param {SearchFixedFilterService} fixedFilterService - * @param {ActivatedRoute} route - */ - function SearchConfigurationService(routeService, fixedFilterService, route) { - this.routeService = routeService; - this.fixedFilterService = fixedFilterService; - this.route = route; - /** - * Default pagination settings - */ - this.defaultPagination = Object.assign(new PaginationComponentOptions(), { - id: 'search-page-configuration', - pageSize: 10, - currentPage: 1 - }); - /** - * Default sort settings - */ - this.defaultSort = new SortOptions('score', SortDirection.DESC); - /** - * Default configuration parameter setting - */ - this.defaultConfiguration = 'default'; - /** - * Default scope setting - */ - this.defaultScope = ''; - /** - * Default query setting - */ - this.defaultQuery = ''; - /** - * List of subscriptions to unsubscribe from on destroy - */ - this.subs = new Array(); - this.initDefaults(); - } - /** - * Initialize the search options - */ - SearchConfigurationService.prototype.initDefaults = function () { - var _this = this; - this.defaults - .pipe(getSucceededRemoteData()) - .subscribe(function (defRD) { - var defs = defRD.payload; - _this.paginatedSearchOptions = new BehaviorSubject(defs); - _this.searchOptions = new BehaviorSubject(defs); - _this.subs.push(_this.subscribeToSearchOptions(defs)); - _this.subs.push(_this.subscribeToPaginatedSearchOptions(defs)); - }); - }; - /** - * @returns {Observable} Emits the current configuration string - */ - SearchConfigurationService.prototype.getCurrentConfiguration = function (defaultConfiguration) { - return this.routeService.getQueryParameterValue('configuration').pipe(map(function (configuration) { - return configuration || defaultConfiguration; - })); - }; - /** - * @returns {Observable} Emits the current scope's identifier - */ - SearchConfigurationService.prototype.getCurrentScope = function (defaultScope) { - return this.routeService.getQueryParameterValue('scope').pipe(map(function (scope) { - return scope || defaultScope; - })); - }; - /** - * @returns {Observable} Emits the current query string - */ - SearchConfigurationService.prototype.getCurrentQuery = function (defaultQuery) { - return this.routeService.getQueryParameterValue('query').pipe(map(function (query) { - return query || defaultQuery; - })); - }; - /** - * @returns {Observable} Emits the current DSpaceObject type as a number - */ - SearchConfigurationService.prototype.getCurrentDSOType = function () { - return this.routeService.getQueryParameterValue('dsoType').pipe(filter(function (type) { return isNotEmpty(type) && hasValue(DSpaceObjectType[type.toUpperCase()]); }), map(function (type) { return DSpaceObjectType[type.toUpperCase()]; })); - }; - /** - * @returns {Observable} Emits the current pagination settings - */ - SearchConfigurationService.prototype.getCurrentPagination = function (defaultPagination) { - var page$ = this.routeService.getQueryParameterValue('page'); - var size$ = this.routeService.getQueryParameterValue('pageSize'); - return observableCombineLatest(page$, size$).pipe(map(function (_a) { - var page = _a[0], size = _a[1]; - return Object.assign(new PaginationComponentOptions(), defaultPagination, { - currentPage: page || defaultPagination.currentPage, - pageSize: size || defaultPagination.pageSize - }); - })); - }; - /** - * @returns {Observable} Emits the current sorting settings - */ - SearchConfigurationService.prototype.getCurrentSort = function (defaultSort) { - var _this = this; - var sortDirection$ = this.routeService.getQueryParameterValue('sortDirection'); - var sortField$ = this.routeService.getQueryParameterValue('sortField'); - return observableCombineLatest(sortDirection$, sortField$).pipe(map(function (_a) { - var sortDirection = _a[0], sortField = _a[1]; - // Dirty fix because sometimes the observable value is null somehow - sortField = _this.route.snapshot.queryParamMap.get('sortField'); - var field = sortField || defaultSort.field; - var direction = SortDirection[sortDirection] || defaultSort.direction; - return new SortOptions(field, direction); - })); - }; - /** - * @returns {Observable} Emits the current active filters with their values as they are sent to the backend - */ - SearchConfigurationService.prototype.getCurrentFilters = function () { - return this.routeService.getQueryParamsWithPrefix('f.').pipe(map(function (filterParams) { - if (isNotEmpty(filterParams)) { - var filters_1 = []; - Object.keys(filterParams).forEach(function (key) { - if (key.endsWith('.min') || key.endsWith('.max')) { - var realKey_1 = key.slice(0, -4); - if (hasNoValue(filters_1.find(function (f) { return f.key === realKey_1; }))) { - var min = filterParams[realKey_1 + '.min'] ? filterParams[realKey_1 + '.min'][0] : '*'; - var max = filterParams[realKey_1 + '.max'] ? filterParams[realKey_1 + '.max'][0] : '*'; - filters_1.push(new SearchFilter(realKey_1, ['[' + min + ' TO ' + max + ']'])); - } - } - else { - filters_1.push(new SearchFilter(key, filterParams[key])); - } - }); - return filters_1; - } - return []; - })); - }; - /** - * @returns {Observable} Emits the current fixed filter as a string - */ - SearchConfigurationService.prototype.getCurrentFixedFilter = function () { - var _this = this; - return this.routeService.getRouteParameterValue('filter').pipe(flatMap(function (f) { return _this.fixedFilterService.getQueryByFilterName(f); })); - }; - /** - * @returns {Observable} Emits the current active filters with their values as they are displayed in the frontend URL - */ - SearchConfigurationService.prototype.getCurrentFrontendFilters = function () { - return this.routeService.getQueryParamsWithPrefix('f.'); - }; - /** - * Sets up a subscription to all necessary parameters to make sure the searchOptions emits a new value every time they update - * @param {SearchOptions} defaults Default values for when no parameters are available - * @returns {Subscription} The subscription to unsubscribe from - */ - SearchConfigurationService.prototype.subscribeToSearchOptions = function (defaults) { - var _this = this; - return observableMerge(this.getConfigurationPart(defaults.configuration), this.getScopePart(defaults.scope), this.getQueryPart(defaults.query), this.getDSOTypePart(), this.getFiltersPart(), this.getFixedFilterPart()).subscribe(function (update) { - var currentValue = _this.searchOptions.getValue(); - var updatedValue = Object.assign(currentValue, update); - _this.searchOptions.next(updatedValue); - }); - }; - /** - * Sets up a subscription to all necessary parameters to make sure the paginatedSearchOptions emits a new value every time they update - * @param {PaginatedSearchOptions} defaults Default values for when no parameters are available - * @returns {Subscription} The subscription to unsubscribe from - */ - SearchConfigurationService.prototype.subscribeToPaginatedSearchOptions = function (defaults) { - var _this = this; - return observableMerge(this.getPaginationPart(defaults.pagination), this.getSortPart(defaults.sort), this.getConfigurationPart(defaults.configuration), this.getScopePart(defaults.scope), this.getQueryPart(defaults.query), this.getDSOTypePart(), this.getFiltersPart(), this.getFixedFilterPart()).subscribe(function (update) { - var currentValue = _this.paginatedSearchOptions.getValue(); - var updatedValue = Object.assign(currentValue, update); - _this.paginatedSearchOptions.next(updatedValue); - }); - }; - Object.defineProperty(SearchConfigurationService.prototype, "defaults", { - /** - * Default values for the Search Options - */ - get: function () { - if (hasNoValue(this._defaults)) { - var options = new PaginatedSearchOptions({ - pagination: this.defaultPagination, - configuration: this.defaultConfiguration, - sort: this.defaultSort, - scope: this.defaultScope, - query: this.defaultQuery - }); - this._defaults = observableOf(new RemoteData(false, false, true, null, options)); - } - return this._defaults; - }, - enumerable: true, - configurable: true - }); - /** - * Make sure to unsubscribe from all existing subscription to prevent memory leaks - */ - SearchConfigurationService.prototype.ngOnDestroy = function () { - this.subs.forEach(function (sub) { - sub.unsubscribe(); - }); - this.subs = []; - }; - /** - * @returns {Observable} Emits the current configuration settings as a partial SearchOptions object - */ - SearchConfigurationService.prototype.getConfigurationPart = function (defaultConfiguration) { - return this.getCurrentConfiguration(defaultConfiguration).pipe(map(function (configuration) { - return { configuration: configuration }; - })); - }; - /** - * @returns {Observable} Emits the current scope's identifier - */ - SearchConfigurationService.prototype.getScopePart = function (defaultScope) { - return this.getCurrentScope(defaultScope).pipe(map(function (scope) { - return { scope: scope }; - })); - }; - /** - * @returns {Observable} Emits the current query string as a partial SearchOptions object - */ - SearchConfigurationService.prototype.getQueryPart = function (defaultQuery) { - return this.getCurrentQuery(defaultQuery).pipe(map(function (query) { - return { query: query }; - })); - }; - /** - * @returns {Observable} Emits the current query string as a partial SearchOptions object - */ - SearchConfigurationService.prototype.getDSOTypePart = function () { - return this.getCurrentDSOType().pipe(map(function (dsoType) { - return { dsoType: dsoType }; - })); - }; - /** - * @returns {Observable} Emits the current pagination settings as a partial SearchOptions object - */ - SearchConfigurationService.prototype.getPaginationPart = function (defaultPagination) { - return this.getCurrentPagination(defaultPagination).pipe(map(function (pagination) { - return { pagination: pagination }; - })); - }; - /** - * @returns {Observable} Emits the current sorting settings as a partial SearchOptions object - */ - SearchConfigurationService.prototype.getSortPart = function (defaultSort) { - return this.getCurrentSort(defaultSort).pipe(map(function (sort) { - return { sort: sort }; - })); - }; - /** - * @returns {Observable} Emits the current active filters as a partial SearchOptions object - */ - SearchConfigurationService.prototype.getFiltersPart = function () { - return this.getCurrentFilters().pipe(map(function (filters) { - return { filters: filters }; - })); - }; - /** - * @returns {Observable} Emits the current fixed filter as a partial SearchOptions object - */ - SearchConfigurationService.prototype.getFixedFilterPart = function () { - return this.getCurrentFixedFilter().pipe(isNotEmptyOperator(), map(function (fixedFilter) { - return { fixedFilter: fixedFilter }; - })); - }; - /** - * Update the fixed filter in paginated and non-paginated search options with a given value - * @param {string} fixedFilter - */ - SearchConfigurationService.prototype.updateFixedFilter = function (fixedFilter) { - var currentPaginatedValue = this.paginatedSearchOptions.getValue(); - var updatedPaginatedValue = Object.assign(currentPaginatedValue, { fixedFilter: fixedFilter }); - this.paginatedSearchOptions.next(updatedPaginatedValue); - var currentValue = this.searchOptions.getValue(); - var updatedValue = Object.assign(currentValue, { fixedFilter: fixedFilter }); - this.searchOptions.next(updatedValue); - }; - SearchConfigurationService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RouteService, - SearchFixedFilterService, - ActivatedRoute]) - ], SearchConfigurationService); - return SearchConfigurationService; -}()); -export { SearchConfigurationService }; -//# sourceMappingURL=search-configuration.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-configuration.service.js.map b/src/app/+search-page/search-service/search-configuration.service.js.map deleted file mode 100644 index 588ab4b935..0000000000 --- a/src/app/+search-page/search-service/search-configuration.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-configuration.service.js","sourceRoot":"","sources":["search-configuration.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-filter-config.model.js b/src/app/+search-page/search-service/search-filter-config.model.js deleted file mode 100644 index 44fe2b8a48..0000000000 --- a/src/app/+search-page/search-service/search-filter-config.model.js +++ /dev/null @@ -1,56 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FilterType } from './filter-type.model'; -import { autoserialize, autoserializeAs } from 'cerialize'; -/** - * The configuration for a search filter - */ -var SearchFilterConfig = /** @class */ (function () { - function SearchFilterConfig() { - /** - * @type {number} The page size used for this facet - */ - this.pageSize = 5; - } - Object.defineProperty(SearchFilterConfig.prototype, "paramName", { - /** - * Name of this configuration that can be used in a url - * @returns Parameter name - */ - get: function () { - return 'f.' + this.name; - }, - enumerable: true, - configurable: true - }); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchFilterConfig.prototype, "name", void 0); - tslib_1.__decorate([ - autoserializeAs(String, 'facetType'), - tslib_1.__metadata("design:type", String) - ], SearchFilterConfig.prototype, "type", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], SearchFilterConfig.prototype, "hasFacets", void 0); - tslib_1.__decorate([ - autoserializeAs(String, 'facetLimit'), - tslib_1.__metadata("design:type", Object) - ], SearchFilterConfig.prototype, "pageSize", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], SearchFilterConfig.prototype, "isOpenByDefault", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchFilterConfig.prototype, "maxValue", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchFilterConfig.prototype, "minValue", void 0); - return SearchFilterConfig; -}()); -export { SearchFilterConfig }; -//# sourceMappingURL=search-filter-config.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-filter-config.model.js.map b/src/app/+search-page/search-service/search-filter-config.model.js.map deleted file mode 100644 index 7831d132a2..0000000000 --- a/src/app/+search-page/search-service/search-filter-config.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-filter-config.model.js","sourceRoot":"","sources":["search-filter-config.model.ts"],"names":[],"mappings":";AAAE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE3D;;GAEG;AACH;IAAA;QAoBE;;WAEG;QAEH,aAAQ,GAAG,CAAC,CAAC;IA2Bf,CAAC;IAHC,sBAAI,yCAAS;QAJb;;;WAGG;aACH;YACE,OAAO,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAC1B,CAAC;;;OAAA;IA5CD;QADC,aAAa;;oDACD;IAMb;QADC,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC;;oDACpB;IAMjB;QADC,aAAa;;yDACK;IAMnB;QADC,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC;;wDACzB;IAMb;QADC,aAAa;;+DACW;IAMzB;QADC,aAAa;;wDACG;IAMjB;QADC,aAAa;;wDACG;IASnB,yBAAC;CAAA,AAnDD,IAmDC;SAnDY,kBAAkB"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-query-response.model.js b/src/app/+search-page/search-service/search-query-response.model.js deleted file mode 100644 index bde61becbc..0000000000 --- a/src/app/+search-page/search-service/search-query-response.model.js +++ /dev/null @@ -1,70 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs } from 'cerialize'; -import { PageInfo } from '../../core/shared/page-info.model'; -import { NormalizedSearchResult } from '../normalized-search-result.model'; -/** - * Class representing the response returned by the server when performing a search request - */ -var SearchQueryResponse = /** @class */ (function () { - function SearchQueryResponse() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "scope", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "query", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Array) - ], SearchQueryResponse.prototype, "appliedFilters", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], SearchQueryResponse.prototype, "sort", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "configuration", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "type", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", PageInfo) - ], SearchQueryResponse.prototype, "page", void 0); - tslib_1.__decorate([ - autoserializeAs(NormalizedSearchResult), - tslib_1.__metadata("design:type", Array) - ], SearchQueryResponse.prototype, "objects", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], SearchQueryResponse.prototype, "facets", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "self", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "next", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "previous", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "first", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SearchQueryResponse.prototype, "last", void 0); - return SearchQueryResponse; -}()); -export { SearchQueryResponse }; -//# sourceMappingURL=search-query-response.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-query-response.model.js.map b/src/app/+search-page/search-service/search-query-response.model.js.map deleted file mode 100644 index d365b0de2c..0000000000 --- a/src/app/+search-page/search-service/search-query-response.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-query-response.model.js","sourceRoot":"","sources":["search-query-response.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E;;GAEG;AACH;IAAA;IAiFA,CAAC;IA5EC;QADC,aAAa;;sDACA;IAMd;QADC,aAAa;;sDACA;IAMd;QADC,aAAa;;+DACQ;IAMtB;QADC,aAAa;;qDACJ;IAMV;QADC,aAAa;;8DACQ;IAMtB;QADC,aAAa;;qDACM;IAMpB;QADC,aAAa;0CACR,QAAQ;qDAAC;IAMf;QADC,eAAe,CAAC,sBAAsB,CAAC;;wDACN;IAGlC;QADC,aAAa;;uDACF;IAMZ;QADC,aAAa;;qDACD;IAMb;QADC,aAAa;;qDACD;IAMb;QADC,aAAa;;yDACG;IAMjB;QADC,aAAa;;sDACA;IAMd;QADC,aAAa;;qDACD;IACf,0BAAC;CAAA,AAjFD,IAiFC;SAjFY,mBAAmB"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-result-element-decorator.js b/src/app/+search-page/search-service/search-result-element-decorator.js deleted file mode 100644 index aeadebaea2..0000000000 --- a/src/app/+search-page/search-service/search-result-element-decorator.js +++ /dev/null @@ -1,42 +0,0 @@ -import { isNull } from '../../shared/empty.util'; -/** - * Contains the mapping between a search result component and a DSpaceObject - */ -var searchResultMap = new Map(); -/** - * Used to map Search Result components to their matching DSpaceObject - * @param {GenericConstructor} domainConstructor The constructor of the DSpaceObject - * @returns Decorator function that performs the actual mapping on initialization of the component - */ -export function searchResultFor(domainConstructor, configuration) { - if (configuration === void 0) { configuration = null; } - return function decorator(searchResult) { - if (!searchResult) { - return; - } - if (isNull(configuration)) { - searchResultMap.set(domainConstructor, searchResult); - } - else { - if (!searchResultMap.get(configuration)) { - searchResultMap.set(configuration, new Map()); - } - searchResultMap.get(configuration).set(domainConstructor, searchResult); - } - }; -} -/** - * Requests the matching component based on a given DSpaceObject's constructor - * @param {GenericConstructor} domainConstructor The DSpaceObject's constructor for which the search result component is requested - * @returns The component's constructor that matches the given DSpaceObject - */ -export function getSearchResultFor(domainConstructor, configuration) { - if (configuration === void 0) { configuration = null; } - if (isNull(configuration) || configuration === 'default') { - return searchResultMap.get(domainConstructor); - } - else { - return searchResultMap.get(configuration).get(domainConstructor); - } -} -//# sourceMappingURL=search-result-element-decorator.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search-result-element-decorator.js.map b/src/app/+search-page/search-service/search-result-element-decorator.js.map deleted file mode 100644 index f9f3969332..0000000000 --- a/src/app/+search-page/search-service/search-result-element-decorator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-result-element-decorator.js","sourceRoot":"","sources":["search-result-element-decorator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD;;GAEG;AACH,IAAM,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;AAElC;;;;GAIG;AACH,MAAM,0BAA0B,iBAAqD,EAAE,aAA4B;IAA5B,8BAAA,EAAA,oBAA4B;IACjH,OAAO,mBAAmB,YAAiB;QACzC,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO;SACR;QACD,IAAI,MAAM,CAAC,aAAa,CAAC,EAAE;YACzB,eAAe,CAAC,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;SACtD;aAAM;YACL,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;gBACvC,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;aAC/C;YACD,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;SACzE;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,6BAA6B,iBAAqD,EAAE,aAA4B;IAA5B,8BAAA,EAAA,oBAA4B;IACpH,IAAI,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,KAAK,SAAS,EAAE;QACxD,OAAO,eAAe,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;KAC/C;SAAM;QACL,OAAO,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;KAClE;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/+search-page/search-service/search.service.js b/src/app/+search-page/search-service/search.service.js deleted file mode 100644 index 972f0a466e..0000000000 --- a/src/app/+search-page/search-service/search.service.js +++ /dev/null @@ -1,279 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest, of as observableOf } from 'rxjs'; -import { Injectable } from '@angular/core'; -import { Router } from '@angular/router'; -import { first, map, switchMap } from 'rxjs/operators'; -import { RemoteDataBuildService } from '../../core/cache/builders/remote-data-build.service'; -import { PaginatedList } from '../../core/data/paginated-list'; -import { GetRequest } from '../../core/data/request.models'; -import { RequestService } from '../../core/data/request.service'; -import { DSpaceObject } from '../../core/shared/dspace-object.model'; -import { HALEndpointService } from '../../core/shared/hal-endpoint.service'; -import { configureRequest, filterSuccessfulResponses, getResponseFromEntry, getSucceededRemoteData } from '../../core/shared/operators'; -import { URLCombiner } from '../../core/url-combiner/url-combiner'; -import { hasValue, isEmpty, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; -import { SearchFilterConfig } from './search-filter-config.model'; -import { SearchResponseParsingService } from '../../core/data/search-response-parsing.service'; -import { getSearchResultFor } from './search-result-element-decorator'; -import { FacetValueResponseParsingService } from '../../core/data/facet-value-response-parsing.service'; -import { FacetConfigResponseParsingService } from '../../core/data/facet-config-response-parsing.service'; -import { CommunityDataService } from '../../core/data/community-data.service'; -import { ViewMode } from '../../core/shared/view-mode.model'; -import { ResourceType } from '../../core/shared/resource-type'; -import { DSpaceObjectDataService } from '../../core/data/dspace-object-data.service'; -import { RouteService } from '../../shared/services/route.service'; -/** - * Service that performs all general actions that have to do with the search page - */ -var SearchService = /** @class */ (function () { - function SearchService(router, routeService, requestService, rdb, halService, communityService, dspaceObjectService) { - this.router = router; - this.routeService = routeService; - this.requestService = requestService; - this.rdb = rdb; - this.halService = halService; - this.communityService = communityService; - this.dspaceObjectService = dspaceObjectService; - /** - * Endpoint link path for retrieving general search results - */ - this.searchLinkPath = 'discover/search/objects'; - /** - * Endpoint link path for retrieving facet config incl values - */ - this.facetLinkPathPrefix = 'discover/facets/'; - /** - * The ResponseParsingService constructor name - */ - this.parser = SearchResponseParsingService; - /** - * The RestRequest constructor name - */ - this.request = GetRequest; - } - /** - * Method to set service options - * @param {GenericConstructor} parser The ResponseParsingService constructor name - * @param {boolean} request The RestRequest constructor name - */ - SearchService.prototype.setServiceOptions = function (parser, request) { - if (parser) { - this.parser = parser; - } - if (request) { - this.request = request; - } - }; - /** - * Method to retrieve a paginated list of search results from the server - * @param {PaginatedSearchOptions} searchOptions The configuration necessary to perform this search - * @returns {Observable>>>} Emits a paginated list with all search results found - */ - SearchService.prototype.search = function (searchOptions) { - var _this = this; - var requestObs = this.halService.getEndpoint(this.searchLinkPath).pipe(map(function (url) { - if (hasValue(searchOptions)) { - url = searchOptions.toRestUrl(url); - } - var request = new _this.request(_this.requestService.generateRequestId(), url); - var getResponseParserFn = function () { - return _this.parser; - }; - return Object.assign(request, { - getResponseParser: getResponseParserFn - }); - }), configureRequest(this.requestService)); - var requestEntryObs = requestObs.pipe(switchMap(function (request) { return _this.requestService.getByHref(request.href); })); - // get search results from response cache - var sqrObs = requestEntryObs.pipe(filterSuccessfulResponses(), map(function (response) { return response.results; })); - // turn dspace href from search results to effective list of DSpaceObjects - // Turn list of observable remote data DSO's into observable remote data object with list of DSO - var dsoObs = sqrObs.pipe(map(function (sqr) { - return sqr.objects - .filter(function (nsr) { return isNotUndefined(nsr.indexableObject); }) - .map(function (nsr) { - return _this.rdb.buildSingle(nsr.indexableObject); - }); - }), switchMap(function (input) { return _this.rdb.aggregate(input); })); - // Create search results again with the correct dso objects linked to each result - var tDomainListObs = observableCombineLatest(sqrObs, dsoObs).pipe(map(function (_a) { - var sqr = _a[0], dsos = _a[1]; - return sqr.objects.map(function (object, index) { - var co = DSpaceObject; - if (dsos.payload[index]) { - var constructor = dsos.payload[index].constructor; - co = getSearchResultFor(constructor, searchOptions.configuration); - return Object.assign(new co(), object, { - indexableObject: dsos.payload[index] - }); - } - else { - return undefined; - } - }); - })); - var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); - var payloadObs = observableCombineLatest(tDomainListObs, pageInfoObs).pipe(map(function (_a) { - var tDomainList = _a[0], pageInfo = _a[1]; - return new PaginatedList(pageInfo, tDomainList); - })); - return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); - }; - /** - * Request the filter configuration for a given scope or the whole repository - * @param {string} scope UUID of the object for which config the filter config is requested, when no scope is provided the configuration for the whole repository is loaded - * @param {string} configurationName the name of the configuration - * @returns {Observable>} The found filter configuration - */ - SearchService.prototype.getConfig = function (scope, configurationName) { - var _this = this; - var requestObs = this.halService.getEndpoint(this.facetLinkPathPrefix).pipe(map(function (url) { - var args = []; - if (isNotEmpty(scope)) { - args.push("scope=" + scope); - } - if (isNotEmpty(configurationName)) { - args.push("configuration=" + configurationName); - } - if (isNotEmpty(args)) { - url = new URLCombiner(url, "?" + args.join('&')).toString(); - } - var request = new _this.request(_this.requestService.generateRequestId(), url); - return Object.assign(request, { - getResponseParser: function () { - return FacetConfigResponseParsingService; - } - }); - }), configureRequest(this.requestService)); - var requestEntryObs = requestObs.pipe(switchMap(function (request) { return _this.requestService.getByHref(request.href); })); - // get search results from response cache - var facetConfigObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { - return response.results.map(function (result) { return Object.assign(new SearchFilterConfig(), result); }); - })); - return this.rdb.toRemoteDataObservable(requestEntryObs, facetConfigObs); - }; - /** - * Method to request a single page of filter values for a given value - * @param {SearchFilterConfig} filterConfig The filter config for which we want to request filter values - * @param {number} valuePage The page number of the filter values - * @param {SearchOptions} searchOptions The search configuration for the current search - * @param {string} filterQuery The optional query used to filter out filter values - * @returns {Observable>>} Emits the given page of facet values - */ - SearchService.prototype.getFacetValuesFor = function (filterConfig, valuePage, searchOptions, filterQuery) { - var _this = this; - var requestObs = this.halService.getEndpoint(this.facetLinkPathPrefix + filterConfig.name).pipe(map(function (url) { - var args = ["page=" + (valuePage - 1), "size=" + filterConfig.pageSize]; - if (hasValue(filterQuery)) { - args.push("prefix=" + filterQuery); - } - if (hasValue(searchOptions)) { - url = searchOptions.toRestUrl(url, args); - } - var request = new _this.request(_this.requestService.generateRequestId(), url); - return Object.assign(request, { - getResponseParser: function () { - return FacetValueResponseParsingService; - } - }); - }), configureRequest(this.requestService), first()); - var requestEntryObs = requestObs.pipe(switchMap(function (request) { return _this.requestService.getByHref(request.href); })); - // get search results from response cache - var facetValueObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.results; })); - var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); - var payloadObs = observableCombineLatest(facetValueObs, pageInfoObs).pipe(map(function (_a) { - var facetValue = _a[0], pageInfo = _a[1]; - return new PaginatedList(pageInfo, facetValue); - })); - return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); - }; - /** - * Request a list of DSpaceObjects that can be used as a scope, based on the current scope - * @param {string} scopeId UUID of the current scope, if the scope is empty, the repository wide scopes will be returned - * @returns {Observable} Emits a list of DSpaceObjects which represent possible scopes - */ - SearchService.prototype.getScopes = function (scopeId) { - if (isEmpty(scopeId)) { - var top_1 = this.communityService.findTop({ elementsPerPage: 9999 }).pipe(map(function (communities) { return communities.payload.page; })); - return top_1; - } - var scopeObject = this.dspaceObjectService.findById(scopeId).pipe(getSucceededRemoteData()); - var scopeList = scopeObject.pipe(switchMap(function (dsoRD) { - if (dsoRD.payload.type === ResourceType.Community) { - var community_1 = dsoRD.payload; - return observableCombineLatest(community_1.subcommunities, community_1.collections).pipe(map(function (_a) { - var subCommunities = _a[0], collections = _a[1]; - /*if this is a community, we also need to show the direct children*/ - return [community_1].concat(subCommunities.payload.page, collections.payload.page); - })); - } - else { - return observableOf([dsoRD.payload]); - } - })); - return scopeList; - }; - /** - * Requests the current view mode based on the current URL - * @returns {Observable} The current view mode - */ - SearchService.prototype.getViewMode = function () { - return this.routeService.getQueryParamMap().pipe(map(function (params) { - if (isNotEmpty(params.get('view')) && hasValue(params.get('view'))) { - return params.get('view'); - } - else { - return ViewMode.List; - } - })); - }; - /** - * Changes the current view mode in the current URL - * @param {ViewMode} viewMode Mode to switch to - */ - SearchService.prototype.setViewMode = function (viewMode, searchLinkParts) { - var _this = this; - this.routeService.getQueryParameterValue('pageSize').pipe(first()) - .subscribe(function (pageSize) { - var queryParams = { view: viewMode, page: 1 }; - if (viewMode === ViewMode.Detail) { - queryParams = Object.assign(queryParams, { pageSize: '1' }); - } - else if (pageSize === '1') { - queryParams = Object.assign(queryParams, { pageSize: '10' }); - } - var navigationExtras = { - queryParams: queryParams, - queryParamsHandling: 'merge' - }; - _this.router.navigate(hasValue(searchLinkParts) ? searchLinkParts : [_this.getSearchLink()], navigationExtras); - }); - }; - /** - * @returns {string} The base path to the search page - */ - SearchService.prototype.getSearchLink = function () { - return '/search'; - }; - /** - * Unsubscribe from the subscription - */ - SearchService.prototype.ngOnDestroy = function () { - if (this.sub !== undefined) { - this.sub.unsubscribe(); - } - }; - SearchService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Router, - RouteService, - RequestService, - RemoteDataBuildService, - HALEndpointService, - CommunityDataService, - DSpaceObjectDataService]) - ], SearchService); - return SearchService; -}()); -export { SearchService }; -//# sourceMappingURL=search.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-service/search.service.js.map b/src/app/+search-page/search-service/search.service.js.map deleted file mode 100644 index a264603707..0000000000 --- a/src/app/+search-page/search-service/search.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search.service.js","sourceRoot":"","sources":["search.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-settings/search-settings.component.js b/src/app/+search-page/search-settings/search-settings.component.js deleted file mode 100644 index 4569822552..0000000000 --- a/src/app/+search-page/search-settings/search-settings.component.js +++ /dev/null @@ -1,97 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Input } from '@angular/core'; -import { SearchService } from '../search-service/search.service'; -import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; -import { ActivatedRoute, Router } from '@angular/router'; -import { SearchConfigurationService } from '../search-service/search-configuration.service'; -import { SEARCH_CONFIG_SERVICE } from '../../+my-dspace-page/my-dspace-page.component'; -var SearchSettingsComponent = /** @class */ (function () { - function SearchSettingsComponent(service, route, router, searchConfigurationService) { - this.service = service; - this.route = route; - this.router = router; - this.searchConfigurationService = searchConfigurationService; - /** - * All sort options that are shown in the settings - */ - this.searchOptionPossibilities = [new SortOptions('score', SortDirection.DESC), new SortOptions('dc.title', SortDirection.ASC), new SortOptions('dc.title', SortDirection.DESC)]; - } - /** - * Initialize paginated search options - */ - SearchSettingsComponent.prototype.ngOnInit = function () { - this.searchOptions$ = this.searchConfigurationService.paginatedSearchOptions; - }; - /** - * Method to change the current page size (results per page) - * @param {Event} event Change event containing the new page size value - */ - SearchSettingsComponent.prototype.reloadRPP = function (event) { - var value = event.target.value; - var navigationExtras = { - queryParams: { - pageSize: value, - page: 1 - }, - queryParamsHandling: 'merge' - }; - this.router.navigate(this.getSearchLinkParts(), navigationExtras); - }; - /** - * Method to change the current sort field and direction - * @param {Event} event Change event containing the sort direction and sort field - */ - SearchSettingsComponent.prototype.reloadOrder = function (event) { - var values = event.target.value.split(','); - var navigationExtras = { - queryParams: { - sortDirection: values[1], - sortField: values[0], - page: 1 - }, - queryParamsHandling: 'merge' - }; - this.router.navigate(this.getSearchLinkParts(), navigationExtras); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchSettingsComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.service.getSearchLink(); - }; - /** - * @returns {string[]} The base path to the search page, or the current page when inPlaceSearch is true, split in separate pieces - */ - SearchSettingsComponent.prototype.getSearchLinkParts = function () { - if (this.service) { - return []; - } - return this.getSearchLink().split('/'); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchSettingsComponent.prototype, "inPlaceSearch", void 0); - SearchSettingsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-settings', - styleUrls: ['./search-settings.component.scss'], - templateUrl: './search-settings.component.html' - }) - /** - * This component represents the part of the search sidebar that contains the general search settings. - */ - , - tslib_1.__param(3, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__metadata("design:paramtypes", [SearchService, - ActivatedRoute, - Router, - SearchConfigurationService]) - ], SearchSettingsComponent); - return SearchSettingsComponent; -}()); -export { SearchSettingsComponent }; -//# sourceMappingURL=search-settings.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-settings/search-settings.component.js.map b/src/app/+search-page/search-settings/search-settings.component.js.map deleted file mode 100644 index 17ea1709c3..0000000000 --- a/src/app/+search-page/search-settings/search-settings.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-settings.component.js","sourceRoot":"","sources":["search-settings.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.actions.js b/src/app/+search-page/search-sidebar/search-sidebar.actions.js deleted file mode 100644 index 0d9d950384..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.actions.js +++ /dev/null @@ -1,46 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var SearchSidebarActionTypes = { - COLLAPSE: type('dspace/search-sidebar/COLLAPSE'), - EXPAND: type('dspace/search-sidebar/EXPAND'), - TOGGLE: type('dspace/search-sidebar/TOGGLE') -}; -/* tslint:disable:max-classes-per-file */ -/** - * Used to collapse the sidebar - */ -var SearchSidebarCollapseAction = /** @class */ (function () { - function SearchSidebarCollapseAction() { - this.type = SearchSidebarActionTypes.COLLAPSE; - } - return SearchSidebarCollapseAction; -}()); -export { SearchSidebarCollapseAction }; -/** - * Used to expand the sidebar - */ -var SearchSidebarExpandAction = /** @class */ (function () { - function SearchSidebarExpandAction() { - this.type = SearchSidebarActionTypes.EXPAND; - } - return SearchSidebarExpandAction; -}()); -export { SearchSidebarExpandAction }; -/** - * Used to collapse the sidebar when it's expanded and expand it when it's collapsed - */ -var SearchSidebarToggleAction = /** @class */ (function () { - function SearchSidebarToggleAction() { - this.type = SearchSidebarActionTypes.TOGGLE; - } - return SearchSidebarToggleAction; -}()); -export { SearchSidebarToggleAction }; -//# sourceMappingURL=search-sidebar.actions.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.actions.js.map b/src/app/+search-page/search-sidebar/search-sidebar.actions.js.map deleted file mode 100644 index 4cb6a1db1a..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-sidebar.actions.js","sourceRoot":"","sources":["search-sidebar.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,wBAAwB,GAAG;IACtC,QAAQ,EAAE,IAAI,CAAC,gCAAgC,CAAC;IAChD,MAAM,EAAE,IAAI,CAAC,8BAA8B,CAAC;IAC5C,MAAM,EAAE,IAAI,CAAC,8BAA8B,CAAC;CAC7C,CAAC;AAEF,yCAAyC;AACzC;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,wBAAwB,CAAC,QAAQ,CAAC;IAC3C,CAAC;IAAD,kCAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,wBAAwB,CAAC,MAAM,CAAC;IACzC,CAAC;IAAD,gCAAC;AAAD,CAAC,AAFD,IAEC;;AAED;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,wBAAwB,CAAC,MAAM,CAAC;IACzC,CAAC;IAAD,gCAAC;AAAD,CAAC,AAFD,IAEC"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.js b/src/app/+search-page/search-sidebar/search-sidebar.component.js deleted file mode 100644 index 669647c3aa..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.component.js +++ /dev/null @@ -1,48 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -/** - * This component renders a simple item page. - * The route parameter 'id' is used to request the item it represents. - * All fields of the item that should be displayed, are defined in its template. - */ -var SearchSidebarComponent = /** @class */ (function () { - function SearchSidebarComponent() { - /** - * Emits event when the user clicks a button to open or close the sidebar - */ - this.toggleSidebar = new EventEmitter(); - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], SearchSidebarComponent.prototype, "configurationList", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchSidebarComponent.prototype, "resultCount", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchSidebarComponent.prototype, "viewModeList", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchSidebarComponent.prototype, "inPlaceSearch", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], SearchSidebarComponent.prototype, "toggleSidebar", void 0); - SearchSidebarComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-sidebar', - styleUrls: ['./search-sidebar.component.scss'], - templateUrl: './search-sidebar.component.html', - }) - /** - * Component representing the sidebar on the search page - */ - ], SearchSidebarComponent); - return SearchSidebarComponent; -}()); -export { SearchSidebarComponent }; -//# sourceMappingURL=search-sidebar.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.js.map b/src/app/+search-page/search-sidebar/search-sidebar.component.js.map deleted file mode 100644 index 8582442a2b..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-sidebar.component.js","sourceRoot":"","sources":["search-sidebar.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAIvE;;;;GAIG;AAWH;IATA;QA+BE;;WAEG;QACO,kBAAa,GAAG,IAAI,YAAY,EAAW,CAAC;IAExD,CAAC;IAtBU;QAAR,KAAK,EAAE;;qEAAgD;IAK/C;QAAR,KAAK,EAAE;;+DAAa;IAKZ;QAAR,KAAK,EAAE;;gEAAc;IAKb;QAAR,KAAK,EAAE;;iEAAe;IAKb;QAAT,MAAM,EAAE;;iEAA6C;IAzB3C,sBAAsB;QATlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QAEF;;WAEG;OACU,sBAAsB,CA2BlC;IAAD,6BAAC;CAAA,AA3BD,IA2BC;SA3BY,sBAAsB"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.effects.js b/src/app/+search-page/search-sidebar/search-sidebar.effects.js deleted file mode 100644 index 8f788ba393..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.effects.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map, tap, filter } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { Effect, Actions, ofType } from '@ngrx/effects'; -import * as fromRouter from '@ngrx/router-store'; -import { SearchSidebarCollapseAction } from './search-sidebar.actions'; -import { URLBaser } from '../../core/url-baser/url-baser'; -/** - * Makes sure that if the user navigates to another route, the sidebar is collapsed - */ -var SearchSidebarEffects = /** @class */ (function () { - function SearchSidebarEffects(actions$) { - var _this = this; - this.actions$ = actions$; - this.routeChange$ = this.actions$ - .pipe(ofType(fromRouter.ROUTER_NAVIGATION), filter(function (action) { return _this.previousPath !== _this.getBaseUrl(action); }), tap(function (action) { - _this.previousPath = _this.getBaseUrl(action); - }), map(function () { return new SearchSidebarCollapseAction(); })); - } - SearchSidebarEffects.prototype.getBaseUrl = function (action) { - /* tslint:disable:no-string-literal */ - var url = action['payload'].routerState.url; - return new URLBaser(url).toString(); - /* tslint:enable:no-string-literal */ - }; - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SearchSidebarEffects.prototype, "routeChange$", void 0); - SearchSidebarEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions]) - ], SearchSidebarEffects); - return SearchSidebarEffects; -}()); -export { SearchSidebarEffects }; -//# sourceMappingURL=search-sidebar.effects.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.effects.js.map b/src/app/+search-page/search-sidebar/search-sidebar.effects.js.map deleted file mode 100644 index 3d714074ee..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-sidebar.effects.js","sourceRoot":"","sources":["search-sidebar.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE1D;;GAEG;AAEH;IAYE,8BAAoB,QAAiB;QAArC,iBAEC;QAFmB,aAAQ,GAAR,QAAQ,CAAS;QAV3B,iBAAY,GAAG,IAAI,CAAC,QAAQ;aACnC,IAAI,CACH,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,EACpC,MAAM,CAAC,UAAC,MAAM,IAAK,OAAA,KAAI,CAAC,YAAY,KAAK,KAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAA7C,CAA6C,CAAC,EACjE,GAAG,CAAC,UAAC,MAAM;YACT,KAAI,CAAC,YAAY,GAAG,KAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC7C,CAAC,CAAC,EACF,GAAG,CAAC,cAAM,OAAA,IAAI,2BAA2B,EAAE,EAAjC,CAAiC,CAAC,CAC7C,CAAC;IAIJ,CAAC;IAED,yCAAU,GAAV,UAAW,MAAW;QACpB,sCAAsC;QACtC,IAAM,GAAG,GAAW,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC;QACtD,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QACpC,qCAAqC;IACvC,CAAC;IAnBS;QAAT,MAAM,EAAE;;8DAQL;IAVO,oBAAoB;QADhC,UAAU,EAAE;iDAamB,OAAO;OAZ1B,oBAAoB,CAuBhC;IAAD,2BAAC;CAAA,AAvBD,IAuBC;SAvBY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.reducer.js b/src/app/+search-page/search-sidebar/search-sidebar.reducer.js deleted file mode 100644 index 8ac297eafb..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.reducer.js +++ /dev/null @@ -1,34 +0,0 @@ -import { SearchSidebarActionTypes } from './search-sidebar.actions'; -var initialState = { - sidebarCollapsed: true -}; -/** - * Performs a search sidebar action on the current state - * @param {SearchSidebarState} state The state before the action is performed - * @param {SearchSidebarAction} action The action that should be performed - * @returns {SearchSidebarState} The state after the action is performed - */ -export function sidebarReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case SearchSidebarActionTypes.COLLAPSE: { - return Object.assign({}, state, { - sidebarCollapsed: true - }); - } - case SearchSidebarActionTypes.EXPAND: { - return Object.assign({}, state, { - sidebarCollapsed: false - }); - } - case SearchSidebarActionTypes.TOGGLE: { - return Object.assign({}, state, { - sidebarCollapsed: !state.sidebarCollapsed - }); - } - default: { - return state; - } - } -} -//# sourceMappingURL=search-sidebar.reducer.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.reducer.js.map b/src/app/+search-page/search-sidebar/search-sidebar.reducer.js.map deleted file mode 100644 index f75abc15de..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-sidebar.reducer.js","sourceRoot":"","sources":["search-sidebar.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AASzF,IAAM,YAAY,GAAuB;IACvC,gBAAgB,EAAE,IAAI;CACvB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,yBAAyB,KAAoB,EAAE,MAA2B;IAAjD,sBAAA,EAAA,oBAAoB;IACjD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,wBAAwB,CAAC,QAAQ,CAAC,CAAC;YACtC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,gBAAgB,EAAE,IAAI;aACvB,CAAC,CAAC;SACJ;QAED,KAAK,wBAAwB,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,gBAAgB,EAAE,KAAK;aACxB,CAAC,CAAC;SAEJ;QAED,KAAK,wBAAwB,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;gBAC9B,gBAAgB,EAAE,CAAC,KAAK,CAAC,gBAAgB;aAC1C,CAAC,CAAC;SAEJ;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.service.js b/src/app/+search-page/search-sidebar/search-sidebar.service.js deleted file mode 100644 index fc4c506fd5..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.service.js +++ /dev/null @@ -1,53 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { Injectable } from '@angular/core'; -import { createSelector, select, Store } from '@ngrx/store'; -import { SearchSidebarCollapseAction, SearchSidebarExpandAction } from './search-sidebar.actions'; -import { HostWindowService } from '../../shared/host-window.service'; -import { map } from 'rxjs/operators'; -var sidebarStateSelector = function (state) { return state.searchSidebar; }; -var sidebarCollapsedSelector = createSelector(sidebarStateSelector, function (sidebar) { return sidebar.sidebarCollapsed; }); -/** - * Service that performs all actions that have to do with the search sidebar - */ -var SearchSidebarService = /** @class */ (function () { - function SearchSidebarService(store, windowService) { - this.store = store; - this.windowService = windowService; - this.isXsOrSm$ = this.windowService.isXsOrSm(); - this.isCollapsedInStore = this.store.pipe(select(sidebarCollapsedSelector)); - } - Object.defineProperty(SearchSidebarService.prototype, "isCollapsed", { - /** - * Checks if the sidebar should currently be collapsed - * @returns {Observable} Emits true if the user's screen size is mobile or when the state in the store is currently collapsed - */ - get: function () { - return observableCombineLatest(this.isXsOrSm$, this.isCollapsedInStore).pipe(map(function (_a) { - var mobile = _a[0], store = _a[1]; - return mobile ? store : true; - })); - }, - enumerable: true, - configurable: true - }); - /** - * Dispatches a collapse action to the store - */ - SearchSidebarService.prototype.collapse = function () { - this.store.dispatch(new SearchSidebarCollapseAction()); - }; - /** - * Dispatches an expand action to the store - */ - SearchSidebarService.prototype.expand = function () { - this.store.dispatch(new SearchSidebarExpandAction()); - }; - SearchSidebarService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store, HostWindowService]) - ], SearchSidebarService); - return SearchSidebarService; -}()); -export { SearchSidebarService }; -//# sourceMappingURL=search-sidebar.service.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.service.js.map b/src/app/+search-page/search-sidebar/search-sidebar.service.js.map deleted file mode 100644 index fd0635dd46..0000000000 --- a/src/app/+search-page/search-sidebar/search-sidebar.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-sidebar.service.js","sourceRoot":"","sources":["search-sidebar.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAc,MAAM,MAAM,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAElG,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,IAAM,oBAAoB,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,aAAa,EAAnB,CAAmB,CAAC;AACtE,IAAM,wBAAwB,GAAG,cAAc,CAAC,oBAAoB,EAAE,UAAC,OAA2B,IAAK,OAAA,OAAO,CAAC,gBAAgB,EAAxB,CAAwB,CAAC,CAAC;AAEjI;;GAEG;AAEH;IAWE,8BAAoB,KAAsB,EAAU,aAAgC;QAAhE,UAAK,GAAL,KAAK,CAAiB;QAAU,kBAAa,GAAb,aAAa,CAAmB;QAClF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC/C,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAC9E,CAAC;IAMD,sBAAI,6CAAW;QAJf;;;WAGG;aACH;YACE,OAAO,uBAAuB,CAC5B,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,kBAAkB,CACxB,CAAC,IAAI,CACJ,GAAG,CAAC,UAAC,EAAe;oBAAd,cAAM,EAAE,aAAK;gBAAM,OAAA,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YAArB,CAAqB,CAAC,CAChD,CAAC;QACJ,CAAC;;;OAAA;IAED;;OAEG;IACI,uCAAQ,GAAf;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,2BAA2B,EAAE,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACI,qCAAM,GAAb;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,yBAAyB,EAAE,CAAC,CAAC;IACvD,CAAC;IAzCU,oBAAoB;QADhC,UAAU,EAAE;iDAYgB,KAAK,EAAmC,iBAAiB;OAXzE,oBAAoB,CA0ChC;IAAD,2BAAC;CAAA,AA1CD,IA0CC;SA1CY,oBAAoB"} \ No newline at end of file diff --git a/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js b/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js deleted file mode 100644 index 9866eff61c..0000000000 --- a/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=search-configuration-option.model.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js.map b/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js.map deleted file mode 100644 index bba49d72a6..0000000000 --- a/src/app/+search-page/search-switch-configuration/search-configuration-option.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-configuration-option.model.js","sourceRoot":"","sources":["search-configuration-option.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js b/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js deleted file mode 100644 index 84dfd0c960..0000000000 --- a/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js +++ /dev/null @@ -1,74 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { hasValue } from '../../shared/empty.util'; -import { SEARCH_CONFIG_SERVICE } from '../../+my-dspace-page/my-dspace-page.component'; -import { SearchConfigurationService } from '../search-service/search-configuration.service'; -import { SearchService } from '../search-service/search.service'; -var SearchSwitchConfigurationComponent = /** @class */ (function () { - function SearchSwitchConfigurationComponent(router, searchService, searchConfigService) { - this.router = router; - this.searchService = searchService; - this.searchConfigService = searchConfigService; - /** - * The list of available configuration options - */ - this.configurationList = []; - } - /** - * Init current configuration - */ - SearchSwitchConfigurationComponent.prototype.ngOnInit = function () { - var _this = this; - this.searchConfigService.getCurrentConfiguration('default') - .subscribe(function (currentConfiguration) { return _this.selectedOption = currentConfiguration; }); - }; - /** - * Init current configuration - */ - SearchSwitchConfigurationComponent.prototype.onSelect = function () { - var navigationExtras = { - queryParams: { configuration: this.selectedOption }, - }; - this.router.navigate([this.searchService.getSearchLink()], navigationExtras); - }; - /** - * Define the select 'compareWith' method to tell Angular how to compare the values - * - * @param item1 - * @param item2 - */ - SearchSwitchConfigurationComponent.prototype.compare = function (item1, item2) { - return item1 === item2; - }; - /** - * Make sure the subscription is unsubscribed from when this component is destroyed - */ - SearchSwitchConfigurationComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], SearchSwitchConfigurationComponent.prototype, "configurationList", void 0); - SearchSwitchConfigurationComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-switch-configuration', - styleUrls: ['./search-switch-configuration.component.scss'], - templateUrl: './search-switch-configuration.component.html', - }) - /** - * Represents a select that allow to switch over available search configurations - */ - , - tslib_1.__param(2, Inject(SEARCH_CONFIG_SERVICE)), - tslib_1.__metadata("design:paramtypes", [Router, - SearchService, - SearchConfigurationService]) - ], SearchSwitchConfigurationComponent); - return SearchSwitchConfigurationComponent; -}()); -export { SearchSwitchConfigurationComponent }; -//# sourceMappingURL=search-switch-configuration.component.js.map \ No newline at end of file diff --git a/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js.map b/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js.map deleted file mode 100644 index 7fe1fa3af7..0000000000 --- a/src/app/+search-page/search-switch-configuration/search-switch-configuration.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-switch-configuration.component.js","sourceRoot":"","sources":["search-switch-configuration.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAoB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAI3D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAG5F,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAUjE;IAiBE,4CAAoB,MAAc,EACd,aAA4B,EACG,mBAA+C;QAF9E,WAAM,GAAN,MAAM,CAAQ;QACd,kBAAa,GAAb,aAAa,CAAe;QACG,wBAAmB,GAAnB,mBAAmB,CAA4B;QAjBlG;;WAEG;QACM,sBAAiB,GAAgC,EAAE,CAAC;IAe7D,CAAC;IAED;;OAEG;IACH,qDAAQ,GAAR;QAAA,iBAGC;QAFC,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,SAAS,CAAC;aACxD,SAAS,CAAC,UAAC,oBAAoB,IAAK,OAAA,KAAI,CAAC,cAAc,GAAG,oBAAoB,EAA1C,CAA0C,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACH,qDAAQ,GAAR;QACE,IAAM,gBAAgB,GAAqB;YACzC,WAAW,EAAE,EAAC,aAAa,EAAE,IAAI,CAAC,cAAc,EAAC;SAClD,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACH,oDAAO,GAAP,UAAQ,KAAqC,EAAE,KAAqC;QAClF,OAAO,KAAK,KAAK,KAAK,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,wDAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IArDQ;QAAR,KAAK,EAAE;;iFAAqD;IALlD,kCAAkC;QAR9C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAC,8CAA8C,CAAC;YAC3D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;QACF;;WAEG;;QAoBY,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;iDAFd,MAAM;YACC,aAAa;YACwB,0BAA0B;OAnBvF,kCAAkC,CA2D9C;IAAD,yCAAC;CAAA,AA3DD,IA2DC;SA3DY,kCAAkC"} \ No newline at end of file diff --git a/src/app/+submit-page/submit-page-routing.module.js b/src/app/+submit-page/submit-page-routing.module.js deleted file mode 100644 index 8f11bedf79..0000000000 --- a/src/app/+submit-page/submit-page-routing.module.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; -import { SubmissionSubmitComponent } from '../submission/submit/submission-submit.component'; -var SubmitPageRoutingModule = /** @class */ (function () { - /** - * This module defines the default component to load when navigating to the submit page path. - */ - function SubmitPageRoutingModule() { - } - SubmitPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { - canActivate: [AuthenticatedGuard], - path: '', - pathMatch: 'full', - component: SubmissionSubmitComponent, - data: { title: 'submission.submit.title' } - } - ]) - ] - }) - /** - * This module defines the default component to load when navigating to the submit page path. - */ - ], SubmitPageRoutingModule); - return SubmitPageRoutingModule; -}()); -export { SubmitPageRoutingModule }; -//# sourceMappingURL=submit-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+submit-page/submit-page-routing.module.js.map b/src/app/+submit-page/submit-page-routing.module.js.map deleted file mode 100644 index 227670133b..0000000000 --- a/src/app/+submit-page/submit-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submit-page-routing.module.js","sourceRoot":"","sources":["submit-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,kDAAkD,CAAC;AAkB7F;IAHA;;OAEG;IACH;IAAuC,CAAC;IAA3B,uBAAuB;QAhBnC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB;wBACE,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,IAAI,EAAE,EAAE;wBACR,SAAS,EAAE,MAAM;wBACjB,SAAS,EAAE,yBAAyB;wBACpC,IAAI,EAAE,EAAE,KAAK,EAAE,yBAAyB,EAAE;qBAC3C;iBACF,CAAC;aACH;SACF,CAAC;QACF;;WAEG;OACU,uBAAuB,CAAI;IAAD,8BAAC;CAAA,AAAxC,IAAwC;SAA3B,uBAAuB"} \ No newline at end of file diff --git a/src/app/+submit-page/submit-page.module.js b/src/app/+submit-page/submit-page.module.js deleted file mode 100644 index 8ed8939182..0000000000 --- a/src/app/+submit-page/submit-page.module.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { SubmitPageRoutingModule } from './submit-page-routing.module'; -import { SubmissionModule } from '../submission/submission.module'; -var SubmitPageModule = /** @class */ (function () { - /** - * This module handles all modules that need to access the submit page. - */ - function SubmitPageModule() { - } - SubmitPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - SubmitPageRoutingModule, - CommonModule, - SharedModule, - SubmissionModule, - ], - }) - /** - * This module handles all modules that need to access the submit page. - */ - ], SubmitPageModule); - return SubmitPageModule; -}()); -export { SubmitPageModule }; -//# sourceMappingURL=submit-page.module.js.map \ No newline at end of file diff --git a/src/app/+submit-page/submit-page.module.js.map b/src/app/+submit-page/submit-page.module.js.map deleted file mode 100644 index e686e4169e..0000000000 --- a/src/app/+submit-page/submit-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submit-page.module.js","sourceRoot":"","sources":["submit-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAanE;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,gBAAgB;QAX5B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,uBAAuB;gBACvB,YAAY;gBACZ,YAAY;gBACZ,gBAAgB;aACjB;SACF,CAAC;QACF;;WAEG;OACU,gBAAgB,CAE5B;IAAD,uBAAC;CAAA,AAFD,IAEC;SAFY,gBAAgB"} \ No newline at end of file diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js b/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js deleted file mode 100644 index 0b22883628..0000000000 --- a/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; -import { SubmissionEditComponent } from '../submission/edit/submission-edit.component'; -var WorkflowitemsEditPageRoutingModule = /** @class */ (function () { - /** - * This module defines the default component to load when navigating to the workflowitems edit page path. - */ - function WorkflowitemsEditPageRoutingModule() { - } - WorkflowitemsEditPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { path: '', redirectTo: '/home', pathMatch: 'full' }, - { - canActivate: [AuthenticatedGuard], - path: ':id/edit', - component: SubmissionEditComponent, - data: { title: 'submission.edit.title' } - } - ]) - ] - }) - /** - * This module defines the default component to load when navigating to the workflowitems edit page path. - */ - ], WorkflowitemsEditPageRoutingModule); - return WorkflowitemsEditPageRoutingModule; -}()); -export { WorkflowitemsEditPageRoutingModule }; -//# sourceMappingURL=workflowitems-edit-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js.map b/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js.map deleted file mode 100644 index 2304b1f2cc..0000000000 --- a/src/app/+workflowitems-edit-page/workflowitems-edit-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workflowitems-edit-page-routing.module.js","sourceRoot":"","sources":["workflowitems-edit-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAkBvF;IAHA;;OAEG;IACH;IAAkD,CAAC;IAAtC,kCAAkC;QAhB9C,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;oBACpD;wBACE,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,uBAAuB;wBAClC,IAAI,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE;qBACzC;iBACF,CAAC;aACH;SACF,CAAC;QACF;;WAEG;OACU,kCAAkC,CAAI;IAAD,yCAAC;CAAA,AAAnD,IAAmD;SAAtC,kCAAkC"} \ No newline at end of file diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js b/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js deleted file mode 100644 index 68112b1cc0..0000000000 --- a/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { WorkflowitemsEditPageRoutingModule } from './workflowitems-edit-page-routing.module'; -import { SubmissionModule } from '../submission/submission.module'; -var WorkflowitemsEditPageModule = /** @class */ (function () { - /** - * This module handles all modules that need to access the workflowitems edit page. - */ - function WorkflowitemsEditPageModule() { - } - WorkflowitemsEditPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - WorkflowitemsEditPageRoutingModule, - CommonModule, - SharedModule, - SubmissionModule, - ], - declarations: [] - }) - /** - * This module handles all modules that need to access the workflowitems edit page. - */ - ], WorkflowitemsEditPageModule); - return WorkflowitemsEditPageModule; -}()); -export { WorkflowitemsEditPageModule }; -//# sourceMappingURL=workflowitems-edit-page.module.js.map \ No newline at end of file diff --git a/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js.map b/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js.map deleted file mode 100644 index 7e5bddcf4c..0000000000 --- a/src/app/+workflowitems-edit-page/workflowitems-edit-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workflowitems-edit-page.module.js","sourceRoot":"","sources":["workflowitems-edit-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,kCAAkC,EAAE,MAAM,0CAA0C,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAcnE;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,2BAA2B;QAZvC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,kCAAkC;gBAClC,YAAY;gBACZ,YAAY;gBACZ,gBAAgB;aACjB;YACD,YAAY,EAAE,EAAE;SACjB,CAAC;QACF;;WAEG;OACU,2BAA2B,CAEvC;IAAD,kCAAC;CAAA,AAFD,IAEC;SAFY,2BAA2B"} \ No newline at end of file diff --git a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js deleted file mode 100644 index a6a04a9a5d..0000000000 --- a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { AuthenticatedGuard } from '../core/auth/authenticated.guard'; -import { SubmissionEditComponent } from '../submission/edit/submission-edit.component'; -var WorkspaceitemsEditPageRoutingModule = /** @class */ (function () { - /** - * This module defines the default component to load when navigating to the workspaceitems edit page path - */ - function WorkspaceitemsEditPageRoutingModule() { - } - WorkspaceitemsEditPageRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forChild([ - { path: '', redirectTo: '/home', pathMatch: 'full' }, - { - canActivate: [AuthenticatedGuard], - path: ':id/edit', - component: SubmissionEditComponent, - data: { title: 'submission.edit.title' } - } - ]) - ] - }) - /** - * This module defines the default component to load when navigating to the workspaceitems edit page path - */ - ], WorkspaceitemsEditPageRoutingModule); - return WorkspaceitemsEditPageRoutingModule; -}()); -export { WorkspaceitemsEditPageRoutingModule }; -//# sourceMappingURL=workspaceitems-edit-page-routing.module.js.map \ No newline at end of file diff --git a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js.map b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js.map deleted file mode 100644 index 378ddd7a97..0000000000 --- a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitems-edit-page-routing.module.js","sourceRoot":"","sources":["workspaceitems-edit-page-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAkBvF;IAHA;;OAEG;IACH;IAAmD,CAAC;IAAvC,mCAAmC;QAhB/C,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,QAAQ,CAAC;oBACpB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;oBACpD;wBACE,WAAW,EAAE,CAAC,kBAAkB,CAAC;wBACjC,IAAI,EAAE,UAAU;wBAChB,SAAS,EAAE,uBAAuB;wBAClC,IAAI,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE;qBACzC;iBACF,CAAC;aACH;SACF,CAAC;QACF;;WAEG;OACU,mCAAmC,CAAI;IAAD,0CAAC;CAAA,AAApD,IAAoD;SAAvC,mCAAmC"} \ No newline at end of file diff --git a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js deleted file mode 100644 index 13cafca2c9..0000000000 --- a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { WorkspaceitemsEditPageRoutingModule } from './workspaceitems-edit-page-routing.module'; -import { SubmissionModule } from '../submission/submission.module'; -var WorkspaceitemsEditPageModule = /** @class */ (function () { - /** - * This module handles all modules that need to access the workspaceitems edit page. - */ - function WorkspaceitemsEditPageModule() { - } - WorkspaceitemsEditPageModule = tslib_1.__decorate([ - NgModule({ - imports: [ - WorkspaceitemsEditPageRoutingModule, - CommonModule, - SharedModule, - SubmissionModule, - ], - declarations: [] - }) - /** - * This module handles all modules that need to access the workspaceitems edit page. - */ - ], WorkspaceitemsEditPageModule); - return WorkspaceitemsEditPageModule; -}()); -export { WorkspaceitemsEditPageModule }; -//# sourceMappingURL=workspaceitems-edit-page.module.js.map \ No newline at end of file diff --git a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js.map b/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js.map deleted file mode 100644 index 192b392b9f..0000000000 --- a/src/app/+workspaceitems-edit-page/workspaceitems-edit-page.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitems-edit-page.module.js","sourceRoot":"","sources":["workspaceitems-edit-page.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,mCAAmC,EAAE,MAAM,2CAA2C,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAcnE;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,4BAA4B;QAZxC,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,mCAAmC;gBACnC,YAAY;gBACZ,YAAY;gBACZ,gBAAgB;aACjB;YACD,YAAY,EAAE,EAAE;SACjB,CAAC;QACF;;WAEG;OACU,4BAA4B,CAExC;IAAD,mCAAC;CAAA,AAFD,IAEC;SAFY,4BAA4B"} \ No newline at end of file diff --git a/src/app/app-routing.module.js b/src/app/app-routing.module.js deleted file mode 100644 index 76fc1d5f7d..0000000000 --- a/src/app/app-routing.module.js +++ /dev/null @@ -1,48 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { PageNotFoundComponent } from './pagenotfound/pagenotfound.component'; -import { AuthenticatedGuard } from './core/auth/authenticated.guard'; -var ITEM_MODULE_PATH = 'items'; -export function getItemModulePath() { - return "/" + ITEM_MODULE_PATH; -} -var COLLECTION_MODULE_PATH = 'collections'; -export function getCollectionModulePath() { - return "/" + COLLECTION_MODULE_PATH; -} -var COMMUNITY_MODULE_PATH = 'communities'; -export function getCommunityModulePath() { - return "/" + COMMUNITY_MODULE_PATH; -} -var AppRoutingModule = /** @class */ (function () { - function AppRoutingModule() { - } - AppRoutingModule = tslib_1.__decorate([ - NgModule({ - imports: [ - RouterModule.forRoot([ - { path: '', redirectTo: '/home', pathMatch: 'full' }, - { path: 'home', loadChildren: './+home-page/home-page.module#HomePageModule' }, - { path: COMMUNITY_MODULE_PATH, loadChildren: './+community-page/community-page.module#CommunityPageModule' }, - { path: COLLECTION_MODULE_PATH, loadChildren: './+collection-page/collection-page.module#CollectionPageModule' }, - { path: ITEM_MODULE_PATH, loadChildren: './+item-page/item-page.module#ItemPageModule' }, - { path: 'mydspace', loadChildren: './+my-dspace-page/my-dspace-page.module#MyDSpacePageModule', canActivate: [AuthenticatedGuard] }, - { path: 'search', loadChildren: './+search-page/search-page.module#SearchPageModule' }, - { path: 'browse', loadChildren: './+browse-by/browse-by.module#BrowseByModule' }, - { path: 'admin', loadChildren: './+admin/admin.module#AdminModule', canActivate: [AuthenticatedGuard] }, - { path: 'login', loadChildren: './+login-page/login-page.module#LoginPageModule' }, - { path: 'logout', loadChildren: './+logout-page/logout-page.module#LogoutPageModule' }, - { path: 'submit', loadChildren: './+submit-page/submit-page.module#SubmitPageModule' }, - { path: 'workspaceitems', loadChildren: './+workspaceitems-edit-page/workspaceitems-edit-page.module#WorkspaceitemsEditPageModule' }, - { path: 'workflowitems', loadChildren: './+workflowitems-edit-page/workflowitems-edit-page.module#WorkflowitemsEditPageModule' }, - { path: '**', pathMatch: 'full', component: PageNotFoundComponent }, - ]) - ], - exports: [RouterModule] - }) - ], AppRoutingModule); - return AppRoutingModule; -}()); -export { AppRoutingModule }; -//# sourceMappingURL=app-routing.module.js.map \ No newline at end of file diff --git a/src/app/app-routing.module.js.map b/src/app/app-routing.module.js.map deleted file mode 100644 index 35290f0a06..0000000000 --- a/src/app/app-routing.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"app-routing.module.js","sourceRoot":"","sources":["app-routing.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,IAAM,gBAAgB,GAAG,OAAO,CAAC;AACjC,MAAM;IACJ,OAAO,MAAI,gBAAkB,CAAC;AAChC,CAAC;AACD,IAAM,sBAAsB,GAAG,aAAa,CAAC;AAC7C,MAAM;IACJ,OAAO,MAAI,sBAAwB,CAAC;AACtC,CAAC;AACD,IAAM,qBAAqB,GAAG,aAAa,CAAC;AAC5C,MAAM;IACJ,OAAO,MAAI,qBAAuB,CAAC;AACrC,CAAC;AAuBD;IAAA;IAEA,CAAC;IAFY,gBAAgB;QAtB5B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY,CAAC,OAAO,CAAC;oBACnB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;oBACpD,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,8CAA8C,EAAE;oBAC9E,EAAE,IAAI,EAAE,qBAAqB,EAAE,YAAY,EAAE,6DAA6D,EAAE;oBAC5G,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,gEAAgE,EAAE;oBAChH,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,8CAA8C,EAAE;oBACxF,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,4DAA4D,EAAE,WAAW,EAAE,CAAC,kBAAkB,CAAC,EAAE;oBACnI,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,oDAAoD,EAAE;oBACtF,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,8CAA8C,EAAE;oBAChF,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,mCAAmC,EAAE,WAAW,EAAE,CAAC,kBAAkB,CAAC,EAAE;oBACvG,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,iDAAiD,EAAE;oBAClF,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,oDAAoD,EAAE;oBACtF,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,oDAAoD,EAAE;oBACtF,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,0FAA0F,EAAE;oBACpI,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,uFAAuF,EAAE;oBAChI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,qBAAqB,EAAE;iBACpE,CAAC;aACH;YACD,OAAO,EAAE,CAAC,YAAY,CAAC;SACxB,CAAC;OACW,gBAAgB,CAE5B;IAAD,uBAAC;CAAA,AAFD,IAEC;SAFY,gBAAgB"} \ No newline at end of file diff --git a/src/app/app.component.js b/src/app/app.component.js deleted file mode 100644 index 6c9ccae304..0000000000 --- a/src/app/app.component.js +++ /dev/null @@ -1,131 +0,0 @@ -import * as tslib_1 from "tslib"; -import { filter, map, take } from 'rxjs/operators'; -import { ChangeDetectionStrategy, Component, HostListener, Inject, ViewEncapsulation } from '@angular/core'; -import { NavigationCancel, NavigationEnd, NavigationStart, Router } from '@angular/router'; -import { select, Store } from '@ngrx/store'; -import { TranslateService } from '@ngx-translate/core'; -import { GLOBAL_CONFIG } from '../config'; -import { MetadataService } from './core/metadata/metadata.service'; -import { HostWindowResizeAction } from './shared/host-window.actions'; -import { NativeWindowRef, NativeWindowService } from './shared/services/window.service'; -import { isAuthenticated } from './core/auth/selectors'; -import { AuthService } from './core/auth/auth.service'; -import { Angulartics2GoogleAnalytics } from 'angulartics2/ga'; -import { RouteService } from './shared/services/route.service'; -import variables from '../styles/_exposed_variables.scss'; -import { CSSVariableService } from './shared/sass-helper/sass-helper.service'; -import { MenuService } from './shared/menu/menu.service'; -import { MenuID } from './shared/menu/initial-menus-state'; -import { slideSidebarPadding } from './shared/animations/slide'; -import { combineLatest as combineLatestObservable } from 'rxjs'; -import { HostWindowService } from './shared/host-window.service'; -var AppComponent = /** @class */ (function () { - function AppComponent(config, _window, translate, store, metadata, angulartics2GoogleAnalytics, authService, router, routeService, cssService, menuService, windowService) { - this.config = config; - this._window = _window; - this.translate = translate; - this.store = store; - this.metadata = metadata; - this.angulartics2GoogleAnalytics = angulartics2GoogleAnalytics; - this.authService = authService; - this.router = router; - this.routeService = routeService; - this.cssService = cssService; - this.menuService = menuService; - this.windowService = windowService; - this.isLoading = true; - // Load all the languages that are defined as active from the config file - translate.addLangs(config.languages.filter(function (LangConfig) { return LangConfig.active === true; }).map(function (a) { return a.code; })); - // Load the default language from the config file - translate.setDefaultLang(config.defaultLanguage); - // Attempt to get the browser language from the user - if (translate.getLangs().includes(translate.getBrowserLang())) { - translate.use(translate.getBrowserLang()); - } - else { - translate.use(config.defaultLanguage); - } - metadata.listenForRouteChange(); - routeService.saveRouting(); - if (config.debug) { - console.info(config); - } - this.storeCSSVariables(); - } - AppComponent.prototype.ngOnInit = function () { - var _this = this; - var env = this.config.production ? 'Production' : 'Development'; - var color = this.config.production ? 'red' : 'green'; - console.info("Environment: %c" + env, "color: " + color + "; font-weight: bold;"); - this.dispatchWindowSize(this._window.nativeWindow.innerWidth, this._window.nativeWindow.innerHeight); - // Whether is not authenticathed try to retrieve a possible stored auth token - this.store.pipe(select(isAuthenticated), take(1), filter(function (authenticated) { return !authenticated; })).subscribe(function (authenticated) { return _this.authService.checkAuthenticationToken(); }); - this.sidebarVisible = this.menuService.isMenuVisible(MenuID.ADMIN); - this.collapsedSidebarWidth = this.cssService.getVariable('collapsedSidebarWidth'); - this.totalSidebarWidth = this.cssService.getVariable('totalSidebarWidth'); - var sidebarCollapsed = this.menuService.isMenuCollapsed(MenuID.ADMIN); - this.slideSidebarOver = combineLatestObservable(sidebarCollapsed, this.windowService.isXsOrSm()) - .pipe(map(function (_a) { - var collapsed = _a[0], mobile = _a[1]; - return collapsed || mobile; - })); - }; - AppComponent.prototype.storeCSSVariables = function () { - var _this = this; - var vars = variables.locals || {}; - Object.keys(vars).forEach(function (name) { - _this.cssService.addCSSVariable(name, vars[name]); - }); - }; - AppComponent.prototype.ngAfterViewInit = function () { - var _this = this; - this.router.events - .subscribe(function (event) { - if (event instanceof NavigationStart) { - _this.isLoading = true; - } - else if (event instanceof NavigationEnd || - event instanceof NavigationCancel) { - _this.isLoading = false; - } - }); - }; - AppComponent.prototype.onResize = function (event) { - this.dispatchWindowSize(event.target.innerWidth, event.target.innerHeight); - }; - AppComponent.prototype.dispatchWindowSize = function (width, height) { - this.store.dispatch(new HostWindowResizeAction(width, height)); - }; - tslib_1.__decorate([ - HostListener('window:resize', ['$event']), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object]), - tslib_1.__metadata("design:returntype", void 0) - ], AppComponent.prototype, "onResize", null); - AppComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-app', - templateUrl: './app.component.html', - styleUrls: ['./app.component.scss'], - changeDetection: ChangeDetectionStrategy.OnPush, - encapsulation: ViewEncapsulation.None, - animations: [slideSidebarPadding] - }), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__param(1, Inject(NativeWindowService)), - tslib_1.__metadata("design:paramtypes", [Object, NativeWindowRef, - TranslateService, - Store, - MetadataService, - Angulartics2GoogleAnalytics, - AuthService, - Router, - RouteService, - CSSVariableService, - MenuService, - HostWindowService]) - ], AppComponent); - return AppComponent; -}()); -export { AppComponent }; -//# sourceMappingURL=app.component.js.map \ No newline at end of file diff --git a/src/app/app.component.js.map b/src/app/app.component.js.map deleted file mode 100644 index a358d006a6..0000000000 --- a/src/app/app.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"app.component.js","sourceRoot":"","sources":["app.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/app.effects.js b/src/app/app.effects.js deleted file mode 100644 index 479b5f3a0d..0000000000 --- a/src/app/app.effects.js +++ /dev/null @@ -1,9 +0,0 @@ -import { StoreEffects } from './store.effects'; -import { NotificationsEffects } from './shared/notifications/notifications.effects'; -import { NavbarEffects } from './navbar/navbar.effects'; -export var appEffects = [ - StoreEffects, - NavbarEffects, - NotificationsEffects, -]; -//# sourceMappingURL=app.effects.js.map \ No newline at end of file diff --git a/src/app/app.effects.js.map b/src/app/app.effects.js.map deleted file mode 100644 index 9ef8d3dea5..0000000000 --- a/src/app/app.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"app.effects.js","sourceRoot":"","sources":["app.effects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,MAAM,CAAC,IAAM,UAAU,GAAG;IACxB,YAAY;IACZ,aAAa;IACb,oBAAoB;CACrB,CAAC"} \ No newline at end of file diff --git a/src/app/app.metareducers.js b/src/app/app.metareducers.js deleted file mode 100644 index 2d6e982204..0000000000 --- a/src/app/app.metareducers.js +++ /dev/null @@ -1,33 +0,0 @@ -import { StoreActionTypes } from './store.actions'; -// fallback ngrx debugger -var actionCounter = 0; -export function debugMetaReducer(reducer) { - return function (state, action) { - actionCounter++; - console.log('@ngrx action', actionCounter, action.type); - console.log('state', JSON.stringify(state)); - console.log('action', JSON.stringify(action)); - console.log('------------------------------------'); - return reducer(state, action); - }; -} -export function universalMetaReducer(reducer) { - return function (state, action) { - switch (action.type) { - case StoreActionTypes.REHYDRATE: - state = Object.assign({}, state, action.payload); - break; - case StoreActionTypes.REPLAY: - default: - break; - } - return reducer(state, action); - }; -} -export var debugMetaReducers = [ - debugMetaReducer -]; -export var appMetaReducers = [ - universalMetaReducer -]; -//# sourceMappingURL=app.metareducers.js.map \ No newline at end of file diff --git a/src/app/app.metareducers.js.map b/src/app/app.metareducers.js.map deleted file mode 100644 index a40db6d9d1..0000000000 --- a/src/app/app.metareducers.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"app.metareducers.js","sourceRoot":"","sources":["app.metareducers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,yBAAyB;AACzB,IAAI,aAAa,GAAG,CAAC,CAAC;AAEtB,MAAM,2BAA2B,OAAO;IACtC,OAAO,UAAC,KAAK,EAAE,MAAM;QACnB,aAAa,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC,CAAA;AACH,CAAC;AAED,MAAM,+BAA+B,OAAO;IAC1C,OAAO,UAAC,KAAK,EAAE,MAAM;QACnB,QAAQ,MAAM,CAAC,IAAI,EAAE;YACnB,KAAK,gBAAgB,CAAC,SAAS;gBAC7B,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACjD,MAAM;YACR,KAAK,gBAAgB,CAAC,MAAM,CAAC;YAC7B;gBACE,MAAM;SACT;QACD,OAAO,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC,CAAA;AACH,CAAC;AAED,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC/B,gBAAgB;CACjB,CAAC;AAEF,MAAM,CAAC,IAAM,eAAe,GAAG;IAC7B,oBAAoB;CACrB,CAAC"} \ No newline at end of file diff --git a/src/app/app.module.js b/src/app/app.module.js deleted file mode 100644 index 7737eb411d..0000000000 --- a/src/app/app.module.js +++ /dev/null @@ -1,112 +0,0 @@ -import * as tslib_1 from "tslib"; -import { APP_BASE_HREF, CommonModule } from '@angular/common'; -import { HttpClientModule } from '@angular/common/http'; -import { NgModule } from '@angular/core'; -import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; -import { EffectsModule } from '@ngrx/effects'; -import { RouterStateSerializer, StoreRouterConnectingModule } from '@ngrx/router-store'; -import { META_REDUCERS, StoreModule } from '@ngrx/store'; -import { StoreDevtoolsModule } from '@ngrx/store-devtools'; -import { TranslateModule } from '@ngx-translate/core'; -import { storeFreeze } from 'ngrx-store-freeze'; -import { ENV_CONFIG, GLOBAL_CONFIG } from '../config'; -import { AppRoutingModule } from './app-routing.module'; -import { AppComponent } from './app.component'; -import { appEffects } from './app.effects'; -import { appMetaReducers, debugMetaReducers } from './app.metareducers'; -import { appReducers } from './app.reducer'; -import { CoreModule } from './core/core.module'; -import { FooterComponent } from './footer/footer.component'; -import { HeaderComponent } from './header/header.component'; -import { PageNotFoundComponent } from './pagenotfound/pagenotfound.component'; -import { DSpaceRouterStateSerializer } from './shared/ngrx/dspace-router-state-serializer'; -import { NotificationsBoardComponent } from './shared/notifications/notifications-board/notifications-board.component'; -import { NotificationComponent } from './shared/notifications/notification/notification.component'; -import { SharedModule } from './shared/shared.module'; -import { ScrollToModule } from '@nicky-lenaers/ngx-scroll-to'; -import { HeaderNavbarWrapperComponent } from './header-nav-wrapper/header-navbar-wrapper.component'; -import { AdminSidebarComponent } from './+admin/admin-sidebar/admin-sidebar.component'; -import { AdminSidebarSectionComponent } from './+admin/admin-sidebar/admin-sidebar-section/admin-sidebar-section.component'; -import { ExpandableAdminSidebarSectionComponent } from './+admin/admin-sidebar/expandable-admin-sidebar-section/expandable-admin-sidebar-section.component'; -import { NavbarModule } from './navbar/navbar.module'; -export function getConfig() { - return ENV_CONFIG; -} -export function getBase() { - return ENV_CONFIG.ui.nameSpace; -} -export function getMetaReducers(config) { - var metaReducers = config.production ? appMetaReducers : appMetaReducers.concat([storeFreeze]); - return config.debug ? metaReducers.concat(debugMetaReducers) : metaReducers; -} -var IMPORTS = [ - CommonModule, - SharedModule, - NavbarModule, - HttpClientModule, - AppRoutingModule, - CoreModule.forRoot(), - ScrollToModule.forRoot(), - NgbModule.forRoot(), - TranslateModule.forRoot(), - EffectsModule.forRoot(appEffects), - StoreModule.forRoot(appReducers), - StoreRouterConnectingModule, -]; -IMPORTS.push(StoreDevtoolsModule.instrument({ - maxAge: 100, - logOnly: ENV_CONFIG.production, -})); -var PROVIDERS = [ - { - provide: GLOBAL_CONFIG, - useFactory: (getConfig) - }, - { - provide: APP_BASE_HREF, - useFactory: (getBase) - }, - { - provide: META_REDUCERS, - useFactory: getMetaReducers, - deps: [GLOBAL_CONFIG] - }, - { - provide: RouterStateSerializer, - useClass: DSpaceRouterStateSerializer - } -]; -var DECLARATIONS = [ - AppComponent, - HeaderComponent, - HeaderNavbarWrapperComponent, - AdminSidebarComponent, - AdminSidebarSectionComponent, - ExpandableAdminSidebarSectionComponent, - FooterComponent, - PageNotFoundComponent, - NotificationComponent, - NotificationsBoardComponent -]; -var EXPORTS = [ - AppComponent -]; -var AppModule = /** @class */ (function () { - function AppModule() { - } - AppModule = tslib_1.__decorate([ - NgModule({ - imports: IMPORTS.slice(), - providers: PROVIDERS.slice(), - declarations: DECLARATIONS.slice(), - exports: EXPORTS.slice(), - entryComponents: [ - AdminSidebarSectionComponent, - ExpandableAdminSidebarSectionComponent - ] - }) - ], AppModule); - return AppModule; -}()); -export { AppModule }; -//# sourceMappingURL=app.module.js.map \ No newline at end of file diff --git a/src/app/app.module.js.map b/src/app/app.module.js.map deleted file mode 100644 index f3c9afee6b..0000000000 --- a/src/app/app.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"app.module.js","sourceRoot":"","sources":["app.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/app.reducer.js b/src/app/app.reducer.js deleted file mode 100644 index 0969455919..0000000000 --- a/src/app/app.reducer.js +++ /dev/null @@ -1,38 +0,0 @@ -import { createSelector } from '@ngrx/store'; -import * as fromRouter from '@ngrx/router-store'; -import { hostWindowReducer } from './shared/host-window.reducer'; -import { formReducer } from './shared/form/form.reducer'; -import { sidebarReducer } from './+search-page/search-sidebar/search-sidebar.reducer'; -import { filterReducer } from './+search-page/search-filters/search-filter/search-filter.reducer'; -import { notificationsReducer } from './shared/notifications/notifications.reducers'; -import { truncatableReducer } from './shared/truncatable/truncatable.reducer'; -import { metadataRegistryReducer } from './+admin/admin-registries/metadata-registry/metadata-registry.reducers'; -import { hasValue } from './shared/empty.util'; -import { cssVariablesReducer } from './shared/sass-helper/sass-helper.reducer'; -import { menusReducer } from './shared/menu/menu.reducer'; -import { historyReducer } from './shared/history/history.reducer'; -export var appReducers = { - router: fromRouter.routerReducer, - history: historyReducer, - hostWindow: hostWindowReducer, - forms: formReducer, - metadataRegistry: metadataRegistryReducer, - notifications: notificationsReducer, - searchSidebar: sidebarReducer, - searchFilter: filterReducer, - truncatable: truncatableReducer, - cssVariables: cssVariablesReducer, - menus: menusReducer, -}; -export var routerStateSelector = function (state) { return state.router; }; -export function keySelector(key, selector) { - return createSelector(selector, function (state) { - if (hasValue(state)) { - return state[key]; - } - else { - return undefined; - } - }); -} -//# sourceMappingURL=app.reducer.js.map \ No newline at end of file diff --git a/src/app/app.reducer.js.map b/src/app/app.reducer.js.map deleted file mode 100644 index f974cbb806..0000000000 --- a/src/app/app.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"app.reducer.js","sourceRoot":"","sources":["app.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,cAAc,EAAoB,MAAM,aAAa,CAAC;AACjF,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAmB,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,WAAW,EAAa,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAEL,cAAc,EACf,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EACL,aAAa,EAEd,MAAM,mEAAmE,CAAC;AAC3E,OAAO,EACL,oBAAoB,EAErB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAqB,MAAM,0CAA0C,CAAC;AACjG,OAAO,EACL,uBAAuB,EAExB,MAAM,wEAAwE,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAqB,MAAM,0CAA0C,CAAC;AAClG,OAAO,EAAE,YAAY,EAAc,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,cAAc,EAAgB,MAAM,kCAAkC,CAAC;AAgBhF,MAAM,CAAC,IAAM,WAAW,GAA+B;IACrD,MAAM,EAAE,UAAU,CAAC,aAAa;IAChC,OAAO,EAAE,cAAc;IACvB,UAAU,EAAE,iBAAiB;IAC7B,KAAK,EAAE,WAAW;IAClB,gBAAgB,EAAE,uBAAuB;IACzC,aAAa,EAAE,oBAAoB;IACnC,aAAa,EAAE,cAAc;IAC7B,YAAY,EAAE,aAAa;IAC3B,WAAW,EAAE,kBAAkB;IAC/B,YAAY,EAAE,mBAAmB;IACjC,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,MAAM,EAAZ,CAAY,CAAC;AAErE,MAAM,sBAAyB,GAAW,EAAE,QAAQ;IAClD,OAAO,cAAc,CAAC,QAAQ,EAAE,UAAC,KAAK;QACpC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;SACnB;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/core/auth/auth-object-factory.js b/src/app/core/auth/auth-object-factory.js deleted file mode 100644 index 05147480aa..0000000000 --- a/src/app/core/auth/auth-object-factory.js +++ /dev/null @@ -1,27 +0,0 @@ -import { AuthType } from './auth-type'; -import { NormalizedAuthStatus } from './models/normalized-auth-status.model'; -import { NormalizedEPerson } from '../eperson/models/normalized-eperson.model'; -import { NormalizedGroup } from '../eperson/models/normalized-group.model'; -var AuthObjectFactory = /** @class */ (function () { - function AuthObjectFactory() { - } - AuthObjectFactory.getConstructor = function (type) { - switch (type) { - case AuthType.EPerson: { - return NormalizedEPerson; - } - case AuthType.Group: { - return NormalizedGroup; - } - case AuthType.Status: { - return NormalizedAuthStatus; - } - default: { - return undefined; - } - } - }; - return AuthObjectFactory; -}()); -export { AuthObjectFactory }; -//# sourceMappingURL=auth-object-factory.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth-object-factory.js.map b/src/app/core/auth/auth-object-factory.js.map deleted file mode 100644 index ea5535cf11..0000000000 --- a/src/app/core/auth/auth-object-factory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-object-factory.js","sourceRoot":"","sources":["auth-object-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAG/E,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAE3E;IAAA;IAoBA,CAAC;IAnBe,gCAAc,GAA5B,UAA6B,IAAI;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACrB,OAAO,iBAAiB,CAAA;aACzB;YAED,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACnB,OAAO,eAAe,CAAA;aACvB;YAED,KAAK,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACpB,OAAO,oBAAoB,CAAA;aAC5B;YAED,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,wBAAC;AAAD,CAAC,AApBD,IAoBC"} \ No newline at end of file diff --git a/src/app/core/auth/auth-request.service.js b/src/app/core/auth/auth-request.service.js deleted file mode 100644 index 481513ed82..0000000000 --- a/src/app/core/auth/auth-request.service.js +++ /dev/null @@ -1,49 +0,0 @@ -import * as tslib_1 from "tslib"; -import { of as observableOf, throwError as observableThrowError } from 'rxjs'; -import { distinctUntilChanged, filter, map, mergeMap, tap } from 'rxjs/operators'; -import { Inject, Injectable } from '@angular/core'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { RequestService } from '../data/request.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { isNotEmpty } from '../../shared/empty.util'; -import { AuthGetRequest, AuthPostRequest } from '../data/request.models'; -import { getResponseFromEntry } from '../shared/operators'; -var AuthRequestService = /** @class */ (function () { - function AuthRequestService(EnvConfig, halService, requestService) { - this.EnvConfig = EnvConfig; - this.halService = halService; - this.requestService = requestService; - this.linkName = 'authn'; - this.browseEndpoint = ''; - } - AuthRequestService.prototype.fetchRequest = function (request) { - return this.requestService.getByUUID(request.uuid).pipe(getResponseFromEntry(), mergeMap(function (response) { - if (response.isSuccessful && isNotEmpty(response)) { - return observableOf(response.response); - } - else if (!response.isSuccessful) { - return observableThrowError(new Error(response.errorMessage)); - } - })); - }; - AuthRequestService.prototype.getEndpointByMethod = function (endpoint, method) { - return isNotEmpty(method) ? endpoint + "/" + method : "" + endpoint; - }; - AuthRequestService.prototype.postToEndpoint = function (method, body, options) { - var _this = this; - return this.halService.getEndpoint(this.linkName).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByMethod(endpointURL, method); }), distinctUntilChanged(), map(function (endpointURL) { return new AuthPostRequest(_this.requestService.generateRequestId(), endpointURL, body, options); }), tap(function (request) { return _this.requestService.configure(request, true); }), mergeMap(function (request) { return _this.fetchRequest(request); }), distinctUntilChanged()); - }; - AuthRequestService.prototype.getRequest = function (method, options) { - var _this = this; - return this.halService.getEndpoint(this.linkName).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByMethod(endpointURL, method); }), distinctUntilChanged(), map(function (endpointURL) { return new AuthGetRequest(_this.requestService.generateRequestId(), endpointURL, options); }), tap(function (request) { return _this.requestService.configure(request, true); }), mergeMap(function (request) { return _this.fetchRequest(request); }), distinctUntilChanged()); - }; - AuthRequestService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, HALEndpointService, - RequestService]) - ], AuthRequestService); - return AuthRequestService; -}()); -export { AuthRequestService }; -//# sourceMappingURL=auth-request.service.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth-request.service.js.map b/src/app/core/auth/auth-request.service.js.map deleted file mode 100644 index ad250e852d..0000000000 --- a/src/app/core/auth/auth-request.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-request.service.js","sourceRoot":"","sources":["auth-request.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/auth-response-parsing.service.js b/src/app/core/auth/auth-response-parsing.service.js deleted file mode 100644 index 25c63cf323..0000000000 --- a/src/app/core/auth/auth-response-parsing.service.js +++ /dev/null @@ -1,36 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { AuthObjectFactory } from './auth-object-factory'; -import { BaseResponseParsingService } from '../data/base-response-parsing.service'; -import { AuthStatusResponse } from '../cache/response.models'; -import { GLOBAL_CONFIG } from '../../../config'; -import { isNotEmpty } from '../../shared/empty.util'; -import { ObjectCacheService } from '../cache/object-cache.service'; -var AuthResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(AuthResponseParsingService, _super); - function AuthResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = AuthObjectFactory; - _this.toCache = true; - return _this; - } - AuthResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links) && (data.statusCode === 200)) { - var response = this.process(data.payload, request.uuid); - return new AuthStatusResponse(response, data.statusCode, data.statusText); - } - else { - return new AuthStatusResponse(data.payload, data.statusCode, data.statusText); - } - }; - AuthResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], AuthResponseParsingService); - return AuthResponseParsingService; -}(BaseResponseParsingService)); -export { AuthResponseParsingService }; -//# sourceMappingURL=auth-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth-response-parsing.service.js.map b/src/app/core/auth/auth-response-parsing.service.js.map deleted file mode 100644 index 5fbc2f9b2a..0000000000 --- a/src/app/core/auth/auth-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-response-parsing.service.js","sourceRoot":"","sources":["auth-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAgB,MAAM,0BAA0B,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AASnE;IAAgD,sDAA0B;IAKxE,oCAA6C,SAAuB,EAC9C,WAA+B;QADrD,YAEE,iBAAO,SACR;QAH4C,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAJ3C,mBAAa,GAAG,iBAAiB,CAAC;QAClC,aAAO,GAAG,IAAI,CAAC;;IAKzB,CAAC;IAED,0CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,GAAG,CAAC,EAAE;YAC5F,IAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAyC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAClG,OAAO,IAAI,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAC3E;aAAM;YACL,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAA+B,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACvG;IACH,CAAC;IAjBU,0BAA0B;QADtC,UAAU,EAAE;QAME,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAN1C,0BAA0B,CAkBtC;IAAD,iCAAC;CAAA,AAlBD,CAAgD,0BAA0B,GAkBzE;SAlBY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/auth/auth-type.js b/src/app/core/auth/auth-type.js deleted file mode 100644 index 994f098291..0000000000 --- a/src/app/core/auth/auth-type.js +++ /dev/null @@ -1,7 +0,0 @@ -export var AuthType; -(function (AuthType) { - AuthType["EPerson"] = "eperson"; - AuthType["Status"] = "status"; - AuthType["Group"] = "group"; -})(AuthType || (AuthType = {})); -//# sourceMappingURL=auth-type.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth-type.js.map b/src/app/core/auth/auth-type.js.map deleted file mode 100644 index 27d96c5d60..0000000000 --- a/src/app/core/auth/auth-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-type.js","sourceRoot":"","sources":["auth-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;IACjB,2BAAe,CAAA;AACjB,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB"} \ No newline at end of file diff --git a/src/app/core/auth/auth.actions.js b/src/app/core/auth/auth.actions.js deleted file mode 100644 index 8606512d82..0000000000 --- a/src/app/core/auth/auth.actions.js +++ /dev/null @@ -1,310 +0,0 @@ -// import type function -import { type } from '../../shared/ngrx/type'; -export var AuthActionTypes = { - AUTHENTICATE: type('dspace/auth/AUTHENTICATE'), - AUTHENTICATE_ERROR: type('dspace/auth/AUTHENTICATE_ERROR'), - AUTHENTICATE_SUCCESS: type('dspace/auth/AUTHENTICATE_SUCCESS'), - AUTHENTICATED: type('dspace/auth/AUTHENTICATED'), - AUTHENTICATED_ERROR: type('dspace/auth/AUTHENTICATED_ERROR'), - AUTHENTICATED_SUCCESS: type('dspace/auth/AUTHENTICATED_SUCCESS'), - CHECK_AUTHENTICATION_TOKEN: type('dspace/auth/CHECK_AUTHENTICATION_TOKEN'), - CHECK_AUTHENTICATION_TOKEN_ERROR: type('dspace/auth/CHECK_AUTHENTICATION_TOKEN_ERROR'), - REDIRECT_TOKEN_EXPIRED: type('dspace/auth/REDIRECT_TOKEN_EXPIRED'), - REDIRECT_AUTHENTICATION_REQUIRED: type('dspace/auth/REDIRECT_AUTHENTICATION_REQUIRED'), - REFRESH_TOKEN: type('dspace/auth/REFRESH_TOKEN'), - REFRESH_TOKEN_SUCCESS: type('dspace/auth/REFRESH_TOKEN_SUCCESS'), - REFRESH_TOKEN_ERROR: type('dspace/auth/REFRESH_TOKEN_ERROR'), - ADD_MESSAGE: type('dspace/auth/ADD_MESSAGE'), - RESET_MESSAGES: type('dspace/auth/RESET_MESSAGES'), - LOG_OUT: type('dspace/auth/LOG_OUT'), - LOG_OUT_ERROR: type('dspace/auth/LOG_OUT_ERROR'), - LOG_OUT_SUCCESS: type('dspace/auth/LOG_OUT_SUCCESS'), - REGISTRATION: type('dspace/auth/REGISTRATION'), - REGISTRATION_ERROR: type('dspace/auth/REGISTRATION_ERROR'), - REGISTRATION_SUCCESS: type('dspace/auth/REGISTRATION_SUCCESS'), - SET_REDIRECT_URL: type('dspace/auth/SET_REDIRECT_URL'), -}; -/* tslint:disable:max-classes-per-file */ -/** - * Authenticate. - * @class AuthenticateAction - * @implements {Action} - */ -var AuthenticateAction = /** @class */ (function () { - function AuthenticateAction(email, password) { - this.type = AuthActionTypes.AUTHENTICATE; - this.payload = { email: email, password: password }; - } - return AuthenticateAction; -}()); -export { AuthenticateAction }; -/** - * Checks if user is authenticated. - * @class AuthenticatedAction - * @implements {Action} - */ -var AuthenticatedAction = /** @class */ (function () { - function AuthenticatedAction(token) { - this.type = AuthActionTypes.AUTHENTICATED; - this.payload = token; - } - return AuthenticatedAction; -}()); -export { AuthenticatedAction }; -/** - * Authenticated check success. - * @class AuthenticatedSuccessAction - * @implements {Action} - */ -var AuthenticatedSuccessAction = /** @class */ (function () { - function AuthenticatedSuccessAction(authenticated, authToken, user) { - this.type = AuthActionTypes.AUTHENTICATED_SUCCESS; - this.payload = { authenticated: authenticated, authToken: authToken, user: user }; - } - return AuthenticatedSuccessAction; -}()); -export { AuthenticatedSuccessAction }; -/** - * Authenticated check error. - * @class AuthenticatedErrorAction - * @implements {Action} - */ -var AuthenticatedErrorAction = /** @class */ (function () { - function AuthenticatedErrorAction(payload) { - this.type = AuthActionTypes.AUTHENTICATED_ERROR; - this.payload = payload; - } - return AuthenticatedErrorAction; -}()); -export { AuthenticatedErrorAction }; -/** - * Authentication error. - * @class AuthenticationErrorAction - * @implements {Action} - */ -var AuthenticationErrorAction = /** @class */ (function () { - function AuthenticationErrorAction(payload) { - this.type = AuthActionTypes.AUTHENTICATE_ERROR; - this.payload = payload; - } - return AuthenticationErrorAction; -}()); -export { AuthenticationErrorAction }; -/** - * Authentication success. - * @class AuthenticationSuccessAction - * @implements {Action} - */ -var AuthenticationSuccessAction = /** @class */ (function () { - function AuthenticationSuccessAction(token) { - this.type = AuthActionTypes.AUTHENTICATE_SUCCESS; - this.payload = token; - } - return AuthenticationSuccessAction; -}()); -export { AuthenticationSuccessAction }; -/** - * Check if token is already present upon initial load. - * @class CheckAuthenticationTokenAction - * @implements {Action} - */ -var CheckAuthenticationTokenAction = /** @class */ (function () { - function CheckAuthenticationTokenAction() { - this.type = AuthActionTypes.CHECK_AUTHENTICATION_TOKEN; - } - return CheckAuthenticationTokenAction; -}()); -export { CheckAuthenticationTokenAction }; -/** - * Check Authentication Token Error. - * @class CheckAuthenticationTokenErrorAction - * @implements {Action} - */ -var CheckAuthenticationTokenErrorAction = /** @class */ (function () { - function CheckAuthenticationTokenErrorAction() { - this.type = AuthActionTypes.CHECK_AUTHENTICATION_TOKEN_ERROR; - } - return CheckAuthenticationTokenErrorAction; -}()); -export { CheckAuthenticationTokenErrorAction }; -/** - * Sign out. - * @class LogOutAction - * @implements {Action} - */ -var LogOutAction = /** @class */ (function () { - function LogOutAction(payload) { - this.payload = payload; - this.type = AuthActionTypes.LOG_OUT; - } - return LogOutAction; -}()); -export { LogOutAction }; -/** - * Sign out error. - * @class LogOutErrorAction - * @implements {Action} - */ -var LogOutErrorAction = /** @class */ (function () { - function LogOutErrorAction(payload) { - this.type = AuthActionTypes.LOG_OUT_ERROR; - this.payload = payload; - } - return LogOutErrorAction; -}()); -export { LogOutErrorAction }; -/** - * Sign out success. - * @class LogOutSuccessAction - * @implements {Action} - */ -var LogOutSuccessAction = /** @class */ (function () { - function LogOutSuccessAction(payload) { - this.payload = payload; - this.type = AuthActionTypes.LOG_OUT_SUCCESS; - } - return LogOutSuccessAction; -}()); -export { LogOutSuccessAction }; -/** - * Redirect to login page when authentication is required. - * @class RedirectWhenAuthenticationIsRequiredAction - * @implements {Action} - */ -var RedirectWhenAuthenticationIsRequiredAction = /** @class */ (function () { - function RedirectWhenAuthenticationIsRequiredAction(message) { - this.type = AuthActionTypes.REDIRECT_AUTHENTICATION_REQUIRED; - this.payload = message; - } - return RedirectWhenAuthenticationIsRequiredAction; -}()); -export { RedirectWhenAuthenticationIsRequiredAction }; -/** - * Redirect to login page when token is expired. - * @class RedirectWhenTokenExpiredAction - * @implements {Action} - */ -var RedirectWhenTokenExpiredAction = /** @class */ (function () { - function RedirectWhenTokenExpiredAction(message) { - this.type = AuthActionTypes.REDIRECT_TOKEN_EXPIRED; - this.payload = message; - } - return RedirectWhenTokenExpiredAction; -}()); -export { RedirectWhenTokenExpiredAction }; -/** - * Refresh authentication token. - * @class RefreshTokenAction - * @implements {Action} - */ -var RefreshTokenAction = /** @class */ (function () { - function RefreshTokenAction(token) { - this.type = AuthActionTypes.REFRESH_TOKEN; - this.payload = token; - } - return RefreshTokenAction; -}()); -export { RefreshTokenAction }; -/** - * Refresh authentication token success. - * @class RefreshTokenSuccessAction - * @implements {Action} - */ -var RefreshTokenSuccessAction = /** @class */ (function () { - function RefreshTokenSuccessAction(token) { - this.type = AuthActionTypes.REFRESH_TOKEN_SUCCESS; - this.payload = token; - } - return RefreshTokenSuccessAction; -}()); -export { RefreshTokenSuccessAction }; -/** - * Refresh authentication token error. - * @class RefreshTokenErrorAction - * @implements {Action} - */ -var RefreshTokenErrorAction = /** @class */ (function () { - function RefreshTokenErrorAction() { - this.type = AuthActionTypes.REFRESH_TOKEN_ERROR; - } - return RefreshTokenErrorAction; -}()); -export { RefreshTokenErrorAction }; -/** - * Sign up. - * @class RegistrationAction - * @implements {Action} - */ -var RegistrationAction = /** @class */ (function () { - function RegistrationAction(user) { - this.type = AuthActionTypes.REGISTRATION; - this.payload = user; - } - return RegistrationAction; -}()); -export { RegistrationAction }; -/** - * Sign up error. - * @class RegistrationErrorAction - * @implements {Action} - */ -var RegistrationErrorAction = /** @class */ (function () { - function RegistrationErrorAction(payload) { - this.type = AuthActionTypes.REGISTRATION_ERROR; - this.payload = payload; - } - return RegistrationErrorAction; -}()); -export { RegistrationErrorAction }; -/** - * Sign up success. - * @class RegistrationSuccessAction - * @implements {Action} - */ -var RegistrationSuccessAction = /** @class */ (function () { - function RegistrationSuccessAction(user) { - this.type = AuthActionTypes.REGISTRATION_SUCCESS; - this.payload = user; - } - return RegistrationSuccessAction; -}()); -export { RegistrationSuccessAction }; -/** - * Add uthentication message. - * @class AddAuthenticationMessageAction - * @implements {Action} - */ -var AddAuthenticationMessageAction = /** @class */ (function () { - function AddAuthenticationMessageAction(message) { - this.type = AuthActionTypes.ADD_MESSAGE; - this.payload = message; - } - return AddAuthenticationMessageAction; -}()); -export { AddAuthenticationMessageAction }; -/** - * Reset error. - * @class ResetAuthenticationMessagesAction - * @implements {Action} - */ -var ResetAuthenticationMessagesAction = /** @class */ (function () { - function ResetAuthenticationMessagesAction() { - this.type = AuthActionTypes.RESET_MESSAGES; - } - return ResetAuthenticationMessagesAction; -}()); -export { ResetAuthenticationMessagesAction }; -/** - * Change the redirect url. - * @class SetRedirectUrlAction - * @implements {Action} - */ -var SetRedirectUrlAction = /** @class */ (function () { - function SetRedirectUrlAction(url) { - this.type = AuthActionTypes.SET_REDIRECT_URL; - this.payload = url; - } - return SetRedirectUrlAction; -}()); -export { SetRedirectUrlAction }; -//# sourceMappingURL=auth.actions.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.actions.js.map b/src/app/core/auth/auth.actions.js.map deleted file mode 100644 index 5e240d85ae..0000000000 --- a/src/app/core/auth/auth.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth.actions.js","sourceRoot":"","sources":["auth.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/auth.effects.js b/src/app/core/auth/auth.effects.js deleted file mode 100644 index 450974774d..0000000000 --- a/src/app/core/auth/auth.effects.js +++ /dev/null @@ -1,130 +0,0 @@ -import * as tslib_1 from "tslib"; -import { of as observableOf, Observable } from 'rxjs'; -import { filter, debounceTime, switchMap, take, tap, catchError, map } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -// import @ngrx -import { Actions, Effect, ofType } from '@ngrx/effects'; -import { select, Store } from '@ngrx/store'; -// import services -import { AuthService } from './auth.service'; -// import actions -import { AuthActionTypes, AuthenticatedAction, AuthenticatedErrorAction, AuthenticatedSuccessAction, AuthenticationErrorAction, AuthenticationSuccessAction, CheckAuthenticationTokenErrorAction, LogOutErrorAction, LogOutSuccessAction, RefreshTokenErrorAction, RefreshTokenSuccessAction, RegistrationErrorAction, RegistrationSuccessAction } from './auth.actions'; -import { isAuthenticated } from './selectors'; -import { StoreActionTypes } from '../../store.actions'; -var AuthEffects = /** @class */ (function () { - /** - * @constructor - * @param {Actions} actions$ - * @param {AuthService} authService - * @param {Store} store - */ - function AuthEffects(actions$, authService, store) { - var _this = this; - this.actions$ = actions$; - this.authService = authService; - this.store = store; - /** - * Authenticate user. - * @method authenticate - */ - this.authenticate$ = this.actions$.pipe(ofType(AuthActionTypes.AUTHENTICATE), switchMap(function (action) { - return _this.authService.authenticate(action.payload.email, action.payload.password).pipe(take(1), map(function (response) { return new AuthenticationSuccessAction(response.token); }), catchError(function (error) { return observableOf(new AuthenticationErrorAction(error)); })); - })); - this.authenticateSuccess$ = this.actions$.pipe(ofType(AuthActionTypes.AUTHENTICATE_SUCCESS), tap(function (action) { return _this.authService.storeToken(action.payload); }), map(function (action) { return new AuthenticatedAction(action.payload); })); - this.authenticated$ = this.actions$.pipe(ofType(AuthActionTypes.AUTHENTICATED), switchMap(function (action) { - return _this.authService.authenticatedUser(action.payload).pipe(map(function (user) { return new AuthenticatedSuccessAction((user !== null), action.payload, user); }), catchError(function (error) { return observableOf(new AuthenticatedErrorAction(error)); })); - })); - // It means "reacts to this action but don't send another" - this.authenticatedError$ = this.actions$.pipe(ofType(AuthActionTypes.AUTHENTICATED_ERROR), tap(function (action) { return _this.authService.removeToken(); })); - this.checkToken$ = this.actions$.pipe(ofType(AuthActionTypes.CHECK_AUTHENTICATION_TOKEN), switchMap(function () { - return _this.authService.hasValidAuthenticationToken().pipe(map(function (token) { return new AuthenticatedAction(token); }), catchError(function (error) { return observableOf(new CheckAuthenticationTokenErrorAction()); })); - })); - this.createUser$ = this.actions$.pipe(ofType(AuthActionTypes.REGISTRATION), debounceTime(500), // to remove when functionality is implemented - switchMap(function (action) { - return _this.authService.create(action.payload).pipe(map(function (user) { return new RegistrationSuccessAction(user); }), catchError(function (error) { return observableOf(new RegistrationErrorAction(error)); })); - })); - this.refreshToken$ = this.actions$.pipe(ofType(AuthActionTypes.REFRESH_TOKEN), switchMap(function (action) { - return _this.authService.refreshAuthenticationToken(action.payload).pipe(map(function (token) { return new RefreshTokenSuccessAction(token); }), catchError(function (error) { return observableOf(new RefreshTokenErrorAction()); })); - })); - // It means "reacts to this action but don't send another" - this.refreshTokenSuccess$ = this.actions$.pipe(ofType(AuthActionTypes.REFRESH_TOKEN_SUCCESS), tap(function (action) { return _this.authService.replaceToken(action.payload); })); - /** - * When the store is rehydrated in the browser, - * clear a possible invalid token or authentication errors - */ - this.clearInvalidTokenOnRehydrate$ = this.actions$.pipe(ofType(StoreActionTypes.REHYDRATE), switchMap(function () { - return _this.store.pipe(select(isAuthenticated), take(1), filter(function (authenticated) { return !authenticated; }), tap(function () { return _this.authService.removeToken(); }), tap(function () { return _this.authService.resetAuthenticationError(); })); - })); - this.logOut$ = this.actions$ - .pipe(ofType(AuthActionTypes.LOG_OUT), switchMap(function () { - return _this.authService.logout().pipe(map(function (value) { return new LogOutSuccessAction(); }), catchError(function (error) { return observableOf(new LogOutErrorAction(error)); })); - })); - this.logOutSuccess$ = this.actions$ - .pipe(ofType(AuthActionTypes.LOG_OUT_SUCCESS), tap(function () { return _this.authService.removeToken(); }), tap(function () { return _this.authService.clearRedirectUrl(); }), tap(function () { return _this.authService.refreshAfterLogout(); })); - this.redirectToLogin$ = this.actions$ - .pipe(ofType(AuthActionTypes.REDIRECT_AUTHENTICATION_REQUIRED), tap(function () { return _this.authService.removeToken(); }), tap(function () { return _this.authService.redirectToLogin(); })); - this.redirectToLoginTokenExpired$ = this.actions$ - .pipe(ofType(AuthActionTypes.REDIRECT_TOKEN_EXPIRED), tap(function () { return _this.authService.removeToken(); }), tap(function () { return _this.authService.redirectToLoginWhenTokenExpired(); })); - } - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "authenticate$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "authenticateSuccess$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "authenticated$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "authenticatedError$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "checkToken$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "createUser$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "refreshToken$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "refreshTokenSuccess$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "clearInvalidTokenOnRehydrate$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "logOut$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "logOutSuccess$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "redirectToLogin$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Observable) - ], AuthEffects.prototype, "redirectToLoginTokenExpired$", void 0); - AuthEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions, - AuthService, - Store]) - ], AuthEffects); - return AuthEffects; -}()); -export { AuthEffects }; -//# sourceMappingURL=auth.effects.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.effects.js.map b/src/app/core/auth/auth.effects.js.map deleted file mode 100644 index 55b0d4ebb9..0000000000 --- a/src/app/core/auth/auth.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth.effects.js","sourceRoot":"","sources":["auth.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,eAAe;AACf,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAU,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpD,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,iBAAiB;AACjB,OAAO,EACL,eAAe,EAEf,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,mCAAmC,EACnC,iBAAiB,EACjB,mBAAmB,EAEnB,uBAAuB,EACvB,yBAAyB,EAEzB,uBAAuB,EACvB,yBAAyB,EAC1B,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD;IAqIE;;;;;OAKG;IACH,qBAAoB,QAAiB,EACjB,WAAwB,EACxB,KAAsB;QAF1C,iBAGC;QAHmB,aAAQ,GAAR,QAAQ,CAAS;QACjB,gBAAW,GAAX,WAAW,CAAa;QACxB,UAAK,GAAL,KAAK,CAAiB;QA3I1C;;;WAGG;QAEI,kBAAa,GAAuB,IAAI,CAAC,QAAQ,CAAC,IAAI,CACzD,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,EACpC,SAAS,CAAC,UAAC,MAA0B;YACnC,OAAO,KAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CACtF,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,QAAoB,IAAK,OAAA,IAAI,2BAA2B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAA/C,CAA+C,CAAC,EAC9E,UAAU,CAAC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC,EAAlD,CAAkD,CAAC,CAC1E,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAGG,yBAAoB,GAAuB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChE,MAAM,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAC5C,GAAG,CAAC,UAAC,MAAmC,IAAK,OAAA,KAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAA3C,CAA2C,CAAC,EACzF,GAAG,CAAC,UAAC,MAAmC,IAAK,OAAA,IAAI,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAvC,CAAuC,CAAC,CACtF,CAAC;QAGG,mBAAc,GAAuB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC1D,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,EACrC,SAAS,CAAC,UAAC,MAA2B;YACpC,OAAO,KAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAC5D,GAAG,CAAC,UAAC,IAAa,IAAK,OAAA,IAAI,0BAA0B,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,EAArE,CAAqE,CAAC,EAC7F,UAAU,CAAC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAC,EAAjD,CAAiD,CAAC,CAAE,CAAC;QAC/E,CAAC,CAAC,CACH,CAAC;QAEJ,0DAA0D;QAEnD,wBAAmB,GAAuB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAC/D,MAAM,CAAC,eAAe,CAAC,mBAAmB,CAAC,EAC3C,GAAG,CAAC,UAAC,MAA2B,IAAK,OAAA,KAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAA9B,CAA8B,CAAC,CACrE,CAAC;QAGG,gBAAW,GAAuB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,0BAA0B,CAAC,EAC1G,SAAS,CAAC;YACR,OAAO,KAAI,CAAC,WAAW,CAAC,2BAA2B,EAAE,CAAC,IAAI,CACxD,GAAG,CAAC,UAAC,KAAoB,IAAK,OAAA,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAA9B,CAA8B,CAAC,EAC7D,UAAU,CAAC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,IAAI,mCAAmC,EAAE,CAAC,EAAvD,CAAuD,CAAC,CAC/E,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAGG,gBAAW,GAAuB,IAAI,CAAC,QAAQ,CAAC,IAAI,CACvD,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,EACpC,YAAY,CAAC,GAAG,CAAC,EAAE,8CAA8C;QACjE,SAAS,CAAC,UAAC,MAA0B;YACnC,OAAO,KAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CACjD,GAAG,CAAC,UAAC,IAAa,IAAK,OAAA,IAAI,yBAAyB,CAAC,IAAI,CAAC,EAAnC,CAAmC,CAAC,EAC3D,UAAU,CAAC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC,EAAhD,CAAgD,CAAC,CACxE,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAGG,kBAAa,GAAuB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,EAC/F,SAAS,CAAC,UAAC,MAA0B;YACnC,OAAO,KAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CACrE,GAAG,CAAC,UAAC,KAAoB,IAAK,OAAA,IAAI,yBAAyB,CAAC,KAAK,CAAC,EAApC,CAAoC,CAAC,EACnE,UAAU,CAAC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,IAAI,uBAAuB,EAAE,CAAC,EAA3C,CAA2C,CAAC,CACnE,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAEJ,0DAA0D;QAEnD,yBAAoB,GAAuB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChE,MAAM,CAAC,eAAe,CAAC,qBAAqB,CAAC,EAC7C,GAAG,CAAC,UAAC,MAAiC,IAAK,OAAA,KAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC1F,CAAC;QAEJ;;;WAGG;QAEI,kCAA6B,GAAoB,IAAI,CAAC,QAAQ,CAAC,IAAI,CACxE,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAClC,SAAS,CAAC;YACR,OAAO,KAAI,CAAC,KAAK,CAAC,IAAI,CACpB,MAAM,CAAC,eAAe,CAAC,EACvB,IAAI,CAAC,CAAC,CAAC,EACP,MAAM,CAAC,UAAC,aAAa,IAAK,OAAA,CAAC,aAAa,EAAd,CAAc,CAAC,EACzC,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAA9B,CAA8B,CAAC,EACzC,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,EAA3C,CAA2C,CAAC,CACvD,CAAC;QACJ,CAAC,CAAC,CAAC,CAAC;QAGC,YAAO,GAAuB,IAAI,CAAC,QAAQ;aAC/C,IAAI,CACH,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,EAC/B,SAAS,CAAC;YACR,OAAO,KAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,IAAI,CACnC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,IAAI,mBAAmB,EAAE,EAAzB,CAAyB,CAAC,EACzC,UAAU,CAAC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAA1C,CAA0C,CAAC,CAClE,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAGG,mBAAc,GAAuB,IAAI,CAAC,QAAQ;aACtD,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,eAAe,CAAC,EAC3C,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAA9B,CAA8B,CAAC,EACzC,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,EAAnC,CAAmC,CAAC,EAC9C,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAArC,CAAqC,CAAC,CACjD,CAAC;QAGG,qBAAgB,GAAuB,IAAI,CAAC,QAAQ;aACxD,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,gCAAgC,CAAC,EAC5D,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAA9B,CAA8B,CAAC,EACzC,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAlC,CAAkC,CAAC,CAC9C,CAAC;QAGG,iCAA4B,GAAuB,IAAI,CAAC,QAAQ;aACpE,IAAI,CACH,MAAM,CAAC,eAAe,CAAC,sBAAsB,CAAC,EAC9C,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAA9B,CAA8B,CAAC,EACzC,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,+BAA+B,EAAE,EAAlD,CAAkD,CAAC,CAC9D,CAAC;IAWJ,CAAC;IAvID;QADC,MAAM,EAAE;0CACa,UAAU;sDAS5B;IAGJ;QADC,MAAM,EAAE;0CACoB,UAAU;6DAInC;IAGJ;QADC,MAAM,EAAE;0CACc,UAAU;uDAO7B;IAIJ;QADC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;0CACA,UAAU;4DAGlC;IAGJ;QADC,MAAM,EAAE;0CACW,UAAU;oDAO1B;IAGJ;QADC,MAAM,EAAE;0CACW,UAAU;oDAS1B;IAGJ;QADC,MAAM,EAAE;0CACa,UAAU;sDAO5B;IAIJ;QADC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;0CACC,UAAU;6DAGnC;IAOJ;QADC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;0CACU,UAAU;sEAU1C;IAGN;QADC,MAAM,EAAE;0CACO,UAAU;gDAStB;IAGJ;QADC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;0CACL,UAAU;uDAK7B;IAGJ;QADC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;0CACH,UAAU;yDAI/B;IAGJ;QADC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;0CACS,UAAU;qEAK3C;IAnIO,WAAW;QADvB,UAAU,EAAE;iDA4ImB,OAAO;YACJ,WAAW;YACjB,KAAK;OA7IrB,WAAW,CA+IvB;IAAD,kBAAC;CAAA,AA/ID,IA+IC;SA/IY,WAAW"} \ No newline at end of file diff --git a/src/app/core/auth/auth.interceptor.js b/src/app/core/auth/auth.interceptor.js deleted file mode 100644 index 07f91b2409..0000000000 --- a/src/app/core/auth/auth.interceptor.js +++ /dev/null @@ -1,144 +0,0 @@ -import * as tslib_1 from "tslib"; -import { of as observableOf, throwError as observableThrowError } from 'rxjs'; -import { catchError, filter, map } from 'rxjs/operators'; -import { Injectable, Injector } from '@angular/core'; -import { HttpErrorResponse, HttpResponse } from '@angular/common/http'; -import { find } from 'lodash'; -import { AuthService } from './auth.service'; -import { AuthStatus } from './models/auth-status.model'; -import { AuthTokenInfo } from './models/auth-token-info.model'; -import { isNotEmpty, isUndefined, isNotNull } from '../../shared/empty.util'; -import { RedirectWhenTokenExpiredAction, RefreshTokenAction } from './auth.actions'; -import { Store } from '@ngrx/store'; -import { Router } from '@angular/router'; -var AuthInterceptor = /** @class */ (function () { - function AuthInterceptor(inj, router, store) { - this.inj = inj; - this.router = router; - this.store = store; - // Intercetor is called twice per request, - // so to prevent RefreshTokenAction is dispatched twice - // we're creating a refresh token request list - this.refreshTokenRequestUrls = []; - } - AuthInterceptor.prototype.isUnauthorized = function (response) { - // invalid_token The access token provided is expired, revoked, malformed, or invalid for other reasons - return response.status === 401; - }; - AuthInterceptor.prototype.isSuccess = function (response) { - return (response.status === 200 || response.status === 204); - }; - AuthInterceptor.prototype.isAuthRequest = function (http) { - return http && http.url - && (http.url.endsWith('/authn/login') - || http.url.endsWith('/authn/logout') - || http.url.endsWith('/authn/status')); - }; - AuthInterceptor.prototype.isLoginResponse = function (http) { - return http.url && http.url.endsWith('/authn/login'); - }; - AuthInterceptor.prototype.isLogoutResponse = function (http) { - return http.url && http.url.endsWith('/authn/logout'); - }; - AuthInterceptor.prototype.makeAuthStatusObject = function (authenticated, accessToken, error) { - var authStatus = new AuthStatus(); - authStatus.id = null; - authStatus.okay = true; - if (authenticated) { - authStatus.authenticated = true; - authStatus.token = new AuthTokenInfo(accessToken); - } - else { - authStatus.authenticated = false; - authStatus.error = isNotEmpty(error) ? ((typeof error === 'string') ? JSON.parse(error) : error) : null; - } - return authStatus; - }; - AuthInterceptor.prototype.intercept = function (req, next) { - var _this = this; - var authService = this.inj.get(AuthService); - var token = authService.getToken(); - var newReq; - if (authService.isTokenExpired()) { - authService.setRedirectUrl(this.router.url); - // The access token is expired - // Redirect to the login route - this.store.dispatch(new RedirectWhenTokenExpiredAction('auth.messages.expired')); - return observableOf(null); - } - else if (!this.isAuthRequest(req) && isNotEmpty(token)) { - // Intercept a request that is not to the authentication endpoint - authService.isTokenExpiring().pipe(filter(function (isExpiring) { return isExpiring; })) - .subscribe(function () { - // If the current request url is already in the refresh token request list, skip it - if (isUndefined(find(_this.refreshTokenRequestUrls, req.url))) { - // When a token is about to expire, refresh it - _this.store.dispatch(new RefreshTokenAction(token)); - _this.refreshTokenRequestUrls.push(req.url); - } - }); - // Get the auth header from the service. - var Authorization = authService.buildAuthHeader(token); - // Clone the request to add the new header. - newReq = req.clone({ headers: req.headers.set('authorization', Authorization) }); - } - else { - newReq = req; - } - // Pass on the new request instead of the original request. - return next.handle(newReq).pipe(map(function (response) { - // Intercept a Login/Logout response - if (response instanceof HttpResponse && _this.isSuccess(response) && (_this.isLoginResponse(response) || _this.isLogoutResponse(response))) { - // It's a success Login/Logout response - var authRes = void 0; - if (_this.isLoginResponse(response)) { - // login successfully - var newToken = response.headers.get('authorization'); - authRes = response.clone({ body: _this.makeAuthStatusObject(true, newToken) }); - // clean eventually refresh Requests list - _this.refreshTokenRequestUrls = []; - } - else { - // logout successfully - authRes = response.clone({ body: _this.makeAuthStatusObject(false) }); - } - return authRes; - } - else { - return response; - } - }), catchError(function (error, caught) { - // Intercept an error response - if (error instanceof HttpErrorResponse) { - // Checks if is a response from a request to an authentication endpoint - if (_this.isAuthRequest(error)) { - // clean eventually refresh Requests list - _this.refreshTokenRequestUrls = []; - // Create a new HttpResponse and return it, so it can be handle properly by AuthService. - var authResponse = new HttpResponse({ - body: _this.makeAuthStatusObject(false, null, error.error), - headers: error.headers, - status: error.status, - statusText: error.statusText, - url: error.url - }); - return observableOf(authResponse); - } - else if (_this.isUnauthorized(error) && isNotNull(token) && authService.isTokenExpired()) { - // The access token provided is expired, revoked, malformed, or invalid for other reasons - // Redirect to the login route - _this.store.dispatch(new RedirectWhenTokenExpiredAction('auth.messages.expired')); - } - } - // Return error response as is. - return observableThrowError(error); - })); - }; - AuthInterceptor = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Injector, Router, Store]) - ], AuthInterceptor); - return AuthInterceptor; -}()); -export { AuthInterceptor }; -//# sourceMappingURL=auth.interceptor.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.interceptor.js.map b/src/app/core/auth/auth.interceptor.js.map deleted file mode 100644 index cdbdadcd12..0000000000 --- a/src/app/core/auth/auth.interceptor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth.interceptor.js","sourceRoot":"","sources":["auth.interceptor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/auth.reducer.js b/src/app/core/auth/auth.reducer.js deleted file mode 100644 index a8c0b8a9cc..0000000000 --- a/src/app/core/auth/auth.reducer.js +++ /dev/null @@ -1,131 +0,0 @@ -// import actions -import { AuthActionTypes } from './auth.actions'; -/** - * The initial state. - */ -var initialState = { - authenticated: false, - loaded: false, - loading: false, -}; -/** - * The reducer function. - * @function reducer - * @param {State} state Current state - * @param {AuthActions} action Incoming action - */ -export function authReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case AuthActionTypes.AUTHENTICATE: - return Object.assign({}, state, { - error: undefined, - loading: true, - info: undefined - }); - case AuthActionTypes.AUTHENTICATED: - return Object.assign({}, state, { - loading: true - }); - case AuthActionTypes.AUTHENTICATED_ERROR: - return Object.assign({}, state, { - authenticated: false, - authToken: undefined, - error: action.payload.message, - loaded: true, - loading: false - }); - case AuthActionTypes.AUTHENTICATED_SUCCESS: - return Object.assign({}, state, { - authenticated: true, - authToken: action.payload.authToken, - loaded: true, - error: undefined, - loading: false, - info: undefined, - user: action.payload.user - }); - case AuthActionTypes.AUTHENTICATE_ERROR: - case AuthActionTypes.REGISTRATION_ERROR: - return Object.assign({}, state, { - authenticated: false, - authToken: undefined, - error: action.payload.message, - loading: false - }); - case AuthActionTypes.AUTHENTICATED: - case AuthActionTypes.AUTHENTICATE_SUCCESS: - case AuthActionTypes.LOG_OUT: - return state; - case AuthActionTypes.CHECK_AUTHENTICATION_TOKEN: - return Object.assign({}, state, { - loading: true - }); - case AuthActionTypes.CHECK_AUTHENTICATION_TOKEN_ERROR: - return Object.assign({}, state, { - loading: false - }); - case AuthActionTypes.LOG_OUT_ERROR: - return Object.assign({}, state, { - authenticated: true, - error: action.payload.message - }); - case AuthActionTypes.LOG_OUT_SUCCESS: - case AuthActionTypes.REFRESH_TOKEN_ERROR: - return Object.assign({}, state, { - authenticated: false, - authToken: undefined, - error: undefined, - loaded: false, - loading: false, - info: undefined, - refreshing: false, - user: undefined - }); - case AuthActionTypes.REDIRECT_AUTHENTICATION_REQUIRED: - case AuthActionTypes.REDIRECT_TOKEN_EXPIRED: - return Object.assign({}, state, { - authenticated: false, - authToken: undefined, - loaded: false, - loading: false, - info: action.payload, - user: undefined - }); - case AuthActionTypes.REGISTRATION: - return Object.assign({}, state, { - authenticated: false, - authToken: undefined, - error: undefined, - loading: true, - info: undefined - }); - case AuthActionTypes.REGISTRATION_SUCCESS: - return state; - case AuthActionTypes.REFRESH_TOKEN: - return Object.assign({}, state, { - refreshing: true, - }); - case AuthActionTypes.REFRESH_TOKEN_SUCCESS: - return Object.assign({}, state, { - authToken: action.payload, - refreshing: false, - }); - case AuthActionTypes.ADD_MESSAGE: - return Object.assign({}, state, { - info: action.payload, - }); - case AuthActionTypes.RESET_MESSAGES: - return Object.assign({}, state, { - error: undefined, - info: undefined, - }); - case AuthActionTypes.SET_REDIRECT_URL: - return Object.assign({}, state, { - redirectUrl: action.payload, - }); - default: - return state; - } -} -//# sourceMappingURL=auth.reducer.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.reducer.js.map b/src/app/core/auth/auth.reducer.js.map deleted file mode 100644 index 72c87ecf8d..0000000000 --- a/src/app/core/auth/auth.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth.reducer.js","sourceRoot":"","sources":["auth.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/auth.service.js b/src/app/core/auth/auth.service.js deleted file mode 100644 index a7a691369c..0000000000 --- a/src/app/core/auth/auth.service.js +++ /dev/null @@ -1,365 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable, Optional } from '@angular/core'; -import { PRIMARY_OUTLET, Router } from '@angular/router'; -import { HttpHeaders } from '@angular/common/http'; -import { REQUEST, RESPONSE } from '@nguniversal/express-engine/tokens'; -import { of as observableOf } from 'rxjs'; -import { distinctUntilChanged, filter, map, startWith, switchMap, take, withLatestFrom } from 'rxjs/operators'; -import { select, Store } from '@ngrx/store'; -import { AuthRequestService } from './auth-request.service'; -import { TOKENITEM } from './models/auth-token-info.model'; -import { isEmpty, isNotEmpty, isNotNull, isNotUndefined } from '../../shared/empty.util'; -import { CookieService } from '../../shared/services/cookie.service'; -import { getAuthenticationToken, getRedirectUrl, isAuthenticated, isTokenRefreshing } from './selectors'; -import { routerStateSelector } from '../../app.reducer'; -import { ResetAuthenticationMessagesAction, SetRedirectUrlAction } from './auth.actions'; -import { NativeWindowRef, NativeWindowService } from '../../shared/services/window.service'; -import { Base64EncodeUrl } from '../../shared/utils/encode-decode.util'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -export var LOGIN_ROUTE = '/login'; -export var LOGOUT_ROUTE = '/logout'; -export var REDIRECT_COOKIE = 'dsRedirectUrl'; -/** - * The auth service. - */ -var AuthService = /** @class */ (function () { - function AuthService(req, _window, authRequestService, response, router, storage, store, rdbService) { - var _this = this; - this.req = req; - this._window = _window; - this.authRequestService = authRequestService; - this.response = response; - this.router = router; - this.storage = storage; - this.store = store; - this.rdbService = rdbService; - this.store.pipe(select(isAuthenticated), startWith(false)).subscribe(function (authenticated) { return _this._authenticated = authenticated; }); - // If current route is different from the one setted in authentication guard - // and is not the login route, clear redirect url and messages - var routeUrl$ = this.store.pipe(select(routerStateSelector), filter(function (routerState) { return isNotUndefined(routerState) && isNotUndefined(routerState.state); }), filter(function (routerState) { return !_this.isLoginRoute(routerState.state.url); }), map(function (routerState) { return routerState.state.url; })); - var redirectUrl$ = this.store.pipe(select(getRedirectUrl), distinctUntilChanged()); - routeUrl$.pipe(withLatestFrom(redirectUrl$), map(function (_a) { - var routeUrl = _a[0], redirectUrl = _a[1]; - return [routeUrl, redirectUrl]; - })).pipe(filter(function (_a) { - var routeUrl = _a[0], redirectUrl = _a[1]; - return isNotEmpty(redirectUrl) && (routeUrl !== redirectUrl); - })) - .subscribe(function () { - _this.clearRedirectUrl(); - }); - } - /** - * Check if is a login page route - * - * @param {string} url - * @returns {Boolean}. - */ - AuthService.prototype.isLoginRoute = function (url) { - var urlTree = this.router.parseUrl(url); - var g = urlTree.root.children[PRIMARY_OUTLET]; - var segment = '/' + g.toString(); - return segment === LOGIN_ROUTE; - }; - /** - * Authenticate the user - * - * @param {string} user The user name - * @param {string} password The user's password - * @returns {Observable} The authenticated user observable. - */ - AuthService.prototype.authenticate = function (user, password) { - // Attempt authenticating the user using the supplied credentials. - var body = ("password=" + Base64EncodeUrl(password) + "&user=" + Base64EncodeUrl(user)); - var options = Object.create({}); - var headers = new HttpHeaders(); - headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); - options.headers = headers; - return this.authRequestService.postToEndpoint('login', body, options).pipe(map(function (status) { - if (status.authenticated) { - return status; - } - else { - throw (new Error('Invalid email or password')); - } - })); - }; - /** - * Determines if the user is authenticated - * @returns {Observable} - */ - AuthService.prototype.isAuthenticated = function () { - return this.store.pipe(select(isAuthenticated)); - }; - /** - * Returns the authenticated user - * @returns {User} - */ - AuthService.prototype.authenticatedUser = function (token) { - var _this = this; - // Determine if the user has an existing auth session on the server - var options = Object.create({}); - var headers = new HttpHeaders(); - headers = headers.append('Accept', 'application/json'); - headers = headers.append('Authorization', "Bearer " + token.accessToken); - options.headers = headers; - return this.authRequestService.getRequest('status', options).pipe(map(function (status) { return _this.rdbService.build(status); }), switchMap(function (status) { - if (status.authenticated) { - return status.eperson.pipe(map(function (eperson) { return eperson.payload; })); - } - else { - throw (new Error('Not authenticated')); - } - })); - }; - /** - * Checks if token is present into browser storage and is valid. (NB Check is done only on SSR) - */ - AuthService.prototype.checkAuthenticationToken = function () { - return; - }; - /** - * Checks if token is present into storage and is not expired - */ - AuthService.prototype.hasValidAuthenticationToken = function () { - var _this = this; - return this.store.pipe(select(getAuthenticationToken), take(1), map(function (authTokenInfo) { - var token; - // Retrieve authentication token info and check if is valid - token = isNotEmpty(authTokenInfo) ? authTokenInfo : _this.storage.get(TOKENITEM); - if (isNotEmpty(token) && token.hasOwnProperty('accessToken') && isNotEmpty(token.accessToken) && !_this.isTokenExpired(token)) { - return token; - } - else { - throw false; - } - })); - }; - /** - * Checks if token is present into storage - */ - AuthService.prototype.refreshAuthenticationToken = function (token) { - var options = Object.create({}); - var headers = new HttpHeaders(); - headers = headers.append('Accept', 'application/json'); - headers = headers.append('Authorization', "Bearer " + token.accessToken); - options.headers = headers; - return this.authRequestService.postToEndpoint('login', {}, options).pipe(map(function (status) { - if (status.authenticated) { - return status.token; - } - else { - throw (new Error('Not authenticated')); - } - })); - }; - /** - * Clear authentication errors - */ - AuthService.prototype.resetAuthenticationError = function () { - this.store.dispatch(new ResetAuthenticationMessagesAction()); - }; - /** - * Create a new user - * @returns {User} - */ - AuthService.prototype.create = function (user) { - // Normally you would do an HTTP request to POST the user - // details and then return the new user object - // but, let's just return the new user for this example. - // this._authenticated = true; - return observableOf(user); - }; - /** - * End session - * @returns {Observable} - */ - AuthService.prototype.logout = function () { - // Send a request that sign end the session - var headers = new HttpHeaders(); - headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); - var options = Object.create({ headers: headers, responseType: 'text' }); - return this.authRequestService.getRequest('logout', options).pipe(map(function (status) { - if (!status.authenticated) { - return true; - } - else { - throw (new Error('auth.errors.invalid-user')); - } - })); - }; - /** - * Retrieve authentication token info and make authorization header - * @returns {string} - */ - AuthService.prototype.buildAuthHeader = function (token) { - if (isEmpty(token)) { - token = this.getToken(); - } - return (this._authenticated && isNotNull(token)) ? "Bearer " + token.accessToken : ''; - }; - /** - * Get authentication token info - * @returns {AuthTokenInfo} - */ - AuthService.prototype.getToken = function () { - var token; - this.store.pipe(select(getAuthenticationToken)) - .subscribe(function (authTokenInfo) { - // Retrieve authentication token info and check if is valid - token = authTokenInfo || null; - }); - return token; - }; - /** - * Check if a token is next to be expired - * @returns {boolean} - */ - AuthService.prototype.isTokenExpiring = function () { - var _this = this; - return this.store.pipe(select(isTokenRefreshing), take(1), map(function (isRefreshing) { - if (_this.isTokenExpired() || isRefreshing) { - return false; - } - else { - var token = _this.getToken(); - return token.expires - (60 * 5 * 1000) < Date.now(); - } - })); - }; - /** - * Check if a token is expired - * @returns {boolean} - */ - AuthService.prototype.isTokenExpired = function (token) { - token = token || this.getToken(); - return token && token.expires < Date.now(); - }; - /** - * Save authentication token info - * - * @param {AuthTokenInfo} token The token to save - * @returns {AuthTokenInfo} - */ - AuthService.prototype.storeToken = function (token) { - // Add 1 day to the current date - var expireDate = Date.now() + (1000 * 60 * 60 * 24); - // Set the cookie expire date - var expires = new Date(expireDate); - var options = { expires: expires }; - // Save cookie with the token - return this.storage.set(TOKENITEM, token, options); - }; - /** - * Remove authentication token info - */ - AuthService.prototype.removeToken = function () { - return this.storage.remove(TOKENITEM); - }; - /** - * Replace authentication token info with a new one - */ - AuthService.prototype.replaceToken = function (token) { - this.removeToken(); - return this.storeToken(token); - }; - /** - * Redirect to the login route - */ - AuthService.prototype.redirectToLogin = function () { - this.router.navigate([LOGIN_ROUTE]); - }; - /** - * Redirect to the login route when token has expired - */ - AuthService.prototype.redirectToLoginWhenTokenExpired = function () { - var redirectUrl = LOGIN_ROUTE + '?expired=true'; - if (this._window.nativeWindow.location) { - // Hard redirect to login page, so that all state is definitely lost - this._window.nativeWindow.location.href = redirectUrl; - } - else if (this.response) { - if (!this.response._headerSent) { - this.response.redirect(302, redirectUrl); - } - } - else { - this.router.navigateByUrl(redirectUrl); - } - }; - /** - * Redirect to the route navigated before the login - */ - AuthService.prototype.redirectToPreviousUrl = function () { - var _this = this; - this.getRedirectUrl().pipe(take(1)) - .subscribe(function (redirectUrl) { - if (isNotEmpty(redirectUrl)) { - _this.clearRedirectUrl(); - _this.router.onSameUrlNavigation = 'reload'; - var url = decodeURIComponent(redirectUrl); - _this.router.navigateByUrl(url); - /* TODO Reenable hard redirect when REST API can handle x-forwarded-for, see https://github.com/DSpace/DSpace/pull/2207 */ - // this._window.nativeWindow.location.href = url; - } - else { - _this.router.navigate(['/']); - /* TODO Reenable hard redirect when REST API can handle x-forwarded-for, see https://github.com/DSpace/DSpace/pull/2207 */ - // this._window.nativeWindow.location.href = '/'; - } - }); - }; - /** - * Refresh route navigated - */ - AuthService.prototype.refreshAfterLogout = function () { - this.router.navigate(['/home']); - // Hard redirect to home page, so that all state is definitely lost - this._window.nativeWindow.location.href = '/home'; - }; - /** - * Get redirect url - */ - AuthService.prototype.getRedirectUrl = function () { - var redirectUrl = this.storage.get(REDIRECT_COOKIE); - if (isNotEmpty(redirectUrl)) { - return observableOf(redirectUrl); - } - else { - return this.store.pipe(select(getRedirectUrl)); - } - }; - /** - * Set redirect url - */ - AuthService.prototype.setRedirectUrl = function (url) { - // Add 1 hour to the current date - var expireDate = Date.now() + (1000 * 60 * 60); - // Set the cookie expire date - var expires = new Date(expireDate); - var options = { expires: expires }; - this.storage.set(REDIRECT_COOKIE, url, options); - this.store.dispatch(new SetRedirectUrlAction(isNotUndefined(url) ? url : '')); - }; - /** - * Clear redirect url - */ - AuthService.prototype.clearRedirectUrl = function () { - this.store.dispatch(new SetRedirectUrlAction('')); - this.storage.remove(REDIRECT_COOKIE); - }; - AuthService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(REQUEST)), - tslib_1.__param(1, Inject(NativeWindowService)), - tslib_1.__param(3, Optional()), tslib_1.__param(3, Inject(RESPONSE)), - tslib_1.__metadata("design:paramtypes", [Object, NativeWindowRef, - AuthRequestService, Object, Router, - CookieService, - Store, - RemoteDataBuildService]) - ], AuthService); - return AuthService; -}()); -export { AuthService }; -//# sourceMappingURL=auth.service.js.map \ No newline at end of file diff --git a/src/app/core/auth/auth.service.js.map b/src/app/core/auth/auth.service.js.map deleted file mode 100644 index 272f9a9a86..0000000000 --- a/src/app/core/auth/auth.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["auth.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,EAA4B,MAAM,iBAAiB,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE/G,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAI5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,EAAiB,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzF,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACzG,OAAO,EAAY,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,iCAAiC,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,MAAM,CAAC,IAAM,WAAW,GAAG,QAAQ,CAAC;AACpC,MAAM,CAAC,IAAM,YAAY,GAAG,SAAS,CAAC;AAEtC,MAAM,CAAC,IAAM,eAAe,GAAG,eAAe,CAAC;AAE/C;;GAEG;AAEH;IAQE,qBAAuC,GAAQ,EACI,OAAwB,EACrD,kBAAsC,EACV,QAAa,EACzC,MAAc,EACd,OAAsB,EACtB,KAAsB,EACtB,UAAkC;QAPxD,iBA8BC;QA9BsC,QAAG,GAAH,GAAG,CAAK;QACI,YAAO,GAAP,OAAO,CAAiB;QACrD,uBAAkB,GAAlB,kBAAkB,CAAoB;QACV,aAAQ,GAAR,QAAQ,CAAK;QACzC,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAe;QACtB,UAAK,GAAL,KAAK,CAAiB;QACtB,eAAU,GAAV,UAAU,CAAwB;QAEtD,IAAI,CAAC,KAAK,CAAC,IAAI,CACb,MAAM,CAAC,eAAe,CAAC,EACvB,SAAS,CAAC,KAAK,CAAC,CACjB,CAAC,SAAS,CAAC,UAAC,aAAsB,IAAK,OAAA,KAAI,CAAC,cAAc,GAAG,aAAa,EAAnC,CAAmC,CAAC,CAAC;QAE7E,4EAA4E;QAC5E,8DAA8D;QAC9D,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC/B,MAAM,CAAC,mBAAmB,CAAC,EAC3B,MAAM,CAAC,UAAC,WAA+B,IAAK,OAAA,cAAc,CAAC,WAAW,CAAC,IAAI,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,EAAhE,CAAgE,CAAC,EAC7G,MAAM,CAAC,UAAC,WAA+B,IAAK,OAAA,CAAC,KAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,EAAzC,CAAyC,CAAC,EACtF,GAAG,CAAC,UAAC,WAA+B,IAAK,OAAA,WAAW,CAAC,KAAK,CAAC,GAAG,EAArB,CAAqB,CAAC,CAChE,CAAC;QACF,IAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACrF,SAAS,CAAC,IAAI,CACZ,cAAc,CAAC,YAAY,CAAC,EAC5B,GAAG,CAAC,UAAC,EAAuB;gBAAtB,gBAAQ,EAAE,mBAAW;YAAM,OAAA,CAAC,QAAQ,EAAE,WAAW,CAAC;QAAvB,CAAuB,CAAC,CAC1D,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,EAAuB;gBAAtB,gBAAQ,EAAE,mBAAW;YAAM,OAAA,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,KAAK,WAAW,CAAC;QAArD,CAAqD,CAAC,CAAC;aAC/F,SAAS,CAAC;YACT,KAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACO,kCAAY,GAAtB,UAAuB,GAAW;QAChC,IAAM,OAAO,GAAY,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACnD,IAAM,CAAC,GAAoB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QACjE,IAAM,OAAO,GAAG,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QACnC,OAAO,OAAO,KAAK,WAAW,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACI,kCAAY,GAAnB,UAAoB,IAAY,EAAE,QAAgB;QAChD,kEAAkE;QAClE,IAAM,IAAI,GAAG,CAAC,cAAY,eAAe,CAAC,QAAQ,CAAC,cAAS,eAAe,CAAC,IAAI,CAAG,CAAC,CAAC;QACrF,IAAM,OAAO,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,mCAAmC,CAAC,CAAC;QAC9E,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CACxE,GAAG,CAAC,UAAC,MAAkB;YACrB,IAAI,MAAM,CAAC,aAAa,EAAE;gBACxB,OAAO,MAAM,CAAC;aACf;iBAAM;gBACL,MAAK,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;aAC/C;QACH,CAAC,CAAC,CAAC,CAAA;IAEP,CAAC;IAED;;;OAGG;IACI,qCAAe,GAAtB;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IAClD,CAAC;IAED;;;OAGG;IACI,uCAAiB,GAAxB,UAAyB,KAAoB;QAA7C,iBAgBC;QAfC,mEAAmE;QACnE,IAAM,OAAO,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QACvD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,YAAU,KAAK,CAAC,WAAa,CAAC,CAAC;QACzE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAC/D,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,KAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAA7B,CAA6B,CAAC,EAC9C,SAAS,CAAC,UAAC,MAAkB;YAC3B,IAAI,MAAM,CAAC,aAAa,EAAE;gBACxB,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,CAAC,OAAO,EAAf,CAAe,CAAC,CAAC,CAAC;aAC/D;iBAAM;gBACL,MAAK,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;aACvC;QACH,CAAC,CAAC,CAAC,CAAA;IACP,CAAC;IAED;;OAEG;IACI,8CAAwB,GAA/B;QACE,OAAM;IACR,CAAC;IAED;;OAEG;IACI,iDAA2B,GAAlC;QAAA,iBAeC;QAdC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CACpB,MAAM,CAAC,sBAAsB,CAAC,EAC9B,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,aAA4B;YAC/B,IAAI,KAAoB,CAAC;YACzB,2DAA2D;YAC3D,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAChF,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;gBAC5H,OAAO,KAAK,CAAC;aACd;iBAAM;gBACL,MAAM,KAAK,CAAC;aACb;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,gDAA0B,GAAjC,UAAkC,KAAoB;QACpD,IAAM,OAAO,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QACvD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,YAAU,KAAK,CAAC,WAAa,CAAC,CAAC;QACzE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,IAAI,CACtE,GAAG,CAAC,UAAC,MAAkB;YACrB,IAAI,MAAM,CAAC,aAAa,EAAE;gBACxB,OAAO,MAAM,CAAC,KAAK,CAAC;aACrB;iBAAM;gBACL,MAAK,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;aACvC;QACH,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAED;;OAEG;IACI,8CAAwB,GAA/B;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,iCAAiC,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACI,4BAAM,GAAb,UAAc,IAAa;QACzB,yDAAyD;QACzD,8CAA8C;QAC9C,wDAAwD;QACxD,8BAA8B;QAC9B,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACI,4BAAM,GAAb;QACE,2CAA2C;QAC3C,IAAI,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,mCAAmC,CAAC,CAAC;QAC9E,IAAM,OAAO,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,SAAA,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9E,OAAO,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAC/D,GAAG,CAAC,UAAC,MAAkB;YACrB,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;gBACzB,OAAO,IAAI,CAAC;aACb;iBAAM;gBACL,MAAK,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;aAC9C;QACH,CAAC,CAAC,CAAC,CAAA;IACP,CAAC;IAED;;;OAGG;IACI,qCAAe,GAAtB,UAAuB,KAAqB;QAC1C,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;YAClB,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;SACzB;QACD,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAU,KAAK,CAAC,WAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IACxF,CAAC;IAED;;;OAGG;IACI,8BAAQ,GAAf;QACE,IAAI,KAAoB,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;aAC5C,SAAS,CAAC,UAAC,aAA4B;YACtC,2DAA2D;YAC3D,KAAK,GAAG,aAAa,IAAI,IAAI,CAAC;QAChC,CAAC,CAAC,CAAC;QACL,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,qCAAe,GAAtB;QAAA,iBAaC;QAZC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CACpB,MAAM,CAAC,iBAAiB,CAAC,EACzB,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,YAAqB;YACxB,IAAI,KAAI,CAAC,cAAc,EAAE,IAAI,YAAY,EAAE;gBACzC,OAAO,KAAK,CAAC;aACd;iBAAM;gBACL,IAAM,KAAK,GAAG,KAAI,CAAC,QAAQ,EAAE,CAAC;gBAC9B,OAAO,KAAK,CAAC,OAAO,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;aACrD;QACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED;;;OAGG;IACI,oCAAc,GAArB,UAAsB,KAAqB;QACzC,KAAK,GAAG,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,OAAO,KAAK,IAAI,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACI,gCAAU,GAAjB,UAAkB,KAAoB;QACpC,gCAAgC;QAChC,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QAEtD,6BAA6B;QAC7B,IAAM,OAAO,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;QACrC,IAAM,OAAO,GAAqB,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QAEvD,6BAA6B;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACI,iCAAW,GAAlB;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACI,kCAAY,GAAnB,UAAoB,KAAoB;QACtC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,qCAAe,GAAtB;QACE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACI,qDAA+B,GAAtC;QACE,IAAM,WAAW,GAAG,WAAW,GAAG,eAAe,CAAC;QAClD,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE;YACtC,oEAAoE;YACpE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC;SACvD;aAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;gBAC9B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;aAC1C;SACF;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;SACxC;IACH,CAAC;IAED;;OAEG;IACI,2CAAqB,GAA5B;QAAA,iBAmBC;QAlBC,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,CACxB,IAAI,CAAC,CAAC,CAAC,CAAC;aACP,SAAS,CAAC,UAAC,WAAW;YAErB,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE;gBAC3B,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,KAAI,CAAC,MAAM,CAAC,mBAAmB,GAAG,QAAQ,CAAC;gBAC3C,IAAM,GAAG,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;gBAC5C,KAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAC/B,0HAA0H;gBAC1H,iDAAiD;aAClD;iBAAM;gBACL,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5B,0HAA0H;gBAC1H,iDAAiD;aAClD;QACH,CAAC,CAAC,CAAA;IAEN,CAAC;IAED;;OAEG;IACI,wCAAkB,GAAzB;QACE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAChC,mEAAmE;QACnE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,oCAAc,GAAd;QACE,IAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE;YAC3B,OAAO,YAAY,CAAC,WAAW,CAAC,CAAC;SAClC;aAAM;YACL,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;SAChD;IACH,CAAC;IAED;;OAEG;IACH,oCAAc,GAAd,UAAe,GAAW;QACxB,iCAAiC;QACjC,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QAEjD,6BAA6B;QAC7B,IAAM,OAAO,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;QACrC,IAAM,OAAO,GAAqB,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QACvD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,sCAAgB,GAAhB;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;IA/WU,WAAW;QADvB,UAAU,EAAE;QASE,mBAAA,MAAM,CAAC,OAAO,CAAC,CAAA;QACf,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA;QAE3B,mBAAA,QAAQ,EAAE,CAAA,EAAE,mBAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;yDAFmB,eAAe;YACjC,kBAAkB,UAE9B,MAAM;YACL,aAAa;YACf,KAAK;YACA,sBAAsB;OAf7C,WAAW,CAgXvB;IAAD,kBAAC;CAAA,AAhXD,IAgXC;SAhXY,WAAW"} \ No newline at end of file diff --git a/src/app/core/auth/authenticated.guard.js b/src/app/core/auth/authenticated.guard.js deleted file mode 100644 index 194cf6c659..0000000000 --- a/src/app/core/auth/authenticated.guard.js +++ /dev/null @@ -1,68 +0,0 @@ -import * as tslib_1 from "tslib"; -import { take } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { Router } from '@angular/router'; -import { select, Store } from '@ngrx/store'; -import { isAuthenticated } from './selectors'; -import { AuthService } from './auth.service'; -import { RedirectWhenAuthenticationIsRequiredAction } from './auth.actions'; -/** - * Prevent unauthorized activating and loading of routes - * @class AuthenticatedGuard - */ -var AuthenticatedGuard = /** @class */ (function () { - /** - * @constructor - */ - function AuthenticatedGuard(authService, router, store) { - this.authService = authService; - this.router = router; - this.store = store; - } - /** - * True when user is authenticated - * @method canActivate - */ - AuthenticatedGuard.prototype.canActivate = function (route, state) { - var url = state.url; - return this.handleAuth(url); - }; - /** - * True when user is authenticated - * @method canActivateChild - */ - AuthenticatedGuard.prototype.canActivateChild = function (route, state) { - return this.canActivate(route, state); - }; - /** - * True when user is authenticated - * @method canLoad - */ - AuthenticatedGuard.prototype.canLoad = function (route) { - var url = "/" + route.path; - return this.handleAuth(url); - }; - AuthenticatedGuard.prototype.handleAuth = function (url) { - var _this = this; - // get observable - var observable = this.store.pipe(select(isAuthenticated)); - // redirect to sign in page if user is not authenticated - observable.pipe( - // .filter(() => isEmpty(this.router.routerState.snapshot.url) || this.router.routerState.snapshot.url === url) - take(1)) - .subscribe(function (authenticated) { - if (!authenticated) { - _this.authService.setRedirectUrl(url); - _this.store.dispatch(new RedirectWhenAuthenticationIsRequiredAction('Login required')); - } - }); - return observable; - }; - AuthenticatedGuard = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [AuthService, Router, Store]) - ], AuthenticatedGuard); - return AuthenticatedGuard; -}()); -export { AuthenticatedGuard }; -//# sourceMappingURL=authenticated.guard.js.map \ No newline at end of file diff --git a/src/app/core/auth/authenticated.guard.js.map b/src/app/core/auth/authenticated.guard.js.map deleted file mode 100644 index 0cb1af8138..0000000000 --- a/src/app/core/auth/authenticated.guard.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"authenticated.guard.js","sourceRoot":"","sources":["authenticated.guard.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAuD,MAAM,EAAuB,MAAM,iBAAiB,CAAC;AAGnH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAI5C,OAAO,EAAE,eAAe,EAA2B,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,0CAA0C,EAAE,MAAM,gBAAgB,CAAC;AAG5E;;;GAGG;AAEH;IAEE;;OAEG;IACH,4BAAoB,WAAwB,EAAU,MAAc,EAAU,KAAuB;QAAjF,gBAAW,GAAX,WAAW,CAAa;QAAU,WAAM,GAAN,MAAM,CAAQ;QAAU,UAAK,GAAL,KAAK,CAAkB;IAAG,CAAC;IAEzG;;;OAGG;IACH,wCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QACnE,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,6CAAgB,GAAhB,UAAiB,KAA6B,EAAE,KAA0B;QACxE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,oCAAO,GAAP,UAAQ,KAAY;QAClB,IAAM,GAAG,GAAG,MAAI,KAAK,CAAC,IAAM,CAAC;QAE7B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAEO,uCAAU,GAAlB,UAAmB,GAAW;QAA9B,iBAgBC;QAfC,iBAAiB;QACjB,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QAE5D,wDAAwD;QACxD,UAAU,CAAC,IAAI;QACb,+GAA+G;QAC/G,IAAI,CAAC,CAAC,CAAC,CAAC;aACP,SAAS,CAAC,UAAC,aAAa;YACvB,IAAI,CAAC,aAAa,EAAE;gBAClB,KAAI,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;gBACrC,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,0CAA0C,CAAC,gBAAgB,CAAC,CAAC,CAAC;aACvF;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAlDU,kBAAkB;QAD9B,UAAU,EAAE;iDAMsB,WAAW,EAAkB,MAAM,EAAiB,KAAK;OAL/E,kBAAkB,CAmD9B;IAAD,yBAAC;CAAA,AAnDD,IAmDC;SAnDY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/auth/models/auth-error.model.js b/src/app/core/auth/models/auth-error.model.js deleted file mode 100644 index 6eeec0f56c..0000000000 --- a/src/app/core/auth/models/auth-error.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=auth-error.model.js.map \ No newline at end of file diff --git a/src/app/core/auth/models/auth-error.model.js.map b/src/app/core/auth/models/auth-error.model.js.map deleted file mode 100644 index 80bc34fbd3..0000000000 --- a/src/app/core/auth/models/auth-error.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-error.model.js","sourceRoot":"","sources":["auth-error.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/auth/models/auth-status.model.js b/src/app/core/auth/models/auth-status.model.js deleted file mode 100644 index 8d8023ec45..0000000000 --- a/src/app/core/auth/models/auth-status.model.js +++ /dev/null @@ -1,7 +0,0 @@ -var AuthStatus = /** @class */ (function () { - function AuthStatus() { - } - return AuthStatus; -}()); -export { AuthStatus }; -//# sourceMappingURL=auth-status.model.js.map \ No newline at end of file diff --git a/src/app/core/auth/models/auth-status.model.js.map b/src/app/core/auth/models/auth-status.model.js.map deleted file mode 100644 index a7200d4a02..0000000000 --- a/src/app/core/auth/models/auth-status.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-status.model.js","sourceRoot":"","sources":["auth-status.model.ts"],"names":[],"mappings":"AAOA;IAAA;IAeA,CAAC;IAAD,iBAAC;AAAD,CAAC,AAfD,IAeC"} \ No newline at end of file diff --git a/src/app/core/auth/models/auth-token-info.model.js b/src/app/core/auth/models/auth-token-info.model.js deleted file mode 100644 index a3e7afd2ae..0000000000 --- a/src/app/core/auth/models/auth-token-info.model.js +++ /dev/null @@ -1,18 +0,0 @@ -import { default as decode } from 'jwt-decode'; -export var TOKENITEM = 'dsAuthInfo'; -var AuthTokenInfo = /** @class */ (function () { - function AuthTokenInfo(token) { - this.accessToken = token.replace('Bearer ', ''); - try { - var tokenClaims = decode(this.accessToken); - // exp claim is in seconds, convert it se to milliseconds - this.expires = tokenClaims.exp * 1000; - } - catch (err) { - this.expires = 0; - } - } - return AuthTokenInfo; -}()); -export { AuthTokenInfo }; -//# sourceMappingURL=auth-token-info.model.js.map \ No newline at end of file diff --git a/src/app/core/auth/models/auth-token-info.model.js.map b/src/app/core/auth/models/auth-token-info.model.js.map deleted file mode 100644 index b06a336395..0000000000 --- a/src/app/core/auth/models/auth-token-info.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-token-info.model.js","sourceRoot":"","sources":["auth-token-info.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,CAAC,IAAM,SAAS,GAAG,YAAY,CAAC;AAEtC;IAIE,uBAAY,KAAa;QACvB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAChD,IAAI;YACF,IAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC7C,yDAAyD;YACzD,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,GAAG,IAAI,CAAC;SACvC;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;SAClB;IACH,CAAC;IACH,oBAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/core/auth/models/normalized-auth-status.model.js b/src/app/core/auth/models/normalized-auth-status.model.js deleted file mode 100644 index 7d497a3422..0000000000 --- a/src/app/core/auth/models/normalized-auth-status.model.js +++ /dev/null @@ -1,41 +0,0 @@ -import * as tslib_1 from "tslib"; -import { AuthStatus } from './auth-status.model'; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { mapsTo, relationship } from '../../cache/builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -import { NormalizedObject } from '../../cache/models/normalized-object.model'; -import { IDToUUIDSerializer } from '../../cache/id-to-uuid-serializer'; -var NormalizedAuthStatus = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedAuthStatus, _super); - function NormalizedAuthStatus() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedAuthStatus.prototype, "id", void 0); - tslib_1.__decorate([ - autoserializeAs(new IDToUUIDSerializer('auth-status'), 'id'), - tslib_1.__metadata("design:type", String) - ], NormalizedAuthStatus.prototype, "uuid", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedAuthStatus.prototype, "okay", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedAuthStatus.prototype, "authenticated", void 0); - tslib_1.__decorate([ - relationship(ResourceType.EPerson, false), - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedAuthStatus.prototype, "eperson", void 0); - NormalizedAuthStatus = tslib_1.__decorate([ - mapsTo(AuthStatus), - inheritSerialization(NormalizedObject) - ], NormalizedAuthStatus); - return NormalizedAuthStatus; -}(NormalizedObject)); -export { NormalizedAuthStatus }; -//# sourceMappingURL=normalized-auth-status.model.js.map \ No newline at end of file diff --git a/src/app/core/auth/models/normalized-auth-status.model.js.map b/src/app/core/auth/models/normalized-auth-status.model.js.map deleted file mode 100644 index 00d99272c4..0000000000 --- a/src/app/core/auth/models/normalized-auth-status.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-auth-status.model.js","sourceRoot":"","sources":["normalized-auth-status.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAIvE;IAA0C,gDAA4B;IAAtE;;IAsBA,CAAC;IApBC;QADC,aAAa;;oDACH;IAGX;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC;;sDAChD;IAMb;QADC,aAAa;;sDACA;IAMd;QADC,aAAa;;+DACS;IAIvB;QAFC,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;QACzC,aAAa;;yDACE;IArBL,oBAAoB;QAFhC,MAAM,CAAC,UAAU,CAAC;QAClB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,oBAAoB,CAsBhC;IAAD,2BAAC;CAAA,AAtBD,CAA0C,gBAAgB,GAsBzD;SAtBY,oBAAoB"} \ No newline at end of file diff --git a/src/app/core/auth/selectors.js b/src/app/core/auth/selectors.js deleted file mode 100644 index 41bdfc0276..0000000000 --- a/src/app/core/auth/selectors.js +++ /dev/null @@ -1,175 +0,0 @@ -import { createSelector } from '@ngrx/store'; -import { EPerson } from '../eperson/models/eperson.model'; -/** - * Returns the user state. - * @function getUserState - * @param {AppState} state Top level state. - * @return {AuthState} - */ -export var getAuthState = function (state) { return state.core.auth; }; -/** - * Returns true if the user is authenticated. - * @function _isAuthenticated - * @param {State} state - * @returns {boolean} - */ -var _isAuthenticated = function (state) { return state.authenticated; }; -/** - * Returns true if the authenticated has loaded. - * @function _isAuthenticatedLoaded - * @param {State} state - * @returns {boolean} - */ -var _isAuthenticatedLoaded = function (state) { return state.loaded; }; -/** - * Return the users state - * NOTE: when state is REHYDRATED user object lose prototype so return always a new EPerson object - * @function _getAuthenticatedUser - * @param {State} state - * @returns {EPerson} - */ -var _getAuthenticatedUser = function (state) { return Object.assign(new EPerson(), state.user); }; -/** - * Returns the authentication error. - * @function _getAuthenticationError - * @param {State} state - * @returns {string} - */ -var _getAuthenticationError = function (state) { return state.error; }; -/** - * Returns the authentication info message. - * @function _getAuthenticationInfo - * @param {State} state - * @returns {string} - */ -var _getAuthenticationInfo = function (state) { return state.info; }; -/** - * Returns true if request is in progress. - * @function _isLoading - * @param {State} state - * @returns {boolean} - */ -var _isLoading = function (state) { return state.loading; }; -/** - * Returns true if a refresh token request is in progress. - * @function _isRefreshing - * @param {State} state - * @returns {boolean} - */ -var _isRefreshing = function (state) { return state.refreshing; }; -/** - * Returns the authentication token. - * @function _getAuthenticationToken - * @param {State} state - * @returns {AuthToken} - */ -var _getAuthenticationToken = function (state) { return state.authToken; }; -/** - * Returns the sign out error. - * @function _getLogOutError - * @param {State} state - * @returns {string} - */ -var _getLogOutError = function (state) { return state.error; }; -/** - * Returns the sign up error. - * @function _getRegistrationError - * @param {State} state - * @returns {string} - */ -var _getRegistrationError = function (state) { return state.error; }; -/** - * Returns the redirect url. - * @function _getRedirectUrl - * @param {State} state - * @returns {string} - */ -var _getRedirectUrl = function (state) { return state.redirectUrl; }; -/** - * Returns the authenticated user - * @function getAuthenticatedUser - * @param {AuthState} state - * @param {any} props - * @return {User} - */ -export var getAuthenticatedUser = createSelector(getAuthState, _getAuthenticatedUser); -/** - * Returns the authentication error. - * @function getAuthenticationError - * @param {AuthState} state - * @param {any} props - * @return {Error} - */ -export var getAuthenticationError = createSelector(getAuthState, _getAuthenticationError); -/** - * Returns the authentication info message. - * @function getAuthenticationInfo - * @param {AuthState} state - * @param {any} props - * @return {string} - */ -export var getAuthenticationInfo = createSelector(getAuthState, _getAuthenticationInfo); -/** - * Returns true if the user is authenticated - * @function isAuthenticated - * @param {AuthState} state - * @param {any} props - * @return {boolean} - */ -export var isAuthenticated = createSelector(getAuthState, _isAuthenticated); -/** - * Returns true if the user is authenticated - * @function isAuthenticated - * @param {AuthState} state - * @param {any} props - * @return {boolean} - */ -export var isAuthenticatedLoaded = createSelector(getAuthState, _isAuthenticatedLoaded); -/** - * Returns true if the authentication request is loading. - * @function isAuthenticationLoading - * @param {AuthState} state - * @param {any} props - * @return {boolean} - */ -export var isAuthenticationLoading = createSelector(getAuthState, _isLoading); -/** - * Returns true if the refresh token request is loading. - * @function isTokenRefreshing - * @param {AuthState} state - * @param {any} props - * @return {boolean} - */ -export var isTokenRefreshing = createSelector(getAuthState, _isRefreshing); -/** - * Returns the authentication token. - * @function getAuthenticationToken - * @param {State} state - * @returns {AuthToken} - */ -export var getAuthenticationToken = createSelector(getAuthState, _getAuthenticationToken); -/** - * Returns the log out error. - * @function getLogOutError - * @param {AuthState} state - * @param {any} props - * @return {Error} - */ -export var getLogOutError = createSelector(getAuthState, _getLogOutError); -/** - * Returns the registration error. - * @function getRegistrationError - * @param {AuthState} state - * @param {any} props - * @return {Error} - */ -export var getRegistrationError = createSelector(getAuthState, _getRegistrationError); -/** - * Returns the redirect url. - * @function getRedirectUrl - * @param {AuthState} state - * @param {any} props - * @return {string} - */ -export var getRedirectUrl = createSelector(getAuthState, _getRedirectUrl); -//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/core/auth/selectors.js.map b/src/app/core/auth/selectors.js.map deleted file mode 100644 index 7fb484c273..0000000000 --- a/src/app/core/auth/selectors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/auth/server-auth.service.js b/src/app/core/auth/server-auth.service.js deleted file mode 100644 index f71210ffb0..0000000000 --- a/src/app/core/auth/server-auth.service.js +++ /dev/null @@ -1,73 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map, switchMap, take } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { HttpHeaders } from '@angular/common/http'; -import { isNotEmpty } from '../../shared/empty.util'; -import { AuthService } from './auth.service'; -import { CheckAuthenticationTokenAction } from './auth.actions'; -/** - * The auth service. - */ -var ServerAuthService = /** @class */ (function (_super) { - tslib_1.__extends(ServerAuthService, _super); - function ServerAuthService() { - return _super !== null && _super.apply(this, arguments) || this; - } - /** - * Returns the authenticated user - * @returns {User} - */ - ServerAuthService.prototype.authenticatedUser = function (token) { - var _this = this; - // Determine if the user has an existing auth session on the server - var options = Object.create({}); - var headers = new HttpHeaders(); - headers = headers.append('Accept', 'application/json'); - headers = headers.append('Authorization', "Bearer " + token.accessToken); - // NB this is used to pass server client IP check. - var clientIp = this.req.get('x-forwarded-for') || this.req.connection.remoteAddress; - headers = headers.append('X-Forwarded-For', clientIp); - options.headers = headers; - return this.authRequestService.getRequest('status', options).pipe(map(function (status) { return _this.rdbService.build(status); }), switchMap(function (status) { - if (status.authenticated) { - return status.eperson.pipe(map(function (eperson) { return eperson.payload; })); - } - else { - throw (new Error('Not authenticated')); - } - })); - }; - /** - * Checks if token is present into browser storage and is valid. (NB Check is done only on SSR) - */ - ServerAuthService.prototype.checkAuthenticationToken = function () { - this.store.dispatch(new CheckAuthenticationTokenAction()); - }; - /** - * Redirect to the route navigated before the login - */ - ServerAuthService.prototype.redirectToPreviousUrl = function () { - var _this = this; - this.getRedirectUrl().pipe(take(1)) - .subscribe(function (redirectUrl) { - if (isNotEmpty(redirectUrl)) { - // override the route reuse strategy - _this.router.routeReuseStrategy.shouldReuseRoute = function () { - return false; - }; - _this.router.navigated = false; - var url = decodeURIComponent(redirectUrl); - _this.router.navigateByUrl(url); - } - else { - _this.router.navigate(['/']); - } - }); - }; - ServerAuthService = tslib_1.__decorate([ - Injectable() - ], ServerAuthService); - return ServerAuthService; -}(AuthService)); -export { ServerAuthService }; -//# sourceMappingURL=server-auth.service.js.map \ No newline at end of file diff --git a/src/app/core/auth/server-auth.service.js.map b/src/app/core/auth/server-auth.service.js.map deleted file mode 100644 index 37d35931e7..0000000000 --- a/src/app/core/auth/server-auth.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-auth.service.js","sourceRoot":"","sources":["server-auth.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/browse/browse-entry-search-options.model.js b/src/app/core/browse/browse-entry-search-options.model.js deleted file mode 100644 index 28c4f0e4c1..0000000000 --- a/src/app/core/browse/browse-entry-search-options.model.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * A class that defines the search options to be used for fetching browse entries or items - * - metadataDefinition: The metadata definition to fetch entries or items for - * - pagination: Optional pagination options to use - * - sort: Optional sorting options to use - * - scope: An optional scope to limit the results within a specific collection or community - */ -var BrowseEntrySearchOptions = /** @class */ (function () { - function BrowseEntrySearchOptions(metadataDefinition, pagination, sort, startsWith, scope) { - this.metadataDefinition = metadataDefinition; - this.pagination = pagination; - this.sort = sort; - this.startsWith = startsWith; - this.scope = scope; - } - return BrowseEntrySearchOptions; -}()); -export { BrowseEntrySearchOptions }; -//# sourceMappingURL=browse-entry-search-options.model.js.map \ No newline at end of file diff --git a/src/app/core/browse/browse-entry-search-options.model.js.map b/src/app/core/browse/browse-entry-search-options.model.js.map deleted file mode 100644 index c649957c0e..0000000000 --- a/src/app/core/browse/browse-entry-search-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-entry-search-options.model.js","sourceRoot":"","sources":["browse-entry-search-options.model.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH;IACE,kCAAmB,kBAA0B,EAC1B,UAAuC,EACvC,IAAkB,EAClB,UAAmB,EACnB,KAAc;QAJd,uBAAkB,GAAlB,kBAAkB,CAAQ;QAC1B,eAAU,GAAV,UAAU,CAA6B;QACvC,SAAI,GAAJ,IAAI,CAAc;QAClB,eAAU,GAAV,UAAU,CAAS;QACnB,UAAK,GAAL,KAAK,CAAS;IACjC,CAAC;IACH,+BAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/core/browse/browse.service.js b/src/app/core/browse/browse.service.js deleted file mode 100644 index 0240811b7d..0000000000 --- a/src/app/core/browse/browse.service.js +++ /dev/null @@ -1,240 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { distinctUntilChanged, map, startWith } from 'rxjs/operators'; -import { ensureArrayHasValue, hasValue, hasValueOperator, isEmpty, isNotEmpty, isNotEmptyOperator } from '../../shared/empty.util'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { PaginatedList } from '../data/paginated-list'; -import { BrowseEndpointRequest, BrowseEntriesRequest, BrowseItemsRequest } from '../data/request.models'; -import { RequestService } from '../data/request.service'; -import { BrowseDefinition } from '../shared/browse-definition.model'; -import { BrowseEntry } from '../shared/browse-entry.model'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { configureRequest, filterSuccessfulResponses, getBrowseDefinitionLinks, getFirstOccurrence, getRemoteDataPayload, getRequestFromRequestHref } from '../shared/operators'; -import { URLCombiner } from '../url-combiner/url-combiner'; -import { Item } from '../shared/item.model'; -/** - * The service handling all browse requests - */ -var BrowseService = /** @class */ (function () { - function BrowseService(requestService, halService, rdb) { - this.requestService = requestService; - this.halService = halService; - this.rdb = rdb; - this.linkPath = 'browses'; - } - BrowseService_1 = BrowseService; - BrowseService.toSearchKeyArray = function (metadataKey) { - var keyParts = metadataKey.split('.'); - var searchFor = []; - searchFor.push('*'); - for (var i = 0; i < keyParts.length - 1; i++) { - var prevParts = keyParts.slice(0, i + 1); - var nextPart = prevParts.concat(['*']).join('.'); - searchFor.push(nextPart); - } - searchFor.push(metadataKey); - return searchFor; - }; - /** - * Get all BrowseDefinitions - */ - BrowseService.prototype.getBrowseDefinitions = function () { - var _this = this; - var request$ = this.halService.getEndpoint(this.linkPath).pipe(isNotEmptyOperator(), distinctUntilChanged(), map(function (endpointURL) { return new BrowseEndpointRequest(_this.requestService.generateRequestId(), endpointURL); }), configureRequest(this.requestService)); - var href$ = request$.pipe(map(function (request) { return request.href; })); - var requestEntry$ = href$.pipe(getRequestFromRequestHref(this.requestService)); - var payload$ = requestEntry$.pipe(filterSuccessfulResponses(), map(function (response) { return response.payload; }), ensureArrayHasValue(), map(function (definitions) { return definitions - .map(function (definition) { return Object.assign(new BrowseDefinition(), definition); }); }), distinctUntilChanged()); - return this.rdb.toRemoteDataObservable(requestEntry$, payload$); - }; - /** - * Get all BrowseEntries filtered or modified by BrowseEntrySearchOptions - * @param options - */ - BrowseService.prototype.getBrowseEntriesFor = function (options) { - return this.getBrowseDefinitions().pipe(getBrowseDefinitionLinks(options.metadataDefinition), hasValueOperator(), map(function (_links) { return _links.entries; }), hasValueOperator(), map(function (href) { - // TODO nearly identical to PaginatedSearchOptions => refactor - var args = []; - if (isNotEmpty(options.scope)) { - args.push("scope=" + options.scope); - } - if (isNotEmpty(options.sort)) { - args.push("sort=" + options.sort.field + "," + options.sort.direction); - } - if (isNotEmpty(options.pagination)) { - args.push("page=" + (options.pagination.currentPage - 1)); - args.push("size=" + options.pagination.pageSize); - } - if (isNotEmpty(options.startsWith)) { - args.push("startsWith=" + options.startsWith); - } - if (isNotEmpty(args)) { - href = new URLCombiner(href, "?" + args.join('&')).toString(); - } - return href; - }), getBrowseEntriesFor(this.requestService, this.rdb)); - }; - /** - * Get all items linked to a certain metadata value - * @param {string} filterValue metadata value to filter by (e.g. author's name) - * @param options Options to narrow down your search - * @returns {Observable>>} - */ - BrowseService.prototype.getBrowseItemsFor = function (filterValue, options) { - return this.getBrowseDefinitions().pipe(getBrowseDefinitionLinks(options.metadataDefinition), hasValueOperator(), map(function (_links) { return _links.items; }), hasValueOperator(), map(function (href) { - var args = []; - if (isNotEmpty(options.scope)) { - args.push("scope=" + options.scope); - } - if (isNotEmpty(options.sort)) { - args.push("sort=" + options.sort.field + "," + options.sort.direction); - } - if (isNotEmpty(options.pagination)) { - args.push("page=" + (options.pagination.currentPage - 1)); - args.push("size=" + options.pagination.pageSize); - } - if (isNotEmpty(options.startsWith)) { - args.push("startsWith=" + options.startsWith); - } - if (isNotEmpty(filterValue)) { - args.push("filterValue=" + filterValue); - } - if (isNotEmpty(args)) { - href = new URLCombiner(href, "?" + args.join('&')).toString(); - } - return href; - }), getBrowseItemsFor(this.requestService, this.rdb)); - }; - /** - * Get the first item for a metadata definition in an optional scope - * @param definition - * @param scope - */ - BrowseService.prototype.getFirstItemFor = function (definition, scope) { - return this.getBrowseDefinitions().pipe(getBrowseDefinitionLinks(definition), hasValueOperator(), map(function (_links) { return _links.items; }), hasValueOperator(), map(function (href) { - var args = []; - if (hasValue(scope)) { - args.push("scope=" + scope); - } - args.push('page=0'); - args.push('size=1'); - if (isNotEmpty(args)) { - href = new URLCombiner(href, "?" + args.join('&')).toString(); - } - return href; - }), getBrowseItemsFor(this.requestService, this.rdb), getFirstOccurrence()); - }; - /** - * Get the previous page of items using the paginated list's prev link - * @param items - */ - BrowseService.prototype.getPrevBrowseItems = function (items) { - return observableOf(items.payload.prev).pipe(getBrowseItemsFor(this.requestService, this.rdb)); - }; - /** - * Get the next page of items using the paginated list's next link - * @param items - */ - BrowseService.prototype.getNextBrowseItems = function (items) { - return observableOf(items.payload.next).pipe(getBrowseItemsFor(this.requestService, this.rdb)); - }; - /** - * Get the previous page of browse-entries using the paginated list's prev link - * @param entries - */ - BrowseService.prototype.getPrevBrowseEntries = function (entries) { - return observableOf(entries.payload.prev).pipe(getBrowseEntriesFor(this.requestService, this.rdb)); - }; - /** - * Get the next page of browse-entries using the paginated list's next link - * @param entries - */ - BrowseService.prototype.getNextBrowseEntries = function (entries) { - return observableOf(entries.payload.next).pipe(getBrowseEntriesFor(this.requestService, this.rdb)); - }; - /** - * Get the browse URL by providing a metadatum key and linkPath - * @param metadatumKey - * @param linkPath - */ - BrowseService.prototype.getBrowseURLFor = function (metadataKey, linkPath) { - var searchKeyArray = BrowseService_1.toSearchKeyArray(metadataKey); - return this.getBrowseDefinitions().pipe(getRemoteDataPayload(), map(function (browseDefinitions) { return browseDefinitions - .find(function (def) { - var matchingKeys = def.metadataKeys.find(function (key) { return searchKeyArray.indexOf(key) >= 0; }); - return isNotEmpty(matchingKeys); - }); }), map(function (def) { - if (isEmpty(def) || isEmpty(def._links) || isEmpty(def._links[linkPath])) { - throw new Error("A browse endpoint for " + linkPath + " on " + metadataKey + " isn't configured"); - } - else { - return def._links[linkPath]; - } - }), startWith(undefined), distinctUntilChanged()); - }; - var BrowseService_1; - BrowseService = BrowseService_1 = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - HALEndpointService, - RemoteDataBuildService]) - ], BrowseService); - return BrowseService; -}()); -export { BrowseService }; -/** - * Operator for turning a href into a PaginatedList of BrowseEntries - * @param requestService - * @param responseCache - * @param rdb - */ -export var getBrowseEntriesFor = function (requestService, rdb) { - return function (source) { - return source.pipe(map(function (href) { return new BrowseEntriesRequest(requestService.generateRequestId(), href); }), configureRequest(requestService), toRDPaginatedBrowseEntries(requestService, rdb)); - }; -}; -/** - * Operator for turning a href into a PaginatedList of Items - * @param requestService - * @param responseCache - * @param rdb - */ -export var getBrowseItemsFor = function (requestService, rdb) { - return function (source) { - return source.pipe(map(function (href) { return new BrowseItemsRequest(requestService.generateRequestId(), href); }), configureRequest(requestService), toRDPaginatedBrowseItems(requestService, rdb)); - }; -}; -/** - * Operator for turning a RestRequest into a PaginatedList of Items - * @param requestService - * @param responseCache - * @param rdb - */ -export var toRDPaginatedBrowseItems = function (requestService, rdb) { - return function (source) { - var href$ = source.pipe(map(function (request) { return request.href; })); - var requestEntry$ = href$.pipe(getRequestFromRequestHref(requestService)); - var payload$ = requestEntry$.pipe(filterSuccessfulResponses(), map(function (response) { return new PaginatedList(response.pageInfo, response.payload); }), map(function (list) { return Object.assign(list, { - page: list.page ? list.page.map(function (item) { return Object.assign(new Item(), item); }) : list.page - }); }), distinctUntilChanged()); - return rdb.toRemoteDataObservable(requestEntry$, payload$); - }; -}; -/** - * Operator for turning a RestRequest into a PaginatedList of BrowseEntries - * @param requestService - * @param responseCache - * @param rdb - */ -export var toRDPaginatedBrowseEntries = function (requestService, rdb) { - return function (source) { - var href$ = source.pipe(map(function (request) { return request.href; })); - var requestEntry$ = href$.pipe(getRequestFromRequestHref(requestService)); - var payload$ = requestEntry$.pipe(filterSuccessfulResponses(), map(function (response) { return new PaginatedList(response.pageInfo, response.payload); }), map(function (list) { return Object.assign(list, { - page: list.page ? list.page.map(function (entry) { return Object.assign(new BrowseEntry(), entry); }) : list.page - }); }), distinctUntilChanged()); - return rdb.toRemoteDataObservable(requestEntry$, payload$); - }; -}; -//# sourceMappingURL=browse.service.js.map \ No newline at end of file diff --git a/src/app/core/browse/browse.service.js.map b/src/app/core/browse/browse.service.js.map deleted file mode 100644 index 08d5b0055a..0000000000 --- a/src/app/core/browse/browse.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse.service.js","sourceRoot":"","sources":["browse.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/builders/build-decorators.js b/src/app/core/cache/builders/build-decorators.js deleted file mode 100644 index ecc7a31410..0000000000 --- a/src/app/core/cache/builders/build-decorators.js +++ /dev/null @@ -1,31 +0,0 @@ -import 'reflect-metadata'; -var mapsToMetadataKey = Symbol('mapsTo'); -var relationshipKey = Symbol('relationship'); -var relationshipMap = new Map(); -export function mapsTo(value) { - return Reflect.metadata(mapsToMetadataKey, value); -} -export function getMapsTo(target) { - return Reflect.getOwnMetadata(mapsToMetadataKey, target); -} -export function relationship(value, isList) { - if (isList === void 0) { isList = false; } - return function r(target, propertyKey, descriptor) { - if (!target || !propertyKey) { - return; - } - var metaDataList = relationshipMap.get(target.constructor) || []; - if (metaDataList.indexOf(propertyKey) === -1) { - metaDataList.push(propertyKey); - } - relationshipMap.set(target.constructor, metaDataList); - return Reflect.metadata(relationshipKey, { resourceType: value, isList: isList }).apply(this, arguments); - }; -} -export function getRelationMetadata(target, propertyKey) { - return Reflect.getMetadata(relationshipKey, target, propertyKey); -} -export function getRelationships(target) { - return relationshipMap.get(target); -} -//# sourceMappingURL=build-decorators.js.map \ No newline at end of file diff --git a/src/app/core/cache/builders/build-decorators.js.map b/src/app/core/cache/builders/build-decorators.js.map deleted file mode 100644 index ad399fd36d..0000000000 --- a/src/app/core/cache/builders/build-decorators.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"build-decorators.js","sourceRoot":"","sources":["build-decorators.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAM1B,IAAM,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC3C,IAAM,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAE/C,IAAM,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;AAElC,MAAM,iBAAiB,KAA0C;IAC/D,OAAO,OAAO,CAAC,QAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,oBAAoB,MAAW;IACnC,OAAO,OAAO,CAAC,cAAc,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,uBAAuB,KAAmB,EAAE,MAAuB;IAAvB,uBAAA,EAAA,cAAuB;IACvE,OAAO,WAAW,MAAW,EAAE,WAAmB,EAAE,UAA8B;QAChF,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE;YAC3B,OAAO;SACR;QAED,IAAM,YAAY,GAAa,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC7E,IAAI,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE;YAC5C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAChC;QACD,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAEtD,OAAO,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,QAAA,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnG,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,8BAA8B,MAAW,EAAE,WAAmB;IAClE,OAAO,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,2BAA2B,MAAW;IAC1C,OAAO,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC"} \ No newline at end of file diff --git a/src/app/core/cache/builders/normalized-object-build.service.js b/src/app/core/cache/builders/normalized-object-build.service.js deleted file mode 100644 index 07ae9c01b4..0000000000 --- a/src/app/core/cache/builders/normalized-object-build.service.js +++ /dev/null @@ -1,51 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { getRelationships } from './build-decorators'; -import { NormalizedObjectFactory } from '../models/normalized-object-factory'; -import { hasValue, isNotEmpty } from '../../../shared/empty.util'; -/** - * Return true if halObj has a value for `_links.self` - * - * @param {any} halObj The object to test - */ -export function isRestDataObject(halObj) { - return isNotEmpty(halObj._links) && hasValue(halObj._links.self); -} -/** - * Return true if halObj has a value for `page` and `_embedded` - * - * @param {any} halObj The object to test - */ -export function isRestPaginatedList(halObj) { - return hasValue(halObj.page) && hasValue(halObj._embedded); -} -/** - * A service to turn domain models in to their normalized - * counterparts. - */ -var NormalizedObjectBuildService = /** @class */ (function () { - function NormalizedObjectBuildService() { - } - /** - * Returns the normalized model that corresponds to the given domain model - * - * @param {TDomain} domainModel a domain model - */ - NormalizedObjectBuildService.prototype.normalize = function (domainModel) { - var normalizedConstructor = NormalizedObjectFactory.getConstructor(domainModel.type); - var relationships = getRelationships(normalizedConstructor) || []; - var normalizedModel = Object.assign({}, domainModel); - relationships.forEach(function (key) { - if (hasValue(domainModel[key])) { - domainModel[key] = undefined; - } - }); - return normalizedModel; - }; - NormalizedObjectBuildService = tslib_1.__decorate([ - Injectable() - ], NormalizedObjectBuildService); - return NormalizedObjectBuildService; -}()); -export { NormalizedObjectBuildService }; -//# sourceMappingURL=normalized-object-build.service.js.map \ No newline at end of file diff --git a/src/app/core/cache/builders/normalized-object-build.service.js.map b/src/app/core/cache/builders/normalized-object-build.service.js.map deleted file mode 100644 index ac16e0f015..0000000000 --- a/src/app/core/cache/builders/normalized-object-build.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-object-build.service.js","sourceRoot":"","sources":["normalized-object-build.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAElE;;;;GAIG;AACH,MAAM,2BAA2B,MAAW;IAC1C,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,MAAM,8BAA8B,MAAW;IAC7C,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7D,CAAC;AAED;;;GAGG;AAEH;IAAA;IAmBA,CAAC;IAjBC;;;;OAIG;IACH,gDAAS,GAAT,UAAqC,WAAc;QACjD,IAAM,qBAAqB,GAAG,uBAAuB,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvF,IAAM,aAAa,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;QAEpE,IAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,CAAQ,CAAC;QAC9D,aAAa,CAAC,OAAO,CAAC,UAAC,GAAW;YAChC,IAAI,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC9B,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;IACzB,CAAC;IAlBU,4BAA4B;QADxC,UAAU,EAAE;OACA,4BAA4B,CAmBxC;IAAD,mCAAC;CAAA,AAnBD,IAmBC;SAnBY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/cache/builders/remote-data-build.service.js b/src/app/core/cache/builders/remote-data-build.service.js deleted file mode 100644 index 44a720007d..0000000000 --- a/src/app/core/cache/builders/remote-data-build.service.js +++ /dev/null @@ -1,218 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { combineLatest as observableCombineLatest, of as observableOf, race as observableRace } from 'rxjs'; -import { distinctUntilChanged, flatMap, map, startWith, switchMap } from 'rxjs/operators'; -import { hasValue, hasValueOperator, isEmpty, isNotEmpty, isNotUndefined } from '../../../shared/empty.util'; -import { PaginatedList } from '../../data/paginated-list'; -import { RemoteData } from '../../data/remote-data'; -import { RemoteDataError } from '../../data/remote-data-error'; -import { GetRequest } from '../../data/request.models'; -import { RequestService } from '../../data/request.service'; -import { ObjectCacheService } from '../object-cache.service'; -import { getMapsTo, getRelationMetadata, getRelationships } from './build-decorators'; -import { filterSuccessfulResponses, getRequestFromRequestHref, getRequestFromRequestUUID, getResourceLinksFromResponse } from '../../shared/operators'; -var RemoteDataBuildService = /** @class */ (function () { - function RemoteDataBuildService(objectCache, requestService) { - this.objectCache = objectCache; - this.requestService = requestService; - } - RemoteDataBuildService.prototype.buildSingle = function (href$) { - var _this = this; - if (typeof href$ === 'string') { - href$ = observableOf(href$); - } - var requestUUID$ = href$.pipe(switchMap(function (href) { - return _this.objectCache.getRequestUUIDBySelfLink(href); - })); - var requestEntry$ = observableRace(href$.pipe(getRequestFromRequestHref(this.requestService)), requestUUID$.pipe(getRequestFromRequestUUID(this.requestService))); - // always use self link if that is cached, only if it isn't, get it via the response. - var payload$ = observableCombineLatest(href$.pipe(switchMap(function (href) { return _this.objectCache.getObjectBySelfLink(href); }), startWith(undefined)), requestEntry$.pipe(getResourceLinksFromResponse(), switchMap(function (resourceSelfLinks) { - if (isNotEmpty(resourceSelfLinks)) { - return _this.objectCache.getObjectBySelfLink(resourceSelfLinks[0]); - } - else { - return observableOf(undefined); - } - }), distinctUntilChanged(), startWith(undefined))).pipe(map(function (_a) { - var fromSelfLink = _a[0], fromResponse = _a[1]; - if (hasValue(fromSelfLink)) { - return fromSelfLink; - } - else { - return fromResponse; - } - }), hasValueOperator(), map(function (normalized) { - return _this.build(normalized); - }), startWith(undefined), distinctUntilChanged()); - return this.toRemoteDataObservable(requestEntry$, payload$); - }; - RemoteDataBuildService.prototype.toRemoteDataObservable = function (requestEntry$, payload$) { - return observableCombineLatest(requestEntry$, payload$).pipe(map(function (_a) { - var reqEntry = _a[0], payload = _a[1]; - var requestPending = hasValue(reqEntry.requestPending) ? reqEntry.requestPending : true; - var responsePending = hasValue(reqEntry.responsePending) ? reqEntry.responsePending : false; - var isSuccessful; - var error; - if (hasValue(reqEntry) && hasValue(reqEntry.response)) { - isSuccessful = reqEntry.response.isSuccessful; - var errorMessage = isSuccessful === false ? reqEntry.response.errorMessage : undefined; - if (hasValue(errorMessage)) { - error = new RemoteDataError(reqEntry.response.statusCode, reqEntry.response.statusText, errorMessage); - } - } - return new RemoteData(requestPending, responsePending, isSuccessful, error, payload); - })); - }; - RemoteDataBuildService.prototype.buildList = function (href$) { - var _this = this; - if (typeof href$ === 'string') { - href$ = observableOf(href$); - } - var requestEntry$ = href$.pipe(getRequestFromRequestHref(this.requestService)); - var tDomainList$ = requestEntry$.pipe(getResourceLinksFromResponse(), flatMap(function (resourceUUIDs) { - return _this.objectCache.getList(resourceUUIDs).pipe(map(function (normList) { - return normList.map(function (normalized) { - return _this.build(normalized); - }); - })); - }), startWith([]), distinctUntilChanged()); - var pageInfo$ = requestEntry$.pipe(filterSuccessfulResponses(), map(function (response) { - if (hasValue(response.pageInfo)) { - var resPageInfo = response.pageInfo; - if (isNotEmpty(resPageInfo) && resPageInfo.currentPage >= 0) { - return Object.assign({}, resPageInfo, { currentPage: resPageInfo.currentPage + 1 }); - } - else { - return resPageInfo; - } - } - })); - var payload$ = observableCombineLatest(tDomainList$, pageInfo$).pipe(map(function (_a) { - var tDomainList = _a[0], pageInfo = _a[1]; - return new PaginatedList(pageInfo, tDomainList); - })); - return this.toRemoteDataObservable(requestEntry$, payload$); - }; - RemoteDataBuildService.prototype.build = function (normalized) { - var _this = this; - var links = {}; - var relationships = getRelationships(normalized.constructor) || []; - relationships.forEach(function (relationship) { - var result; - if (hasValue(normalized[relationship])) { - var _a = getRelationMetadata(normalized, relationship), resourceType = _a.resourceType, isList = _a.isList; - var objectList = normalized[relationship].page || normalized[relationship]; - if (typeof objectList !== 'string') { - objectList.forEach(function (href) { - _this.requestService.configure(new GetRequest(_this.requestService.generateRequestId(), href)); - }); - var rdArr_1 = []; - objectList.forEach(function (href) { - rdArr_1.push(_this.buildSingle(href)); - }); - if (isList) { - result = _this.aggregate(rdArr_1); - } - else if (rdArr_1.length === 1) { - result = rdArr_1[0]; - } - } - else { - _this.requestService.configure(new GetRequest(_this.requestService.generateRequestId(), objectList)); - // The rest API can return a single URL to represent a list of resources (e.g. /items/:id/bitstreams) - // in that case only 1 href will be stored in the normalized obj (so the isArray above fails), - // but it should still be built as a list - if (isList) { - result = _this.buildList(objectList); - } - else { - result = _this.buildSingle(objectList); - } - } - if (hasValue(normalized[relationship].page)) { - links[relationship] = _this.toPaginatedList(result, normalized[relationship].pageInfo); - } - else { - links[relationship] = result; - } - } - }); - var domainModel = getMapsTo(normalized.constructor); - return Object.assign(new domainModel(), normalized, links); - }; - RemoteDataBuildService.prototype.aggregate = function (input) { - if (isEmpty(input)) { - return observableOf(new RemoteData(false, false, true, null, [])); - } - return observableCombineLatest.apply(void 0, input).pipe(map(function (arr) { - // The request of an aggregate RD should be pending if at least one - // of the RDs it's based on is still in the state RequestPending - var requestPending = arr - .map(function (d) { return d.isRequestPending; }) - .find(function (b) { return b === true; }); - // The response of an aggregate RD should be pending if no requests - // are still pending and at least one of the RDs it's based - // on is still in the state ResponsePending - var responsePending = !requestPending && arr - .map(function (d) { return d.isResponsePending; }) - .find(function (b) { return b === true; }); - var isSuccessful; - // isSuccessful should be undefined until all responses have come in. - // We can't know its state beforehand. We also can't say it's false - // because that would imply a request failed. - if (!(requestPending || responsePending)) { - isSuccessful = arr - .map(function (d) { return d.hasSucceeded; }) - .every(function (b) { return b === true; }); - } - var errorMessage = arr - .map(function (d) { return d.error; }) - .map(function (e, idx) { - if (hasValue(e)) { - return "[" + idx + "]: " + e.message; - } - }).filter(function (e) { return hasValue(e); }) - .join(', '); - var statusText = arr - .map(function (d) { return d.error; }) - .map(function (e, idx) { - if (hasValue(e)) { - return "[" + idx + "]: " + e.statusText; - } - }).filter(function (c) { return hasValue(c); }) - .join(', '); - var statusCode = arr - .map(function (d) { return d.error; }) - .map(function (e, idx) { - if (hasValue(e)) { - return e.statusCode; - } - }).filter(function (c) { return hasValue(c); }) - .reduce(function (acc, status) { return status; }, undefined); - var error = new RemoteDataError(statusCode, statusText, errorMessage); - var payload = arr.map(function (d) { return d.payload; }); - return new RemoteData(requestPending, responsePending, isSuccessful, error, payload); - })); - }; - RemoteDataBuildService.prototype.toPaginatedList = function (input, pageInfo) { - return input.pipe(map(function (rd) { - if (Array.isArray(rd.payload)) { - return Object.assign(rd, { payload: new PaginatedList(pageInfo, rd.payload) }); - } - else if (isNotUndefined(rd.payload)) { - return Object.assign(rd, { payload: new PaginatedList(pageInfo, rd.payload.page) }); - } - else { - return Object.assign(rd, { payload: new PaginatedList(pageInfo, []) }); - } - })); - }; - RemoteDataBuildService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [ObjectCacheService, - RequestService]) - ], RemoteDataBuildService); - return RemoteDataBuildService; -}()); -export { RemoteDataBuildService }; -//# sourceMappingURL=remote-data-build.service.js.map \ No newline at end of file diff --git a/src/app/core/cache/builders/remote-data-build.service.js.map b/src/app/core/cache/builders/remote-data-build.service.js.map deleted file mode 100644 index 0ec9f94144..0000000000 --- a/src/app/core/cache/builders/remote-data-build.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"remote-data-build.service.js","sourceRoot":"","sources":["remote-data-build.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/cache-entry.js b/src/app/core/cache/cache-entry.js deleted file mode 100644 index a317688951..0000000000 --- a/src/app/core/cache/cache-entry.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=cache-entry.js.map \ No newline at end of file diff --git a/src/app/core/cache/cache-entry.js.map b/src/app/core/cache/cache-entry.js.map deleted file mode 100644 index 2e5e21fbf3..0000000000 --- a/src/app/core/cache/cache-entry.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"cache-entry.js","sourceRoot":"","sources":["cache-entry.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/cache/id-to-uuid-serializer.js b/src/app/core/cache/id-to-uuid-serializer.js deleted file mode 100644 index 71ba487106..0000000000 --- a/src/app/core/cache/id-to-uuid-serializer.js +++ /dev/null @@ -1,36 +0,0 @@ -import { hasValue } from '../../shared/empty.util'; -/** - * Serializer to create unique fake UUID's from id's that might otherwise be the same across multiple object types - */ -var IDToUUIDSerializer = /** @class */ (function () { - /** - * @param {string} prefix To prepend the original ID with - */ - function IDToUUIDSerializer(prefix) { - this.prefix = prefix; - } - /** - * Method to serialize a UUID - * @param {string} uuid - * @returns {any} undefined Fake UUID's should not be sent back to the server, but only be used in the UI - */ - IDToUUIDSerializer.prototype.Serialize = function (uuid) { - return undefined; - }; - /** - * Method to deserialize a UUID - * @param {string} id Identifier to transform in to a UUID - * @returns {string} UUID based on the prefix and the given id - */ - IDToUUIDSerializer.prototype.Deserialize = function (id) { - if (hasValue(id)) { - return this.prefix + "-" + id; - } - else { - return id; - } - }; - return IDToUUIDSerializer; -}()); -export { IDToUUIDSerializer }; -//# sourceMappingURL=id-to-uuid-serializer.js.map \ No newline at end of file diff --git a/src/app/core/cache/id-to-uuid-serializer.js.map b/src/app/core/cache/id-to-uuid-serializer.js.map deleted file mode 100644 index 967c64d34f..0000000000 --- a/src/app/core/cache/id-to-uuid-serializer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"id-to-uuid-serializer.js","sourceRoot":"","sources":["id-to-uuid-serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD;;GAEG;AACH;IACE;;OAEG;IACH,4BAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAClC,CAAC;IAED;;;;OAIG;IACH,sCAAS,GAAT,UAAU,IAAY;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,wCAAW,GAAX,UAAY,EAAU;QACpB,IAAI,QAAQ,CAAC,EAAE,CAAC,EAAE;YAChB,OAAU,IAAI,CAAC,MAAM,SAAI,EAAI,CAAC;SAC/B;aAAM;YACL,OAAO,EAAE,CAAC;SACX;IAEH,CAAC;IACH,yBAAC;AAAD,CAAC,AA7BD,IA6BC"} \ No newline at end of file diff --git a/src/app/core/cache/models/action-type.model.js b/src/app/core/cache/models/action-type.model.js deleted file mode 100644 index 722172f05b..0000000000 --- a/src/app/core/cache/models/action-type.model.js +++ /dev/null @@ -1,55 +0,0 @@ -/** - * Enum representing the Action Type of a Resource Policy - */ -export var ActionType; -(function (ActionType) { - /** - * Action of reading, viewing or downloading something - */ - ActionType[ActionType["READ"] = 0] = "READ"; - /** - * Action of modifying something - */ - ActionType[ActionType["WRITE"] = 1] = "WRITE"; - /** - * Action of deleting something - */ - ActionType[ActionType["DELETE"] = 2] = "DELETE"; - /** - * Action of adding something to a container - */ - ActionType[ActionType["ADD"] = 3] = "ADD"; - /** - * Action of removing something from a container - */ - ActionType[ActionType["REMOVE"] = 4] = "REMOVE"; - /** - * Action of performing workflow step 1 - */ - ActionType[ActionType["WORKFLOW_STEP_1"] = 5] = "WORKFLOW_STEP_1"; - /** - * Action of performing workflow step 2 - */ - ActionType[ActionType["WORKFLOW_STEP_2"] = 6] = "WORKFLOW_STEP_2"; - /** - * Action of performing workflow step 3 - */ - ActionType[ActionType["WORKFLOW_STEP_3"] = 7] = "WORKFLOW_STEP_3"; - /** - * Action of performing a workflow abort - */ - ActionType[ActionType["WORKFLOW_ABORT"] = 8] = "WORKFLOW_ABORT"; - /** - * Default Read policies for Bitstreams submitted to container - */ - ActionType[ActionType["DEFAULT_BITSTREAM_READ"] = 9] = "DEFAULT_BITSTREAM_READ"; - /** - * Default Read policies for Items submitted to container - */ - ActionType[ActionType["DEFAULT_ITEM_READ"] = 10] = "DEFAULT_ITEM_READ"; - /** - * Administrative actions - */ - ActionType[ActionType["ADMIN"] = 11] = "ADMIN"; -})(ActionType || (ActionType = {})); -//# sourceMappingURL=action-type.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/action-type.model.js.map b/src/app/core/cache/models/action-type.model.js.map deleted file mode 100644 index 7d91d1e611..0000000000 --- a/src/app/core/cache/models/action-type.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"action-type.model.js","sourceRoot":"","sources":["action-type.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,UA4DX;AA5DD,WAAY,UAAU;IACpB;;OAEG;IACH,2CAAQ,CAAA;IAER;;OAEG;IACH,6CAAS,CAAA;IAET;;OAEG;IACH,+CAAU,CAAA;IAEV;;OAEG;IACH,yCAAO,CAAA;IAEP;;OAEG;IACH,+CAAU,CAAA;IAEV;;OAEG;IACH,iEAAmB,CAAA;IAEnB;;OAEG;IACH,iEAAmB,CAAA;IAEnB;;OAEG;IACH,iEAAmB,CAAA;IAEnB;;OAEG;IACH,+DAAkB,CAAA;IAElB;;OAEG;IACH,+EAA0B,CAAA;IAE1B;;OAEG;IACH,sEAAsB,CAAA;IAEtB;;OAEG;IACH,8CAAU,CAAA;AACZ,CAAC,EA5DW,UAAU,KAAV,UAAU,QA4DrB"} \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-item-type.model.js b/src/app/core/cache/models/items/normalized-item-type.model.js deleted file mode 100644 index e0e0ed89f4..0000000000 --- a/src/app/core/cache/models/items/normalized-item-type.model.js +++ /dev/null @@ -1,35 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { ItemType } from '../../../shared/item-relationships/item-type.model'; -import { ResourceType } from '../../../shared/resource-type'; -import { mapsTo } from '../../builders/build-decorators'; -import { NormalizedObject } from '../normalized-object.model'; -import { IDToUUIDSerializer } from '../../id-to-uuid-serializer'; -/** - * Normalized model class for a DSpace ItemType - */ -var NormalizedItemType = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedItemType, _super); - function NormalizedItemType() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedItemType.prototype, "label", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedItemType.prototype, "id", void 0); - tslib_1.__decorate([ - autoserializeAs(new IDToUUIDSerializer(ResourceType.ItemType), 'id'), - tslib_1.__metadata("design:type", String) - ], NormalizedItemType.prototype, "uuid", void 0); - NormalizedItemType = tslib_1.__decorate([ - mapsTo(ItemType), - inheritSerialization(NormalizedObject) - ], NormalizedItemType); - return NormalizedItemType; -}(NormalizedObject)); -export { NormalizedItemType }; -//# sourceMappingURL=normalized-item-type.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-item-type.model.js.map b/src/app/core/cache/models/items/normalized-item-type.model.js.map deleted file mode 100644 index 9210a61d46..0000000000 --- a/src/app/core/cache/models/items/normalized-item-type.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-item-type.model.js","sourceRoot":"","sources":["normalized-item-type.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,oDAAoD,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AAGH;IAAwC,8CAA0B;IAAlE;;IAmBA,CAAC;IAbC;QADC,aAAa;;qDACA;IAMd;QADC,aAAa;;kDACH;IAMX;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;;oDACxD;IAlBF,kBAAkB;QAF9B,MAAM,CAAC,QAAQ,CAAC;QAChB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,kBAAkB,CAmB9B;IAAD,yBAAC;CAAA,AAnBD,CAAwC,gBAAgB,GAmBvD;SAnBY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-relationship-type.model.js b/src/app/core/cache/models/items/normalized-relationship-type.model.js deleted file mode 100644 index 49808cc80a..0000000000 --- a/src/app/core/cache/models/items/normalized-relationship-type.model.js +++ /dev/null @@ -1,66 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { RelationshipType } from '../../../shared/item-relationships/relationship-type.model'; -import { ResourceType } from '../../../shared/resource-type'; -import { mapsTo, relationship } from '../../builders/build-decorators'; -import { NormalizedDSpaceObject } from '../normalized-dspace-object.model'; -import { NormalizedObject } from '../normalized-object.model'; -import { IDToUUIDSerializer } from '../../id-to-uuid-serializer'; -/** - * Normalized model class for a DSpace RelationshipType - */ -var NormalizedRelationshipType = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedRelationshipType, _super); - function NormalizedRelationshipType() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedRelationshipType.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedRelationshipType.prototype, "leftLabel", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedRelationshipType.prototype, "leftMaxCardinality", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedRelationshipType.prototype, "leftMinCardinality", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedRelationshipType.prototype, "rightLabel", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedRelationshipType.prototype, "rightMaxCardinality", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedRelationshipType.prototype, "rightMinCardinality", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.ItemType, false), - tslib_1.__metadata("design:type", String) - ], NormalizedRelationshipType.prototype, "leftType", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.ItemType, false), - tslib_1.__metadata("design:type", String) - ], NormalizedRelationshipType.prototype, "rightType", void 0); - tslib_1.__decorate([ - autoserializeAs(new IDToUUIDSerializer(ResourceType.RelationshipType), 'id'), - tslib_1.__metadata("design:type", String) - ], NormalizedRelationshipType.prototype, "uuid", void 0); - NormalizedRelationshipType = tslib_1.__decorate([ - mapsTo(RelationshipType), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedRelationshipType); - return NormalizedRelationshipType; -}(NormalizedObject)); -export { NormalizedRelationshipType }; -//# sourceMappingURL=normalized-relationship-type.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-relationship-type.model.js.map b/src/app/core/cache/models/items/normalized-relationship-type.model.js.map deleted file mode 100644 index 9a0c3b6f24..0000000000 --- a/src/app/core/cache/models/items/normalized-relationship-type.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-relationship-type.model.js","sourceRoot":"","sources":["normalized-relationship-type.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4DAA4D,CAAC;AAC9F,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AAGH;IAAgD,sDAAkC;IAAlF;;IA+DA,CAAC;IAzDC;QADC,aAAa;;0DACH;IAMX;QADC,aAAa;;iEACI;IAMlB;QADC,aAAa;;0EACa;IAM3B;QADC,aAAa;;0EACa;IAM3B;QADC,aAAa;;kEACK;IAMnB;QADC,aAAa;;2EACc;IAM5B;QADC,aAAa;;2EACc;IAO5B;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC;;gEAC1B;IAOjB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC;;iEACzB;IAMlB;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC;;4DAChE;IA9DF,0BAA0B;QAFtC,MAAM,CAAC,gBAAgB,CAAC;QACxB,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,0BAA0B,CA+DtC;IAAD,iCAAC;CAAA,AA/DD,CAAgD,gBAAgB,GA+D/D;SA/DY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-relationship.model.js b/src/app/core/cache/models/items/normalized-relationship.model.js deleted file mode 100644 index 9463fcd985..0000000000 --- a/src/app/core/cache/models/items/normalized-relationship.model.js +++ /dev/null @@ -1,52 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { Relationship } from '../../../shared/item-relationships/relationship.model'; -import { ResourceType } from '../../../shared/resource-type'; -import { mapsTo, relationship } from '../../builders/build-decorators'; -import { NormalizedObject } from '../normalized-object.model'; -import { IDToUUIDSerializer } from '../../id-to-uuid-serializer'; -/** - * Normalized model class for a DSpace Relationship - */ -var NormalizedRelationship = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedRelationship, _super); - function NormalizedRelationship() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedRelationship.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedRelationship.prototype, "leftId", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedRelationship.prototype, "rightId", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedRelationship.prototype, "leftPlace", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedRelationship.prototype, "rightPlace", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.RelationshipType, false), - tslib_1.__metadata("design:type", String) - ], NormalizedRelationship.prototype, "relationshipType", void 0); - tslib_1.__decorate([ - autoserializeAs(new IDToUUIDSerializer(ResourceType.Relationship), 'id'), - tslib_1.__metadata("design:type", String) - ], NormalizedRelationship.prototype, "uuid", void 0); - NormalizedRelationship = tslib_1.__decorate([ - mapsTo(Relationship), - inheritSerialization(NormalizedObject) - ], NormalizedRelationship); - return NormalizedRelationship; -}(NormalizedObject)); -export { NormalizedRelationship }; -//# sourceMappingURL=normalized-relationship.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/items/normalized-relationship.model.js.map b/src/app/core/cache/models/items/normalized-relationship.model.js.map deleted file mode 100644 index b671028cf0..0000000000 --- a/src/app/core/cache/models/items/normalized-relationship.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-relationship.model.js","sourceRoot":"","sources":["normalized-relationship.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,uDAAuD,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;GAEG;AAGH;IAA4C,kDAA8B;IAA1E;;IA4CA,CAAC;IAtCC;QADC,aAAa;;sDACH;IAMX;QADC,aAAa;;0DACC;IAMf;QADC,aAAa;;2DACE;IAMhB;QADC,aAAa;;6DACI;IAMlB;QADC,aAAa;;8DACK;IAOnB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,CAAC;;oEAC1B;IAMzB;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC;;wDAC5D;IA3CF,sBAAsB;QAFlC,MAAM,CAAC,YAAY,CAAC;QACpB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,sBAAsB,CA4ClC;IAAD,6BAAC;CAAA,AA5CD,CAA4C,gBAAgB,GA4C3D;SA5CY,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bitstream-format.model.js b/src/app/core/cache/models/normalized-bitstream-format.model.js deleted file mode 100644 index 764c9dba97..0000000000 --- a/src/app/core/cache/models/normalized-bitstream-format.model.js +++ /dev/null @@ -1,55 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { BitstreamFormat } from '../../shared/bitstream-format.model'; -import { mapsTo } from '../builders/build-decorators'; -import { IDToUUIDSerializer } from '../id-to-uuid-serializer'; -import { NormalizedObject } from './normalized-object.model'; -import { SupportLevel } from './support-level.model'; -/** - * Normalized model class for a Bitstream Format - */ -var NormalizedBitstreamFormat = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedBitstreamFormat, _super); - function NormalizedBitstreamFormat() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedBitstreamFormat.prototype, "shortDescription", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedBitstreamFormat.prototype, "description", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedBitstreamFormat.prototype, "mimetype", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedBitstreamFormat.prototype, "supportLevel", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedBitstreamFormat.prototype, "internal", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedBitstreamFormat.prototype, "extensions", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedBitstreamFormat.prototype, "id", void 0); - tslib_1.__decorate([ - autoserializeAs(new IDToUUIDSerializer('bitstream-format'), 'id'), - tslib_1.__metadata("design:type", String) - ], NormalizedBitstreamFormat.prototype, "uuid", void 0); - NormalizedBitstreamFormat = tslib_1.__decorate([ - mapsTo(BitstreamFormat), - inheritSerialization(NormalizedObject) - ], NormalizedBitstreamFormat); - return NormalizedBitstreamFormat; -}(NormalizedObject)); -export { NormalizedBitstreamFormat }; -//# sourceMappingURL=normalized-bitstream-format.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bitstream-format.model.js.map b/src/app/core/cache/models/normalized-bitstream-format.model.js.map deleted file mode 100644 index e1218d6f50..0000000000 --- a/src/app/core/cache/models/normalized-bitstream-format.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-bitstream-format.model.js","sourceRoot":"","sources":["normalized-bitstream-format.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEtE,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD;;GAEG;AAGH;IAA+C,qDAAiC;IAAhF;;IAoDA,CAAC;IA9CC;QADC,aAAa;;uEACW;IAMzB;QADC,aAAa;;kEACM;IAMpB;QADC,aAAa;;+DACG;IAMjB;QADC,aAAa;;mEACa;IAM3B;QADC,aAAa;;+DACI;IAMlB;QADC,aAAa;;iEACK;IAQnB;QADC,aAAa;;yDACH;IAOX;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,IAAI,CAAC;;2DACrD;IAnDF,yBAAyB;QAFrC,MAAM,CAAC,eAAe,CAAC;QACvB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,yBAAyB,CAoDrC;IAAD,gCAAC;CAAA,AApDD,CAA+C,gBAAgB,GAoD9D;SApDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bitstream.model.js b/src/app/core/cache/models/normalized-bitstream.model.js deleted file mode 100644 index cb2b1acf36..0000000000 --- a/src/app/core/cache/models/normalized-bitstream.model.js +++ /dev/null @@ -1,53 +0,0 @@ -import * as tslib_1 from "tslib"; -import { inheritSerialization, autoserialize } from 'cerialize'; -import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; -import { Bitstream } from '../../shared/bitstream.model'; -import { mapsTo, relationship } from '../builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -/** - * Normalized model class for a DSpace Bitstream - */ -var NormalizedBitstream = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedBitstream, _super); - function NormalizedBitstream() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedBitstream.prototype, "sizeBytes", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedBitstream.prototype, "content", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.BitstreamFormat, false), - tslib_1.__metadata("design:type", String) - ], NormalizedBitstream.prototype, "format", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedBitstream.prototype, "description", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Item, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedBitstream.prototype, "parents", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Item, false), - tslib_1.__metadata("design:type", String) - ], NormalizedBitstream.prototype, "owner", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedBitstream.prototype, "bundleName", void 0); - NormalizedBitstream = tslib_1.__decorate([ - mapsTo(Bitstream), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedBitstream); - return NormalizedBitstream; -}(NormalizedDSpaceObject)); -export { NormalizedBitstream }; -//# sourceMappingURL=normalized-bitstream.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bitstream.model.js.map b/src/app/core/cache/models/normalized-bitstream.model.js.map deleted file mode 100644 index d58c389a44..0000000000 --- a/src/app/core/cache/models/normalized-bitstream.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-bitstream.model.js","sourceRoot":"","sources":["normalized-bitstream.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAyC,+CAAiC;IAA1E;;IA+CA,CAAC;IAzCC;QADC,aAAa;;0DACI;IAMlB;QADC,aAAa;;wDACE;IAOhB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,eAAe,EAAE,KAAK,CAAC;;uDACnC;IAMf;QADC,aAAa;;4DACM;IAOpB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;;wDACpB;IAOlB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;;sDACzB;IAMd;QADC,aAAa;;2DACK;IA7CR,mBAAmB;QAF/B,MAAM,CAAC,SAAS,CAAC;QACjB,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,mBAAmB,CA+C/B;IAAD,0BAAC;CAAA,AA/CD,CAAyC,sBAAsB,GA+C9D;SA/CY,mBAAmB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bundle.model.js b/src/app/core/cache/models/normalized-bundle.model.js deleted file mode 100644 index dbbb97547c..0000000000 --- a/src/app/core/cache/models/normalized-bundle.model.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; -import { Bundle } from '../../shared/bundle.model'; -import { mapsTo, relationship } from '../builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -/** - * Normalized model class for a DSpace Bundle - */ -var NormalizedBundle = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedBundle, _super); - function NormalizedBundle() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Bitstream, false), - tslib_1.__metadata("design:type", String) - ], NormalizedBundle.prototype, "primaryBitstream", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Bitstream, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedBundle.prototype, "bitstreams", void 0); - NormalizedBundle = tslib_1.__decorate([ - mapsTo(Bundle), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedBundle); - return NormalizedBundle; -}(NormalizedDSpaceObject)); -export { NormalizedBundle }; -//# sourceMappingURL=normalized-bundle.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-bundle.model.js.map b/src/app/core/cache/models/normalized-bundle.model.js.map deleted file mode 100644 index 0f18c64acc..0000000000 --- a/src/app/core/cache/models/normalized-bundle.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-bundle.model.js","sourceRoot":"","sources":["normalized-bundle.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAsC,4CAA8B;IAApE;;IAyBA,CAAC;IAnBC;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;8DACnB;IAiBzB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;wDACtB;IAvBV,gBAAgB;QAF5B,MAAM,CAAC,MAAM,CAAC;QACd,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,gBAAgB,CAyB5B;IAAD,uBAAC;CAAA,AAzBD,CAAsC,sBAAsB,GAyB3D;SAzBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-collection.model.js b/src/app/core/cache/models/normalized-collection.model.js deleted file mode 100644 index 811d6f3b27..0000000000 --- a/src/app/core/cache/models/normalized-collection.model.js +++ /dev/null @@ -1,56 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, deserialize, inheritSerialization } from 'cerialize'; -import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; -import { Collection } from '../../shared/collection.model'; -import { mapsTo, relationship } from '../builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -/** - * Normalized model class for a DSpace Collection - */ -var NormalizedCollection = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedCollection, _super); - function NormalizedCollection() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedCollection.prototype, "handle", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.License, false), - tslib_1.__metadata("design:type", String) - ], NormalizedCollection.prototype, "license", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.ResourcePolicy, false), - tslib_1.__metadata("design:type", String) - ], NormalizedCollection.prototype, "defaultAccessConditions", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Bitstream, false), - tslib_1.__metadata("design:type", String) - ], NormalizedCollection.prototype, "logo", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Community, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedCollection.prototype, "parents", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Community, false), - tslib_1.__metadata("design:type", String) - ], NormalizedCollection.prototype, "owner", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Item, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedCollection.prototype, "items", void 0); - NormalizedCollection = tslib_1.__decorate([ - mapsTo(Collection), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedCollection); - return NormalizedCollection; -}(NormalizedDSpaceObject)); -export { NormalizedCollection }; -//# sourceMappingURL=normalized-collection.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-collection.model.js.map b/src/app/core/cache/models/normalized-collection.model.js.map deleted file mode 100644 index aa0375ad31..0000000000 --- a/src/app/core/cache/models/normalized-collection.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-collection.model.js","sourceRoot":"","sources":["normalized-collection.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAE7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAA0C,gDAAkC;IAA5E;;IAkDA,CAAC;IA5CC;QADC,aAAa;;wDACC;IAOf;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;;yDAC1B;IAOhB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,CAAC;;yEACjB;IAOhC;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;sDAC/B;IAOb;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;yDACzB;IAOlB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;uDAC9B;IAOd;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;;uDACtB;IAhDL,oBAAoB;QAFhC,MAAM,CAAC,UAAU,CAAC;QAClB,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,oBAAoB,CAkDhC;IAAD,2BAAC;CAAA,AAlDD,CAA0C,sBAAsB,GAkD/D;SAlDY,oBAAoB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-community.model.js b/src/app/core/cache/models/normalized-community.model.js deleted file mode 100644 index 0f15ac3902..0000000000 --- a/src/app/core/cache/models/normalized-community.model.js +++ /dev/null @@ -1,51 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, deserialize, inheritSerialization } from 'cerialize'; -import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; -import { Community } from '../../shared/community.model'; -import { mapsTo, relationship } from '../builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -/** - * Normalized model class for a DSpace Community - */ -var NormalizedCommunity = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedCommunity, _super); - function NormalizedCommunity() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedCommunity.prototype, "handle", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Bitstream, false), - tslib_1.__metadata("design:type", String) - ], NormalizedCommunity.prototype, "logo", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Community, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedCommunity.prototype, "parents", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Community, false), - tslib_1.__metadata("design:type", String) - ], NormalizedCommunity.prototype, "owner", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Collection, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedCommunity.prototype, "collections", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Community, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedCommunity.prototype, "subcommunities", void 0); - NormalizedCommunity = tslib_1.__decorate([ - mapsTo(Community), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedCommunity); - return NormalizedCommunity; -}(NormalizedDSpaceObject)); -export { NormalizedCommunity }; -//# sourceMappingURL=normalized-community.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-community.model.js.map b/src/app/core/cache/models/normalized-community.model.js.map deleted file mode 100644 index 5061c917e3..0000000000 --- a/src/app/core/cache/models/normalized-community.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-community.model.js","sourceRoot":"","sources":["normalized-community.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAa,MAAM,WAAW,CAAC;AAExF,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAyC,+CAAiC;IAA1E;;IAwCA,CAAC;IAlCC;QADC,aAAa;;uDACC;IAOf;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;qDAC/B;IAOb;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;wDACzB;IAOlB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC;;sDAC9B;IAOd;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;;4DACtB;IAItB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;+DAClB;IAtCd,mBAAmB;QAF/B,MAAM,CAAC,SAAS,CAAC;QACjB,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,mBAAmB,CAwC/B;IAAD,0BAAC;CAAA,AAxCD,CAAyC,sBAAsB,GAwC9D;SAxCY,mBAAmB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-dspace-object.model.js b/src/app/core/cache/models/normalized-dspace-object.model.js deleted file mode 100644 index c9fc8b07bd..0000000000 --- a/src/app/core/cache/models/normalized-dspace-object.model.js +++ /dev/null @@ -1,54 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserializeAs, deserializeAs } from 'cerialize'; -import { DSpaceObject } from '../../shared/dspace-object.model'; -import { MetadataMap, MetadataMapSerializer } from '../../shared/metadata.models'; -import { ResourceType } from '../../shared/resource-type'; -import { mapsTo } from '../builders/build-decorators'; -import { NormalizedObject } from './normalized-object.model'; -/** - * An model class for a DSpaceObject. - */ -var NormalizedDSpaceObject = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedDSpaceObject, _super); - function NormalizedDSpaceObject() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - deserializeAs(String), - tslib_1.__metadata("design:type", String) - ], NormalizedDSpaceObject.prototype, "self", void 0); - tslib_1.__decorate([ - autoserializeAs(String, 'uuid'), - tslib_1.__metadata("design:type", String) - ], NormalizedDSpaceObject.prototype, "id", void 0); - tslib_1.__decorate([ - autoserializeAs(String), - tslib_1.__metadata("design:type", String) - ], NormalizedDSpaceObject.prototype, "uuid", void 0); - tslib_1.__decorate([ - autoserializeAs(String), - tslib_1.__metadata("design:type", String) - ], NormalizedDSpaceObject.prototype, "type", void 0); - tslib_1.__decorate([ - autoserializeAs(MetadataMapSerializer), - tslib_1.__metadata("design:type", MetadataMap) - ], NormalizedDSpaceObject.prototype, "metadata", void 0); - tslib_1.__decorate([ - deserializeAs(String), - tslib_1.__metadata("design:type", Array) - ], NormalizedDSpaceObject.prototype, "parents", void 0); - tslib_1.__decorate([ - deserializeAs(String), - tslib_1.__metadata("design:type", String) - ], NormalizedDSpaceObject.prototype, "owner", void 0); - tslib_1.__decorate([ - deserializeAs(Object), - tslib_1.__metadata("design:type", Object) - ], NormalizedDSpaceObject.prototype, "_links", void 0); - NormalizedDSpaceObject = tslib_1.__decorate([ - mapsTo(DSpaceObject) - ], NormalizedDSpaceObject); - return NormalizedDSpaceObject; -}(NormalizedObject)); -export { NormalizedDSpaceObject }; -//# sourceMappingURL=normalized-dspace-object.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-dspace-object.model.js.map b/src/app/core/cache/models/normalized-dspace-object.model.js.map deleted file mode 100644 index d842d6f834..0000000000 --- a/src/app/core/cache/models/normalized-dspace-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-dspace-object.model.js","sourceRoot":"","sources":["normalized-dspace-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;GAEG;AAEH;IAAoE,kDAAmB;IAAvF;;IA4DA,CAAC;IAnDC;QADC,aAAa,CAAC,MAAM,CAAC;;wDACT;IASb;QADC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;;sDACrB;IAMX;QADC,eAAe,CAAC,MAAM,CAAC;;wDACX;IAMb;QADC,eAAe,CAAC,MAAM,CAAC;;wDACL;IAMnB;QADC,eAAe,CAAC,qBAAqB,CAAC;0CAC7B,WAAW;4DAAC;IAMtB;QADC,aAAa,CAAC,MAAM,CAAC;;2DACJ;IAMlB;QADC,aAAa,CAAC,MAAM,CAAC;;yDACR;IASd;QADC,aAAa,CAAC,MAAM,CAAC;;0DAGrB;IA3DU,sBAAsB;QADlC,MAAM,CAAC,YAAY,CAAC;OACR,sBAAsB,CA4DlC;IAAD,6BAAC;CAAA,AA5DD,CAAoE,gBAAgB,GA4DnF;SA5DY,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-item.model.js b/src/app/core/cache/models/normalized-item.model.js deleted file mode 100644 index 311a94d75e..0000000000 --- a/src/app/core/cache/models/normalized-item.model.js +++ /dev/null @@ -1,62 +0,0 @@ -import * as tslib_1 from "tslib"; -import { inheritSerialization, deserialize, autoserialize, autoserializeAs } from 'cerialize'; -import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; -import { Item } from '../../shared/item.model'; -import { mapsTo, relationship } from '../builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -/** - * Normalized model class for a DSpace Item - */ -var NormalizedItem = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedItem, _super); - function NormalizedItem() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedItem.prototype, "handle", void 0); - tslib_1.__decorate([ - deserialize, - tslib_1.__metadata("design:type", Date) - ], NormalizedItem.prototype, "lastModified", void 0); - tslib_1.__decorate([ - autoserializeAs(Boolean, 'inArchive'), - tslib_1.__metadata("design:type", Boolean) - ], NormalizedItem.prototype, "isArchived", void 0); - tslib_1.__decorate([ - autoserializeAs(Boolean, 'discoverable'), - tslib_1.__metadata("design:type", Boolean) - ], NormalizedItem.prototype, "isDiscoverable", void 0); - tslib_1.__decorate([ - autoserializeAs(Boolean, 'withdrawn'), - tslib_1.__metadata("design:type", Boolean) - ], NormalizedItem.prototype, "isWithdrawn", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Collection, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedItem.prototype, "parents", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Collection, false), - tslib_1.__metadata("design:type", String) - ], NormalizedItem.prototype, "owningCollection", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Bitstream, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedItem.prototype, "bitstreams", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Relationship, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedItem.prototype, "relationships", void 0); - NormalizedItem = tslib_1.__decorate([ - mapsTo(Item), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedItem); - return NormalizedItem; -}(NormalizedDSpaceObject)); -export { NormalizedItem }; -//# sourceMappingURL=normalized-item.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-item.model.js.map b/src/app/core/cache/models/normalized-item.model.js.map deleted file mode 100644 index da7ca2c88d..0000000000 --- a/src/app/core/cache/models/normalized-item.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-item.model.js","sourceRoot":"","sources":["normalized-item.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAoC,0CAA4B;IAAhE;;IAyDA,CAAC;IAnDC;QADC,aAAa;;kDACC;IAMf;QADC,WAAW;0CACE,IAAI;wDAAC;IAMnB;QADC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC;;sDAClB;IAMpB;QADC,eAAe,CAAC,OAAO,EAAE,cAAc,CAAC;;0DACjB;IAMxB;QADC,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC;;uDACjB;IAOrB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;;mDAC1B;IAOlB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC;;4DACpB;IAOzB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC;;sDACtB;IAIrB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC;;yDACtB;IAvDb,cAAc;QAF1B,MAAM,CAAC,IAAI,CAAC;QACZ,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,cAAc,CAyD1B;IAAD,qBAAC;CAAA,AAzDD,CAAoC,sBAAsB,GAyDzD;SAzDY,cAAc"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-license.model.js b/src/app/core/cache/models/normalized-license.model.js deleted file mode 100644 index 73fed53c8a..0000000000 --- a/src/app/core/cache/models/normalized-license.model.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { mapsTo } from '../builders/build-decorators'; -import { NormalizedDSpaceObject } from './normalized-dspace-object.model'; -import { License } from '../../shared/license.model'; -/** - * Normalized model class for a Collection License - */ -var NormalizedLicense = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedLicense, _super); - function NormalizedLicense() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedLicense.prototype, "custom", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedLicense.prototype, "text", void 0); - NormalizedLicense = tslib_1.__decorate([ - mapsTo(License), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedLicense); - return NormalizedLicense; -}(NormalizedDSpaceObject)); -export { NormalizedLicense }; -//# sourceMappingURL=normalized-license.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-license.model.js.map b/src/app/core/cache/models/normalized-license.model.js.map deleted file mode 100644 index 1c10f06d3a..0000000000 --- a/src/app/core/cache/models/normalized-license.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-license.model.js","sourceRoot":"","sources":["normalized-license.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAErD;;GAEG;AAGH;IAAuC,6CAA+B;IAAtE;;IAaA,CAAC;IAPC;QADC,aAAa;;qDACE;IAMhB;QADC,aAAa;;mDACD;IAZF,iBAAiB;QAF7B,MAAM,CAAC,OAAO,CAAC;QACf,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,iBAAiB,CAa7B;IAAD,wBAAC;CAAA,AAbD,CAAuC,sBAAsB,GAa5D;SAbY,iBAAiB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-object-factory.js b/src/app/core/cache/models/normalized-object-factory.js deleted file mode 100644 index 3f799d3407..0000000000 --- a/src/app/core/cache/models/normalized-object-factory.js +++ /dev/null @@ -1,105 +0,0 @@ -import { NormalizedItemType } from './items/normalized-item-type.model'; -import { NormalizedRelationshipType } from './items/normalized-relationship-type.model'; -import { NormalizedRelationship } from './items/normalized-relationship.model'; -import { NormalizedBitstream } from './normalized-bitstream.model'; -import { NormalizedBundle } from './normalized-bundle.model'; -import { NormalizedItem } from './normalized-item.model'; -import { NormalizedCollection } from './normalized-collection.model'; -import { NormalizedCommunity } from './normalized-community.model'; -import { ResourceType } from '../../shared/resource-type'; -import { NormalizedLicense } from './normalized-license.model'; -import { NormalizedResourcePolicy } from './normalized-resource-policy.model'; -import { NormalizedWorkspaceItem } from '../../submission/models/normalized-workspaceitem.model'; -import { NormalizedEPerson } from '../../eperson/models/normalized-eperson.model'; -import { NormalizedGroup } from '../../eperson/models/normalized-group.model'; -import { NormalizedWorkflowItem } from '../../submission/models/normalized-workflowitem.model'; -import { NormalizedClaimedTask } from '../../tasks/models/normalized-claimed-task-object.model'; -import { NormalizedPoolTask } from '../../tasks/models/normalized-pool-task-object.model'; -import { NormalizedBitstreamFormat } from './normalized-bitstream-format.model'; -import { NormalizedMetadataSchema } from '../../metadata/normalized-metadata-schema.model'; -import { NormalizedSubmissionDefinitionsModel } from '../../config/models/normalized-config-submission-definitions.model'; -import { NormalizedSubmissionFormsModel } from '../../config/models/normalized-config-submission-forms.model'; -import { NormalizedSubmissionSectionModel } from '../../config/models/normalized-config-submission-section.model'; -var NormalizedObjectFactory = /** @class */ (function () { - function NormalizedObjectFactory() { - } - NormalizedObjectFactory.getConstructor = function (type) { - switch (type) { - case ResourceType.Bitstream: { - return NormalizedBitstream; - } - case ResourceType.Bundle: { - return NormalizedBundle; - } - case ResourceType.Item: { - return NormalizedItem; - } - case ResourceType.Collection: { - return NormalizedCollection; - } - case ResourceType.Community: { - return NormalizedCommunity; - } - case ResourceType.BitstreamFormat: { - return NormalizedBitstreamFormat; - } - case ResourceType.License: { - return NormalizedLicense; - } - case ResourceType.ResourcePolicy: { - return NormalizedResourcePolicy; - } - case ResourceType.Relationship: { - return NormalizedRelationship; - } - case ResourceType.RelationshipType: { - return NormalizedRelationshipType; - } - case ResourceType.ItemType: { - return NormalizedItemType; - } - case ResourceType.EPerson: { - return NormalizedEPerson; - } - case ResourceType.Group: { - return NormalizedGroup; - } - case ResourceType.MetadataSchema: { - return NormalizedMetadataSchema; - } - case ResourceType.MetadataField: { - return NormalizedGroup; - } - case ResourceType.Workspaceitem: { - return NormalizedWorkspaceItem; - } - case ResourceType.Workflowitem: { - return NormalizedWorkflowItem; - } - case ResourceType.ClaimedTask: { - return NormalizedClaimedTask; - } - case ResourceType.PoolTask: { - return NormalizedPoolTask; - } - case ResourceType.SubmissionDefinition: - case ResourceType.SubmissionDefinitions: { - return NormalizedSubmissionDefinitionsModel; - } - case ResourceType.SubmissionForm: - case ResourceType.SubmissionForms: { - return NormalizedSubmissionFormsModel; - } - case ResourceType.SubmissionSection: - case ResourceType.SubmissionSections: { - return NormalizedSubmissionSectionModel; - } - default: { - return undefined; - } - } - }; - return NormalizedObjectFactory; -}()); -export { NormalizedObjectFactory }; -//# sourceMappingURL=normalized-object-factory.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-object-factory.js.map b/src/app/core/cache/models/normalized-object-factory.js.map deleted file mode 100644 index d63bdc2c30..0000000000 --- a/src/app/core/cache/models/normalized-object-factory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-object-factory.js","sourceRoot":"","sources":["normalized-object-factory.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-object.model.js b/src/app/core/cache/models/normalized-object.model.js deleted file mode 100644 index c9a0c33463..0000000000 --- a/src/app/core/cache/models/normalized-object.model.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize } from 'cerialize'; -import { ResourceType } from '../../shared/resource-type'; -/** - * An abstract model class for a NormalizedObject. - */ -var NormalizedObject = /** @class */ (function () { - function NormalizedObject() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedObject.prototype, "self", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedObject.prototype, "type", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], NormalizedObject.prototype, "_links", void 0); - return NormalizedObject; -}()); -export { NormalizedObject }; -//# sourceMappingURL=normalized-object.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-object.model.js.map b/src/app/core/cache/models/normalized-object.model.js.map deleted file mode 100644 index 9097dcb960..0000000000 --- a/src/app/core/cache/models/normalized-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-object.model.js","sourceRoot":"","sources":["normalized-object.model.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D;;GAEG;AACH;IAAA;IAkBA,CAAC;IAZC;QADC,aAAa;;kDACD;IAMb;QADC,aAAa;;kDACK;IAGnB;QADC,aAAa;;oDAGb;IACH,uBAAC;CAAA,AAlBD,IAkBC;SAlBqB,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-resource-policy.model.js b/src/app/core/cache/models/normalized-resource-policy.model.js deleted file mode 100644 index e59a88a471..0000000000 --- a/src/app/core/cache/models/normalized-resource-policy.model.js +++ /dev/null @@ -1,43 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { ResourcePolicy } from '../../shared/resource-policy.model'; -import { mapsTo } from '../builders/build-decorators'; -import { NormalizedObject } from './normalized-object.model'; -import { IDToUUIDSerializer } from '../id-to-uuid-serializer'; -import { ActionType } from './action-type.model'; -/** - * Normalized model class for a Resource Policy - */ -var NormalizedResourcePolicy = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedResourcePolicy, _super); - function NormalizedResourcePolicy() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedResourcePolicy.prototype, "action", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedResourcePolicy.prototype, "name", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedResourcePolicy.prototype, "groupUUID", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedResourcePolicy.prototype, "id", void 0); - tslib_1.__decorate([ - autoserializeAs(new IDToUUIDSerializer('resource-policy'), 'id'), - tslib_1.__metadata("design:type", String) - ], NormalizedResourcePolicy.prototype, "uuid", void 0); - NormalizedResourcePolicy = tslib_1.__decorate([ - mapsTo(ResourcePolicy), - inheritSerialization(NormalizedObject) - ], NormalizedResourcePolicy); - return NormalizedResourcePolicy; -}(NormalizedObject)); -export { NormalizedResourcePolicy }; -//# sourceMappingURL=normalized-resource-policy.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/normalized-resource-policy.model.js.map b/src/app/core/cache/models/normalized-resource-policy.model.js.map deleted file mode 100644 index 1080101cde..0000000000 --- a/src/app/core/cache/models/normalized-resource-policy.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-resource-policy.model.js","sourceRoot":"","sources":["normalized-resource-policy.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAEpE,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;GAEG;AAGH;IAA8C,oDAAgC;IAA9E;;IAmCA,CAAC;IA7BC;QADC,aAAa;;4DACK;IAMnB;QADC,aAAa;;0DACD;IAMb;QADC,aAAa;;+DACI;IAQlB;QADC,aAAa;;wDACH;IAOX;QADC,eAAe,CAAC,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC;;0DACpD;IAjCF,wBAAwB;QAFpC,MAAM,CAAC,cAAc,CAAC;QACtB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,wBAAwB,CAmCpC;IAAD,+BAAC;CAAA,AAnCD,CAA8C,gBAAgB,GAmC7D;SAnCY,wBAAwB"} \ No newline at end of file diff --git a/src/app/core/cache/models/search-param.model.js b/src/app/core/cache/models/search-param.model.js deleted file mode 100644 index aee0e79853..0000000000 --- a/src/app/core/cache/models/search-param.model.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * Class representing a query parameter (query?fieldName=fieldValue) used in FindAllOptions object - */ -var SearchParam = /** @class */ (function () { - function SearchParam(fieldName, fieldValue) { - this.fieldName = fieldName; - this.fieldValue = fieldValue; - } - return SearchParam; -}()); -export { SearchParam }; -//# sourceMappingURL=search-param.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/search-param.model.js.map b/src/app/core/cache/models/search-param.model.js.map deleted file mode 100644 index 0849621347..0000000000 --- a/src/app/core/cache/models/search-param.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-param.model.js","sourceRoot":"","sources":["search-param.model.ts"],"names":[],"mappings":"AACA;;GAEG;AACH;IACE,qBAAmB,SAAiB,EAAS,UAAe;QAAzC,cAAS,GAAT,SAAS,CAAQ;QAAS,eAAU,GAAV,UAAU,CAAK;IAE5D,CAAC;IACH,kBAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/core/cache/models/self-link.model.js b/src/app/core/cache/models/self-link.model.js deleted file mode 100644 index 528f3ddd21..0000000000 --- a/src/app/core/cache/models/self-link.model.js +++ /dev/null @@ -1,17 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize } from 'cerialize'; -var SelfLink = /** @class */ (function () { - function SelfLink() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SelfLink.prototype, "self", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SelfLink.prototype, "uuid", void 0); - return SelfLink; -}()); -export { SelfLink }; -//# sourceMappingURL=self-link.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/self-link.model.js.map b/src/app/core/cache/models/self-link.model.js.map deleted file mode 100644 index e9cab56544..0000000000 --- a/src/app/core/cache/models/self-link.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"self-link.model.js","sourceRoot":"","sources":["self-link.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C;IAAA;IAQA,CAAC;IALC;QADC,aAAa;;0CACD;IAGb;QADC,aAAa;;0CACD;IAEf,eAAC;CAAA,AARD,IAQC;SARY,QAAQ"} \ No newline at end of file diff --git a/src/app/core/cache/models/sort-options.model.js b/src/app/core/cache/models/sort-options.model.js deleted file mode 100644 index ca079868c1..0000000000 --- a/src/app/core/cache/models/sort-options.model.js +++ /dev/null @@ -1,14 +0,0 @@ -export var SortDirection; -(function (SortDirection) { - SortDirection["ASC"] = "ASC"; - SortDirection["DESC"] = "DESC"; -})(SortDirection || (SortDirection = {})); -var SortOptions = /** @class */ (function () { - function SortOptions(field, direction) { - this.field = field; - this.direction = direction; - } - return SortOptions; -}()); -export { SortOptions }; -//# sourceMappingURL=sort-options.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/sort-options.model.js.map b/src/app/core/cache/models/sort-options.model.js.map deleted file mode 100644 index 43d014d60d..0000000000 --- a/src/app/core/cache/models/sort-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sort-options.model.js","sourceRoot":"","sources":["sort-options.model.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,4BAAW,CAAA;IACX,8BAAa,CAAA;AACf,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED;IACE,qBAAmB,KAAa,EAAS,SAAwB;QAA9C,UAAK,GAAL,KAAK,CAAQ;QAAS,cAAS,GAAT,SAAS,CAAe;IAEjE,CAAC;IACH,kBAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/core/cache/models/support-level.model.js b/src/app/core/cache/models/support-level.model.js deleted file mode 100644 index 6d7445f61d..0000000000 --- a/src/app/core/cache/models/support-level.model.js +++ /dev/null @@ -1,19 +0,0 @@ -/** - * Enum representing the Support Level of a Bitstream Format - */ -export var SupportLevel; -(function (SupportLevel) { - /** - * Unknown for Bitstream Formats that are unknown to the system - */ - SupportLevel[SupportLevel["Unknown"] = 0] = "Unknown"; - /** - * Unknown for Bitstream Formats that are known to the system, but not fully supported - */ - SupportLevel[SupportLevel["Known"] = 1] = "Known"; - /** - * Supported for Bitstream Formats that are known to the system and fully supported - */ - SupportLevel[SupportLevel["Supported"] = 2] = "Supported"; -})(SupportLevel || (SupportLevel = {})); -//# sourceMappingURL=support-level.model.js.map \ No newline at end of file diff --git a/src/app/core/cache/models/support-level.model.js.map b/src/app/core/cache/models/support-level.model.js.map deleted file mode 100644 index 10426f3efa..0000000000 --- a/src/app/core/cache/models/support-level.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"support-level.model.js","sourceRoot":"","sources":["support-level.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,YAeX;AAfD,WAAY,YAAY;IACtB;;OAEG;IACH,qDAAW,CAAA;IAEX;;OAEG;IACH,iDAAS,CAAA;IAET;;OAEG;IACH,yDAAa,CAAA;AACf,CAAC,EAfW,YAAY,KAAZ,YAAY,QAevB"} \ No newline at end of file diff --git a/src/app/core/cache/object-cache.actions.js b/src/app/core/cache/object-cache.actions.js deleted file mode 100644 index d25668aa06..0000000000 --- a/src/app/core/cache/object-cache.actions.js +++ /dev/null @@ -1,108 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -/** - * The list of ObjectCacheAction type definitions - */ -export var ObjectCacheActionTypes = { - ADD: type('dspace/core/cache/object/ADD'), - REMOVE: type('dspace/core/cache/object/REMOVE'), - RESET_TIMESTAMPS: type('dspace/core/cache/object/RESET_TIMESTAMPS'), - ADD_PATCH: type('dspace/core/cache/object/ADD_PATCH'), - APPLY_PATCH: type('dspace/core/cache/object/APPLY_PATCH') -}; -/* tslint:disable:max-classes-per-file */ -/** - * An ngrx action to add an object to the cache - */ -var AddToObjectCacheAction = /** @class */ (function () { - /** - * Create a new AddToObjectCacheAction - * - * @param objectToCache - * the object to add - * @param timeAdded - * the time it was added - * @param msToLive - * the amount of milliseconds before it should expire - * @param requestHref - * The href of the request that resulted in this object - * This isn't necessarily the same as the object's self - * link, it could have been part of a list for example - */ - function AddToObjectCacheAction(objectToCache, timeAdded, msToLive, requestUUID) { - this.type = ObjectCacheActionTypes.ADD; - this.payload = { objectToCache: objectToCache, timeAdded: timeAdded, msToLive: msToLive, requestUUID: requestUUID }; - } - return AddToObjectCacheAction; -}()); -export { AddToObjectCacheAction }; -/** - * An ngrx action to remove an object from the cache - */ -var RemoveFromObjectCacheAction = /** @class */ (function () { - /** - * Create a new RemoveFromObjectCacheAction - * - * @param href - * the unique href of the object to remove - */ - function RemoveFromObjectCacheAction(href) { - this.type = ObjectCacheActionTypes.REMOVE; - this.payload = href; - } - return RemoveFromObjectCacheAction; -}()); -export { RemoveFromObjectCacheAction }; -/** - * An ngrx action to reset the timeAdded property of all cached objects - */ -var ResetObjectCacheTimestampsAction = /** @class */ (function () { - /** - * Create a new ResetObjectCacheTimestampsAction - * - * @param newTimestamp - * the new timeAdded all objects should get - */ - function ResetObjectCacheTimestampsAction(newTimestamp) { - this.type = ObjectCacheActionTypes.RESET_TIMESTAMPS; - this.payload = newTimestamp; - } - return ResetObjectCacheTimestampsAction; -}()); -export { ResetObjectCacheTimestampsAction }; -/** - * An ngrx action to add new operations to a specified cached object - */ -var AddPatchObjectCacheAction = /** @class */ (function () { - /** - * Create a new AddPatchObjectCacheAction - * - * @param href - * the unique href of the object that should be updated - * @param operations - * the list of operations to add - */ - function AddPatchObjectCacheAction(href, operations) { - this.type = ObjectCacheActionTypes.ADD_PATCH; - this.payload = { href: href, operations: operations }; - } - return AddPatchObjectCacheAction; -}()); -export { AddPatchObjectCacheAction }; -/** - * An ngrx action to apply all existing operations to a specified cached object - */ -var ApplyPatchObjectCacheAction = /** @class */ (function () { - /** - * Create a new ApplyPatchObjectCacheAction - * - * @param href - * the unique href of the object that should be updated - */ - function ApplyPatchObjectCacheAction(href) { - this.type = ObjectCacheActionTypes.APPLY_PATCH; - this.payload = href; - } - return ApplyPatchObjectCacheAction; -}()); -export { ApplyPatchObjectCacheAction }; -//# sourceMappingURL=object-cache.actions.js.map \ No newline at end of file diff --git a/src/app/core/cache/object-cache.actions.js.map b/src/app/core/cache/object-cache.actions.js.map deleted file mode 100644 index 4f0ed16327..0000000000 --- a/src/app/core/cache/object-cache.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-cache.actions.js","sourceRoot":"","sources":["object-cache.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAI9C;;GAEG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG;IACpC,GAAG,EAAE,IAAI,CAAC,8BAA8B,CAAC;IACzC,MAAM,EAAE,IAAI,CAAC,iCAAiC,CAAC;IAC/C,gBAAgB,EAAE,IAAI,CAAC,2CAA2C,CAAC;IACnE,SAAS,EAAE,IAAI,CAAC,oCAAoC,CAAC;IACrD,WAAW,EAAE,IAAI,CAAC,sCAAsC,CAAC;CAC1D,CAAC;AAEF,yCAAyC;AACzC;;GAEG;AACH;IASE;;;;;;;;;;;;;OAaG;IACH,gCAAY,aAA8B,EAAE,SAAiB,EAAE,QAAgB,EAAE,WAAmB;QAtBpG,SAAI,GAAG,sBAAsB,CAAC,GAAG,CAAC;QAuBhC,IAAI,CAAC,OAAO,GAAG,EAAE,aAAa,eAAA,EAAE,SAAS,WAAA,EAAE,QAAQ,UAAA,EAAE,WAAW,aAAA,EAAE,CAAC;IACrE,CAAC;IACH,6BAAC;AAAD,CAAC,AA1BD,IA0BC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,qCAAY,IAAY;QATxB,SAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC;QAUnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IACH,kCAAC;AAAD,CAAC,AAbD,IAaC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,0CAAY,YAAoB;QAThC,SAAI,GAAG,sBAAsB,CAAC,gBAAgB,CAAC;QAU7C,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;IAC9B,CAAC;IACH,uCAAC;AAAD,CAAC,AAbD,IAaC;;AAED;;GAEG;AACH;IAOE;;;;;;;OAOG;IACH,mCAAY,IAAY,EAAE,UAAuB;QAdjD,SAAI,GAAG,sBAAsB,CAAC,SAAS,CAAC;QAetC,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,UAAU,YAAA,EAAE,CAAC;IACtC,CAAC;IACH,gCAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,qCAAY,IAAY;QATxB,SAAI,GAAG,sBAAsB,CAAC,WAAW,CAAC;QAUxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IACH,kCAAC;AAAD,CAAC,AAbD,IAaC"} \ No newline at end of file diff --git a/src/app/core/cache/object-cache.effects.js b/src/app/core/cache/object-cache.effects.js deleted file mode 100644 index dcc49e5ecf..0000000000 --- a/src/app/core/cache/object-cache.effects.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { Actions, Effect, ofType } from '@ngrx/effects'; -import { StoreActionTypes } from '../../store.actions'; -import { ResetObjectCacheTimestampsAction } from './object-cache.actions'; -var ObjectCacheEffects = /** @class */ (function () { - function ObjectCacheEffects(actions$) { - this.actions$ = actions$; - /** - * When the store is rehydrated in the browser, set all cache - * timestamps to 'now', because the time zone of the server can - * differ from the client. - * - * This assumes that the server cached everything a negligible - * time ago, and will likely need to be revisited later - */ - this.fixTimestampsOnRehydrate = this.actions$ - .pipe(ofType(StoreActionTypes.REHYDRATE), map(function () { return new ResetObjectCacheTimestampsAction(new Date().getTime()); })); - } - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], ObjectCacheEffects.prototype, "fixTimestampsOnRehydrate", void 0); - ObjectCacheEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions]) - ], ObjectCacheEffects); - return ObjectCacheEffects; -}()); -export { ObjectCacheEffects }; -//# sourceMappingURL=object-cache.effects.js.map \ No newline at end of file diff --git a/src/app/core/cache/object-cache.effects.js.map b/src/app/core/cache/object-cache.effects.js.map deleted file mode 100644 index edc264dbe8..0000000000 --- a/src/app/core/cache/object-cache.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-cache.effects.js","sourceRoot":"","sources":["object-cache.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAG1E;IAeE,4BAAoB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;QAbrC;;;;;;;WAOG;QACO,6BAAwB,GAAG,IAAI,CAAC,QAAQ;aAC/C,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACtC,GAAG,CAAC,cAAM,OAAA,IAAI,gCAAgC,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAA1D,CAA0D,CAAC,CACtE,CAAC;IAGJ,CAAC;IANS;QAAT,MAAM,EAAE;;wEAGL;IAbO,kBAAkB;QAD9B,UAAU,EAAE;iDAgBmB,OAAO;OAf1B,kBAAkB,CAkB9B;IAAD,yBAAC;CAAA,AAlBD,IAkBC;SAlBY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/cache/object-cache.reducer.js b/src/app/core/cache/object-cache.reducer.js deleted file mode 100644 index a9788ac620..0000000000 --- a/src/app/core/cache/object-cache.reducer.js +++ /dev/null @@ -1,162 +0,0 @@ -import { ObjectCacheActionTypes } from './object-cache.actions'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { applyPatch } from 'fast-json-patch'; -export var DirtyType; -(function (DirtyType) { - DirtyType["Created"] = "Created"; - DirtyType["Updated"] = "Updated"; - DirtyType["Deleted"] = "Deleted"; -})(DirtyType || (DirtyType = {})); -/** - * An entry in the ObjectCache - */ -var ObjectCacheEntry = /** @class */ (function () { - function ObjectCacheEntry() { - this.patches = []; - } - return ObjectCacheEntry; -}()); -export { ObjectCacheEntry }; -// Object.create(null) ensures the object has no default js properties (e.g. `__proto__`) -var initialState = Object.create(null); -/** - * The ObjectCache Reducer - * - * @param state - * the current state - * @param action - * the action to perform on the state - * @return ObjectCacheState - * the new state - */ -export function objectCacheReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case ObjectCacheActionTypes.ADD: { - return addToObjectCache(state, action); - } - case ObjectCacheActionTypes.REMOVE: { - return removeFromObjectCache(state, action); - } - case ObjectCacheActionTypes.RESET_TIMESTAMPS: { - return resetObjectCacheTimestamps(state, action); - } - case ObjectCacheActionTypes.ADD_PATCH: { - return addPatchObjectCache(state, action); - } - case ObjectCacheActionTypes.APPLY_PATCH: { - return applyPatchObjectCache(state, action); - } - default: { - return state; - } - } -} -/** - * Add an object to the cache - * - * @param state - * the current state - * @param action - * an AddToObjectCacheAction - * @return ObjectCacheState - * the new state, with the object added, or overwritten. - */ -function addToObjectCache(state, action) { - var _a; - var existing = state[action.payload.objectToCache.self]; - return Object.assign({}, state, (_a = {}, - _a[action.payload.objectToCache.self] = { - data: action.payload.objectToCache, - timeAdded: action.payload.timeAdded, - msToLive: action.payload.msToLive, - requestUUID: action.payload.requestUUID, - isDirty: (hasValue(existing) ? isNotEmpty(existing.patches) : false), - patches: (hasValue(existing) ? existing.patches : []) - }, - _a)); -} -/** - * Remove an object from the cache - * - * @param state - * the current state - * @param action - * an RemoveFromObjectCacheAction - * @return ObjectCacheState - * the new state, with the object removed if it existed. - */ -function removeFromObjectCache(state, action) { - if (hasValue(state[action.payload])) { - var newObjectCache = Object.assign({}, state); - delete newObjectCache[action.payload]; - return newObjectCache; - } - else { - return state; - } -} -/** - * Set the timeAdded timestamp of every cached object to the specified value - * - * @param state - * the current state - * @param action - * a ResetObjectCacheTimestampsAction - * @return ObjectCacheState - * the new state, with all timeAdded timestamps set to the specified value - */ -function resetObjectCacheTimestamps(state, action) { - var newState = Object.create(null); - Object.keys(state).forEach(function (key) { - newState[key] = Object.assign({}, state[key], { - timeAdded: action.payload - }); - }); - return newState; -} -/** - * Add the list of patch operations to a cached object - * - * @param state - * the current state - * @param action - * an AddPatchObjectCacheAction - * @return ObjectCacheState - * the new state, with the new operations added to the state of the specified ObjectCacheEntry - */ -function addPatchObjectCache(state, action) { - var uuid = action.payload.href; - var operations = action.payload.operations; - var newState = Object.assign({}, state); - if (hasValue(newState[uuid])) { - var patches = newState[uuid].patches; - newState[uuid] = Object.assign({}, newState[uuid], { - patches: patches.concat([{ operations: operations }]), - isDirty: true - }); - } - return newState; -} -/** - * Apply the list of patch operations to a cached object - * - * @param state - * the current state - * @param action - * an ApplyPatchObjectCacheAction - * @return ObjectCacheState - * the new state, with the new operations applied to the state of the specified ObjectCacheEntry - */ -function applyPatchObjectCache(state, action) { - var uuid = action.payload; - var newState = Object.assign({}, state); - if (hasValue(newState[uuid])) { - // flatten two dimensional array - var flatPatch = [].concat.apply([], newState[uuid].patches.map(function (patch) { return patch.operations; })); - var newData = applyPatch(newState[uuid].data, flatPatch, undefined, false); - newState[uuid] = Object.assign({}, newState[uuid], { data: newData.newDocument, patches: [] }); - } - return newState; -} -//# sourceMappingURL=object-cache.reducer.js.map \ No newline at end of file diff --git a/src/app/core/cache/object-cache.reducer.js.map b/src/app/core/cache/object-cache.reducer.js.map deleted file mode 100644 index 2ca5662977..0000000000 --- a/src/app/core/cache/object-cache.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-cache.reducer.js","sourceRoot":"","sources":["object-cache.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,sBAAsB,EAKvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,EAAE,UAAU,EAAa,MAAM,iBAAiB,CAAC;AAExD,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;AACrB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAiCD;;GAEG;AACH;IAAA;QAKE,YAAO,GAAY,EAAE,CAAC;IAExB,CAAC;IAAD,uBAAC;AAAD,CAAC,AAPD,IAOC;;AAYD,yFAAyF;AACzF,IAAM,YAAY,GAAqB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAE3D;;;;;;;;;GASG;AACH,MAAM,6BAA6B,KAAoB,EAAE,MAAyB;IAA/C,sBAAA,EAAA,oBAAoB;IACrD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,sBAAsB,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO,gBAAgB,CAAC,KAAK,EAAE,MAAgC,CAAC,CAAC;SAClE;QAED,KAAK,sBAAsB,CAAC,MAAM,CAAC,CAAC;YAClC,OAAO,qBAAqB,CAAC,KAAK,EAAE,MAAqC,CAAC,CAAA;SAC3E;QAED,KAAK,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YAC5C,OAAO,0BAA0B,CAAC,KAAK,EAAE,MAA0C,CAAC,CAAA;SACrF;QAED,KAAK,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACrC,OAAO,mBAAmB,CAAC,KAAK,EAAE,MAAmC,CAAC,CAAC;SACxE;QAED,KAAK,sBAAsB,CAAC,WAAW,CAAC,CAAC;YACvC,OAAO,qBAAqB,CAAC,KAAK,EAAE,MAAqC,CAAC,CAAC;SAC5E;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,0BAA0B,KAAuB,EAAE,MAA8B;;IAC/E,IAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;QAC5B,GAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,IAAG;YACnC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa;YAClC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS;YACnC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ;YACjC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW;YACvC,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YACpE,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD;YACD,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,+BAA+B,KAAuB,EAAE,MAAmC;IACzF,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE;QACnC,IAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEtC,OAAO,cAAc,CAAC;KACvB;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,oCAAoC,KAAuB,EAAE,MAAwC;IACnG,IAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG;QAC7B,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE;YAC5C,SAAS,EAAE,MAAM,CAAC,OAAO;SAC1B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,6BAA6B,KAAuB,EAAE,MAAiC;IACrF,IAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IACjC,IAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;IAC7C,IAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC1C,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE;QAC5B,IAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;QACvC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;YACjD,OAAO,EAAM,OAAO,SAAE,EAAE,UAAU,YAAA,EAAW,EAAC;YAC9C,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;KACJ;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,+BAA+B,KAAuB,EAAE,MAAmC;IACzF,IAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC;IAC5B,IAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC1C,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE;QAC5B,gCAAgC;QAChC,IAAM,SAAS,GAAgB,EAAE,CAAC,MAAM,OAAT,EAAE,EAAW,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,UAAU,EAAhB,CAAgB,CAAC,CAAC,CAAC;QACrG,IAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC7E,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;KAChG;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"} \ No newline at end of file diff --git a/src/app/core/cache/object-cache.service.js b/src/app/core/cache/object-cache.service.js deleted file mode 100644 index 9d120daa36..0000000000 --- a/src/app/core/cache/object-cache.service.js +++ /dev/null @@ -1,236 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { createSelector, select, Store } from '@ngrx/store'; -import { applyPatch } from 'fast-json-patch'; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { distinctUntilChanged, filter, map, mergeMap, take, } from 'rxjs/operators'; -import { hasNoValue, isNotEmpty } from '../../shared/empty.util'; -import { coreSelector } from '../core.selectors'; -import { RestRequestMethod } from '../data/rest-request-method'; -import { selfLinkFromUuidSelector } from '../index/index.selectors'; -import { NormalizedObjectFactory } from './models/normalized-object-factory'; -import { AddPatchObjectCacheAction, AddToObjectCacheAction, ApplyPatchObjectCacheAction, RemoveFromObjectCacheAction } from './object-cache.actions'; -import { AddToSSBAction } from './server-sync-buffer.actions'; -/** - * The base selector function to select the object cache in the store - */ -var objectCacheSelector = createSelector(coreSelector, function (state) { return state['cache/object']; }); -/** - * Selector function to select an object entry by self link from the cache - * @param selfLink The self link of the object - */ -var entryFromSelfLinkSelector = function (selfLink) { return createSelector(objectCacheSelector, function (state) { return state[selfLink]; }); }; -/** - * A service to interact with the object cache - */ -var ObjectCacheService = /** @class */ (function () { - function ObjectCacheService(store) { - this.store = store; - } - /** - * Add an object to the cache - * - * @param objectToCache - * The object to add - * @param msToLive - * The number of milliseconds it should be cached for - * @param requestUUID - * The UUID of the request that resulted in this object - */ - ObjectCacheService.prototype.add = function (objectToCache, msToLive, requestUUID) { - this.store.dispatch(new AddToObjectCacheAction(objectToCache, new Date().getTime(), msToLive, requestUUID)); - }; - /** - * Remove the object with the supplied href from the cache - * - * @param href - * The unique href of the object to be removed - */ - ObjectCacheService.prototype.remove = function (uuid) { - this.store.dispatch(new RemoveFromObjectCacheAction(uuid)); - }; - /** - * Get an observable of the object with the specified UUID - * - * @param uuid - * The UUID of the object to get - * @return Observable> - * An observable of the requested object in normalized form - */ - ObjectCacheService.prototype.getObjectByUUID = function (uuid) { - var _this = this; - return this.store.pipe(select(selfLinkFromUuidSelector(uuid)), mergeMap(function (selfLink) { return _this.getObjectBySelfLink(selfLink); })); - }; - /** - * Get an observable of the object with the specified selfLink - * - * @param selfLink - * The selfLink of the object to get - * @return Observable> - * An observable of the requested object in normalized form - */ - ObjectCacheService.prototype.getObjectBySelfLink = function (selfLink) { - return this.getBySelfLink(selfLink).pipe(map(function (entry) { - if (isNotEmpty(entry.patches)) { - var flatPatch = [].concat.apply([], entry.patches.map(function (patch) { return patch.operations; })); - var patchedData = applyPatch(entry.data, flatPatch, undefined, false).newDocument; - return Object.assign({}, entry, { data: patchedData }); - } - else { - return entry; - } - }), map(function (entry) { - var type = NormalizedObjectFactory.getConstructor(entry.data.type); - return Object.assign(new type(), entry.data); - })); - }; - /** - * Get an observable of the object cache entry with the specified selfLink - * - * @param selfLink - * The selfLink of the object to get - * @return Observable - * An observable of the requested object cache entry - */ - ObjectCacheService.prototype.getBySelfLink = function (selfLink) { - var _this = this; - return this.store.pipe(select(entryFromSelfLinkSelector(selfLink)), filter(function (entry) { return _this.isValid(entry); }), distinctUntilChanged()); - }; - /** - * Get an observable of the request's uuid with the specified selfLink - * - * @param selfLink - * The selfLink of the object to get - * @return Observable - * An observable of the request's uuid - */ - ObjectCacheService.prototype.getRequestUUIDBySelfLink = function (selfLink) { - return this.getBySelfLink(selfLink).pipe(map(function (entry) { return entry.requestUUID; }), distinctUntilChanged()); - }; - /** - * Get an observable of the request's uuid with the specified uuid - * - * @param uuid - * The uuid of the object to get - * @return Observable - * An observable of the request's uuid - */ - ObjectCacheService.prototype.getRequestUUIDByObjectUUID = function (uuid) { - var _this = this; - return this.store.pipe(select(selfLinkFromUuidSelector(uuid)), mergeMap(function (selfLink) { return _this.getRequestUUIDBySelfLink(selfLink); })); - }; - /** - * Get an observable for an array of objects of the same type - * with the specified self links - * - * The type needs to be specified as well, in order to turn - * the cached plain javascript object in to an instance of - * a class. - * - * e.g. getList([ - * 'http://localhost:8080/api/core/collections/c96588c6-72d3-425d-9d47-fa896255a695', - * 'http://localhost:8080/api/core/collections/cff860da-cf5f-4fda-b8c9-afb7ec0b2d9e' - * ], Collection) - * - * @param selfLinks - * An array of self links of the objects to get - * @param type - * The type of the objects to get - * @return Observable> - */ - ObjectCacheService.prototype.getList = function (selfLinks) { - var _this = this; - return observableCombineLatest(selfLinks.map(function (selfLink) { return _this.getObjectBySelfLink(selfLink); })); - }; - /** - * Check whether the object with the specified UUID is cached - * - * @param uuid - * The UUID of the object to check - * @return boolean - * true if the object with the specified UUID is cached, - * false otherwise - */ - ObjectCacheService.prototype.hasByUUID = function (uuid) { - var _this = this; - var result; - this.store.pipe(select(selfLinkFromUuidSelector(uuid)), take(1)).subscribe(function (selfLink) { return result = _this.hasBySelfLink(selfLink); }); - return result; - }; - /** - * Check whether the object with the specified self link is cached - * - * @param selfLink - * The self link of the object to check - * @return boolean - * true if the object with the specified self link is cached, - * false otherwise - */ - ObjectCacheService.prototype.hasBySelfLink = function (selfLink) { - var _this = this; - var result = false; - this.store.pipe(select(entryFromSelfLinkSelector(selfLink)), take(1)).subscribe(function (entry) { return result = _this.isValid(entry); }); - return result; - }; - /** - * Check whether an ObjectCacheEntry should still be cached - * - * @param entry - * the entry to check - * @return boolean - * false if the entry is null, undefined, or its time to - * live has been exceeded, true otherwise - */ - ObjectCacheService.prototype.isValid = function (entry) { - if (hasNoValue(entry)) { - return false; - } - else { - var timeOutdated = entry.timeAdded + entry.msToLive; - var isOutDated = new Date().getTime() > timeOutdated; - if (isOutDated) { - this.store.dispatch(new RemoveFromObjectCacheAction(entry.data.self)); - } - return !isOutDated; - } - }; - /** - * Add operations to the existing list of operations for an ObjectCacheEntry - * Makes sure the ServerSyncBuffer for this ObjectCacheEntry is updated - * @param {string} uuid - * the uuid of the ObjectCacheEntry - * @param {Operation[]} patch - * list of operations to perform - */ - ObjectCacheService.prototype.addPatch = function (selfLink, patch) { - this.store.dispatch(new AddPatchObjectCacheAction(selfLink, patch)); - this.store.dispatch(new AddToSSBAction(selfLink, RestRequestMethod.PATCH)); - }; - /** - * Check whether there are any unperformed operations for an ObjectCacheEntry - * - * @param entry - * the entry to check - * @return boolean - * false if the entry is there are no operations left in the ObjectCacheEntry, true otherwise - */ - ObjectCacheService.prototype.isDirty = function (entry) { - return isNotEmpty(entry.patches); - }; - /** - * Apply the existing operations on an ObjectCacheEntry in the store - * NB: this does not make any server side changes - * @param {string} uuid - * the uuid of the ObjectCacheEntry - */ - ObjectCacheService.prototype.applyPatchesToCachedObject = function (selfLink) { - this.store.dispatch(new ApplyPatchObjectCacheAction(selfLink)); - }; - ObjectCacheService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store]) - ], ObjectCacheService); - return ObjectCacheService; -}()); -export { ObjectCacheService }; -//# sourceMappingURL=object-cache.service.js.map \ No newline at end of file diff --git a/src/app/core/cache/object-cache.service.js.map b/src/app/core/cache/object-cache.service.js.map deleted file mode 100644 index cb7301e35d..0000000000 --- a/src/app/core/cache/object-cache.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-cache.service.js","sourceRoot":"","sources":["object-cache.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/response.models.js b/src/app/core/cache/response.models.js deleted file mode 100644 index 6487cfeebe..0000000000 --- a/src/app/core/cache/response.models.js +++ /dev/null @@ -1,320 +0,0 @@ -import * as tslib_1 from "tslib"; -/* tslint:disable:max-classes-per-file */ -var RestResponse = /** @class */ (function () { - function RestResponse(isSuccessful, statusCode, statusText) { - this.isSuccessful = isSuccessful; - this.statusCode = statusCode; - this.statusText = statusText; - this.toCache = true; - } - return RestResponse; -}()); -export { RestResponse }; -var DSOSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(DSOSuccessResponse, _super); - function DSOSuccessResponse(resourceSelfLinks, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.resourceSelfLinks = resourceSelfLinks; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return DSOSuccessResponse; -}(RestResponse)); -export { DSOSuccessResponse }; -/** - * A successful response containing a list of MetadataSchemas wrapped in a RegistryMetadataschemasResponse - */ -var RegistryMetadataschemasSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(RegistryMetadataschemasSuccessResponse, _super); - function RegistryMetadataschemasSuccessResponse(metadataschemasResponse, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.metadataschemasResponse = metadataschemasResponse; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return RegistryMetadataschemasSuccessResponse; -}(RestResponse)); -export { RegistryMetadataschemasSuccessResponse }; -/** - * A successful response containing a list of MetadataFields wrapped in a RegistryMetadatafieldsResponse - */ -var RegistryMetadatafieldsSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(RegistryMetadatafieldsSuccessResponse, _super); - function RegistryMetadatafieldsSuccessResponse(metadatafieldsResponse, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.metadatafieldsResponse = metadatafieldsResponse; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return RegistryMetadatafieldsSuccessResponse; -}(RestResponse)); -export { RegistryMetadatafieldsSuccessResponse }; -/** - * A successful response containing a list of BitstreamFormats wrapped in a RegistryBitstreamformatsResponse - */ -var RegistryBitstreamformatsSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(RegistryBitstreamformatsSuccessResponse, _super); - function RegistryBitstreamformatsSuccessResponse(bitstreamformatsResponse, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.bitstreamformatsResponse = bitstreamformatsResponse; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return RegistryBitstreamformatsSuccessResponse; -}(RestResponse)); -export { RegistryBitstreamformatsSuccessResponse }; -/** - * A successful response containing exactly one MetadataSchema - */ -var MetadataschemaSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(MetadataschemaSuccessResponse, _super); - function MetadataschemaSuccessResponse(metadataschema, statusCode, statusText) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.metadataschema = metadataschema; - _this.statusCode = statusCode; - _this.statusText = statusText; - return _this; - } - return MetadataschemaSuccessResponse; -}(RestResponse)); -export { MetadataschemaSuccessResponse }; -/** - * A successful response containing exactly one MetadataField - */ -var MetadatafieldSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(MetadatafieldSuccessResponse, _super); - function MetadatafieldSuccessResponse(metadatafield, statusCode, statusText) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.metadatafield = metadatafield; - _this.statusCode = statusCode; - _this.statusText = statusText; - return _this; - } - return MetadatafieldSuccessResponse; -}(RestResponse)); -export { MetadatafieldSuccessResponse }; -var SearchSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(SearchSuccessResponse, _super); - function SearchSuccessResponse(results, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.results = results; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return SearchSuccessResponse; -}(RestResponse)); -export { SearchSuccessResponse }; -var FacetConfigSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(FacetConfigSuccessResponse, _super); - function FacetConfigSuccessResponse(results, statusCode, statusText) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.results = results; - _this.statusCode = statusCode; - _this.statusText = statusText; - return _this; - } - return FacetConfigSuccessResponse; -}(RestResponse)); -export { FacetConfigSuccessResponse }; -var FacetValueMap = /** @class */ (function () { - function FacetValueMap() { - } - return FacetValueMap; -}()); -export { FacetValueMap }; -var FacetValueSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(FacetValueSuccessResponse, _super); - function FacetValueSuccessResponse(results, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.results = results; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return FacetValueSuccessResponse; -}(RestResponse)); -export { FacetValueSuccessResponse }; -var FacetValueMapSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(FacetValueMapSuccessResponse, _super); - function FacetValueMapSuccessResponse(results, statusCode, statusText) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.results = results; - _this.statusCode = statusCode; - _this.statusText = statusText; - return _this; - } - return FacetValueMapSuccessResponse; -}(RestResponse)); -export { FacetValueMapSuccessResponse }; -var EndpointMap = /** @class */ (function () { - function EndpointMap() { - } - return EndpointMap; -}()); -export { EndpointMap }; -var EndpointMapSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(EndpointMapSuccessResponse, _super); - function EndpointMapSuccessResponse(endpointMap, statusCode, statusText) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.endpointMap = endpointMap; - _this.statusCode = statusCode; - _this.statusText = statusText; - return _this; - } - return EndpointMapSuccessResponse; -}(RestResponse)); -export { EndpointMapSuccessResponse }; -var GenericSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(GenericSuccessResponse, _super); - function GenericSuccessResponse(payload, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.payload = payload; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return GenericSuccessResponse; -}(RestResponse)); -export { GenericSuccessResponse }; -var ErrorResponse = /** @class */ (function (_super) { - tslib_1.__extends(ErrorResponse, _super); - function ErrorResponse(error) { - var _this = _super.call(this, false, error.statusCode, error.statusText) || this; - console.error(error); - _this.errorMessage = error.message; - return _this; - } - return ErrorResponse; -}(RestResponse)); -export { ErrorResponse }; -var ConfigSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(ConfigSuccessResponse, _super); - function ConfigSuccessResponse(configDefinition, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.configDefinition = configDefinition; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return ConfigSuccessResponse; -}(RestResponse)); -export { ConfigSuccessResponse }; -var AuthStatusResponse = /** @class */ (function (_super) { - tslib_1.__extends(AuthStatusResponse, _super); - function AuthStatusResponse(response, statusCode, statusText) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.response = response; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.toCache = false; - return _this; - } - return AuthStatusResponse; -}(RestResponse)); -export { AuthStatusResponse }; -var IntegrationSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(IntegrationSuccessResponse, _super); - function IntegrationSuccessResponse(dataDefinition, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.dataDefinition = dataDefinition; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return IntegrationSuccessResponse; -}(RestResponse)); -export { IntegrationSuccessResponse }; -var PostPatchSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(PostPatchSuccessResponse, _super); - function PostPatchSuccessResponse(dataDefinition, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.dataDefinition = dataDefinition; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return PostPatchSuccessResponse; -}(RestResponse)); -export { PostPatchSuccessResponse }; -var SubmissionSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionSuccessResponse, _super); - function SubmissionSuccessResponse(dataDefinition, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.dataDefinition = dataDefinition; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return SubmissionSuccessResponse; -}(RestResponse)); -export { SubmissionSuccessResponse }; -var EpersonSuccessResponse = /** @class */ (function (_super) { - tslib_1.__extends(EpersonSuccessResponse, _super); - function EpersonSuccessResponse(epersonDefinition, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.epersonDefinition = epersonDefinition; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return EpersonSuccessResponse; -}(RestResponse)); -export { EpersonSuccessResponse }; -var MessageResponse = /** @class */ (function (_super) { - tslib_1.__extends(MessageResponse, _super); - function MessageResponse(statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - _this.toCache = false; - return _this; - } - return MessageResponse; -}(RestResponse)); -export { MessageResponse }; -var TaskResponse = /** @class */ (function (_super) { - tslib_1.__extends(TaskResponse, _super); - function TaskResponse(statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - _this.toCache = false; - return _this; - } - return TaskResponse; -}(RestResponse)); -export { TaskResponse }; -var FilteredDiscoveryQueryResponse = /** @class */ (function (_super) { - tslib_1.__extends(FilteredDiscoveryQueryResponse, _super); - function FilteredDiscoveryQueryResponse(filterQuery, statusCode, statusText, pageInfo) { - var _this = _super.call(this, true, statusCode, statusText) || this; - _this.filterQuery = filterQuery; - _this.statusCode = statusCode; - _this.statusText = statusText; - _this.pageInfo = pageInfo; - return _this; - } - return FilteredDiscoveryQueryResponse; -}(RestResponse)); -export { FilteredDiscoveryQueryResponse }; -/* tslint:enable:max-classes-per-file */ -//# sourceMappingURL=response.models.js.map \ No newline at end of file diff --git a/src/app/core/cache/response.models.js.map b/src/app/core/cache/response.models.js.map deleted file mode 100644 index b79da5d2c5..0000000000 --- a/src/app/core/cache/response.models.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"response.models.js","sourceRoot":"","sources":["response.models.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.actions.js b/src/app/core/cache/server-sync-buffer.actions.js deleted file mode 100644 index f5e3f7b60d..0000000000 --- a/src/app/core/cache/server-sync-buffer.actions.js +++ /dev/null @@ -1,63 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -/** - * The list of ServerSyncBufferAction type definitions - */ -export var ServerSyncBufferActionTypes = { - ADD: type('dspace/core/cache/syncbuffer/ADD'), - COMMIT: type('dspace/core/cache/syncbuffer/COMMIT'), - EMPTY: type('dspace/core/cache/syncbuffer/EMPTY'), -}; -/* tslint:disable:max-classes-per-file */ -/** - * An ngrx action to add a new cached object to the server sync buffer - */ -var AddToSSBAction = /** @class */ (function () { - /** - * Create a new AddToSSBAction - * - * @param href - * the unique href of the cached object entry that should be updated - */ - function AddToSSBAction(href, method) { - this.type = ServerSyncBufferActionTypes.ADD; - this.payload = { href: href, method: method }; - } - return AddToSSBAction; -}()); -export { AddToSSBAction }; -/** - * An ngrx action to commit everything (for a certain method, when specified) in the ServerSyncBuffer to the server - */ -var CommitSSBAction = /** @class */ (function () { - /** - * Create a new CommitSSBAction - * - * @param method - * an optional method for which the ServerSyncBuffer should send its entries to the server - */ - function CommitSSBAction(method) { - this.type = ServerSyncBufferActionTypes.COMMIT; - this.payload = method; - } - return CommitSSBAction; -}()); -export { CommitSSBAction }; -/** - * An ngrx action to remove everything (for a certain method, when specified) from the ServerSyncBuffer to the server - */ -var EmptySSBAction = /** @class */ (function () { - /** - * Create a new EmptySSBAction - * - * @param method - * an optional method for which the ServerSyncBuffer should remove its entries - * if this parameter is omitted, the buffer will be emptied as a whole - */ - function EmptySSBAction(method) { - this.type = ServerSyncBufferActionTypes.EMPTY; - this.payload = method; - } - return EmptySSBAction; -}()); -export { EmptySSBAction }; -//# sourceMappingURL=server-sync-buffer.actions.js.map \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.actions.js.map b/src/app/core/cache/server-sync-buffer.actions.js.map deleted file mode 100644 index 8521aeb241..0000000000 --- a/src/app/core/cache/server-sync-buffer.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-sync-buffer.actions.js","sourceRoot":"","sources":["server-sync-buffer.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C;;GAEG;AACH,MAAM,CAAC,IAAM,2BAA2B,GAAG;IACzC,GAAG,EAAE,IAAI,CAAC,kCAAkC,CAAC;IAC7C,MAAM,EAAE,IAAI,CAAC,qCAAqC,CAAC;IACnD,KAAK,EAAE,IAAI,CAAC,oCAAoC,CAAC;CAClD,CAAC;AAEF,yCAAyC;AAEzC;;GAEG;AACH;IAOE;;;;;OAKG;IACH,wBAAY,IAAY,EAAE,MAAyB;QAZnD,SAAI,GAAG,2BAA2B,CAAC,GAAG,CAAC;QAarC,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1C,CAAC;IACH,qBAAC;AAAD,CAAC,AAhBD,IAgBC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,yBAAY,MAA0B;QATtC,SAAI,GAAG,2BAA2B,CAAC,MAAM,CAAC;QAUxC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IACH,sBAAC;AAAD,CAAC,AAbD,IAaC;;AACD;;GAEG;AACH;IAIE;;;;;;OAMG;IACH,wBAAY,MAA0B;QAVtC,SAAI,GAAG,2BAA2B,CAAC,KAAK,CAAC;QAWvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IACH,qBAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.effects.js b/src/app/core/cache/server-sync-buffer.effects.js deleted file mode 100644 index 3e066e2c53..0000000000 --- a/src/app/core/cache/server-sync-buffer.effects.js +++ /dev/null @@ -1,110 +0,0 @@ -import * as tslib_1 from "tslib"; -import { delay, exhaustMap, map, switchMap, take } from 'rxjs/operators'; -import { Inject, Injectable } from '@angular/core'; -import { Actions, Effect, ofType } from '@ngrx/effects'; -import { coreSelector } from '../core.selectors'; -import { CommitSSBAction, EmptySSBAction, ServerSyncBufferActionTypes } from './server-sync-buffer.actions'; -import { GLOBAL_CONFIG } from '../../../config'; -import { createSelector, select, Store } from '@ngrx/store'; -import { combineLatest as observableCombineLatest, of as observableOf } from 'rxjs'; -import { RequestService } from '../data/request.service'; -import { PutRequest } from '../data/request.models'; -import { ObjectCacheService } from './object-cache.service'; -import { ApplyPatchObjectCacheAction } from './object-cache.actions'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { hasValue, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; -import { RestRequestMethod } from '../data/rest-request-method'; -var ServerSyncBufferEffects = /** @class */ (function () { - function ServerSyncBufferEffects(actions$, store, requestService, objectCache, EnvConfig) { - var _this = this; - this.actions$ = actions$; - this.store = store; - this.requestService = requestService; - this.objectCache = objectCache; - this.EnvConfig = EnvConfig; - /** - * When an ADDToSSBAction is dispatched - * Set a time out (configurable per method type) - * Then dispatch a CommitSSBAction - * When the delay is running, no new AddToSSBActions are processed in this effect - */ - this.setTimeoutForServerSync = this.actions$ - .pipe(ofType(ServerSyncBufferActionTypes.ADD), exhaustMap(function (action) { - var autoSyncConfig = _this.EnvConfig.cache.autoSync; - var timeoutInSeconds = autoSyncConfig.timePerMethod[action.payload.method] || autoSyncConfig.defaultTime; - return observableOf(new CommitSSBAction(action.payload.method)).pipe(delay(timeoutInSeconds * 1000)); - })); - /** - * When a CommitSSBAction is dispatched - * Create a list of actions for each entry in the current buffer state to be dispatched - * When the list of actions is not empty, also dispatch an EmptySSBAction - * When the list is empty dispatch a NO_ACTION placeholder action - */ - this.commitServerSyncBuffer = this.actions$ - .pipe(ofType(ServerSyncBufferActionTypes.COMMIT), switchMap(function (action) { - return _this.store.pipe(select(serverSyncBufferSelector()), take(1), /* necessary, otherwise delay will not have any effect after the first run */ switchMap(function (bufferState) { - var actions = bufferState.buffer - .filter(function (entry) { - /* If there's a request method, filter - If there's no filter, commit everything */ - if (hasValue(action.payload)) { - return entry.method === action.payload; - } - return true; - }) - .map(function (entry) { - if (entry.method === RestRequestMethod.PATCH) { - return _this.applyPatch(entry.href); - } - else { - /* TODO implement for other request method types */ - } - }); - /* Add extra action to array, to make sure the ServerSyncBuffer is emptied afterwards */ - if (isNotEmpty(actions) && isNotUndefined(actions[0])) { - return observableCombineLatest.apply(void 0, actions).pipe(switchMap(function (array) { return array.concat([new EmptySSBAction(action.payload)]); })); - } - else { - return observableOf({ type: 'NO_ACTION' }); - } - })); - })); - } - /** - * private method to create an ApplyPatchObjectCacheAction based on a cache entry - * and to do the actual patch request to the server - * @param {string} href The self link of the cache entry - * @returns {Observable} ApplyPatchObjectCacheAction to be dispatched - */ - ServerSyncBufferEffects.prototype.applyPatch = function (href) { - var _this = this; - var patchObject = this.objectCache.getObjectBySelfLink(href).pipe(take(1)); - return patchObject.pipe(map(function (object) { - var serializedObject = new DSpaceRESTv2Serializer(object.constructor).serialize(object); - _this.requestService.configure(new PutRequest(_this.requestService.generateRequestId(), href, serializedObject)); - return new ApplyPatchObjectCacheAction(href); - })); - }; - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], ServerSyncBufferEffects.prototype, "setTimeoutForServerSync", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], ServerSyncBufferEffects.prototype, "commitServerSyncBuffer", void 0); - ServerSyncBufferEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(4, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Actions, - Store, - RequestService, - ObjectCacheService, Object]) - ], ServerSyncBufferEffects); - return ServerSyncBufferEffects; -}()); -export { ServerSyncBufferEffects }; -export function serverSyncBufferSelector() { - return createSelector(coreSelector, function (state) { return state['cache/syncbuffer']; }); -} -//# sourceMappingURL=server-sync-buffer.effects.js.map \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.effects.js.map b/src/app/core/cache/server-sync-buffer.effects.js.map deleted file mode 100644 index 81a77980da..0000000000 --- a/src/app/core/cache/server-sync-buffer.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-sync-buffer.effects.js","sourceRoot":"","sources":["server-sync-buffer.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.reducer.js b/src/app/core/cache/server-sync-buffer.reducer.js deleted file mode 100644 index c91f37fdcc..0000000000 --- a/src/app/core/cache/server-sync-buffer.reducer.js +++ /dev/null @@ -1,73 +0,0 @@ -import { hasNoValue, hasValue } from '../../shared/empty.util'; -import { ServerSyncBufferActionTypes } from './server-sync-buffer.actions'; -/** - * An entry in the ServerSyncBufferState - * href: unique href of an ObjectCacheEntry - * method: RestRequestMethod type - */ -var ServerSyncBufferEntry = /** @class */ (function () { - function ServerSyncBufferEntry() { - } - return ServerSyncBufferEntry; -}()); -export { ServerSyncBufferEntry }; -var initialState = { buffer: [] }; -/** - * The ServerSyncBuffer Reducer - * - * @param state - * the current state - * @param action - * the action to perform on the state - * @return ServerSyncBufferState - * the new state - */ -export function serverSyncBufferReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case ServerSyncBufferActionTypes.ADD: { - return addToServerSyncQueue(state, action); - } - case ServerSyncBufferActionTypes.EMPTY: { - return emptyServerSyncQueue(state, action); - } - default: { - return state; - } - } -} -/** - * Add a new entry to the buffer with a specified method - * - * @param state - * the current state - * @param action - * an AddToSSBAction - * @return ServerSyncBufferState - * the new state, with a new entry added to the buffer - */ -function addToServerSyncQueue(state, action) { - var actionEntry = action.payload; - if (hasNoValue(state.buffer.find(function (entry) { return entry.href === actionEntry.href && entry.method === actionEntry.method; }))) { - return Object.assign({}, state, { buffer: state.buffer.concat(actionEntry) }); - } -} -/** - * Remove all ServerSyncBuffers entry from the buffer with a specified method - * If no method is specified, empty the whole buffer - * - * @param state - * the current state - * @param action - * an AddToSSBAction - * @return ServerSyncBufferState - * the new state, with a new entry added to the buffer - */ -function emptyServerSyncQueue(state, action) { - var newBuffer = []; - if (hasValue(action.payload)) { - newBuffer = state.buffer.filter(function (entry) { return entry.method !== action.payload; }); - } - return Object.assign({}, state, { buffer: newBuffer }); -} -//# sourceMappingURL=server-sync-buffer.reducer.js.map \ No newline at end of file diff --git a/src/app/core/cache/server-sync-buffer.reducer.js.map b/src/app/core/cache/server-sync-buffer.reducer.js.map deleted file mode 100644 index 5774c1fdef..0000000000 --- a/src/app/core/cache/server-sync-buffer.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-sync-buffer.reducer.js","sourceRoot":"","sources":["server-sync-buffer.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAIL,2BAA2B,EAC5B,MAAM,8BAA8B,CAAC;AAGtC;;;;GAIG;AACH;IAAA;IAGA,CAAC;IAAD,4BAAC;AAAD,CAAC,AAHD,IAGC;;AAWD,IAAM,YAAY,GAA0B,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AAE3D;;;;;;;;;GASG;AACH,MAAM,kCAAkC,KAAoB,EAAE,MAA8B;IAApD,sBAAA,EAAA,oBAAoB;IAC1D,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,2BAA2B,CAAC,GAAG,CAAC,CAAC;YACpC,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAwB,CAAC,CAAA;SAC7D;QAED,KAAK,2BAA2B,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAwB,CAAC,CAAC;SAC9D;QACD,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,8BAA8B,KAA4B,EAAE,MAAsB;IAChF,IAAM,WAAW,GAAG,MAAM,CAAC,OAAgC,CAAC;IAC5D,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAtE,CAAsE,CAAC,CAAC,EAAE;QACpH,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KAC/E;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,8BAA8B,KAA4B,EAAE,MAAsB;IAC9E,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QAC5B,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,OAAO,EAA/B,CAA+B,CAAC,CAAC;KAC7E;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;AAC3D,CAAC"} \ No newline at end of file diff --git a/src/app/core/config/config-data.js b/src/app/core/config/config-data.js deleted file mode 100644 index 09829cd567..0000000000 --- a/src/app/core/config/config-data.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * A class to represent the data retrieved by a configuration service - */ -var ConfigData = /** @class */ (function () { - function ConfigData(pageInfo, payload) { - this.pageInfo = pageInfo; - this.payload = payload; - } - return ConfigData; -}()); -export { ConfigData }; -//# sourceMappingURL=config-data.js.map \ No newline at end of file diff --git a/src/app/core/config/config-data.js.map b/src/app/core/config/config-data.js.map deleted file mode 100644 index 1c8337a04e..0000000000 --- a/src/app/core/config/config-data.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-data.js","sourceRoot":"","sources":["config-data.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH;IACE,oBACS,QAAkB,EAClB,OAAqB;QADrB,aAAQ,GAAR,QAAQ,CAAU;QAClB,YAAO,GAAP,OAAO,CAAc;IAE9B,CAAC;IACH,iBAAC;AAAD,CAAC,AAND,IAMC"} \ No newline at end of file diff --git a/src/app/core/config/config-response-parsing.service.js b/src/app/core/config/config-response-parsing.service.js deleted file mode 100644 index d904a740e7..0000000000 --- a/src/app/core/config/config-response-parsing.service.js +++ /dev/null @@ -1,36 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { ConfigSuccessResponse, ErrorResponse } from '../cache/response.models'; -import { isNotEmpty } from '../../shared/empty.util'; -import { ConfigObjectFactory } from './models/config-object-factory'; -import { BaseResponseParsingService } from '../data/base-response-parsing.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { ObjectCacheService } from '../cache/object-cache.service'; -var ConfigResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(ConfigResponseParsingService, _super); - function ConfigResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = ConfigObjectFactory; - _this.toCache = false; - return _this; - } - ConfigResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links) && (data.statusCode === 201 || data.statusCode === 200)) { - var configDefinition = this.process(data.payload, request.uuid); - return new ConfigSuccessResponse(configDefinition, data.statusCode, data.statusText, this.processPageInfo(data.payload)); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from config endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - ConfigResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], ConfigResponseParsingService); - return ConfigResponseParsingService; -}(BaseResponseParsingService)); -export { ConfigResponseParsingService }; -//# sourceMappingURL=config-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/config/config-response-parsing.service.js.map b/src/app/core/config/config-response-parsing.service.js.map deleted file mode 100644 index a82659f2aa..0000000000 --- a/src/app/core/config/config-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-response-parsing.service.js","sourceRoot":"","sources":["config-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKnD,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AAC9F,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE;IAAkD,wDAA0B;IAK1E,sCACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QALjC,mBAAa,GAAG,mBAAmB,CAAC;QACpC,aAAO,GAAG,KAAK,CAAC;;IAM1B,CAAC;IAED,4CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,KAAK,GAAG,CAAC,EAAE;YACvH,IAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAA0B,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3F,OAAO,IAAI,qBAAqB,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAC1H;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,0CAA0C,CAAC,EACrD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IAvBU,4BAA4B;QADxC,UAAU,EAAE;QAOR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAPhC,4BAA4B,CAyBxC;IAAD,mCAAC;CAAA,AAzBD,CAAkD,0BAA0B,GAyB3E;SAzBY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/config/config.service.js b/src/app/core/config/config.service.js deleted file mode 100644 index 02ffddc808..0000000000 --- a/src/app/core/config/config.service.js +++ /dev/null @@ -1,66 +0,0 @@ -import { merge as observableMerge, throwError as observableThrowError } from 'rxjs'; -import { distinctUntilChanged, filter, map, mergeMap, tap } from 'rxjs/operators'; -import { ConfigRequest } from '../data/request.models'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { ConfigData } from './config-data'; -import { getResponseFromEntry } from '../shared/operators'; -var ConfigService = /** @class */ (function () { - function ConfigService() { - } - ConfigService.prototype.getConfig = function (request) { - var responses = this.requestService.getByHref(request.href).pipe(getResponseFromEntry()); - var errorResponses = responses.pipe(filter(function (response) { return !response.isSuccessful; }), mergeMap(function () { return observableThrowError(new Error("Couldn't retrieve the config")); })); - var successResponses = responses.pipe(filter(function (response) { return response.isSuccessful && isNotEmpty(response) && isNotEmpty(response.configDefinition); }), map(function (response) { return new ConfigData(response.pageInfo, response.configDefinition); })); - return observableMerge(errorResponses, successResponses); - }; - ConfigService.prototype.getConfigByNameHref = function (endpoint, resourceName) { - return endpoint + "/" + resourceName; - }; - ConfigService.prototype.getConfigSearchHref = function (endpoint, options) { - if (options === void 0) { options = {}; } - var result; - var args = []; - if (hasValue(options.scopeID)) { - result = endpoint + "/" + this.browseEndpoint; - args.push("uuid=" + options.scopeID); - } - else { - result = endpoint; - } - if (hasValue(options.currentPage) && typeof options.currentPage === 'number') { - /* TODO: this is a temporary fix for the pagination start index (0 or 1) discrepancy between the rest and the frontend respectively */ - args.push("page=" + (options.currentPage - 1)); - } - if (hasValue(options.elementsPerPage)) { - args.push("size=" + options.elementsPerPage); - } - if (hasValue(options.sort)) { - args.push("sort=" + options.sort.field + "," + options.sort.direction); - } - if (isNotEmpty(args)) { - result = result + "?" + args.join('&'); - } - return result; - }; - ConfigService.prototype.getConfigAll = function () { - var _this = this; - return this.halService.getEndpoint(this.linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new ConfigRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getConfig(request); }), distinctUntilChanged()); - }; - ConfigService.prototype.getConfigByHref = function (href) { - var request = new ConfigRequest(this.requestService.generateRequestId(), href); - this.requestService.configure(request); - return this.getConfig(request); - }; - ConfigService.prototype.getConfigByName = function (name) { - var _this = this; - return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getConfigByNameHref(endpoint, name); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new ConfigRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getConfig(request); }), distinctUntilChanged()); - }; - ConfigService.prototype.getConfigBySearch = function (options) { - var _this = this; - if (options === void 0) { options = {}; } - return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getConfigSearchHref(endpoint, options); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new ConfigRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getConfig(request); }), distinctUntilChanged()); - }; - return ConfigService; -}()); -export { ConfigService }; -//# sourceMappingURL=config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/config.service.js.map b/src/app/core/config/config.service.js.map deleted file mode 100644 index 128a4a06ee..0000000000 --- a/src/app/core/config/config.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config.service.js","sourceRoot":"","sources":["config.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/config/models/config-access-condition-option.model.js b/src/app/core/config/models/config-access-condition-option.model.js deleted file mode 100644 index 4a6fe1756c..0000000000 --- a/src/app/core/config/models/config-access-condition-option.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Model class for an Access Condition - */ -var AccessConditionOption = /** @class */ (function () { - function AccessConditionOption() { - } - return AccessConditionOption; -}()); -export { AccessConditionOption }; -//# sourceMappingURL=config-access-condition-option.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-access-condition-option.model.js.map b/src/app/core/config/models/config-access-condition-option.model.js.map deleted file mode 100644 index b5c3787330..0000000000 --- a/src/app/core/config/models/config-access-condition-option.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-access-condition-option.model.js","sourceRoot":"","sources":["config-access-condition-option.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;IAAA;IAoCA,CAAC;IAAD,4BAAC;AAAD,CAAC,AApCD,IAoCC"} \ No newline at end of file diff --git a/src/app/core/config/models/config-object-factory.js b/src/app/core/config/models/config-object-factory.js deleted file mode 100644 index fad43f2e4a..0000000000 --- a/src/app/core/config/models/config-object-factory.js +++ /dev/null @@ -1,38 +0,0 @@ -import { ConfigType } from './config-type'; -import { NormalizedSubmissionDefinitionsModel } from './normalized-config-submission-definitions.model'; -import { NormalizedSubmissionFormsModel } from './normalized-config-submission-forms.model'; -import { NormalizedSubmissionSectionModel } from './normalized-config-submission-section.model'; -import { NormalizedSubmissionUploadsModel } from './normalized-config-submission-uploads.model'; -/** - * Class to return normalized models for config objects - */ -var ConfigObjectFactory = /** @class */ (function () { - function ConfigObjectFactory() { - } - ConfigObjectFactory.getConstructor = function (type) { - switch (type) { - case ConfigType.SubmissionDefinition: - case ConfigType.SubmissionDefinitions: { - return NormalizedSubmissionDefinitionsModel; - } - case ConfigType.SubmissionForm: - case ConfigType.SubmissionForms: { - return NormalizedSubmissionFormsModel; - } - case ConfigType.SubmissionSection: - case ConfigType.SubmissionSections: { - return NormalizedSubmissionSectionModel; - } - case ConfigType.SubmissionUpload: - case ConfigType.SubmissionUploads: { - return NormalizedSubmissionUploadsModel; - } - default: { - return undefined; - } - } - }; - return ConfigObjectFactory; -}()); -export { ConfigObjectFactory }; -//# sourceMappingURL=config-object-factory.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-object-factory.js.map b/src/app/core/config/models/config-object-factory.js.map deleted file mode 100644 index 70cde0842e..0000000000 --- a/src/app/core/config/models/config-object-factory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-object-factory.js","sourceRoot":"","sources":["config-object-factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,oCAAoC,EAAE,MAAM,kDAAkD,CAAC;AACxG,OAAO,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAC5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAEhG;;GAEG;AACH;IAAA;IAwBA,CAAC;IAvBe,kCAAc,GAA5B,UAA6B,IAAI;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,UAAU,CAAC,oBAAoB,CAAC;YACrC,KAAK,UAAU,CAAC,qBAAqB,CAAC,CAAC;gBACrC,OAAO,oCAAoC,CAAA;aAC5C;YACD,KAAK,UAAU,CAAC,cAAc,CAAC;YAC/B,KAAK,UAAU,CAAC,eAAe,CAAC,CAAC;gBAC/B,OAAO,8BAA8B,CAAA;aACtC;YACD,KAAK,UAAU,CAAC,iBAAiB,CAAC;YAClC,KAAK,UAAU,CAAC,kBAAkB,CAAC,CAAC;gBAClC,OAAO,gCAAgC,CAAA;aACxC;YACD,KAAK,UAAU,CAAC,gBAAgB,CAAC;YACjC,KAAK,UAAU,CAAC,iBAAiB,CAAC,CAAC;gBACjC,OAAO,gCAAgC,CAAA;aACxC;YACD,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,0BAAC;AAAD,CAAC,AAxBD,IAwBC"} \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-definitions.model.js b/src/app/core/config/models/config-submission-definitions.model.js deleted file mode 100644 index dc1311acd1..0000000000 --- a/src/app/core/config/models/config-submission-definitions.model.js +++ /dev/null @@ -1,11 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ConfigObject } from './config.model'; -var SubmissionDefinitionsModel = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionDefinitionsModel, _super); - function SubmissionDefinitionsModel() { - return _super !== null && _super.apply(this, arguments) || this; - } - return SubmissionDefinitionsModel; -}(ConfigObject)); -export { SubmissionDefinitionsModel }; -//# sourceMappingURL=config-submission-definitions.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-definitions.model.js.map b/src/app/core/config/models/config-submission-definitions.model.js.map deleted file mode 100644 index 671602cf36..0000000000 --- a/src/app/core/config/models/config-submission-definitions.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-submission-definitions.model.js","sourceRoot":"","sources":["config-submission-definitions.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C;IAAgD,sDAAY;IAA5D;;IAYA,CAAC;IAAD,iCAAC;AAAD,CAAC,AAZD,CAAgD,YAAY,GAY3D"} \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-forms.model.js b/src/app/core/config/models/config-submission-forms.model.js deleted file mode 100644 index 3d84c5da0d..0000000000 --- a/src/app/core/config/models/config-submission-forms.model.js +++ /dev/null @@ -1,14 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ConfigObject } from './config.model'; -/** - * A model class for a NormalizedObject. - */ -var SubmissionFormsModel = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionFormsModel, _super); - function SubmissionFormsModel() { - return _super !== null && _super.apply(this, arguments) || this; - } - return SubmissionFormsModel; -}(ConfigObject)); -export { SubmissionFormsModel }; -//# sourceMappingURL=config-submission-forms.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-forms.model.js.map b/src/app/core/config/models/config-submission-forms.model.js.map deleted file mode 100644 index 79f834f2a2..0000000000 --- a/src/app/core/config/models/config-submission-forms.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-submission-forms.model.js","sourceRoot":"","sources":["config-submission-forms.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAU9C;;GAEG;AACH;IAA0C,gDAAY;IAAtD;;IAMA,CAAC;IAAD,2BAAC;AAAD,CAAC,AAND,CAA0C,YAAY,GAMrD"} \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-section.model.js b/src/app/core/config/models/config-submission-section.model.js deleted file mode 100644 index 530070ec4b..0000000000 --- a/src/app/core/config/models/config-submission-section.model.js +++ /dev/null @@ -1,11 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ConfigObject } from './config.model'; -var SubmissionSectionModel = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionSectionModel, _super); - function SubmissionSectionModel() { - return _super !== null && _super.apply(this, arguments) || this; - } - return SubmissionSectionModel; -}(ConfigObject)); -export { SubmissionSectionModel }; -//# sourceMappingURL=config-submission-section.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-section.model.js.map b/src/app/core/config/models/config-submission-section.model.js.map deleted file mode 100644 index c59af71743..0000000000 --- a/src/app/core/config/models/config-submission-section.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-submission-section.model.js","sourceRoot":"","sources":["config-submission-section.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAW9C;IAA4C,kDAAY;IAAxD;;IAsBA,CAAC;IAAD,6BAAC;AAAD,CAAC,AAtBD,CAA4C,YAAY,GAsBvD"} \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-uploads.model.js b/src/app/core/config/models/config-submission-uploads.model.js deleted file mode 100644 index e8374e7a7b..0000000000 --- a/src/app/core/config/models/config-submission-uploads.model.js +++ /dev/null @@ -1,11 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ConfigObject } from './config.model'; -var SubmissionUploadsModel = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionUploadsModel, _super); - function SubmissionUploadsModel() { - return _super !== null && _super.apply(this, arguments) || this; - } - return SubmissionUploadsModel; -}(ConfigObject)); -export { SubmissionUploadsModel }; -//# sourceMappingURL=config-submission-uploads.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-submission-uploads.model.js.map b/src/app/core/config/models/config-submission-uploads.model.js.map deleted file mode 100644 index e5891438cf..0000000000 --- a/src/app/core/config/models/config-submission-uploads.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-submission-uploads.model.js","sourceRoot":"","sources":["config-submission-uploads.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C;IAA4C,kDAAY;IAAxD;;IAgBA,CAAC;IAAD,6BAAC;AAAD,CAAC,AAhBD,CAA4C,YAAY,GAgBvD"} \ No newline at end of file diff --git a/src/app/core/config/models/config-type.js b/src/app/core/config/models/config-type.js deleted file mode 100644 index ccf732c0b6..0000000000 --- a/src/app/core/config/models/config-type.js +++ /dev/null @@ -1,12 +0,0 @@ -export var ConfigType; -(function (ConfigType) { - ConfigType["SubmissionDefinitions"] = "submissiondefinitions"; - ConfigType["SubmissionDefinition"] = "submissiondefinition"; - ConfigType["SubmissionForm"] = "submissionform"; - ConfigType["SubmissionForms"] = "submissionforms"; - ConfigType["SubmissionSections"] = "submissionsections"; - ConfigType["SubmissionSection"] = "submissionsection"; - ConfigType["SubmissionUploads"] = "submissionuploads"; - ConfigType["SubmissionUpload"] = "submissionupload"; -})(ConfigType || (ConfigType = {})); -//# sourceMappingURL=config-type.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config-type.js.map b/src/app/core/config/models/config-type.js.map deleted file mode 100644 index 9241094c45..0000000000 --- a/src/app/core/config/models/config-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config-type.js","sourceRoot":"","sources":["config-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,UASX;AATD,WAAY,UAAU;IACpB,6DAA+C,CAAA;IAC/C,2DAA6C,CAAA;IAC7C,+CAAiC,CAAA;IACjC,iDAAmC,CAAA;IACnC,uDAAyC,CAAA;IACzC,qDAAuC,CAAA;IACvC,qDAAuC,CAAA;IACvC,mDAAqC,CAAA;AACvC,CAAC,EATW,UAAU,KAAV,UAAU,QASrB"} \ No newline at end of file diff --git a/src/app/core/config/models/config.model.js b/src/app/core/config/models/config.model.js deleted file mode 100644 index 12270d31ae..0000000000 --- a/src/app/core/config/models/config.model.js +++ /dev/null @@ -1,7 +0,0 @@ -var ConfigObject = /** @class */ (function () { - function ConfigObject() { - } - return ConfigObject; -}()); -export { ConfigObject }; -//# sourceMappingURL=config.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/config.model.js.map b/src/app/core/config/models/config.model.js.map deleted file mode 100644 index 5a85c3fa49..0000000000 --- a/src/app/core/config/models/config.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config.model.js","sourceRoot":"","sources":["config.model.ts"],"names":[],"mappings":"AAGA;IAAA;IAuBA,CAAC;IAAD,mBAAC;AAAD,CAAC,AAvBD,IAuBC"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-definitions.model.js b/src/app/core/config/models/normalized-config-submission-definitions.model.js deleted file mode 100644 index 7a22f458bb..0000000000 --- a/src/app/core/config/models/normalized-config-submission-definitions.model.js +++ /dev/null @@ -1,28 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { SubmissionSectionModel } from './config-submission-section.model'; -import { PaginatedList } from '../../data/paginated-list'; -import { NormalizedConfigObject } from './normalized-config.model'; -/** - * Normalized class for the configuration describing the submission - */ -var NormalizedSubmissionDefinitionsModel = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedSubmissionDefinitionsModel, _super); - function NormalizedSubmissionDefinitionsModel() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedSubmissionDefinitionsModel.prototype, "isDefault", void 0); - tslib_1.__decorate([ - autoserializeAs(SubmissionSectionModel), - tslib_1.__metadata("design:type", PaginatedList) - ], NormalizedSubmissionDefinitionsModel.prototype, "sections", void 0); - NormalizedSubmissionDefinitionsModel = tslib_1.__decorate([ - inheritSerialization(NormalizedConfigObject) - ], NormalizedSubmissionDefinitionsModel); - return NormalizedSubmissionDefinitionsModel; -}(NormalizedConfigObject)); -export { NormalizedSubmissionDefinitionsModel }; -//# sourceMappingURL=normalized-config-submission-definitions.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-definitions.model.js.map b/src/app/core/config/models/normalized-config-submission-definitions.model.js.map deleted file mode 100644 index ec6b90b07a..0000000000 --- a/src/app/core/config/models/normalized-config-submission-definitions.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-config-submission-definitions.model.js","sourceRoot":"","sources":["normalized-config-submission-definitions.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE;;GAEG;AAEH;IAA0D,gEAAkD;IAA5G;;IAcA,CAAC;IARC;QADC,aAAa;;2EACK;IAMnB;QADC,eAAe,CAAC,sBAAsB,CAAC;0CAC9B,aAAa;0EAAyB;IAZrC,oCAAoC;QADhD,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,oCAAoC,CAchD;IAAD,2CAAC;CAAA,AAdD,CAA0D,sBAAsB,GAc/E;SAdY,oCAAoC"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-forms.model.js b/src/app/core/config/models/normalized-config-submission-forms.model.js deleted file mode 100644 index 3a0aa826f9..0000000000 --- a/src/app/core/config/models/normalized-config-submission-forms.model.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { NormalizedConfigObject } from './normalized-config.model'; -/** - * Normalized class for the configuration describing the submission form - */ -var NormalizedSubmissionFormsModel = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedSubmissionFormsModel, _super); - function NormalizedSubmissionFormsModel() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Array) - ], NormalizedSubmissionFormsModel.prototype, "rows", void 0); - NormalizedSubmissionFormsModel = tslib_1.__decorate([ - inheritSerialization(NormalizedConfigObject) - ], NormalizedSubmissionFormsModel); - return NormalizedSubmissionFormsModel; -}(NormalizedConfigObject)); -export { NormalizedSubmissionFormsModel }; -//# sourceMappingURL=normalized-config-submission-forms.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-forms.model.js.map b/src/app/core/config/models/normalized-config-submission-forms.model.js.map deleted file mode 100644 index c62b1e504f..0000000000 --- a/src/app/core/config/models/normalized-config-submission-forms.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-config-submission-forms.model.js","sourceRoot":"","sources":["normalized-config-submission-forms.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE;;GAEG;AAEH;IAAoD,0DAA4C;IAAhG;;IAOA,CAAC;IADC;QADC,aAAa;;gEACO;IANV,8BAA8B;QAD1C,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,8BAA8B,CAO1C;IAAD,qCAAC;CAAA,AAPD,CAAoD,sBAAsB,GAOzE;SAPY,8BAA8B"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-section.model.js b/src/app/core/config/models/normalized-config-submission-section.model.js deleted file mode 100644 index 99943022ea..0000000000 --- a/src/app/core/config/models/normalized-config-submission-section.model.js +++ /dev/null @@ -1,35 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { SectionsType } from '../../../submission/sections/sections-type'; -import { NormalizedConfigObject } from './normalized-config.model'; -/** - * Normalized class for the configuration describing the submission section - */ -var NormalizedSubmissionSectionModel = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedSubmissionSectionModel, _super); - function NormalizedSubmissionSectionModel() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedSubmissionSectionModel.prototype, "header", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedSubmissionSectionModel.prototype, "mandatory", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedSubmissionSectionModel.prototype, "sectionType", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], NormalizedSubmissionSectionModel.prototype, "visibility", void 0); - NormalizedSubmissionSectionModel = tslib_1.__decorate([ - inheritSerialization(NormalizedConfigObject) - ], NormalizedSubmissionSectionModel); - return NormalizedSubmissionSectionModel; -}(NormalizedConfigObject)); -export { NormalizedSubmissionSectionModel }; -//# sourceMappingURL=normalized-config-submission-section.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-section.model.js.map b/src/app/core/config/models/normalized-config-submission-section.model.js.map deleted file mode 100644 index d9a83b70c9..0000000000 --- a/src/app/core/config/models/normalized-config-submission-section.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-config-submission-section.model.js","sourceRoot":"","sources":["normalized-config-submission-section.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAInE;;GAEG;AAEH;IAAsD,4DAA4C;IAAlG;;IA0BA,CAAC;IApBC;QADC,aAAa;;oEACC;IAMf;QADC,aAAa;;uEACK;IAMnB;QADC,aAAa;;yEACY;IAM1B;QADC,aAAa;;wEACyB;IAxB5B,gCAAgC;QAD5C,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,gCAAgC,CA0B5C;IAAD,uCAAC;CAAA,AA1BD,CAAsD,sBAAsB,GA0B3E;SA1BY,gCAAgC"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-uploads.model.js b/src/app/core/config/models/normalized-config-submission-uploads.model.js deleted file mode 100644 index a2e0038032..0000000000 --- a/src/app/core/config/models/normalized-config-submission-uploads.model.js +++ /dev/null @@ -1,35 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { SubmissionFormsModel } from './config-submission-forms.model'; -import { NormalizedConfigObject } from './normalized-config.model'; -/** - * Normalized class for the configuration describing the submission upload section - */ -var NormalizedSubmissionUploadsModel = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedSubmissionUploadsModel, _super); - function NormalizedSubmissionUploadsModel() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Array) - ], NormalizedSubmissionUploadsModel.prototype, "accessConditionOptions", void 0); - tslib_1.__decorate([ - autoserializeAs(SubmissionFormsModel), - tslib_1.__metadata("design:type", SubmissionFormsModel) - ], NormalizedSubmissionUploadsModel.prototype, "metadata", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedSubmissionUploadsModel.prototype, "required", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedSubmissionUploadsModel.prototype, "maxSize", void 0); - NormalizedSubmissionUploadsModel = tslib_1.__decorate([ - inheritSerialization(NormalizedConfigObject) - ], NormalizedSubmissionUploadsModel); - return NormalizedSubmissionUploadsModel; -}(NormalizedConfigObject)); -export { NormalizedSubmissionUploadsModel }; -//# sourceMappingURL=normalized-config-submission-uploads.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config-submission-uploads.model.js.map b/src/app/core/config/models/normalized-config-submission-uploads.model.js.map deleted file mode 100644 index 1c4e983b2e..0000000000 --- a/src/app/core/config/models/normalized-config-submission-uploads.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-config-submission-uploads.model.js","sourceRoot":"","sources":["normalized-config-submission-uploads.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE;;GAEG;AAEH;IAAsD,4DAA8C;IAApG;;IAoBA,CAAC;IAdC;QADC,aAAa;;oFACkC;IAMhD;QADC,eAAe,CAAC,oBAAoB,CAAC;0CAC5B,oBAAoB;sEAAC;IAG/B;QADC,aAAa;;sEACI;IAGlB;QADC,aAAa;;qEACE;IAlBL,gCAAgC;QAD5C,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,gCAAgC,CAoB5C;IAAD,uCAAC;CAAA,AApBD,CAAsD,sBAAsB,GAoB3E;SApBY,gCAAgC"} \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config.model.js b/src/app/core/config/models/normalized-config.model.js deleted file mode 100644 index 5408166cee..0000000000 --- a/src/app/core/config/models/normalized-config.model.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { NormalizedObject } from '../../cache/models/normalized-object.model'; -import { ResourceType } from '../../shared/resource-type'; -/** - * Normalized abstract class for a configuration object - */ -var NormalizedConfigObject = /** @class */ (function () { - function NormalizedConfigObject() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedConfigObject.prototype, "name", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedConfigObject.prototype, "type", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], NormalizedConfigObject.prototype, "_links", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedConfigObject.prototype, "self", void 0); - NormalizedConfigObject = tslib_1.__decorate([ - inheritSerialization(NormalizedObject) - ], NormalizedConfigObject); - return NormalizedConfigObject; -}()); -export { NormalizedConfigObject }; -//# sourceMappingURL=normalized-config.model.js.map \ No newline at end of file diff --git a/src/app/core/config/models/normalized-config.model.js.map b/src/app/core/config/models/normalized-config.model.js.map deleted file mode 100644 index 6f9c56f42d..0000000000 --- a/src/app/core/config/models/normalized-config.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-config.model.js","sourceRoot":"","sources":["normalized-config.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAEH;IAAA;IA4BA,CAAC;IAtBC;QADC,aAAa;;wDACM;IAMpB;QADC,aAAa;;wDACY;IAM1B;QADC,aAAa;;0DAGZ;IAMF;QADC,aAAa;;wDACD;IA1BO,sBAAsB;QAD3C,oBAAoB,CAAC,gBAAgB,CAAC;OACjB,sBAAsB,CA4B3C;IAAD,6BAAC;CAAA,AA5BD,IA4BC;SA5BqB,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/config/submission-definitions-config.service.js b/src/app/core/config/submission-definitions-config.service.js deleted file mode 100644 index 6d0bfe9ad4..0000000000 --- a/src/app/core/config/submission-definitions-config.service.js +++ /dev/null @@ -1,24 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { ConfigService } from './config.service'; -import { RequestService } from '../data/request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -var SubmissionDefinitionsConfigService = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionDefinitionsConfigService, _super); - function SubmissionDefinitionsConfigService(requestService, halService) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.halService = halService; - _this.linkPath = 'submissiondefinitions'; - _this.browseEndpoint = 'search/findByCollection'; - return _this; - } - SubmissionDefinitionsConfigService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - HALEndpointService]) - ], SubmissionDefinitionsConfigService); - return SubmissionDefinitionsConfigService; -}(ConfigService)); -export { SubmissionDefinitionsConfigService }; -//# sourceMappingURL=submission-definitions-config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/submission-definitions-config.service.js.map b/src/app/core/config/submission-definitions-config.service.js.map deleted file mode 100644 index d347e993a6..0000000000 --- a/src/app/core/config/submission-definitions-config.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-definitions-config.service.js","sourceRoot":"","sources":["submission-definitions-config.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE;IAAwD,8DAAa;IAInE,4CACY,cAA8B,EAC9B,UAA8B;QAF1C,YAGE,iBAAO,SACR;QAHW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAoB;QALhC,cAAQ,GAAG,uBAAuB,CAAC;QACnC,oBAAc,GAAG,yBAAyB,CAAC;;IAMrD,CAAC;IARU,kCAAkC;QAD9C,UAAU,EAAE;iDAMiB,cAAc;YAClB,kBAAkB;OAN/B,kCAAkC,CAU9C;IAAD,yCAAC;CAAA,AAVD,CAAwD,aAAa,GAUpE;SAVY,kCAAkC"} \ No newline at end of file diff --git a/src/app/core/config/submission-forms-config.service.js b/src/app/core/config/submission-forms-config.service.js deleted file mode 100644 index 135b81bbaf..0000000000 --- a/src/app/core/config/submission-forms-config.service.js +++ /dev/null @@ -1,24 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { ConfigService } from './config.service'; -import { RequestService } from '../data/request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -var SubmissionFormsConfigService = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionFormsConfigService, _super); - function SubmissionFormsConfigService(requestService, halService) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.halService = halService; - _this.linkPath = 'submissionforms'; - _this.browseEndpoint = ''; - return _this; - } - SubmissionFormsConfigService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - HALEndpointService]) - ], SubmissionFormsConfigService); - return SubmissionFormsConfigService; -}(ConfigService)); -export { SubmissionFormsConfigService }; -//# sourceMappingURL=submission-forms-config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/submission-forms-config.service.js.map b/src/app/core/config/submission-forms-config.service.js.map deleted file mode 100644 index bbb5e90514..0000000000 --- a/src/app/core/config/submission-forms-config.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-forms-config.service.js","sourceRoot":"","sources":["submission-forms-config.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE;IAAkD,wDAAa;IAI7D,sCACY,cAA8B,EAC9B,UAA8B;QAF1C,YAGE,iBAAO,SACR;QAHW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAoB;QALhC,cAAQ,GAAG,iBAAiB,CAAC;QAC7B,oBAAc,GAAG,EAAE,CAAC;;IAM9B,CAAC;IARU,4BAA4B;QADxC,UAAU,EAAE;iDAMiB,cAAc;YAClB,kBAAkB;OAN/B,4BAA4B,CAUxC;IAAD,mCAAC;CAAA,AAVD,CAAkD,aAAa,GAU9D;SAVY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/config/submission-sections-config.service.js b/src/app/core/config/submission-sections-config.service.js deleted file mode 100644 index d9bee464bd..0000000000 --- a/src/app/core/config/submission-sections-config.service.js +++ /dev/null @@ -1,24 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { ConfigService } from './config.service'; -import { RequestService } from '../data/request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -var SubmissionSectionsConfigService = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionSectionsConfigService, _super); - function SubmissionSectionsConfigService(requestService, halService) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.halService = halService; - _this.linkPath = 'submissionsections'; - _this.browseEndpoint = ''; - return _this; - } - SubmissionSectionsConfigService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - HALEndpointService]) - ], SubmissionSectionsConfigService); - return SubmissionSectionsConfigService; -}(ConfigService)); -export { SubmissionSectionsConfigService }; -//# sourceMappingURL=submission-sections-config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/submission-sections-config.service.js.map b/src/app/core/config/submission-sections-config.service.js.map deleted file mode 100644 index 866ffe207d..0000000000 --- a/src/app/core/config/submission-sections-config.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-sections-config.service.js","sourceRoot":"","sources":["submission-sections-config.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE;IAAqD,2DAAa;IAIhE,yCACY,cAA8B,EAC9B,UAA8B;QAF1C,YAGE,iBAAO,SACR;QAHW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAoB;QALhC,cAAQ,GAAG,oBAAoB,CAAC;QAChC,oBAAc,GAAG,EAAE,CAAC;;IAM9B,CAAC;IARU,+BAA+B;QAD3C,UAAU,EAAE;iDAMiB,cAAc;YAClB,kBAAkB;OAN/B,+BAA+B,CAU3C;IAAD,sCAAC;CAAA,AAVD,CAAqD,aAAa,GAUjE;SAVY,+BAA+B"} \ No newline at end of file diff --git a/src/app/core/config/submission-uploads-config.service.js b/src/app/core/config/submission-uploads-config.service.js deleted file mode 100644 index a49ec3b0b1..0000000000 --- a/src/app/core/config/submission-uploads-config.service.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { ConfigService } from './config.service'; -import { RequestService } from '../data/request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -/** - * Provides methods to retrieve, from REST server, bitstream access conditions configurations applicable during the submission process. - */ -var SubmissionUploadsConfigService = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionUploadsConfigService, _super); - function SubmissionUploadsConfigService(objectCache, requestService, halService) { - var _this = _super.call(this) || this; - _this.objectCache = objectCache; - _this.requestService = requestService; - _this.halService = halService; - _this.linkPath = 'submissionuploads'; - _this.browseEndpoint = ''; - return _this; - } - SubmissionUploadsConfigService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [ObjectCacheService, - RequestService, - HALEndpointService]) - ], SubmissionUploadsConfigService); - return SubmissionUploadsConfigService; -}(ConfigService)); -export { SubmissionUploadsConfigService }; -//# sourceMappingURL=submission-uploads-config.service.js.map \ No newline at end of file diff --git a/src/app/core/config/submission-uploads-config.service.js.map b/src/app/core/config/submission-uploads-config.service.js.map deleted file mode 100644 index 3941f0f0a6..0000000000 --- a/src/app/core/config/submission-uploads-config.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-uploads-config.service.js","sourceRoot":"","sources":["submission-uploads-config.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE;;GAEG;AAEH;IAAoD,0DAAa;IAI/D,wCACY,WAA+B,EAC/B,cAA8B,EAC9B,UAA8B;QAH1C,YAIE,iBAAO,SACR;QAJW,iBAAW,GAAX,WAAW,CAAoB;QAC/B,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAoB;QANhC,cAAQ,GAAG,mBAAmB,CAAC;QAC/B,oBAAc,GAAG,EAAE,CAAC;;IAO9B,CAAC;IATU,8BAA8B;QAD1C,UAAU,EAAE;iDAMc,kBAAkB;YACf,cAAc;YAClB,kBAAkB;OAP/B,8BAA8B,CAU1C;IAAD,qCAAC;CAAA,AAVD,CAAoD,aAAa,GAUhE;SAVY,8BAA8B"} \ No newline at end of file diff --git a/src/app/core/core.effects.js b/src/app/core/core.effects.js deleted file mode 100644 index 81dbd0ccf7..0000000000 --- a/src/app/core/core.effects.js +++ /dev/null @@ -1,17 +0,0 @@ -import { ObjectCacheEffects } from './cache/object-cache.effects'; -import { UUIDIndexEffects } from './index/index.effects'; -import { RequestEffects } from './data/request.effects'; -import { AuthEffects } from './auth/auth.effects'; -import { JsonPatchOperationsEffects } from './json-patch/json-patch-operations.effects'; -import { ServerSyncBufferEffects } from './cache/server-sync-buffer.effects'; -import { ObjectUpdatesEffects } from './data/object-updates/object-updates.effects'; -export var coreEffects = [ - RequestEffects, - ObjectCacheEffects, - UUIDIndexEffects, - AuthEffects, - JsonPatchOperationsEffects, - ServerSyncBufferEffects, - ObjectUpdatesEffects -]; -//# sourceMappingURL=core.effects.js.map \ No newline at end of file diff --git a/src/app/core/core.effects.js.map b/src/app/core/core.effects.js.map deleted file mode 100644 index 6ebe90be2d..0000000000 --- a/src/app/core/core.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"core.effects.js","sourceRoot":"","sources":["core.effects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AAEpF,MAAM,CAAC,IAAM,WAAW,GAAG;IACzB,cAAc;IACd,kBAAkB;IAClB,gBAAgB;IAChB,WAAW;IACX,0BAA0B;IAC1B,uBAAuB;IACvB,oBAAoB;CACrB,CAAC"} \ No newline at end of file diff --git a/src/app/core/core.module.js b/src/app/core/core.module.js deleted file mode 100644 index d3195f2227..0000000000 --- a/src/app/core/core.module.js +++ /dev/null @@ -1,199 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule, Optional, SkipSelf } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { StoreModule } from '@ngrx/store'; -import { EffectsModule } from '@ngrx/effects'; -import { DynamicFormLayoutService, DynamicFormService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -import { coreEffects } from './core.effects'; -import { coreReducers } from './core.reducers'; -import { isNotEmpty } from '../shared/empty.util'; -import { ApiService } from '../shared/services/api.service'; -import { BrowseEntriesResponseParsingService } from './data/browse-entries-response-parsing.service'; -import { CollectionDataService } from './data/collection-data.service'; -import { CommunityDataService } from './data/community-data.service'; -import { DebugResponseParsingService } from './data/debug-response-parsing.service'; -import { DSOResponseParsingService } from './data/dso-response-parsing.service'; -import { SearchResponseParsingService } from './data/search-response-parsing.service'; -import { DSpaceRESTv2Service } from './dspace-rest-v2/dspace-rest-v2.service'; -import { FormBuilderService } from '../shared/form/builder/form-builder.service'; -import { SectionFormOperationsService } from '../submission/sections/form/section-form-operations.service'; -import { FormService } from '../shared/form/form.service'; -import { GroupEpersonService } from './eperson/group-eperson.service'; -import { HostWindowService } from '../shared/host-window.service'; -import { ItemDataService } from './data/item-data.service'; -import { MetadataService } from './metadata/metadata.service'; -import { ObjectCacheService } from './cache/object-cache.service'; -import { PaginationComponentOptions } from '../shared/pagination/pagination-component-options.model'; -import { RemoteDataBuildService } from './cache/builders/remote-data-build.service'; -import { RequestService } from './data/request.service'; -import { EndpointMapResponseParsingService } from './data/endpoint-map-response-parsing.service'; -import { ServerResponseService } from '../shared/services/server-response.service'; -import { NativeWindowFactory, NativeWindowService } from '../shared/services/window.service'; -import { BrowseService } from './browse/browse.service'; -import { BrowseResponseParsingService } from './data/browse-response-parsing.service'; -import { ConfigResponseParsingService } from './config/config-response-parsing.service'; -import { RouteService } from '../shared/services/route.service'; -import { SubmissionDefinitionsConfigService } from './config/submission-definitions-config.service'; -import { SubmissionFormsConfigService } from './config/submission-forms-config.service'; -import { SubmissionSectionsConfigService } from './config/submission-sections-config.service'; -import { SubmissionResponseParsingService } from './submission/submission-response-parsing.service'; -import { EpersonResponseParsingService } from './eperson/eperson-response-parsing.service'; -import { JsonPatchOperationsBuilder } from './json-patch/builder/json-patch-operations-builder'; -import { AuthorityService } from './integration/authority.service'; -import { IntegrationResponseParsingService } from './integration/integration-response-parsing.service'; -import { WorkspaceitemDataService } from './submission/workspaceitem-data.service'; -import { UUIDService } from './shared/uuid.service'; -import { AuthenticatedGuard } from './auth/authenticated.guard'; -import { AuthRequestService } from './auth/auth-request.service'; -import { AuthResponseParsingService } from './auth/auth-response-parsing.service'; -import { HTTP_INTERCEPTORS } from '@angular/common/http'; -import { AuthInterceptor } from './auth/auth.interceptor'; -import { HALEndpointService } from './shared/hal-endpoint.service'; -import { FacetValueResponseParsingService } from './data/facet-value-response-parsing.service'; -import { FacetValueMapResponseParsingService } from './data/facet-value-map-response-parsing.service'; -import { FacetConfigResponseParsingService } from './data/facet-config-response-parsing.service'; -import { RegistryService } from './registry/registry.service'; -import { RegistryMetadataschemasResponseParsingService } from './data/registry-metadataschemas-response-parsing.service'; -import { RegistryMetadatafieldsResponseParsingService } from './data/registry-metadatafields-response-parsing.service'; -import { RegistryBitstreamformatsResponseParsingService } from './data/registry-bitstreamformats-response-parsing.service'; -import { WorkflowitemDataService } from './submission/workflowitem-data.service'; -import { NotificationsService } from '../shared/notifications/notifications.service'; -import { UploaderService } from '../shared/uploader/uploader.service'; -import { FileService } from './shared/file.service'; -import { SubmissionRestService } from './submission/submission-rest.service'; -import { BrowseItemsResponseParsingService } from './data/browse-items-response-parsing-service'; -import { DSpaceObjectDataService } from './data/dspace-object-data.service'; -import { MetadataschemaParsingService } from './data/metadataschema-parsing.service'; -import { FilteredDiscoveryPageResponseParsingService } from './data/filtered-discovery-page-response-parsing.service'; -import { CSSVariableService } from '../shared/sass-helper/sass-helper.service'; -import { MenuService } from '../shared/menu/menu.service'; -import { SubmissionJsonPatchOperationsService } from './submission/submission-json-patch-operations.service'; -import { NormalizedObjectBuildService } from './cache/builders/normalized-object-build.service'; -import { DSOChangeAnalyzer } from './data/dso-change-analyzer.service'; -import { ObjectUpdatesService } from './data/object-updates/object-updates.service'; -import { DefaultChangeAnalyzer } from './data/default-change-analyzer.service'; -import { SearchService } from '../+search-page/search-service/search.service'; -import { RoleService } from './roles/role.service'; -import { MyDSpaceGuard } from '../+my-dspace-page/my-dspace.guard'; -import { MyDSpaceResponseParsingService } from './data/mydspace-response-parsing.service'; -import { ClaimedTaskDataService } from './tasks/claimed-task-data.service'; -import { PoolTaskDataService } from './tasks/pool-task-data.service'; -import { TaskResponseParsingService } from './tasks/task-response-parsing.service'; -var IMPORTS = [ - CommonModule, - StoreModule.forFeature('core', coreReducers, {}), - EffectsModule.forFeature(coreEffects) -]; -var DECLARATIONS = []; -var EXPORTS = []; -var PROVIDERS = [ - ApiService, - AuthenticatedGuard, - AuthRequestService, - AuthResponseParsingService, - CommunityDataService, - CollectionDataService, - DSOResponseParsingService, - DSpaceRESTv2Service, - DynamicFormLayoutService, - DynamicFormService, - DynamicFormValidationService, - FormBuilderService, - SectionFormOperationsService, - FormService, - EpersonResponseParsingService, - GroupEpersonService, - HALEndpointService, - HostWindowService, - ItemDataService, - MetadataService, - ObjectCacheService, - PaginationComponentOptions, - RegistryService, - NormalizedObjectBuildService, - RemoteDataBuildService, - RequestService, - EndpointMapResponseParsingService, - FacetValueResponseParsingService, - FacetValueMapResponseParsingService, - FacetConfigResponseParsingService, - RegistryMetadataschemasResponseParsingService, - RegistryMetadatafieldsResponseParsingService, - RegistryBitstreamformatsResponseParsingService, - DebugResponseParsingService, - SearchResponseParsingService, - MyDSpaceResponseParsingService, - ServerResponseService, - BrowseResponseParsingService, - BrowseEntriesResponseParsingService, - BrowseItemsResponseParsingService, - BrowseService, - ConfigResponseParsingService, - RouteService, - SubmissionDefinitionsConfigService, - SubmissionFormsConfigService, - SubmissionRestService, - SubmissionSectionsConfigService, - SubmissionResponseParsingService, - SubmissionJsonPatchOperationsService, - JsonPatchOperationsBuilder, - AuthorityService, - IntegrationResponseParsingService, - MetadataschemaParsingService, - UploaderService, - UUIDService, - NotificationsService, - WorkspaceitemDataService, - WorkflowitemDataService, - UploaderService, - FileService, - DSpaceObjectDataService, - DSOChangeAnalyzer, - DefaultChangeAnalyzer, - CSSVariableService, - MenuService, - ObjectUpdatesService, - SearchService, - MyDSpaceGuard, - RoleService, - TaskResponseParsingService, - ClaimedTaskDataService, - PoolTaskDataService, - // register AuthInterceptor as HttpInterceptor - { - provide: HTTP_INTERCEPTORS, - useClass: AuthInterceptor, - multi: true - }, - NotificationsService, - FilteredDiscoveryPageResponseParsingService, - { provide: NativeWindowService, useFactory: NativeWindowFactory } -]; -var CoreModule = /** @class */ (function () { - function CoreModule(parentModule) { - if (isNotEmpty(parentModule)) { - throw new Error('CoreModule is already loaded. Import it in the AppModule only'); - } - } - CoreModule_1 = CoreModule; - CoreModule.forRoot = function () { - return { - ngModule: CoreModule_1, - providers: PROVIDERS.slice() - }; - }; - var CoreModule_1; - CoreModule = CoreModule_1 = tslib_1.__decorate([ - NgModule({ - imports: IMPORTS.slice(), - declarations: DECLARATIONS.slice(), - exports: EXPORTS.slice(), - providers: PROVIDERS.slice() - }), - tslib_1.__param(0, Optional()), tslib_1.__param(0, SkipSelf()), - tslib_1.__metadata("design:paramtypes", [CoreModule]) - ], CoreModule); - return CoreModule; -}()); -export { CoreModule }; -//# sourceMappingURL=core.module.js.map \ No newline at end of file diff --git a/src/app/core/core.module.js.map b/src/app/core/core.module.js.map deleted file mode 100644 index 59ed28e593..0000000000 --- a/src/app/core/core.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"core.module.js","sourceRoot":"","sources":["core.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/core.reducers.js b/src/app/core/core.reducers.js deleted file mode 100644 index 24e519d187..0000000000 --- a/src/app/core/core.reducers.js +++ /dev/null @@ -1,17 +0,0 @@ -import { objectCacheReducer } from './cache/object-cache.reducer'; -import { indexReducer } from './index/index.reducer'; -import { requestReducer } from './data/request.reducer'; -import { authReducer } from './auth/auth.reducer'; -import { jsonPatchOperationsReducer } from './json-patch/json-patch-operations.reducer'; -import { serverSyncBufferReducer } from './cache/server-sync-buffer.reducer'; -import { objectUpdatesReducer } from './data/object-updates/object-updates.reducer'; -export var coreReducers = { - 'cache/object': objectCacheReducer, - 'cache/syncbuffer': serverSyncBufferReducer, - 'cache/object-updates': objectUpdatesReducer, - 'data/request': requestReducer, - 'index': indexReducer, - 'auth': authReducer, - 'json/patch': jsonPatchOperationsReducer -}; -//# sourceMappingURL=core.reducers.js.map \ No newline at end of file diff --git a/src/app/core/core.reducers.js.map b/src/app/core/core.reducers.js.map deleted file mode 100644 index 6273ef10cf..0000000000 --- a/src/app/core/core.reducers.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"core.reducers.js","sourceRoot":"","sources":["core.reducers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAoB,MAAM,8BAA8B,CAAC;AACpF,OAAO,EAAE,YAAY,EAAkB,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAgB,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAa,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAA4B,MAAM,4CAA4C,CAAC;AAClH,OAAO,EAAE,uBAAuB,EAAyB,MAAM,oCAAoC,CAAC;AACpG,OAAO,EACL,oBAAoB,EAErB,MAAM,8CAA8C,CAAC;AAYtD,MAAM,CAAC,IAAM,YAAY,GAAgC;IACvD,cAAc,EAAE,kBAAkB;IAClC,kBAAkB,EAAE,uBAAuB;IAC3C,sBAAsB,EAAE,oBAAoB;IAC5C,cAAc,EAAE,cAAc;IAC9B,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,WAAW;IACnB,YAAY,EAAE,0BAA0B;CACzC,CAAC"} \ No newline at end of file diff --git a/src/app/core/core.selectors.js b/src/app/core/core.selectors.js deleted file mode 100644 index 0b353809f1..0000000000 --- a/src/app/core/core.selectors.js +++ /dev/null @@ -1,6 +0,0 @@ -import { createFeatureSelector } from '@ngrx/store'; -/** - * Base selector to select the core state from the store - */ -export var coreSelector = createFeatureSelector('core'); -//# sourceMappingURL=core.selectors.js.map \ No newline at end of file diff --git a/src/app/core/core.selectors.js.map b/src/app/core/core.selectors.js.map deleted file mode 100644 index 02219596b2..0000000000 --- a/src/app/core/core.selectors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"core.selectors.js","sourceRoot":"","sources":["core.selectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGpD;;GAEG;AACH,MAAM,CAAC,IAAM,YAAY,GAAG,qBAAqB,CAAY,MAAM,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/core/data/base-response-parsing.service.js b/src/app/core/data/base-response-parsing.service.js deleted file mode 100644 index 891c23b418..0000000000 --- a/src/app/core/data/base-response-parsing.service.js +++ /dev/null @@ -1,138 +0,0 @@ -import { hasNoValue, hasValue, isNotEmpty } from '../../shared/empty.util'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { PageInfo } from '../shared/page-info.model'; -import { PaginatedList } from './paginated-list'; -import { isRestDataObject, isRestPaginatedList } from '../cache/builders/normalized-object-build.service'; -/* tslint:disable:max-classes-per-file */ -var BaseResponseParsingService = /** @class */ (function () { - function BaseResponseParsingService() { - } - BaseResponseParsingService.prototype.process = function (data, requestUUID) { - var _this = this; - if (isNotEmpty(data)) { - if (hasNoValue(data) || (typeof data !== 'object')) { - return data; - } - else if (isRestPaginatedList(data)) { - return this.processPaginatedList(data, requestUUID); - } - else if (Array.isArray(data)) { - return this.processArray(data, requestUUID); - } - else if (isRestDataObject(data)) { - var object_1 = this.deserialize(data); - if (isNotEmpty(data._embedded)) { - Object - .keys(data._embedded) - .filter(function (property) { return data._embedded.hasOwnProperty(property); }) - .forEach(function (property) { - var parsedObj = _this.process(data._embedded[property], requestUUID); - if (isNotEmpty(parsedObj)) { - if (isRestPaginatedList(data._embedded[property])) { - object_1[property] = parsedObj; - object_1[property].page = parsedObj.page.map(function (obj) { return _this.retrieveObjectOrUrl(obj); }); - } - else if (isRestDataObject(data._embedded[property])) { - object_1[property] = _this.retrieveObjectOrUrl(parsedObj); - } - else if (Array.isArray(parsedObj)) { - object_1[property] = parsedObj.map(function (obj) { return _this.retrieveObjectOrUrl(obj); }); - } - } - }); - } - this.cache(object_1, requestUUID); - return object_1; - } - var result_1 = {}; - Object.keys(data) - .filter(function (property) { return data.hasOwnProperty(property); }) - .filter(function (property) { return hasValue(data[property]); }) - .forEach(function (property) { - result_1[property] = _this.process(data[property], requestUUID); - }); - return result_1; - } - }; - BaseResponseParsingService.prototype.processPaginatedList = function (data, requestUUID) { - var pageInfo = this.processPageInfo(data); - var list = data._embedded; - // Workaround for inconsistency in rest response. Issue: https://github.com/DSpace/dspace-angular/issues/238 - if (hasNoValue(list)) { - list = []; - } - else if (!Array.isArray(list)) { - list = this.flattenSingleKeyObject(list); - } - var page = this.processArray(list, requestUUID); - return new PaginatedList(pageInfo, page); - }; - BaseResponseParsingService.prototype.processArray = function (data, requestUUID) { - var _this = this; - var array = []; - data.forEach(function (datum) { - array = array.concat([_this.process(datum, requestUUID)]); - }); - return array; - }; - BaseResponseParsingService.prototype.deserialize = function (obj) { - var type = obj.type; - if (hasValue(type)) { - var normObjConstructor = this.objectFactory.getConstructor(type); - if (hasValue(normObjConstructor)) { - var serializer = new DSpaceRESTv2Serializer(normObjConstructor); - return serializer.deserialize(obj); - } - else { - // TODO: move check to Validator? - // throw new Error(`The server returned an object with an unknown a known type: ${type}`); - return null; - } - } - else { - // TODO: move check to Validator - // throw new Error(`The server returned an object without a type: ${JSON.stringify(obj)}`); - return null; - } - }; - BaseResponseParsingService.prototype.cache = function (obj, requestUUID) { - if (this.toCache) { - this.addToObjectCache(obj, requestUUID); - } - }; - BaseResponseParsingService.prototype.addToObjectCache = function (co, requestUUID) { - if (hasNoValue(co) || hasNoValue(co.self)) { - throw new Error('The server returned an invalid object'); - } - this.objectCache.add(co, this.EnvConfig.cache.msToLive.default, requestUUID); - }; - BaseResponseParsingService.prototype.processPageInfo = function (payload) { - if (hasValue(payload.page)) { - var pageObj = Object.assign({}, payload.page, { _links: payload._links }); - var pageInfoObject = new DSpaceRESTv2Serializer(PageInfo).deserialize(pageObj); - if (pageInfoObject.currentPage >= 0) { - Object.assign(pageInfoObject, { currentPage: pageInfoObject.currentPage + 1 }); - } - return pageInfoObject; - } - else { - return undefined; - } - }; - BaseResponseParsingService.prototype.flattenSingleKeyObject = function (obj) { - var keys = Object.keys(obj); - if (keys.length !== 1) { - throw new Error("Expected an object with a single key, got: " + JSON.stringify(obj)); - } - return obj[keys[0]]; - }; - BaseResponseParsingService.prototype.retrieveObjectOrUrl = function (obj) { - return this.toCache ? obj.self : obj; - }; - BaseResponseParsingService.prototype.isSuccessStatus = function (statusCode) { - return statusCode >= 200 && statusCode < 300; - }; - return BaseResponseParsingService; -}()); -export { BaseResponseParsingService }; -//# sourceMappingURL=base-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/base-response-parsing.service.js.map b/src/app/core/data/base-response-parsing.service.js.map deleted file mode 100644 index 8b32098cda..0000000000 --- a/src/app/core/data/base-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"base-response-parsing.service.js","sourceRoot":"","sources":["base-response-parsing.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/browse-entries-response-parsing.service.js b/src/app/core/data/browse-entries-response-parsing.service.js deleted file mode 100644 index a0cf76d431..0000000000 --- a/src/app/core/data/browse-entries-response-parsing.service.js +++ /dev/null @@ -1,43 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { GLOBAL_CONFIG } from '../../../config'; -import { isNotEmpty } from '../../shared/empty.util'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { ErrorResponse, GenericSuccessResponse } from '../cache/response.models'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { BrowseEntry } from '../shared/browse-entry.model'; -import { BaseResponseParsingService } from './base-response-parsing.service'; -var BrowseEntriesResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(BrowseEntriesResponseParsingService, _super); - function BrowseEntriesResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = { - getConstructor: function () { return BrowseEntry; } - }; - _this.toCache = false; - return _this; - } - BrowseEntriesResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload)) { - var browseEntries = []; - if (isNotEmpty(data.payload._embedded) && Array.isArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]])) { - var serializer = new DSpaceRESTv2Serializer(BrowseEntry); - browseEntries = serializer.deserializeArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]]); - } - return new GenericSuccessResponse(browseEntries, data.statusCode, data.statusText, this.processPageInfo(data.payload)); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from browse endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - BrowseEntriesResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], BrowseEntriesResponseParsingService); - return BrowseEntriesResponseParsingService; -}(BaseResponseParsingService)); -export { BrowseEntriesResponseParsingService }; -//# sourceMappingURL=browse-entries-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/browse-entries-response-parsing.service.js.map b/src/app/core/data/browse-entries-response-parsing.service.js.map deleted file mode 100644 index 6a984518d3..0000000000 --- a/src/app/core/data/browse-entries-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-entries-response-parsing.service.js","sourceRoot":"","sources":["browse-entries-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,aAAa,EACb,sBAAsB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAK7E;IAAyD,+DAA0B;IAOjF,6CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAPjC,mBAAa,GAAG;YACxB,cAAc,EAAE,cAAM,OAAA,WAAW,EAAX,CAAW;SAClC,CAAC;QACQ,aAAO,GAAG,KAAK,CAAC;;IAM1B,CAAC;IAED,mDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC5B,IAAI,aAAa,GAAG,EAAE,CAAC;YACvB,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gBACvH,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,WAAW,CAAC,CAAC;gBAC3D,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC7G;YACD,OAAO,IAAI,sBAAsB,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SACxH;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,0CAA0C,CAAC,EACrD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IA7BU,mCAAmC;QAD/C,UAAU,EAAE;QASR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAThC,mCAAmC,CA+B/C;IAAD,0CAAC;CAAA,AA/BD,CAAyD,0BAA0B,GA+BlF;SA/BY,mCAAmC"} \ No newline at end of file diff --git a/src/app/core/data/browse-items-response-parsing-service.js b/src/app/core/data/browse-items-response-parsing-service.js deleted file mode 100644 index ead835755a..0000000000 --- a/src/app/core/data/browse-items-response-parsing-service.js +++ /dev/null @@ -1,54 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { GLOBAL_CONFIG } from '../../../config'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { ErrorResponse, GenericSuccessResponse } from '../cache/response.models'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { BaseResponseParsingService } from './base-response-parsing.service'; -import { DSpaceObject } from '../shared/dspace-object.model'; -import { NormalizedDSpaceObject } from '../cache/models/normalized-dspace-object.model'; -/** - * A ResponseParsingService used to parse DSpaceRESTV2Response coming from the REST API to Browse Items (DSpaceObject[]) - */ -var BrowseItemsResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(BrowseItemsResponseParsingService, _super); - function BrowseItemsResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = { - getConstructor: function () { return DSpaceObject; } - }; - _this.toCache = false; - return _this; - } - /** - * Parses data from the browse endpoint to a list of DSpaceObjects - * @param {RestRequest} request - * @param {DSpaceRESTV2Response} data - * @returns {RestResponse} - */ - BrowseItemsResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload) && isNotEmpty(data.payload._embedded) - && Array.isArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]])) { - var serializer = new DSpaceRESTv2Serializer(NormalizedDSpaceObject); - var items = serializer.deserializeArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]]); - return new GenericSuccessResponse(items, data.statusCode, data.statusText, this.processPageInfo(data.payload)); - } - else if (hasValue(data.payload) && hasValue(data.payload.page)) { - return new GenericSuccessResponse([], data.statusCode, data.statusText, this.processPageInfo(data.payload)); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from browse endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - BrowseItemsResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], BrowseItemsResponseParsingService); - return BrowseItemsResponseParsingService; -}(BaseResponseParsingService)); -export { BrowseItemsResponseParsingService }; -//# sourceMappingURL=browse-items-response-parsing-service.js.map \ No newline at end of file diff --git a/src/app/core/data/browse-items-response-parsing-service.js.map b/src/app/core/data/browse-items-response-parsing-service.js.map deleted file mode 100644 index 0f086d27b0..0000000000 --- a/src/app/core/data/browse-items-response-parsing-service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-items-response-parsing-service.js","sourceRoot":"","sources":["browse-items-response-parsing-service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAgB,MAAM,0BAA0B,CAAC;AAE/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAG7E,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AAExF;;GAEG;AAEH;IAAuD,6DAA0B;IAO/E,2CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAPjC,mBAAa,GAAG;YACxB,cAAc,EAAE,cAAM,OAAA,YAAY,EAAZ,CAAY;SACnC,CAAC;QACQ,aAAO,GAAG,KAAK,CAAC;;IAM1B,CAAC;IAED;;;;;OAKG;IACH,iDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;eAC7D,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YAClF,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,sBAAsB,CAAC,CAAC;YACtE,IAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1G,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAChH;aAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAChE,OAAO,IAAI,sBAAsB,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAC7G;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,0CAA0C,CAAC,EACrD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IAnCU,iCAAiC;QAD7C,UAAU,EAAE;QASR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAThC,iCAAiC,CAqC7C;IAAD,wCAAC;CAAA,AArCD,CAAuD,0BAA0B,GAqChF;SArCY,iCAAiC"} \ No newline at end of file diff --git a/src/app/core/data/browse-response-parsing.service.js b/src/app/core/data/browse-response-parsing.service.js deleted file mode 100644 index 10bcef3610..0000000000 --- a/src/app/core/data/browse-response-parsing.service.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { GenericSuccessResponse, ErrorResponse } from '../cache/response.models'; -import { isNotEmpty } from '../../shared/empty.util'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { BrowseDefinition } from '../shared/browse-definition.model'; -var BrowseResponseParsingService = /** @class */ (function () { - function BrowseResponseParsingService() { - } - BrowseResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload) && isNotEmpty(data.payload._embedded) - && Array.isArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]])) { - var serializer = new DSpaceRESTv2Serializer(BrowseDefinition); - var browseDefinitions = serializer.deserializeArray(data.payload._embedded[Object.keys(data.payload._embedded)[0]]); - return new GenericSuccessResponse(browseDefinitions, data.statusCode, data.statusText); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from browse endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - BrowseResponseParsingService = tslib_1.__decorate([ - Injectable() - ], BrowseResponseParsingService); - return BrowseResponseParsingService; -}()); -export { BrowseResponseParsingService }; -//# sourceMappingURL=browse-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/browse-response-parsing.service.js.map b/src/app/core/data/browse-response-parsing.service.js.map deleted file mode 100644 index 273beabdb8..0000000000 --- a/src/app/core/data/browse-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-response-parsing.service.js","sourceRoot":"","sources":["browse-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAGrE;IAAA;IAiBA,CAAC;IAfC,4CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;eAC7D,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YAClF,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YAChE,IAAM,iBAAiB,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtH,OAAO,IAAI,sBAAsB,CAAC,iBAAiB,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACxF;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,0CAA0C,CAAC,EACrD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IAhBU,4BAA4B;QADxC,UAAU,EAAE;OACA,4BAA4B,CAiBxC;IAAD,mCAAC;CAAA,AAjBD,IAiBC;SAjBY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/data/change-analyzer.js b/src/app/core/data/change-analyzer.js deleted file mode 100644 index 46a4daf164..0000000000 --- a/src/app/core/data/change-analyzer.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=change-analyzer.js.map \ No newline at end of file diff --git a/src/app/core/data/change-analyzer.js.map b/src/app/core/data/change-analyzer.js.map deleted file mode 100644 index 5dfb5480f0..0000000000 --- a/src/app/core/data/change-analyzer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"change-analyzer.js","sourceRoot":"","sources":["change-analyzer.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/data/collection-data.service.js b/src/app/core/data/collection-data.service.js deleted file mode 100644 index 713332047d..0000000000 --- a/src/app/core/data/collection-data.service.js +++ /dev/null @@ -1,62 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { filter, map, take } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { ComColDataService } from './comcol-data.service'; -import { CommunityDataService } from './community-data.service'; -import { RequestService } from './request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { HttpClient } from '@angular/common/http'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { DSOChangeAnalyzer } from './dso-change-analyzer.service'; -import { FindAllOptions } from './request.models'; -var CollectionDataService = /** @class */ (function (_super) { - tslib_1.__extends(CollectionDataService, _super); - function CollectionDataService(requestService, rdbService, dataBuildService, store, cds, objectCache, halService, notificationsService, http, comparator) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.dataBuildService = dataBuildService; - _this.store = store; - _this.cds = cds; - _this.objectCache = objectCache; - _this.halService = halService; - _this.notificationsService = notificationsService; - _this.http = http; - _this.comparator = comparator; - _this.linkPath = 'collections'; - _this.forceBypassCache = false; - return _this; - } - /** - * Find whether there is a collection whom user has authorization to submit to - * - * @return boolean - * true if the user has at least one collection to submit to - */ - CollectionDataService.prototype.hasAuthorizedCollection = function () { - var searchHref = 'findAuthorized'; - var options = new FindAllOptions(); - options.elementsPerPage = 1; - return this.searchBy(searchHref, options).pipe(filter(function (collections) { return !collections.isResponsePending; }), take(1), map(function (collections) { return collections.payload.totalElements > 0; })); - }; - CollectionDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - NormalizedObjectBuildService, - Store, - CommunityDataService, - ObjectCacheService, - HALEndpointService, - NotificationsService, - HttpClient, - DSOChangeAnalyzer]) - ], CollectionDataService); - return CollectionDataService; -}(ComColDataService)); -export { CollectionDataService }; -//# sourceMappingURL=collection-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/collection-data.service.js.map b/src/app/core/data/collection-data.service.js.map deleted file mode 100644 index 8d2f81e33b..0000000000 --- a/src/app/core/data/collection-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-data.service.js","sourceRoot":"","sources":["collection-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAKlD;IAA2C,iDAA6B;IAItE,+BACY,cAA8B,EAC9B,UAAkC,EAClC,gBAA8C,EAC9C,KAAuB,EACvB,GAAyB,EACzB,WAA+B,EAC/B,UAA8B,EAC9B,oBAA0C,EAC1C,IAAgB,EAChB,UAAyC;QAVrD,YAYE,iBAAO,SACR;QAZW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,WAAK,GAAL,KAAK,CAAkB;QACvB,SAAG,GAAH,GAAG,CAAsB;QACzB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAC9B,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAI,GAAJ,IAAI,CAAY;QAChB,gBAAU,GAAV,UAAU,CAA+B;QAb3C,cAAQ,GAAG,aAAa,CAAC;QACzB,sBAAgB,GAAG,KAAK,CAAC;;IAenC,CAAC;IAED;;;;;OAKG;IACH,uDAAuB,GAAvB;QACE,IAAM,UAAU,GAAG,gBAAgB,CAAC;QACpC,IAAM,OAAO,GAAG,IAAI,cAAc,EAAE,CAAC;QACrC,OAAO,CAAC,eAAe,GAAG,CAAC,CAAC;QAE5B,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAC5C,MAAM,CAAC,UAAC,WAAkD,IAAK,OAAA,CAAC,WAAW,CAAC,iBAAiB,EAA9B,CAA8B,CAAC,EAC9F,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,WAAkD,IAAK,OAAA,WAAW,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,EAArC,CAAqC,CAAC,CACnG,CAAC;IACJ,CAAC;IAnCU,qBAAqB;QADjC,UAAU,EAAE;iDAMiB,cAAc;YAClB,sBAAsB;YAChB,4BAA4B;YACvC,KAAK;YACP,oBAAoB;YACZ,kBAAkB;YACnB,kBAAkB;YACR,oBAAoB;YACpC,UAAU;YACJ,iBAAiB;OAd9B,qBAAqB,CAoCjC;IAAD,4BAAC;CAAA,AApCD,CAA2C,iBAAiB,GAoC3D;SApCY,qBAAqB"} \ No newline at end of file diff --git a/src/app/core/data/comcol-data.service.js b/src/app/core/data/comcol-data.service.js deleted file mode 100644 index 9e1f7efb18..0000000000 --- a/src/app/core/data/comcol-data.service.js +++ /dev/null @@ -1,44 +0,0 @@ -import * as tslib_1 from "tslib"; -import { distinctUntilChanged, filter, map, mergeMap, share, take, tap } from 'rxjs/operators'; -import { merge as observableMerge, throwError as observableThrowError } from 'rxjs'; -import { isEmpty, isNotEmpty } from '../../shared/empty.util'; -import { DataService } from './data.service'; -import { FindByIDRequest } from './request.models'; -import { getResponseFromEntry } from '../shared/operators'; -var ComColDataService = /** @class */ (function (_super) { - tslib_1.__extends(ComColDataService, _super); - function ComColDataService() { - return _super !== null && _super.apply(this, arguments) || this; - } - /** - * Get the scoped endpoint URL by fetching the object with - * the given scopeID and returning its HAL link with this - * data-service's linkPath - * - * @param {string} scopeID - * the id of the scope object - * @return { Observable } - * an Observable containing the scoped URL - */ - ComColDataService.prototype.getBrowseEndpoint = function (options, linkPath) { - var _this = this; - if (options === void 0) { options = {}; } - if (linkPath === void 0) { linkPath = this.linkPath; } - if (isEmpty(options.scopeID)) { - return this.halService.getEndpoint(linkPath); - } - else { - var scopeCommunityHrefObs = this.cds.getEndpoint().pipe(mergeMap(function (endpoint) { return _this.cds.getIDHref(endpoint, options.scopeID); }), filter(function (href) { return isNotEmpty(href); }), take(1), tap(function (href) { - var request = new FindByIDRequest(_this.requestService.generateRequestId(), href, options.scopeID); - _this.requestService.configure(request); - })); - var responses = scopeCommunityHrefObs.pipe(mergeMap(function (href) { return _this.requestService.getByHref(href); }), getResponseFromEntry()); - var errorResponses = responses.pipe(filter(function (response) { return !response.isSuccessful; }), mergeMap(function () { return observableThrowError(new Error("The Community with scope " + options.scopeID + " couldn't be retrieved")); })); - var successResponses = responses.pipe(filter(function (response) { return response.isSuccessful; }), mergeMap(function () { return _this.objectCache.getObjectByUUID(options.scopeID); }), map(function (nc) { return nc._links[linkPath]; }), filter(function (href) { return isNotEmpty(href); })); - return observableMerge(errorResponses, successResponses).pipe(distinctUntilChanged(), share()); - } - }; - return ComColDataService; -}(DataService)); -export { ComColDataService }; -//# sourceMappingURL=comcol-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/comcol-data.service.js.map b/src/app/core/data/comcol-data.service.js.map deleted file mode 100644 index 494b361279..0000000000 --- a/src/app/core/data/comcol-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"comcol-data.service.js","sourceRoot":"","sources":["comcol-data.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/community-data.service.js b/src/app/core/data/community-data.service.js deleted file mode 100644 index 2e1b17155f..0000000000 --- a/src/app/core/data/community-data.service.js +++ /dev/null @@ -1,64 +0,0 @@ -import * as tslib_1 from "tslib"; -import { filter, take } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { Store } from '@ngrx/store'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { ComColDataService } from './comcol-data.service'; -import { RequestService } from './request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { FindAllRequest } from './request.models'; -import { hasValue } from '../../shared/empty.util'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { HttpClient } from '@angular/common/http'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { DSOChangeAnalyzer } from './dso-change-analyzer.service'; -var CommunityDataService = /** @class */ (function (_super) { - tslib_1.__extends(CommunityDataService, _super); - function CommunityDataService(requestService, rdbService, dataBuildService, store, objectCache, halService, notificationsService, http, comparator) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.dataBuildService = dataBuildService; - _this.store = store; - _this.objectCache = objectCache; - _this.halService = halService; - _this.notificationsService = notificationsService; - _this.http = http; - _this.comparator = comparator; - _this.linkPath = 'communities'; - _this.topLinkPath = 'communities/search/top'; - _this.cds = _this; - _this.forceBypassCache = false; - return _this; - } - CommunityDataService.prototype.getEndpoint = function () { - return this.halService.getEndpoint(this.linkPath); - }; - CommunityDataService.prototype.findTop = function (options) { - var _this = this; - if (options === void 0) { options = {}; } - var hrefObs = this.getFindAllHref(options, this.topLinkPath); - hrefObs.pipe(filter(function (href) { return hasValue(href); }), take(1)) - .subscribe(function (href) { - var request = new FindAllRequest(_this.requestService.generateRequestId(), href, options); - _this.requestService.configure(request); - }); - return this.rdbService.buildList(hrefObs); - }; - CommunityDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - NormalizedObjectBuildService, - Store, - ObjectCacheService, - HALEndpointService, - NotificationsService, - HttpClient, - DSOChangeAnalyzer]) - ], CommunityDataService); - return CommunityDataService; -}(ComColDataService)); -export { CommunityDataService }; -//# sourceMappingURL=community-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/community-data.service.js.map b/src/app/core/data/community-data.service.js.map deleted file mode 100644 index 3a640174b8..0000000000 --- a/src/app/core/data/community-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-data.service.js","sourceRoot":"","sources":["community-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAkB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE;IAA0C,gDAA4B;IAMpE,8BACY,cAA8B,EAC9B,UAAkC,EAClC,gBAA8C,EAC9C,KAAuB,EACvB,WAA+B,EAC/B,UAA8B,EAC9B,oBAA0C,EAC1C,IAAgB,EAChB,UAAwC;QATpD,YAWE,iBAAO,SACR;QAXW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,WAAK,GAAL,KAAK,CAAkB;QACvB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAC9B,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAI,GAAJ,IAAI,CAAY;QAChB,gBAAU,GAAV,UAAU,CAA8B;QAd1C,cAAQ,GAAG,aAAa,CAAC;QACzB,iBAAW,GAAG,wBAAwB,CAAC;QACvC,SAAG,GAAG,KAAI,CAAC;QACX,sBAAgB,GAAG,KAAK,CAAC;;IAcnC,CAAC;IAED,0CAAW,GAAX;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,sCAAO,GAAP,UAAQ,OAA4B;QAApC,iBAWC;QAXO,wBAAA,EAAA,YAA4B;QAClC,IAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CACV,MAAM,CAAC,UAAC,IAAY,IAAK,OAAA,QAAQ,CAAC,IAAI,CAAC,EAAd,CAAc,CAAC,EACxC,IAAI,CAAC,CAAC,CAAC,CAAC;aACP,SAAS,CAAC,UAAC,IAAY;YACtB,IAAM,OAAO,GAAG,IAAI,cAAc,CAAC,KAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAC3F,KAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEL,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAY,OAAO,CAAqD,CAAC;IAC3G,CAAC;IAnCU,oBAAoB;QADhC,UAAU,EAAE;iDAQiB,cAAc;YAClB,sBAAsB;YAChB,4BAA4B;YACvC,KAAK;YACC,kBAAkB;YACnB,kBAAkB;YACR,oBAAoB;YACpC,UAAU;YACJ,iBAAiB;OAf9B,oBAAoB,CAoChC;IAAD,2BAAC;CAAA,AApCD,CAA0C,iBAAiB,GAoC1D;SApCY,oBAAoB"} \ No newline at end of file diff --git a/src/app/core/data/data.service.js b/src/app/core/data/data.service.js deleted file mode 100644 index 1bd816228a..0000000000 --- a/src/app/core/data/data.service.js +++ /dev/null @@ -1,221 +0,0 @@ -import { distinctUntilChanged, filter, find, first, map, mergeMap, switchMap, take } from 'rxjs/operators'; -import { hasValue, isNotEmpty, isNotEmptyOperator } from '../../shared/empty.util'; -import { URLCombiner } from '../url-combiner/url-combiner'; -import { CreateRequest, DeleteByIDRequest, FindAllRequest, FindByIDRequest, GetRequest } from './request.models'; -import { configureRequest, getResponseFromEntry } from '../shared/operators'; -import { ErrorResponse } from '../cache/response.models'; -import { NotificationOptions } from '../../shared/notifications/models/notification-options.model'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; -var DataService = /** @class */ (function () { - function DataService() { - this.forceBypassCache = false; - } - /** - * Create the HREF with given options object - * - * @param options The [[FindAllOptions]] object - * @param linkPath The link path for the object - * @return {Observable} - * Return an observable that emits created HREF - */ - DataService.prototype.getFindAllHref = function (options, linkPath) { - if (options === void 0) { options = {}; } - var result; - var args = []; - result = this.getBrowseEndpoint(options, linkPath).pipe(distinctUntilChanged()); - return this.buildHrefFromFindOptions(result, args, options); - }; - /** - * Create the HREF for a specific object's search method with given options object - * - * @param searchMethod The search method for the object - * @param options The [[FindAllOptions]] object - * @return {Observable} - * Return an observable that emits created HREF - */ - DataService.prototype.getSearchByHref = function (searchMethod, options) { - if (options === void 0) { options = {}; } - var result; - var args = []; - result = this.getSearchEndpoint(searchMethod); - if (hasValue(options.searchParams)) { - options.searchParams.forEach(function (param) { - args.push(param.fieldName + "=" + param.fieldValue); - }); - } - return this.buildHrefFromFindOptions(result, args, options); - }; - /** - * Turn an options object into a query string and combine it with the given HREF - * - * @param href$ The HREF to which the query string should be appended - * @param args Array with additional params to combine with query string - * @param options The [[FindAllOptions]] object - * @return {Observable} - * Return an observable that emits created HREF - */ - DataService.prototype.buildHrefFromFindOptions = function (href$, args, options) { - if (hasValue(options.currentPage) && typeof options.currentPage === 'number') { - /* TODO: this is a temporary fix for the pagination start index (0 or 1) discrepancy between the rest and the frontend respectively */ - args.push("page=" + (options.currentPage - 1)); - } - if (hasValue(options.elementsPerPage)) { - args.push("size=" + options.elementsPerPage); - } - if (hasValue(options.sort)) { - args.push("sort=" + options.sort.field + "," + options.sort.direction); - } - if (hasValue(options.startsWith)) { - args.push("startsWith=" + options.startsWith); - } - if (isNotEmpty(args)) { - return href$.pipe(map(function (href) { return new URLCombiner(href, "?" + args.join('&')).toString(); })); - } - else { - return href$; - } - }; - DataService.prototype.findAll = function (options) { - var _this = this; - if (options === void 0) { options = {}; } - var hrefObs = this.getFindAllHref(options); - hrefObs.pipe(first(function (href) { return hasValue(href); })) - .subscribe(function (href) { - var request = new FindAllRequest(_this.requestService.generateRequestId(), href, options); - _this.requestService.configure(request, _this.forceBypassCache); - }); - return this.rdbService.buildList(hrefObs); - }; - /** - * Create the HREF for a specific object based on its identifier - * @param endpoint The base endpoint for the type of object - * @param resourceID The identifier for the object - */ - DataService.prototype.getIDHref = function (endpoint, resourceID) { - return endpoint + "/" + resourceID; - }; - DataService.prototype.findById = function (id) { - var _this = this; - var hrefObs = this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getIDHref(endpoint, id); })); - hrefObs.pipe(find(function (href) { return hasValue(href); })) - .subscribe(function (href) { - var request = new FindByIDRequest(_this.requestService.generateRequestId(), href, id); - _this.requestService.configure(request, _this.forceBypassCache); - }); - return this.rdbService.buildSingle(hrefObs); - }; - DataService.prototype.findByHref = function (href, options) { - this.requestService.configure(new GetRequest(this.requestService.generateRequestId(), href, null, options), this.forceBypassCache); - return this.rdbService.buildSingle(href); - }; - /** - * Return object search endpoint by given search method - * - * @param searchMethod The search method for the object - */ - DataService.prototype.getSearchEndpoint = function (searchMethod) { - return this.halService.getEndpoint(this.linkPath + "/search").pipe(filter(function (href) { return isNotEmpty(href); }), map(function (href) { return href + "/" + searchMethod; })); - }; - /** - * Make a new FindAllRequest with given search method - * - * @param searchMethod The search method for the object - * @param options The [[FindAllOptions]] object - * @return {Observable>} - * Return an observable that emits response from the server - */ - DataService.prototype.searchBy = function (searchMethod, options) { - var _this = this; - if (options === void 0) { options = {}; } - var hrefObs = this.getSearchByHref(searchMethod, options); - hrefObs.pipe(first(function (href) { return hasValue(href); })) - .subscribe(function (href) { - var request = new FindAllRequest(_this.requestService.generateRequestId(), href, options); - _this.requestService.configure(request, true); - }); - return this.rdbService.buildList(hrefObs); - }; - /** - * Add a new patch to the object cache to a specified object - * @param {string} href The selflink of the object that will be patched - * @param {Operation[]} operations The patch operations to be performed - */ - DataService.prototype.patch = function (href, operations) { - this.objectCache.addPatch(href, operations); - }; - /** - * Add a new patch to the object cache - * The patch is derived from the differences between the given object and its version in the object cache - * @param {DSpaceObject} object The given object - */ - DataService.prototype.update = function (object) { - var _this = this; - var oldVersion$ = this.objectCache.getObjectBySelfLink(object.self); - return oldVersion$.pipe(take(1), mergeMap(function (oldVersion) { - var operations = _this.comparator.diff(oldVersion, object); - if (isNotEmpty(operations)) { - _this.objectCache.addPatch(object.self, operations); - } - return _this.findById(object.uuid); - })); - }; - /** - * Create a new DSpaceObject on the server, and store the response - * in the object cache - * - * @param {DSpaceObject} dso - * The object to create - * @param {string} parentUUID - * The UUID of the parent to create the new object under - */ - DataService.prototype.create = function (dso, parentUUID) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - var endpoint$ = this.halService.getEndpoint(this.linkPath).pipe(isNotEmptyOperator(), distinctUntilChanged(), map(function (endpoint) { return parentUUID ? endpoint + "?parent=" + parentUUID : endpoint; })); - var normalizedObject = this.dataBuildService.normalize(dso); - var serializedDso = new DSpaceRESTv2Serializer(NormalizedObjectFactory.getConstructor(dso.type)).serialize(normalizedObject); - var request$ = endpoint$.pipe(take(1), map(function (endpoint) { return new CreateRequest(requestId, endpoint, JSON.stringify(serializedDso)); })); - // Execute the post request - request$.pipe(configureRequest(this.requestService)).subscribe(); - // Resolve self link for new object - var selfLink$ = this.requestService.getByUUID(requestId).pipe(getResponseFromEntry(), map(function (response) { - if (!response.isSuccessful && response instanceof ErrorResponse) { - _this.notificationsService.error('Server Error:', response.errorMessage, new NotificationOptions(-1)); - } - else { - return response; - } - }), map(function (response) { - if (isNotEmpty(response.resourceSelfLinks)) { - return response.resourceSelfLinks[0]; - } - }), distinctUntilChanged()); - return selfLink$.pipe(switchMap(function (selfLink) { return _this.findByHref(selfLink); })); - }; - /** - * Delete an existing DSpace Object on the server - * @param dso The DSpace Object to be removed - * Return an observable that emits true when the deletion was successful, false when it failed - */ - DataService.prototype.delete = function (dso) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - var hrefObs = this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getIDHref(endpoint, dso.uuid); })); - hrefObs.pipe(find(function (href) { return hasValue(href); }), map(function (href) { - var request = new DeleteByIDRequest(requestId, href, dso.uuid); - _this.requestService.configure(request); - })).subscribe(); - return this.requestService.getByUUID(requestId).pipe(find(function (request) { return request.completed; }), map(function (request) { return request.response.isSuccessful; })); - }; - /** - * Commit current object changes to the server - * @param method The RestRequestMethod for which de server sync buffer should be committed - */ - DataService.prototype.commitUpdates = function (method) { - this.requestService.commit(method); - }; - return DataService; -}()); -export { DataService }; -//# sourceMappingURL=data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/data.service.js.map b/src/app/core/data/data.service.js.map deleted file mode 100644 index bd70be8d5f..0000000000 --- a/src/app/core/data/data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"data.service.js","sourceRoot":"","sources":["data.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/debug-response-parsing.service.js b/src/app/core/data/debug-response-parsing.service.js deleted file mode 100644 index e5838266fa..0000000000 --- a/src/app/core/data/debug-response-parsing.service.js +++ /dev/null @@ -1,16 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -var DebugResponseParsingService = /** @class */ (function () { - function DebugResponseParsingService() { - } - DebugResponseParsingService.prototype.parse = function (request, data) { - console.log('request', request, 'data', data); - return undefined; - }; - DebugResponseParsingService = tslib_1.__decorate([ - Injectable() - ], DebugResponseParsingService); - return DebugResponseParsingService; -}()); -export { DebugResponseParsingService }; -//# sourceMappingURL=debug-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/debug-response-parsing.service.js.map b/src/app/core/data/debug-response-parsing.service.js.map deleted file mode 100644 index 72de0f7b0d..0000000000 --- a/src/app/core/data/debug-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"debug-response-parsing.service.js","sourceRoot":"","sources":["debug-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAO3C;IAAA;IAKA,CAAC;IAJC,2CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC9C,OAAO,SAAS,CAAC;IACnB,CAAC;IAJU,2BAA2B;QADvC,UAAU,EAAE;OACA,2BAA2B,CAKvC;IAAD,kCAAC;CAAA,AALD,IAKC;SALY,2BAA2B"} \ No newline at end of file diff --git a/src/app/core/data/default-change-analyzer.service.js b/src/app/core/data/default-change-analyzer.service.js deleted file mode 100644 index 1a4564ccef..0000000000 --- a/src/app/core/data/default-change-analyzer.service.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { compare } from 'fast-json-patch'; -import { Injectable } from '@angular/core'; -/** - * A class to determine what differs between two - * CacheableObjects - */ -var DefaultChangeAnalyzer = /** @class */ (function () { - function DefaultChangeAnalyzer() { - } - /** - * Compare the metadata of two CacheableObject and return the differences as - * a JsonPatch Operation Array - * - * @param {NormalizedObject} object1 - * The first object to compare - * @param {NormalizedObject} object2 - * The second object to compare - */ - DefaultChangeAnalyzer.prototype.diff = function (object1, object2) { - return compare(object1, object2); - }; - DefaultChangeAnalyzer = tslib_1.__decorate([ - Injectable() - ], DefaultChangeAnalyzer); - return DefaultChangeAnalyzer; -}()); -export { DefaultChangeAnalyzer }; -//# sourceMappingURL=default-change-analyzer.service.js.map \ No newline at end of file diff --git a/src/app/core/data/default-change-analyzer.service.js.map b/src/app/core/data/default-change-analyzer.service.js.map deleted file mode 100644 index 06d638c399..0000000000 --- a/src/app/core/data/default-change-analyzer.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"default-change-analyzer.service.js","sourceRoot":"","sources":["default-change-analyzer.service.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C;;;GAGG;AAEH;IAAA;IAcA,CAAC;IAZC;;;;;;;;OAQG;IACH,oCAAI,GAAJ,UAAK,OAAgC,EAAE,OAAgC;QACrE,OAAO,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAbU,qBAAqB;QADjC,UAAU,EAAE;OACA,qBAAqB,CAcjC;IAAD,4BAAC;CAAA,AAdD,IAcC;SAdY,qBAAqB"} \ No newline at end of file diff --git a/src/app/core/data/dso-change-analyzer.service.js b/src/app/core/data/dso-change-analyzer.service.js deleted file mode 100644 index d4d1d4d201..0000000000 --- a/src/app/core/data/dso-change-analyzer.service.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { compare } from 'fast-json-patch'; -import { Injectable } from '@angular/core'; -/** - * A class to determine what differs between two - * DSpaceObjects - */ -var DSOChangeAnalyzer = /** @class */ (function () { - function DSOChangeAnalyzer() { - } - /** - * Compare the metadata of two DSpaceObjects and return the differences as - * a JsonPatch Operation Array - * - * @param {NormalizedDSpaceObject} object1 - * The first object to compare - * @param {NormalizedDSpaceObject} object2 - * The second object to compare - */ - DSOChangeAnalyzer.prototype.diff = function (object1, object2) { - return compare(object1.metadata, object2.metadata).map(function (operation) { return Object.assign({}, operation, { path: '/metadata' + operation.path }); }); - }; - DSOChangeAnalyzer = tslib_1.__decorate([ - Injectable() - ], DSOChangeAnalyzer); - return DSOChangeAnalyzer; -}()); -export { DSOChangeAnalyzer }; -//# sourceMappingURL=dso-change-analyzer.service.js.map \ No newline at end of file diff --git a/src/app/core/data/dso-change-analyzer.service.js.map b/src/app/core/data/dso-change-analyzer.service.js.map deleted file mode 100644 index 8be027805d..0000000000 --- a/src/app/core/data/dso-change-analyzer.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dso-change-analyzer.service.js","sourceRoot":"","sources":["dso-change-analyzer.service.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG1C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;GAGG;AAEH;IAAA;IAcA,CAAC;IAZC;;;;;;;;OAQG;IACH,gCAAI,GAAJ,UAAK,OAAsC,EAAE,OAAsC;QACjF,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAC,SAAoB,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,EAApE,CAAoE,CAAC,CAAC;IACzJ,CAAC;IAbU,iBAAiB;QAD7B,UAAU,EAAE;OACA,iBAAiB,CAc7B;IAAD,wBAAC;CAAA,AAdD,IAcC;SAdY,iBAAiB"} \ No newline at end of file diff --git a/src/app/core/data/dso-response-parsing.service.js b/src/app/core/data/dso-response-parsing.service.js deleted file mode 100644 index 976b371254..0000000000 --- a/src/app/core/data/dso-response-parsing.service.js +++ /dev/null @@ -1,49 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; -import { DSOSuccessResponse } from '../cache/response.models'; -import { BaseResponseParsingService } from './base-response-parsing.service'; -import { hasNoValue, hasValue } from '../../shared/empty.util'; -var DSOResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(DSOResponseParsingService, _super); - function DSOResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = NormalizedObjectFactory; - _this.toCache = true; - return _this; - } - DSOResponseParsingService.prototype.parse = function (request, data) { - var processRequestDTO; - // Prevent empty pages returning an error, initialize empty array instead. - if (hasValue(data.payload) && hasValue(data.payload.page) && data.payload.page.totalElements === 0) { - processRequestDTO = { page: [] }; - } - else { - processRequestDTO = this.process(data.payload, request.uuid); - } - var objectList = processRequestDTO; - if (hasNoValue(processRequestDTO)) { - return new DSOSuccessResponse([], data.statusCode, data.statusText, undefined); - } - if (hasValue(processRequestDTO.page)) { - objectList = processRequestDTO.page; - } - else if (!Array.isArray(processRequestDTO)) { - objectList = [processRequestDTO]; - } - var selfLinks = objectList.map(function (no) { return no.self; }); - return new DSOSuccessResponse(selfLinks, data.statusCode, data.statusText, this.processPageInfo(data.payload)); - }; - DSOResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], DSOResponseParsingService); - return DSOResponseParsingService; -}(BaseResponseParsingService)); -export { DSOResponseParsingService }; -//# sourceMappingURL=dso-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/dso-response-parsing.service.js.map b/src/app/core/data/dso-response-parsing.service.js.map deleted file mode 100644 index 7e7e49d697..0000000000 --- a/src/app/core/data/dso-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dso-response-parsing.service.js","sourceRoot":"","sources":["dso-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAEpF,OAAO,EAAgB,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAI5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAI/D;IAA+C,qDAA0B;IAKvE,mCACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAIE,iBAAO,SACR;QAJkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QALjC,mBAAa,GAAG,uBAAuB,CAAC;QACxC,aAAO,GAAG,IAAI,CAAC;;IAOzB,CAAC;IAED,yCAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,iBAAiB,CAAC;QACtB,0EAA0E;QAC1E,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,EAAE;YAClG,iBAAiB,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;SAClC;aAAM;YACL,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAA+C,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;SAC5G;QACD,IAAI,UAAU,GAAG,iBAAiB,CAAC;QAEnC,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE;YACjC,OAAO,IAAI,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;SAC/E;QACD,IAAI,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE;YACpC,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC;SACrC;aAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE;YAC5C,UAAU,GAAG,CAAC,iBAAiB,CAAC,CAAC;SAClC;QACD,IAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,IAAI,EAAP,CAAO,CAAC,CAAC;QAClD,OAAO,IAAI,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;IAChH,CAAC;IAhCU,yBAAyB;QADrC,UAAU,EAAE;QAOR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAPhC,yBAAyB,CAkCrC;IAAD,gCAAC;CAAA,AAlCD,CAA+C,0BAA0B,GAkCxE;SAlCY,yBAAyB"} \ No newline at end of file diff --git a/src/app/core/data/dspace-object-data.service.js b/src/app/core/data/dspace-object-data.service.js deleted file mode 100644 index a1ed019fa9..0000000000 --- a/src/app/core/data/dspace-object-data.service.js +++ /dev/null @@ -1,70 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { DataService } from './data.service'; -import { RequestService } from './request.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { HttpClient } from '@angular/common/http'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { DSOChangeAnalyzer } from './dso-change-analyzer.service'; -/* tslint:disable:max-classes-per-file */ -var DataServiceImpl = /** @class */ (function (_super) { - tslib_1.__extends(DataServiceImpl, _super); - function DataServiceImpl(requestService, rdbService, dataBuildService, store, objectCache, halService, notificationsService, http, comparator) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.dataBuildService = dataBuildService; - _this.store = store; - _this.objectCache = objectCache; - _this.halService = halService; - _this.notificationsService = notificationsService; - _this.http = http; - _this.comparator = comparator; - _this.linkPath = 'dso'; - _this.forceBypassCache = false; - return _this; - } - DataServiceImpl.prototype.getBrowseEndpoint = function (options, linkPath) { - if (options === void 0) { options = {}; } - if (linkPath === void 0) { linkPath = this.linkPath; } - return this.halService.getEndpoint(linkPath); - }; - DataServiceImpl.prototype.getIDHref = function (endpoint, resourceID) { - return endpoint.replace(/\{\?uuid\}/, "?uuid=" + resourceID); - }; - return DataServiceImpl; -}(DataService)); -var DSpaceObjectDataService = /** @class */ (function () { - function DSpaceObjectDataService(requestService, rdbService, dataBuildService, objectCache, halService, notificationsService, http, comparator) { - this.requestService = requestService; - this.rdbService = rdbService; - this.dataBuildService = dataBuildService; - this.objectCache = objectCache; - this.halService = halService; - this.notificationsService = notificationsService; - this.http = http; - this.comparator = comparator; - this.linkPath = 'dso'; - this.dataService = new DataServiceImpl(requestService, rdbService, dataBuildService, null, objectCache, halService, notificationsService, http, comparator); - } - DSpaceObjectDataService.prototype.findById = function (uuid) { - return this.dataService.findById(uuid); - }; - DSpaceObjectDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - NormalizedObjectBuildService, - ObjectCacheService, - HALEndpointService, - NotificationsService, - HttpClient, - DSOChangeAnalyzer]) - ], DSpaceObjectDataService); - return DSpaceObjectDataService; -}()); -export { DSpaceObjectDataService }; -//# sourceMappingURL=dspace-object-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/dspace-object-data.service.js.map b/src/app/core/data/dspace-object-data.service.js.map deleted file mode 100644 index e9176db2de..0000000000 --- a/src/app/core/data/dspace-object-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-object-data.service.js","sourceRoot":"","sources":["dspace-object-data.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/endpoint-map-response-parsing.service.js b/src/app/core/data/endpoint-map-response-parsing.service.js deleted file mode 100644 index 9e8121b626..0000000000 --- a/src/app/core/data/endpoint-map-response-parsing.service.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { GLOBAL_CONFIG } from '../../../config'; -import { ErrorResponse, EndpointMapSuccessResponse } from '../cache/response.models'; -import { isNotEmpty } from '../../shared/empty.util'; -var EndpointMapResponseParsingService = /** @class */ (function () { - function EndpointMapResponseParsingService(EnvConfig) { - this.EnvConfig = EnvConfig; - } - EndpointMapResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links)) { - var links = data.payload._links; - for (var _i = 0, _a = Object.keys(links); _i < _a.length; _i++) { - var link = _a[_i]; - links[link] = links[link].href; - } - return new EndpointMapSuccessResponse(links, data.statusCode, data.statusText); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from root endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - EndpointMapResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object]) - ], EndpointMapResponseParsingService); - return EndpointMapResponseParsingService; -}()); -export { EndpointMapResponseParsingService }; -//# sourceMappingURL=endpoint-map-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/endpoint-map-response-parsing.service.js.map b/src/app/core/data/endpoint-map-response-parsing.service.js.map deleted file mode 100644 index 5474242083..0000000000 --- a/src/app/core/data/endpoint-map-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"endpoint-map-response-parsing.service.js","sourceRoot":"","sources":["endpoint-map-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAgB,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAInG,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD;IACE,2CACiC,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;IAExD,CAAC;IAED,iDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC/D,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAClC,KAAmB,UAAkB,EAAlB,KAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAlB,cAAkB,EAAlB,IAAkB,EAAE;gBAAlC,IAAM,IAAI,SAAA;gBACb,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;aAChC;YACD,OAAO,IAAI,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAChF;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,wCAAwC,CAAC,EACnD,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IArBU,iCAAiC;QAD7C,UAAU,EAAE;QAGR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;;OAFb,iCAAiC,CAsB7C;IAAD,wCAAC;CAAA,AAtBD,IAsBC;SAtBY,iCAAiC"} \ No newline at end of file diff --git a/src/app/core/data/facet-config-response-parsing.service.js b/src/app/core/data/facet-config-response-parsing.service.js deleted file mode 100644 index 902f6ea459..0000000000 --- a/src/app/core/data/facet-config-response-parsing.service.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { FacetConfigSuccessResponse } from '../cache/response.models'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { SearchFilterConfig } from '../../+search-page/search-service/search-filter-config.model'; -import { BaseResponseParsingService } from './base-response-parsing.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { GLOBAL_CONFIG } from '../../../config'; -var FacetConfigResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(FacetConfigResponseParsingService, _super); - function FacetConfigResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = {}; - _this.toCache = false; - return _this; - } - FacetConfigResponseParsingService.prototype.parse = function (request, data) { - var config = data.payload._embedded.facets; - var serializer = new DSpaceRESTv2Serializer(SearchFilterConfig); - var facetConfig = serializer.deserializeArray(config); - return new FacetConfigSuccessResponse(facetConfig, data.statusCode, data.statusText); - }; - FacetConfigResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], FacetConfigResponseParsingService); - return FacetConfigResponseParsingService; -}(BaseResponseParsingService)); -export { FacetConfigResponseParsingService }; -//# sourceMappingURL=facet-config-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/facet-config-response-parsing.service.js.map b/src/app/core/data/facet-config-response-parsing.service.js.map deleted file mode 100644 index 1f444f1663..0000000000 --- a/src/app/core/data/facet-config-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"facet-config-response-parsing.service.js","sourceRoot":"","sources":["facet-config-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,0BAA0B,EAE3B,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8DAA8D,CAAC;AAClG,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD;IAAuD,6DAA0B;IAG/E,2CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAJ3C,mBAAa,GAAG,EAAE,CAAC;QACnB,aAAO,GAAG,KAAK,CAAC;;IAKhB,CAAC;IACD,iDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QAEpD,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;QAC7C,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;QAClE,IAAM,WAAW,GAAG,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACxD,OAAO,IAAI,0BAA0B,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACvF,CAAC;IAdU,iCAAiC;QAD7C,UAAU,EAAE;QAKR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OALhC,iCAAiC,CAe7C;IAAD,wCAAC;CAAA,AAfD,CAAuD,0BAA0B,GAehF;SAfY,iCAAiC"} \ No newline at end of file diff --git a/src/app/core/data/facet-value-map-response-parsing.service.js b/src/app/core/data/facet-value-map-response-parsing.service.js deleted file mode 100644 index 314b103ede..0000000000 --- a/src/app/core/data/facet-value-map-response-parsing.service.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { FacetValueMap, FacetValueMapSuccessResponse, FacetValueSuccessResponse } from '../cache/response.models'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { FacetValue } from '../../+search-page/search-service/facet-value.model'; -import { BaseResponseParsingService } from './base-response-parsing.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { GLOBAL_CONFIG } from '../../../config'; -var FacetValueMapResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(FacetValueMapResponseParsingService, _super); - function FacetValueMapResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = {}; - _this.toCache = false; - return _this; - } - FacetValueMapResponseParsingService.prototype.parse = function (request, data) { - var _this = this; - var payload = data.payload; - var facetMap = new FacetValueMap(); - var serializer = new DSpaceRESTv2Serializer(FacetValue); - payload._embedded.facets.map(function (facet) { - var values = facet._embedded.values.map(function (value) { value.search = value._links.search.href; return value; }); - var facetValues = serializer.deserializeArray(values); - var valuesResponse = new FacetValueSuccessResponse(facetValues, data.statusCode, data.statusText, _this.processPageInfo(data.payload)); - facetMap[facet.name] = valuesResponse; - }); - return new FacetValueMapSuccessResponse(facetMap, data.statusCode, data.statusText); - }; - FacetValueMapResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], FacetValueMapResponseParsingService); - return FacetValueMapResponseParsingService; -}(BaseResponseParsingService)); -export { FacetValueMapResponseParsingService }; -//# sourceMappingURL=facet-value-map-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/facet-value-map-response-parsing.service.js.map b/src/app/core/data/facet-value-map-response-parsing.service.js.map deleted file mode 100644 index 3c2f84a662..0000000000 --- a/src/app/core/data/facet-value-map-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"facet-value-map-response-parsing.service.js","sourceRoot":"","sources":["facet-value-map-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,aAAa,EACb,4BAA4B,EAC5B,yBAAyB,EAE1B,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,qDAAqD,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD;IAAyD,+DAA0B;IAIjF,6CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAL3C,mBAAa,GAAG,EAAE,CAAC;QACnB,aAAO,GAAG,KAAK,CAAC;;IAMhB,CAAC;IAED,mDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QAAtD,iBAcC;QAZC,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAM,QAAQ,GAAkB,IAAI,aAAa,EAAE,CAAC;QAEpD,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC1D,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK;YACjC,IAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK,IAAM,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAA,CAAC,CAAC,CAAC;YAC/G,IAAM,WAAW,GAAG,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACxD,IAAM,cAAc,GAAG,IAAI,yBAAyB,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACxI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,4BAA4B,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtF,CAAC;IAxBU,mCAAmC;QAD/C,UAAU,EAAE;QAMR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OANhC,mCAAmC,CAyB/C;IAAD,0CAAC;CAAA,AAzBD,CAAyD,0BAA0B,GAyBlF;SAzBY,mCAAmC"} \ No newline at end of file diff --git a/src/app/core/data/facet-value-response-parsing.service.js b/src/app/core/data/facet-value-response-parsing.service.js deleted file mode 100644 index 4ded3f9a7c..0000000000 --- a/src/app/core/data/facet-value-response-parsing.service.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { FacetValueSuccessResponse } from '../cache/response.models'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { FacetValue } from '../../+search-page/search-service/facet-value.model'; -import { BaseResponseParsingService } from './base-response-parsing.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { GLOBAL_CONFIG } from '../../../config'; -var FacetValueResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(FacetValueResponseParsingService, _super); - function FacetValueResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = {}; - _this.toCache = false; - return _this; - } - FacetValueResponseParsingService.prototype.parse = function (request, data) { - var payload = data.payload; - var serializer = new DSpaceRESTv2Serializer(FacetValue); - // const values = payload._embedded.values.map((value) => {value.search = value._links.search.href; return value;}); - var facetValues = serializer.deserializeArray(payload._embedded.values); - return new FacetValueSuccessResponse(facetValues, data.statusCode, data.statusText, this.processPageInfo(data.payload)); - }; - FacetValueResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], FacetValueResponseParsingService); - return FacetValueResponseParsingService; -}(BaseResponseParsingService)); -export { FacetValueResponseParsingService }; -//# sourceMappingURL=facet-value-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/facet-value-response-parsing.service.js.map b/src/app/core/data/facet-value-response-parsing.service.js.map deleted file mode 100644 index 58da222e17..0000000000 --- a/src/app/core/data/facet-value-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"facet-value-response-parsing.service.js","sourceRoot":"","sources":["facet-value-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAgB,MAAM,0BAA0B,CAAC;AAInF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,qDAAqD,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD;IAAsD,4DAA0B;IAG9E,0CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAJ3C,mBAAa,GAAG,EAAE,CAAC;QACnB,aAAO,GAAG,KAAK,CAAC;;IAKhB,CAAC;IACD,gDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAM,UAAU,GAAG,IAAI,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC1D,oHAAoH;QAEpH,IAAM,WAAW,GAAG,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1E,OAAO,IAAI,yBAAyB,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1H,CAAC;IAhBU,gCAAgC;QAD5C,UAAU,EAAE;QAKR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OALhC,gCAAgC,CAiB5C;IAAD,uCAAC;CAAA,AAjBD,CAAsD,0BAA0B,GAiB/E;SAjBY,gCAAgC"} \ No newline at end of file diff --git a/src/app/core/data/filtered-discovery-page-response-parsing.service.js b/src/app/core/data/filtered-discovery-page-response-parsing.service.js deleted file mode 100644 index f38ee1bb11..0000000000 --- a/src/app/core/data/filtered-discovery-page-response-parsing.service.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { BaseResponseParsingService } from './base-response-parsing.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { FilteredDiscoveryQueryResponse } from '../cache/response.models'; -/** - * A ResponseParsingService used to parse DSpaceRESTV2Response coming from the REST API to a discovery query (string) - * wrapped in a FilteredDiscoveryQueryResponse - */ -var FilteredDiscoveryPageResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(FilteredDiscoveryPageResponseParsingService, _super); - function FilteredDiscoveryPageResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = {}; - _this.toCache = false; - return _this; - } - /** - * Parses data from the REST API to a discovery query wrapped in a FilteredDiscoveryQueryResponse - * @param {RestRequest} request - * @param {DSpaceRESTV2Response} data - * @returns {RestResponse} - */ - FilteredDiscoveryPageResponseParsingService.prototype.parse = function (request, data) { - var query = data.payload['discovery-query']; - return new FilteredDiscoveryQueryResponse(query, data.statusCode, data.statusText); - }; - FilteredDiscoveryPageResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], FilteredDiscoveryPageResponseParsingService); - return FilteredDiscoveryPageResponseParsingService; -}(BaseResponseParsingService)); -export { FilteredDiscoveryPageResponseParsingService }; -//# sourceMappingURL=filtered-discovery-page-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/filtered-discovery-page-response-parsing.service.js.map b/src/app/core/data/filtered-discovery-page-response-parsing.service.js.map deleted file mode 100644 index 39df81ab99..0000000000 --- a/src/app/core/data/filtered-discovery-page-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"filtered-discovery-page-response-parsing.service.js","sourceRoot":"","sources":["filtered-discovery-page-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAInD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,8BAA8B,EAAgB,MAAM,0BAA0B,CAAC;AAExF;;;GAGG;AAEH;IAAiE,uEAA0B;IAGzF,qDACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAGI,iBAAO,SACV;QAHkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAJ3C,mBAAa,GAAG,EAAE,CAAC;QACnB,aAAO,GAAG,KAAK,CAAC;;IAKhB,CAAC;IAED;;;;;OAKG;IACH,2DAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC9C,OAAO,IAAI,8BAA8B,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACrF,CAAC;IAlBU,2CAA2C;QADvD,UAAU,EAAE;QAKR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OALhC,2CAA2C,CAmBvD;IAAD,kDAAC;CAAA,AAnBD,CAAiE,0BAA0B,GAmB1F;SAnBY,2CAA2C"} \ No newline at end of file diff --git a/src/app/core/data/item-data.service.js b/src/app/core/data/item-data.service.js deleted file mode 100644 index ce09b98047..0000000000 --- a/src/app/core/data/item-data.service.js +++ /dev/null @@ -1,112 +0,0 @@ -import * as tslib_1 from "tslib"; -import { distinctUntilChanged, filter, map } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { Store } from '@ngrx/store'; -import { isNotEmpty } from '../../shared/empty.util'; -import { BrowseService } from '../browse/browse.service'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { URLCombiner } from '../url-combiner/url-combiner'; -import { DataService } from './data.service'; -import { RequestService } from './request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { PatchRequest } from './request.models'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { DSOChangeAnalyzer } from './dso-change-analyzer.service'; -import { HttpClient } from '@angular/common/http'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { configureRequest, getRequestFromRequestHref } from '../shared/operators'; -var ItemDataService = /** @class */ (function (_super) { - tslib_1.__extends(ItemDataService, _super); - function ItemDataService(requestService, rdbService, dataBuildService, store, bs, objectCache, halService, notificationsService, http, comparator) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.dataBuildService = dataBuildService; - _this.store = store; - _this.bs = bs; - _this.objectCache = objectCache; - _this.halService = halService; - _this.notificationsService = notificationsService; - _this.http = http; - _this.comparator = comparator; - _this.linkPath = 'items'; - _this.forceBypassCache = false; - return _this; - } - /** - * Get the endpoint for browsing items - * (When options.sort.field is empty, the default field to browse by will be 'dc.date.issued') - * @param {FindAllOptions} options - * @returns {Observable} - */ - ItemDataService.prototype.getBrowseEndpoint = function (options, linkPath) { - if (options === void 0) { options = {}; } - if (linkPath === void 0) { linkPath = this.linkPath; } - var field = 'dc.date.issued'; - if (options.sort && options.sort.field) { - field = options.sort.field; - } - return this.bs.getBrowseURLFor(field, linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (href) { return new URLCombiner(href, "?scope=" + options.scopeID).toString(); }), distinctUntilChanged()); - }; - /** - * Get the endpoint for item withdrawal and reinstatement - * @param itemId - */ - ItemDataService.prototype.getItemWithdrawEndpoint = function (itemId) { - var _this = this; - return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getIDHref(endpoint, itemId); })); - }; - /** - * Get the endpoint to make item private and public - * @param itemId - */ - ItemDataService.prototype.getItemDiscoverableEndpoint = function (itemId) { - var _this = this; - return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getIDHref(endpoint, itemId); })); - }; - /** - * Set the isWithdrawn state of an item to a specified state - * @param itemId - * @param withdrawn - */ - ItemDataService.prototype.setWithDrawn = function (itemId, withdrawn) { - var _this = this; - var patchOperation = [{ - op: 'replace', path: '/withdrawn', value: withdrawn - }]; - return this.getItemWithdrawEndpoint(itemId).pipe(distinctUntilChanged(), map(function (endpointURL) { - return new PatchRequest(_this.requestService.generateRequestId(), endpointURL, patchOperation); - }), configureRequest(this.requestService), map(function (request) { return request.href; }), getRequestFromRequestHref(this.requestService), map(function (requestEntry) { return requestEntry.response; })); - }; - /** - * Set the isDiscoverable state of an item to a specified state - * @param itemId - * @param discoverable - */ - ItemDataService.prototype.setDiscoverable = function (itemId, discoverable) { - var _this = this; - var patchOperation = [{ - op: 'replace', path: '/discoverable', value: discoverable - }]; - return this.getItemDiscoverableEndpoint(itemId).pipe(distinctUntilChanged(), map(function (endpointURL) { - return new PatchRequest(_this.requestService.generateRequestId(), endpointURL, patchOperation); - }), configureRequest(this.requestService), map(function (request) { return request.href; }), getRequestFromRequestHref(this.requestService), map(function (requestEntry) { return requestEntry.response; })); - }; - ItemDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - NormalizedObjectBuildService, - Store, - BrowseService, - ObjectCacheService, - HALEndpointService, - NotificationsService, - HttpClient, - DSOChangeAnalyzer]) - ], ItemDataService); - return ItemDataService; -}(DataService)); -export { ItemDataService }; -//# sourceMappingURL=item-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/item-data.service.js.map b/src/app/core/data/item-data.service.js.map deleted file mode 100644 index ed6f4047ed..0000000000 --- a/src/app/core/data/item-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-data.service.js","sourceRoot":"","sources":["item-data.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/metadata-schema-data.service.js b/src/app/core/data/metadata-schema-data.service.js deleted file mode 100644 index aa72714bba..0000000000 --- a/src/app/core/data/metadata-schema-data.service.js +++ /dev/null @@ -1,58 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Store } from '@ngrx/store'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { DataService } from './data.service'; -import { RequestService } from './request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { HttpClient } from '@angular/common/http'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { DefaultChangeAnalyzer } from './default-change-analyzer.service'; -/** - * A service responsible for fetching/sending data from/to the REST API on the metadataschemas endpoint - */ -var MetadataSchemaDataService = /** @class */ (function (_super) { - tslib_1.__extends(MetadataSchemaDataService, _super); - function MetadataSchemaDataService(requestService, rdbService, store, halService, objectCache, comparator, dataBuildService, http, notificationsService) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.store = store; - _this.halService = halService; - _this.objectCache = objectCache; - _this.comparator = comparator; - _this.dataBuildService = dataBuildService; - _this.http = http; - _this.notificationsService = notificationsService; - _this.linkPath = 'metadataschemas'; - _this.forceBypassCache = false; - return _this; - } - /** - * Get the endpoint for browsing metadataschemas - * @param {FindAllOptions} options - * @returns {Observable} - */ - MetadataSchemaDataService.prototype.getBrowseEndpoint = function (options, linkPath) { - if (options === void 0) { options = {}; } - if (linkPath === void 0) { linkPath = this.linkPath; } - return null; - }; - MetadataSchemaDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - Store, - HALEndpointService, - ObjectCacheService, - DefaultChangeAnalyzer, - NormalizedObjectBuildService, - HttpClient, - NotificationsService]) - ], MetadataSchemaDataService); - return MetadataSchemaDataService; -}(DataService)); -export { MetadataSchemaDataService }; -//# sourceMappingURL=metadata-schema-data.service.js.map \ No newline at end of file diff --git a/src/app/core/data/metadata-schema-data.service.js.map b/src/app/core/data/metadata-schema-data.service.js.map deleted file mode 100644 index 1ce12f4ac5..0000000000 --- a/src/app/core/data/metadata-schema-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-schema-data.service.js","sourceRoot":"","sources":["metadata-schema-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAGrF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E;;GAEG;AAEH;IAA+C,qDAA2B;IAIxE,mCACY,cAA8B,EAC9B,UAAkC,EAClC,KAAuB,EACvB,UAA8B,EAC9B,WAA+B,EAC/B,UAAiD,EACjD,gBAA8C,EAC9C,IAAgB,EAChB,oBAA0C;QATtD,YAUE,iBAAO,SACR;QAVW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,WAAK,GAAL,KAAK,CAAkB;QACvB,gBAAU,GAAV,UAAU,CAAoB;QAC9B,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAuC;QACjD,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,UAAI,GAAJ,IAAI,CAAY;QAChB,0BAAoB,GAApB,oBAAoB,CAAsB;QAZ5C,cAAQ,GAAG,iBAAiB,CAAC;QAC7B,sBAAgB,GAAG,KAAK,CAAC;;IAanC,CAAC;IAED;;;;OAIG;IACI,qDAAiB,GAAxB,UAAyB,OAA4B,EAAE,QAAgC;QAA9D,wBAAA,EAAA,YAA4B;QAAE,yBAAA,EAAA,WAAmB,IAAI,CAAC,QAAQ;QAErF,OAAO,IAAI,CAAC;IACd,CAAC;IAzBU,yBAAyB;QADrC,UAAU,EAAE;iDAMiB,cAAc;YAClB,sBAAsB;YAC3B,KAAK;YACA,kBAAkB;YACjB,kBAAkB;YACnB,qBAAqB;YACf,4BAA4B;YACxC,UAAU;YACM,oBAAoB;OAb3C,yBAAyB,CA2BrC;IAAD,gCAAC;CAAA,AA3BD,CAA+C,WAAW,GA2BzD;SA3BY,yBAAyB"} \ No newline at end of file diff --git a/src/app/core/data/metadatafield-parsing.service.js b/src/app/core/data/metadatafield-parsing.service.js deleted file mode 100644 index 845135ef5d..0000000000 --- a/src/app/core/data/metadatafield-parsing.service.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { Injectable } from '@angular/core'; -import { MetadatafieldSuccessResponse } from '../cache/response.models'; -import { MetadataField } from '../metadata/metadatafield.model'; -/** - * A service responsible for parsing DSpaceRESTV2Response data related to a single MetadataField to a valid RestResponse - */ -var MetadatafieldParsingService = /** @class */ (function () { - function MetadatafieldParsingService() { - } - MetadatafieldParsingService.prototype.parse = function (request, data) { - var payload = data.payload; - var deserialized = new DSpaceRESTv2Serializer(MetadataField).deserialize(payload); - return new MetadatafieldSuccessResponse(deserialized, data.statusCode, data.statusText); - }; - MetadatafieldParsingService = tslib_1.__decorate([ - Injectable() - ], MetadatafieldParsingService); - return MetadatafieldParsingService; -}()); -export { MetadatafieldParsingService }; -//# sourceMappingURL=metadatafield-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/metadatafield-parsing.service.js.map b/src/app/core/data/metadatafield-parsing.service.js.map deleted file mode 100644 index d72940dafe..0000000000 --- a/src/app/core/data/metadatafield-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadatafield-parsing.service.js","sourceRoot":"","sources":["metadatafield-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAIrF,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,4BAA4B,EAA+C,MAAM,0BAA0B,CAAC;AACrH,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE;;GAEG;AAEH;IAAA;IASA,CAAC;IAPC,2CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACpF,OAAO,IAAI,4BAA4B,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1F,CAAC;IAPU,2BAA2B;QADvC,UAAU,EAAE;OACA,2BAA2B,CASvC;IAAD,kCAAC;CAAA,AATD,IASC;SATY,2BAA2B"} \ No newline at end of file diff --git a/src/app/core/data/metadataschema-parsing.service.js b/src/app/core/data/metadataschema-parsing.service.js deleted file mode 100644 index 728e696c58..0000000000 --- a/src/app/core/data/metadataschema-parsing.service.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { MetadataSchema } from '../metadata/metadataschema.model'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { Injectable } from '@angular/core'; -import { MetadataschemaSuccessResponse } from '../cache/response.models'; -var MetadataschemaParsingService = /** @class */ (function () { - function MetadataschemaParsingService() { - } - MetadataschemaParsingService.prototype.parse = function (request, data) { - var payload = data.payload; - var deserialized = new DSpaceRESTv2Serializer(MetadataSchema).deserialize(payload); - return new MetadataschemaSuccessResponse(deserialized, data.statusCode, data.statusText); - }; - MetadataschemaParsingService = tslib_1.__decorate([ - Injectable() - ], MetadataschemaParsingService); - return MetadataschemaParsingService; -}()); -export { MetadataschemaParsingService }; -//# sourceMappingURL=metadataschema-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/metadataschema-parsing.service.js.map b/src/app/core/data/metadataschema-parsing.service.js.map deleted file mode 100644 index fc9f79fca2..0000000000 --- a/src/app/core/data/metadataschema-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadataschema-parsing.service.js","sourceRoot":"","sources":["metadataschema-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAIrF,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,6BAA6B,EAAgB,MAAM,0BAA0B,CAAC;AAGvF;IAAA;IASA,CAAC;IAPC,4CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACrF,OAAO,IAAI,6BAA6B,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3F,CAAC;IAPU,4BAA4B;QADxC,UAAU,EAAE;OACA,4BAA4B,CASxC;IAAD,mCAAC;CAAA,AATD,IASC;SATY,4BAA4B"} \ No newline at end of file diff --git a/src/app/core/data/mydspace-response-parsing.service.js b/src/app/core/data/mydspace-response-parsing.service.js deleted file mode 100644 index 64dba1ea6e..0000000000 --- a/src/app/core/data/mydspace-response-parsing.service.js +++ /dev/null @@ -1,84 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { SearchSuccessResponse } from '../cache/response.models'; -import { DSOResponseParsingService } from './dso-response-parsing.service'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { hasValue } from '../../shared/empty.util'; -import { SearchQueryResponse } from '../../+search-page/search-service/search-query-response.model'; -import { MetadataValue } from '../shared/metadata.models'; -var MyDSpaceResponseParsingService = /** @class */ (function () { - function MyDSpaceResponseParsingService(dsoParser) { - this.dsoParser = dsoParser; - } - MyDSpaceResponseParsingService.prototype.parse = function (request, data) { - var _this = this; - // fallback for unexpected empty response - var emptyPayload = { - _embedded: { - objects: [] - } - }; - var payload = data.payload._embedded.searchResult || emptyPayload; - var hitHighlights = payload._embedded.objects - .map(function (object) { return object.hitHighlights; }) - .map(function (hhObject) { - var mdMap = {}; - if (hhObject) { - for (var _i = 0, _a = Object.keys(hhObject); _i < _a.length; _i++) { - var key = _a[_i]; - var value = Object.assign(new MetadataValue(), { - value: hhObject[key].join('...'), - language: null - }); - mdMap[key] = [value]; - } - } - return mdMap; - }); - var dsoSelfLinks = payload._embedded.objects - .filter(function (object) { return hasValue(object._embedded); }) - .map(function (object) { return object._embedded.indexableObject; }) - .map(function (dso) { return _this.dsoParser.parse(request, { - payload: dso, - statusCode: data.statusCode, - statusText: data.statusText - }); }) - .map(function (obj) { return obj.resourceSelfLinks; }) - .reduce(function (combined, thisElement) { return combined.concat(thisElement); }, []); - var objects = payload._embedded.objects - .filter(function (object) { return hasValue(object._embedded); }) - .map(function (object, index) { return Object.assign({}, object, { - indexableObject: dsoSelfLinks[index], - hitHighlights: hitHighlights[index], - _embedded: _this.filterEmbeddedObjects(object) - }); }); - payload.objects = objects; - var deserialized = new DSpaceRESTv2Serializer(SearchQueryResponse).deserialize(payload); - return new SearchSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(payload)); - }; - MyDSpaceResponseParsingService.prototype.filterEmbeddedObjects = function (object) { - var allowedEmbeddedKeys = ['submitter', 'item', 'workspaceitem', 'workflowitem']; - if (object._embedded.indexableObject && object._embedded.indexableObject._embedded) { - return Object.assign({}, object._embedded, { - indexableObject: Object.assign({}, object._embedded.indexableObject, { - _embedded: Object.keys(object._embedded.indexableObject._embedded) - .filter(function (key) { return allowedEmbeddedKeys.includes(key); }) - .reduce(function (obj, key) { - obj[key] = object._embedded.indexableObject._embedded[key]; - return obj; - }, {}) - }) - }); - } - else { - return object; - } - }; - MyDSpaceResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) - ], MyDSpaceResponseParsingService); - return MyDSpaceResponseParsingService; -}()); -export { MyDSpaceResponseParsingService }; -//# sourceMappingURL=mydspace-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/mydspace-response-parsing.service.js.map b/src/app/core/data/mydspace-response-parsing.service.js.map deleted file mode 100644 index 29d79c7317..0000000000 --- a/src/app/core/data/mydspace-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mydspace-response-parsing.service.js","sourceRoot":"","sources":["mydspace-response-parsing.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.actions.js b/src/app/core/data/object-updates/object-updates.actions.js deleted file mode 100644 index 38a2fa2e9d..0000000000 --- a/src/app/core/data/object-updates/object-updates.actions.js +++ /dev/null @@ -1,171 +0,0 @@ -import { type } from '../../../shared/ngrx/type'; -/** - * The list of ObjectUpdatesAction type definitions - */ -export var ObjectUpdatesActionTypes = { - INITIALIZE_FIELDS: type('dspace/core/cache/object-updates/INITIALIZE_FIELDS'), - SET_EDITABLE_FIELD: type('dspace/core/cache/object-updates/SET_EDITABLE_FIELD'), - SET_VALID_FIELD: type('dspace/core/cache/object-updates/SET_VALID_FIELD'), - ADD_FIELD: type('dspace/core/cache/object-updates/ADD_FIELD'), - DISCARD: type('dspace/core/cache/object-updates/DISCARD'), - REINSTATE: type('dspace/core/cache/object-updates/REINSTATE'), - REMOVE: type('dspace/core/cache/object-updates/REMOVE'), - REMOVE_FIELD: type('dspace/core/cache/object-updates/REMOVE_FIELD'), -}; -/* tslint:disable:max-classes-per-file */ -/** - * Enum that represents the different types of updates that can be performed on a field in the ObjectUpdates store - */ -export var FieldChangeType; -(function (FieldChangeType) { - FieldChangeType[FieldChangeType["UPDATE"] = 0] = "UPDATE"; - FieldChangeType[FieldChangeType["ADD"] = 1] = "ADD"; - FieldChangeType[FieldChangeType["REMOVE"] = 2] = "REMOVE"; -})(FieldChangeType || (FieldChangeType = {})); -/** - * An ngrx action to initialize a new page's fields in the ObjectUpdates state - */ -var InitializeFieldsAction = /** @class */ (function () { - /** - * Create a new InitializeFieldsAction - * - * @param url - * the unique url of the page for which the fields are being initialized - * @param fields The identifiable fields of which the updates are kept track of - * @param lastModified The last modified date of the object that belongs to the page - */ - function InitializeFieldsAction(url, fields, lastModified) { - this.type = ObjectUpdatesActionTypes.INITIALIZE_FIELDS; - this.payload = { url: url, fields: fields, lastModified: lastModified }; - } - return InitializeFieldsAction; -}()); -export { InitializeFieldsAction }; -/** - * An ngrx action to add a new field update in the ObjectUpdates state for a certain page url - */ -var AddFieldUpdateAction = /** @class */ (function () { - /** - * Create a new AddFieldUpdateAction - * - * @param url - * the unique url of the page for which a field update is added - * @param field The identifiable field of which a new update is added - * @param changeType The update's change type - */ - function AddFieldUpdateAction(url, field, changeType) { - this.type = ObjectUpdatesActionTypes.ADD_FIELD; - this.payload = { url: url, field: field, changeType: changeType }; - } - return AddFieldUpdateAction; -}()); -export { AddFieldUpdateAction }; -/** - * An ngrx action to set the editable state of an existing field in the ObjectUpdates state for a certain page url - */ -var SetEditableFieldUpdateAction = /** @class */ (function () { - /** - * Create a new SetEditableFieldUpdateAction - * - * @param url - * the unique url of the page - * @param fieldUUID The UUID of the field of which - * @param editable The new editable value for the field - */ - function SetEditableFieldUpdateAction(url, fieldUUID, editable) { - this.type = ObjectUpdatesActionTypes.SET_EDITABLE_FIELD; - this.payload = { url: url, uuid: fieldUUID, editable: editable }; - } - return SetEditableFieldUpdateAction; -}()); -export { SetEditableFieldUpdateAction }; -/** - * An ngrx action to set the isValid state of an existing field in the ObjectUpdates state for a certain page url - */ -var SetValidFieldUpdateAction = /** @class */ (function () { - /** - * Create a new SetValidFieldUpdateAction - * - * @param url - * the unique url of the page - * @param fieldUUID The UUID of the field of which - * @param isValid The new isValid value for the field - */ - function SetValidFieldUpdateAction(url, fieldUUID, isValid) { - this.type = ObjectUpdatesActionTypes.SET_VALID_FIELD; - this.payload = { url: url, uuid: fieldUUID, isValid: isValid }; - } - return SetValidFieldUpdateAction; -}()); -export { SetValidFieldUpdateAction }; -/** - * An ngrx action to discard all existing updates in the ObjectUpdates state for a certain page url - */ -var DiscardObjectUpdatesAction = /** @class */ (function () { - /** - * Create a new DiscardObjectUpdatesAction - * - * @param url - * the unique url of the page for which the changes should be discarded - * @param notification The notification that is raised when changes are discarded - */ - function DiscardObjectUpdatesAction(url, notification) { - this.type = ObjectUpdatesActionTypes.DISCARD; - this.payload = { url: url, notification: notification }; - } - return DiscardObjectUpdatesAction; -}()); -export { DiscardObjectUpdatesAction }; -/** - * An ngrx action to reinstate all previously discarded updates in the ObjectUpdates state for a certain page url - */ -var ReinstateObjectUpdatesAction = /** @class */ (function () { - /** - * Create a new ReinstateObjectUpdatesAction - * - * @param url - * the unique url of the page for which the changes should be reinstated - */ - function ReinstateObjectUpdatesAction(url) { - this.type = ObjectUpdatesActionTypes.REINSTATE; - this.payload = { url: url }; - } - return ReinstateObjectUpdatesAction; -}()); -export { ReinstateObjectUpdatesAction }; -/** - * An ngrx action to remove all previously discarded updates in the ObjectUpdates state for a certain page url - */ -var RemoveObjectUpdatesAction = /** @class */ (function () { - /** - * Create a new RemoveObjectUpdatesAction - * - * @param url - * the unique url of the page for which the changes should be removed - */ - function RemoveObjectUpdatesAction(url) { - this.type = ObjectUpdatesActionTypes.REMOVE; - this.payload = { url: url }; - } - return RemoveObjectUpdatesAction; -}()); -export { RemoveObjectUpdatesAction }; -/** - * An ngrx action to remove a single field update in the ObjectUpdates state for a certain page url and field uuid - */ -var RemoveFieldUpdateAction = /** @class */ (function () { - /** - * Create a new RemoveObjectUpdatesAction - * - * @param url - * the unique url of the page for which a field's change should be removed - * @param uuid The UUID of the field for which the change should be removed - */ - function RemoveFieldUpdateAction(url, uuid) { - this.type = ObjectUpdatesActionTypes.REMOVE_FIELD; - this.payload = { url: url, uuid: uuid }; - } - return RemoveFieldUpdateAction; -}()); -export { RemoveFieldUpdateAction }; -//# sourceMappingURL=object-updates.actions.js.map \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.actions.js.map b/src/app/core/data/object-updates/object-updates.actions.js.map deleted file mode 100644 index 736ab3e88d..0000000000 --- a/src/app/core/data/object-updates/object-updates.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-updates.actions.js","sourceRoot":"","sources":["object-updates.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.effects.js b/src/app/core/data/object-updates/object-updates.effects.js deleted file mode 100644 index de7554ed33..0000000000 --- a/src/app/core/data/object-updates/object-updates.effects.js +++ /dev/null @@ -1,100 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Actions, Effect, ofType } from '@ngrx/effects'; -import { ObjectUpdatesActionTypes, RemoveObjectUpdatesAction } from './object-updates.actions'; -import { delay, filter, map, switchMap, take, tap } from 'rxjs/operators'; -import { of as observableOf, race as observableRace, Subject } from 'rxjs'; -import { hasNoValue } from '../../../shared/empty.util'; -import { NotificationsService } from '../../../shared/notifications/notifications.service'; -import { NotificationsActionTypes } from '../../../shared/notifications/notifications.actions'; -/** - * NGRX effects for ObjectUpdatesActions - */ -var ObjectUpdatesEffects = /** @class */ (function () { - function ObjectUpdatesEffects(actions$, notificationsService) { - var _this = this; - this.actions$ = actions$; - this.notificationsService = notificationsService; - /** - * Identifier for when an action on all notifications is performed - */ - this.allIdentifier = 'all'; - /** - * Map that keeps track of the latest ObjectUpdatesAction for each page's url - */ - this.actionMap$ = {}; - this.notificationActionMap$ = { all: new Subject() }; - /** - * Effect that makes sure all last fired ObjectUpdatesActions are stored in the map of this service, with the url as their key - */ - this.mapLastActions$ = this.actions$ - .pipe(ofType.apply(void 0, Object.values(ObjectUpdatesActionTypes)), map(function (action) { - var url = action.payload.url; - if (hasNoValue(_this.actionMap$[url])) { - _this.actionMap$[url] = new Subject(); - } - _this.actionMap$[url].next(action); - })); - /** - * Effect that makes sure all last fired NotificationActions are stored in the notification map of this service, with the id as their key - */ - this.mapLastNotificationActions$ = this.actions$ - .pipe(ofType.apply(void 0, Object.values(NotificationsActionTypes)), map(function (action) { - var id = action.payload.id || action.payload || _this.allIdentifier; - if (hasNoValue(_this.notificationActionMap$[id])) { - _this.notificationActionMap$[id] = new Subject(); - } - _this.notificationActionMap$[id].next(action); - })); - /** - * Effect that checks whether the removeAction's notification timeout ends before a user triggers another ObjectUpdatesAction - * When no ObjectUpdatesAction is fired during the timeout, a RemoteObjectUpdatesAction will be returned - * When a REINSTATE action is fired during the timeout, a NO_ACTION action will be returned - * When any other ObjectUpdatesAction is fired during the timeout, a RemoteObjectUpdatesAction will be returned - */ - this.removeAfterDiscardOrReinstateOnUndo$ = this.actions$ - .pipe(ofType(ObjectUpdatesActionTypes.DISCARD), switchMap(function (action) { - var url = action.payload.url; - var notification = action.payload.notification; - var timeOut = notification.options.timeOut; - return observableRace( - // Either wait for the delay and perform a remove action - observableOf(new RemoveObjectUpdatesAction(action.payload.url)).pipe(delay(timeOut)), - // Or wait for a a user action - _this.actionMap$[url].pipe(take(1), tap(function () { - _this.notificationsService.remove(notification); - }), map(function (updateAction) { - if (updateAction.type === ObjectUpdatesActionTypes.REINSTATE) { - // If someone reinstated, do nothing, just let the reinstating happen - return { type: 'NO_ACTION' }; - } - // If someone performed another action, assume the user does not want to reinstate and remove all changes - return new RemoveObjectUpdatesAction(action.payload.url); - })), _this.notificationActionMap$[notification.id].pipe(filter(function (notificationsAction) { return notificationsAction.type === NotificationsActionTypes.REMOVE_NOTIFICATION; }), map(function () { - return new RemoveObjectUpdatesAction(action.payload.url); - })), _this.notificationActionMap$[_this.allIdentifier].pipe(filter(function (notificationsAction) { return notificationsAction.type === NotificationsActionTypes.REMOVE_ALL_NOTIFICATIONS; }), map(function () { - return new RemoveObjectUpdatesAction(action.payload.url); - }))); - })); - } - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], ObjectUpdatesEffects.prototype, "mapLastActions$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], ObjectUpdatesEffects.prototype, "mapLastNotificationActions$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], ObjectUpdatesEffects.prototype, "removeAfterDiscardOrReinstateOnUndo$", void 0); - ObjectUpdatesEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions, - NotificationsService]) - ], ObjectUpdatesEffects); - return ObjectUpdatesEffects; -}()); -export { ObjectUpdatesEffects }; -//# sourceMappingURL=object-updates.effects.js.map \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.effects.js.map b/src/app/core/data/object-updates/object-updates.effects.js.map deleted file mode 100644 index e93476cc21..0000000000 --- a/src/app/core/data/object-updates/object-updates.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-updates.effects.js","sourceRoot":"","sources":["object-updates.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.reducer.js b/src/app/core/data/object-updates/object-updates.reducer.js deleted file mode 100644 index c0913a6033..0000000000 --- a/src/app/core/data/object-updates/object-updates.reducer.js +++ /dev/null @@ -1,237 +0,0 @@ -import { FieldChangeType, ObjectUpdatesActionTypes } from './object-updates.actions'; -import { hasNoValue, hasValue } from '../../../shared/empty.util'; -/** - * Path where discarded objects are saved - */ -export var OBJECT_UPDATES_TRASH_PATH = '/trash'; -/** - * Initial state for an existing initialized field - */ -var initialFieldState = { editable: false, isNew: false, isValid: true }; -/** - * Initial state for a newly added field - */ -var initialNewFieldState = { editable: true, isNew: true, isValid: undefined }; -// Object.create(null) ensures the object has no default js properties (e.g. `__proto__`) -var initialState = Object.create(null); -/** - * Reducer method to calculate the next ObjectUpdates state, based on the current state and the ObjectUpdatesAction - * @param state The current state - * @param action The action to perform on the current state - */ -export function objectUpdatesReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case ObjectUpdatesActionTypes.INITIALIZE_FIELDS: { - return initializeFieldsUpdate(state, action); - } - case ObjectUpdatesActionTypes.ADD_FIELD: { - return addFieldUpdate(state, action); - } - case ObjectUpdatesActionTypes.DISCARD: { - return discardObjectUpdates(state, action); - } - case ObjectUpdatesActionTypes.REINSTATE: { - return reinstateObjectUpdates(state, action); - } - case ObjectUpdatesActionTypes.REMOVE: { - return removeObjectUpdates(state, action); - } - case ObjectUpdatesActionTypes.REMOVE_FIELD: { - return removeFieldUpdate(state, action); - } - case ObjectUpdatesActionTypes.SET_EDITABLE_FIELD: { - return setEditableFieldUpdate(state, action); - } - case ObjectUpdatesActionTypes.SET_VALID_FIELD: { - return setValidFieldUpdate(state, action); - } - default: { - return state; - } - } -} -/** - * Initialize the state for a specific url and store all its fields in the store - * @param state The current state - * @param action The action to perform on the current state - */ -function initializeFieldsUpdate(state, action) { - var _a; - var url = action.payload.url; - var fields = action.payload.fields; - var lastModifiedServer = action.payload.lastModified; - var fieldStates = createInitialFieldStates(fields); - var newPageState = Object.assign({}, state[url], { fieldStates: fieldStates }, { fieldUpdates: {} }, { lastModified: lastModifiedServer }); - return Object.assign({}, state, (_a = {}, _a[url] = newPageState, _a)); -} -/** - * Add a new update for a specific field to the store - * @param state The current state - * @param action The action to perform on the current state - */ -function addFieldUpdate(state, action) { - var _a, _b, _c; - var url = action.payload.url; - var field = action.payload.field; - var changeType = action.payload.changeType; - var pageState = state[url] || {}; - var states = pageState.fieldStates; - if (changeType === FieldChangeType.ADD) { - states = Object.assign({}, (_a = {}, _a[field.uuid] = initialNewFieldState, _a), pageState.fieldStates); - } - var fieldUpdate = pageState.fieldUpdates[field.uuid] || {}; - var newChangeType = determineChangeType(fieldUpdate.changeType, changeType); - fieldUpdate = Object.assign({}, { field: field, changeType: newChangeType }); - var fieldUpdates = Object.assign({}, pageState.fieldUpdates, (_b = {}, _b[field.uuid] = fieldUpdate, _b)); - var newPageState = Object.assign({}, pageState, { fieldStates: states }, { fieldUpdates: fieldUpdates }); - return Object.assign({}, state, (_c = {}, _c[url] = newPageState, _c)); -} -/** - * Discard all updates for a specific action's url in the store - * @param state The current state - * @param action The action to perform on the current state - */ -function discardObjectUpdates(state, action) { - var _a, _b; - var url = action.payload.url; - var pageState = state[url]; - var newFieldStates = {}; - Object.keys(pageState.fieldStates).forEach(function (uuid) { - var fieldState = pageState.fieldStates[uuid]; - if (!fieldState.isNew) { - /* After discarding we don't want the reset fields to stay editable or invalid */ - newFieldStates[uuid] = Object.assign({}, fieldState, { editable: false, isValid: true }); - } - }); - var discardedPageState = Object.assign({}, pageState, { - fieldUpdates: {}, - fieldStates: newFieldStates - }); - return Object.assign({}, state, (_a = {}, _a[url] = discardedPageState, _a), (_b = {}, _b[url + OBJECT_UPDATES_TRASH_PATH] = pageState, _b)); -} -/** - * Reinstate all updates for a specific action's url in the store - * @param state The current state - * @param action The action to perform on the current state - */ -function reinstateObjectUpdates(state, action) { - var _a; - var url = action.payload.url; - var trashState = state[url + OBJECT_UPDATES_TRASH_PATH]; - var newState = Object.assign({}, state, (_a = {}, _a[url] = trashState, _a)); - delete newState[url + OBJECT_UPDATES_TRASH_PATH]; - return newState; -} -/** - * Remove all updates for a specific action's url in the store - * @param state The current state - * @param action The action to perform on the current state - */ -function removeObjectUpdates(state, action) { - var url = action.payload.url; - return removeObjectUpdatesByURL(state, url); -} -/** - * Remove all updates for a specific url in the store - * @param state The current state - * @param action The action to perform on the current state - */ -function removeObjectUpdatesByURL(state, url) { - var newState = Object.assign({}, state); - delete newState[url + OBJECT_UPDATES_TRASH_PATH]; - return newState; -} -/** - * Discard the update for a specific action's url and field UUID in the store - * @param state The current state - * @param action The action to perform on the current state - */ -function removeFieldUpdate(state, action) { - var _a; - var url = action.payload.url; - var uuid = action.payload.uuid; - var newPageState = state[url]; - if (hasValue(newPageState)) { - var newUpdates = Object.assign({}, newPageState.fieldUpdates); - if (hasValue(newUpdates[uuid])) { - delete newUpdates[uuid]; - } - var newFieldStates = Object.assign({}, newPageState.fieldStates); - if (hasValue(newFieldStates[uuid])) { - /* When resetting, make field not editable */ - if (newFieldStates[uuid].isNew) { - /* If this field was added, just throw it away */ - delete newFieldStates[uuid]; - } - else { - newFieldStates[uuid] = Object.assign({}, newFieldStates[uuid], { editable: false, isValid: true }); - } - } - newPageState = Object.assign({}, state[url], { - fieldUpdates: newUpdates, - fieldStates: newFieldStates - }); - } - return Object.assign({}, state, (_a = {}, _a[url] = newPageState, _a)); -} -/** - * Determine the most prominent FieldChangeType, ordered as follows: - * undefined < UPDATE < ADD < REMOVE - * @param oldType The current type - * @param newType The new type that should possibly override the new type - */ -function determineChangeType(oldType, newType) { - if (hasNoValue(newType)) { - return oldType; - } - if (hasNoValue(oldType)) { - return newType; - } - return oldType.valueOf() > newType.valueOf() ? oldType : newType; -} -/** - * Set the editable state of a specific action's url and uuid to false or true - * @param state The current state - * @param action The action to perform on the current state - */ -function setEditableFieldUpdate(state, action) { - var _a, _b; - var url = action.payload.url; - var uuid = action.payload.uuid; - var editable = action.payload.editable; - var pageState = state[url]; - var fieldState = pageState.fieldStates[uuid]; - var newFieldState = Object.assign({}, fieldState, { editable: editable }); - var newFieldStates = Object.assign({}, pageState.fieldStates, (_a = {}, _a[uuid] = newFieldState, _a)); - var newPageState = Object.assign({}, pageState, { fieldStates: newFieldStates }); - return Object.assign({}, state, (_b = {}, _b[url] = newPageState, _b)); -} -/** - * Set the isValid state of a specific action's url and uuid to false or true - * @param state The current state - * @param action The action to perform on the current state - */ -function setValidFieldUpdate(state, action) { - var _a, _b; - var url = action.payload.url; - var uuid = action.payload.uuid; - var isValid = action.payload.isValid; - var pageState = state[url]; - var fieldState = pageState.fieldStates[uuid]; - var newFieldState = Object.assign({}, fieldState, { isValid: isValid }); - var newFieldStates = Object.assign({}, pageState.fieldStates, (_a = {}, _a[uuid] = newFieldState, _a)); - var newPageState = Object.assign({}, pageState, { fieldStates: newFieldStates }); - return Object.assign({}, state, (_b = {}, _b[url] = newPageState, _b)); -} -/** - * Method to create an initial FieldStates object based on a list of Identifiable objects - * @param fields Identifiable objects - */ -function createInitialFieldStates(fields) { - var uuids = fields.map(function (field) { return field.uuid; }); - var fieldStates = {}; - uuids.forEach(function (uuid) { return fieldStates[uuid] = initialFieldState; }); - return fieldStates; -} -//# sourceMappingURL=object-updates.reducer.js.map \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.reducer.js.map b/src/app/core/data/object-updates/object-updates.reducer.js.map deleted file mode 100644 index b39ce3c775..0000000000 --- a/src/app/core/data/object-updates/object-updates.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-updates.reducer.js","sourceRoot":"","sources":["object-updates.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.service.js b/src/app/core/data/object-updates/object-updates.service.js deleted file mode 100644 index e7174b49c3..0000000000 --- a/src/app/core/data/object-updates/object-updates.service.js +++ /dev/null @@ -1,226 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { createSelector, select, Store } from '@ngrx/store'; -import { coreSelector } from '../../core.selectors'; -import { OBJECT_UPDATES_TRASH_PATH } from './object-updates.reducer'; -import { AddFieldUpdateAction, DiscardObjectUpdatesAction, FieldChangeType, InitializeFieldsAction, ReinstateObjectUpdatesAction, RemoveFieldUpdateAction, SetEditableFieldUpdateAction, SetValidFieldUpdateAction } from './object-updates.actions'; -import { distinctUntilChanged, filter, map } from 'rxjs/operators'; -import { hasNoValue, hasValue, isEmpty, isNotEmpty } from '../../../shared/empty.util'; -function objectUpdatesStateSelector() { - return createSelector(coreSelector, function (state) { return state['cache/object-updates']; }); -} -function filterByUrlObjectUpdatesStateSelector(url) { - return createSelector(objectUpdatesStateSelector(), function (state) { return state[url]; }); -} -function filterByUrlAndUUIDFieldStateSelector(url, uuid) { - return createSelector(filterByUrlObjectUpdatesStateSelector(url), function (state) { return state.fieldStates[uuid]; }); -} -/** - * Service that dispatches and reads from the ObjectUpdates' state in the store - */ -var ObjectUpdatesService = /** @class */ (function () { - function ObjectUpdatesService(store) { - this.store = store; - } - /** - * Method to dispatch an InitializeFieldsAction to the store - * @param url The page's URL for which the changes are being mapped - * @param fields The initial fields for the page's object - * @param lastModified The date the object was last modified - */ - ObjectUpdatesService.prototype.initialize = function (url, fields, lastModified) { - this.store.dispatch(new InitializeFieldsAction(url, fields, lastModified)); - }; - /** - * Method to dispatch an AddFieldUpdateAction to the store - * @param url The page's URL for which the changes are saved - * @param field An updated field for the page's object - * @param changeType The last type of change applied to this field - */ - ObjectUpdatesService.prototype.saveFieldUpdate = function (url, field, changeType) { - this.store.dispatch(new AddFieldUpdateAction(url, field, changeType)); - }; - /** - * Request the ObjectUpdatesEntry state for a specific URL - * @param url The URL to filter by - */ - ObjectUpdatesService.prototype.getObjectEntry = function (url) { - return this.store.pipe(select(filterByUrlObjectUpdatesStateSelector(url))); - }; - /** - * Request the getFieldState state for a specific URL and UUID - * @param url The URL to filter by - * @param uuid The field's UUID to filter by - */ - ObjectUpdatesService.prototype.getFieldState = function (url, uuid) { - return this.store.pipe(select(filterByUrlAndUUIDFieldStateSelector(url, uuid))); - }; - /** - * Method that combines the state's updates with the initial values (when there's no update) to create - * a FieldUpdates object - * @param url The URL of the page for which the FieldUpdates should be requested - * @param initialFields The initial values of the fields - */ - ObjectUpdatesService.prototype.getFieldUpdates = function (url, initialFields) { - var objectUpdates = this.getObjectEntry(url); - return objectUpdates.pipe(map(function (objectEntry) { - var fieldUpdates = {}; - Object.keys(objectEntry.fieldStates).forEach(function (uuid) { - var fieldUpdate = objectEntry.fieldUpdates[uuid]; - if (isEmpty(fieldUpdate)) { - var identifiable = initialFields.find(function (object) { return object.uuid === uuid; }); - fieldUpdate = { field: identifiable, changeType: undefined }; - } - fieldUpdates[uuid] = fieldUpdate; - }); - return fieldUpdates; - })); - }; - /** - * Method to check if a specific field is currently editable in the store - * @param url The URL of the page on which the field resides - * @param uuid The UUID of the field - */ - ObjectUpdatesService.prototype.isEditable = function (url, uuid) { - var fieldState$ = this.getFieldState(url, uuid); - return fieldState$.pipe(filter(function (fieldState) { return hasValue(fieldState); }), map(function (fieldState) { return fieldState.editable; }), distinctUntilChanged()); - }; - /** - * Method to check if a specific field is currently valid in the store - * @param url The URL of the page on which the field resides - * @param uuid The UUID of the field - */ - ObjectUpdatesService.prototype.isValid = function (url, uuid) { - var fieldState$ = this.getFieldState(url, uuid); - return fieldState$.pipe(filter(function (fieldState) { return hasValue(fieldState); }), map(function (fieldState) { return fieldState.isValid; }), distinctUntilChanged()); - }; - /** - * Method to check if a specific page is currently valid in the store - * @param url The URL of the page - */ - ObjectUpdatesService.prototype.isValidPage = function (url) { - var objectUpdates = this.getObjectEntry(url); - return objectUpdates.pipe(map(function (entry) { - return Object.values(entry.fieldStates).findIndex(function (state) { return !state.isValid; }) < 0; - }), distinctUntilChanged()); - }; - /** - * Calls the saveFieldUpdate method with FieldChangeType.ADD - * @param url The page's URL for which the changes are saved - * @param field An updated field for the page's object - */ - ObjectUpdatesService.prototype.saveAddFieldUpdate = function (url, field) { - this.saveFieldUpdate(url, field, FieldChangeType.ADD); - }; - /** - * Calls the saveFieldUpdate method with FieldChangeType.REMOVE - * @param url The page's URL for which the changes are saved - * @param field An updated field for the page's object - */ - ObjectUpdatesService.prototype.saveRemoveFieldUpdate = function (url, field) { - this.saveFieldUpdate(url, field, FieldChangeType.REMOVE); - }; - /** - * Calls the saveFieldUpdate method with FieldChangeType.UPDATE - * @param url The page's URL for which the changes are saved - * @param field An updated field for the page's object - */ - ObjectUpdatesService.prototype.saveChangeFieldUpdate = function (url, field) { - this.saveFieldUpdate(url, field, FieldChangeType.UPDATE); - }; - /** - * Dispatches a SetEditableFieldUpdateAction to the store to set a field's editable state - * @param url The URL of the page on which the field resides - * @param uuid The UUID of the field that should be set - * @param editable The new value of editable in the store for this field - */ - ObjectUpdatesService.prototype.setEditableFieldUpdate = function (url, uuid, editable) { - this.store.dispatch(new SetEditableFieldUpdateAction(url, uuid, editable)); - }; - /** - * Dispatches a SetValidFieldUpdateAction to the store to set a field's isValid state - * @param url The URL of the page on which the field resides - * @param uuid The UUID of the field that should be set - * @param valid The new value of isValid in the store for this field - */ - ObjectUpdatesService.prototype.setValidFieldUpdate = function (url, uuid, valid) { - this.store.dispatch(new SetValidFieldUpdateAction(url, uuid, valid)); - }; - /** - * Method to dispatch an DiscardObjectUpdatesAction to the store - * @param url The page's URL for which the changes should be discarded - * @param undoNotification The notification which is should possibly be canceled - */ - ObjectUpdatesService.prototype.discardFieldUpdates = function (url, undoNotification) { - this.store.dispatch(new DiscardObjectUpdatesAction(url, undoNotification)); - }; - /** - * Method to dispatch an ReinstateObjectUpdatesAction to the store - * @param url The page's URL for which the changes should be reinstated - */ - ObjectUpdatesService.prototype.reinstateFieldUpdates = function (url) { - this.store.dispatch(new ReinstateObjectUpdatesAction(url)); - }; - /** - * Method to dispatch an RemoveFieldUpdateAction to the store - * @param url The page's URL for which the changes should be removed - * @param uuid The UUID of the field that should be set - */ - ObjectUpdatesService.prototype.removeSingleFieldUpdate = function (url, uuid) { - this.store.dispatch(new RemoveFieldUpdateAction(url, uuid)); - }; - /** - * Method that combines the state's updates with the initial values (when there's no update) to create - * a list of updates fields - * @param url The URL of the page for which the updated fields should be requested - * @param initialFields The initial values of the fields - */ - ObjectUpdatesService.prototype.getUpdatedFields = function (url, initialFields) { - var objectUpdates = this.getObjectEntry(url); - return objectUpdates.pipe(map(function (objectEntry) { - var fields = []; - Object.keys(objectEntry.fieldStates).forEach(function (uuid) { - var fieldUpdate = objectEntry.fieldUpdates[uuid]; - if (hasNoValue(fieldUpdate) || fieldUpdate.changeType !== FieldChangeType.REMOVE) { - var field = void 0; - if (isNotEmpty(fieldUpdate)) { - field = fieldUpdate.field; - } - else { - field = initialFields.find(function (object) { return object.uuid === uuid; }); - } - fields.push(field); - } - }); - return fields; - })); - }; - /** - * Checks if the page currently has updates in the store or not - * @param url The page's url to check for in the store - */ - ObjectUpdatesService.prototype.hasUpdates = function (url) { - return this.getObjectEntry(url).pipe(map(function (objectEntry) { return hasValue(objectEntry) && isNotEmpty(objectEntry.fieldUpdates); })); - }; - /** - * Checks if the page currently is reinstatable in the store or not - * @param url The page's url to check for in the store - */ - ObjectUpdatesService.prototype.isReinstatable = function (url) { - return this.hasUpdates(url + OBJECT_UPDATES_TRASH_PATH); - }; - /** - * Request the current lastModified date stored for the updates in the store - * @param url The page's url to check for in the store - */ - ObjectUpdatesService.prototype.getLastModified = function (url) { - return this.getObjectEntry(url).pipe(map(function (entry) { return entry.lastModified; })); - }; - ObjectUpdatesService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store]) - ], ObjectUpdatesService); - return ObjectUpdatesService; -}()); -export { ObjectUpdatesService }; -//# sourceMappingURL=object-updates.service.js.map \ No newline at end of file diff --git a/src/app/core/data/object-updates/object-updates.service.js.map b/src/app/core/data/object-updates/object-updates.service.js.map deleted file mode 100644 index 6e02bb3133..0000000000 --- a/src/app/core/data/object-updates/object-updates.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-updates.service.js","sourceRoot":"","sources":["object-updates.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/paginated-list.js b/src/app/core/data/paginated-list.js deleted file mode 100644 index 04b1f13785..0000000000 --- a/src/app/core/data/paginated-list.js +++ /dev/null @@ -1,115 +0,0 @@ -import { hasValue } from '../../shared/empty.util'; -var PaginatedList = /** @class */ (function () { - function PaginatedList(pageInfo, page) { - this.pageInfo = pageInfo; - this.page = page; - } - Object.defineProperty(PaginatedList.prototype, "elementsPerPage", { - get: function () { - if (hasValue(this.pageInfo) && hasValue(this.pageInfo.elementsPerPage)) { - return this.pageInfo.elementsPerPage; - } - return this.getPageLength(); - }, - set: function (value) { - this.pageInfo.elementsPerPage = value; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginatedList.prototype, "totalElements", { - get: function () { - if (hasValue(this.pageInfo) && hasValue(this.pageInfo.totalElements)) { - return this.pageInfo.totalElements; - } - return this.getPageLength(); - }, - set: function (value) { - this.pageInfo.totalElements = value; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginatedList.prototype, "totalPages", { - get: function () { - if (hasValue(this.pageInfo) && hasValue(this.pageInfo.totalPages)) { - return this.pageInfo.totalPages; - } - return 1; - }, - set: function (value) { - this.pageInfo.totalPages = value; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginatedList.prototype, "currentPage", { - get: function () { - if (hasValue(this.pageInfo) && hasValue(this.pageInfo.currentPage)) { - return this.pageInfo.currentPage; - } - return 1; - }, - set: function (value) { - this.pageInfo.currentPage = value; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginatedList.prototype, "first", { - get: function () { - return this.pageInfo.first; - }, - set: function (first) { - this.pageInfo.first = first; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginatedList.prototype, "prev", { - get: function () { - return this.pageInfo.prev; - }, - set: function (prev) { - this.pageInfo.prev = prev; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginatedList.prototype, "next", { - get: function () { - return this.pageInfo.next; - }, - set: function (next) { - this.pageInfo.next = next; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginatedList.prototype, "last", { - get: function () { - return this.pageInfo.last; - }, - set: function (last) { - this.pageInfo.last = last; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginatedList.prototype, "self", { - get: function () { - return this.pageInfo.self; - }, - set: function (self) { - this.pageInfo.self = self; - }, - enumerable: true, - configurable: true - }); - PaginatedList.prototype.getPageLength = function () { - return (Array.isArray(this.page)) ? this.page.length : 0; - }; - return PaginatedList; -}()); -export { PaginatedList }; -//# sourceMappingURL=paginated-list.js.map \ No newline at end of file diff --git a/src/app/core/data/paginated-list.js.map b/src/app/core/data/paginated-list.js.map deleted file mode 100644 index 785782e72a..0000000000 --- a/src/app/core/data/paginated-list.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"paginated-list.js","sourceRoot":"","sources":["paginated-list.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/parsing.service.js b/src/app/core/data/parsing.service.js deleted file mode 100644 index 31f910aaf5..0000000000 --- a/src/app/core/data/parsing.service.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/parsing.service.js.map b/src/app/core/data/parsing.service.js.map deleted file mode 100644 index 51f1b25d03..0000000000 --- a/src/app/core/data/parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parsing.service.js","sourceRoot":"","sources":["parsing.service.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/data/registry-bitstreamformats-response-parsing.service.js b/src/app/core/data/registry-bitstreamformats-response-parsing.service.js deleted file mode 100644 index a9eb44b069..0000000000 --- a/src/app/core/data/registry-bitstreamformats-response-parsing.service.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { RegistryBitstreamformatsSuccessResponse } from '../cache/response.models'; -import { RegistryBitstreamformatsResponse } from '../registry/registry-bitstreamformats-response.model'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { DSOResponseParsingService } from './dso-response-parsing.service'; -import { Injectable } from '@angular/core'; -var RegistryBitstreamformatsResponseParsingService = /** @class */ (function () { - function RegistryBitstreamformatsResponseParsingService(dsoParser) { - this.dsoParser = dsoParser; - } - RegistryBitstreamformatsResponseParsingService.prototype.parse = function (request, data) { - var payload = data.payload; - var bitstreamformats = payload._embedded.bitstreamformats; - payload.bitstreamformats = bitstreamformats; - var deserialized = new DSpaceRESTv2Serializer(RegistryBitstreamformatsResponse).deserialize(payload); - return new RegistryBitstreamformatsSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(data.payload.page)); - }; - RegistryBitstreamformatsResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) - ], RegistryBitstreamformatsResponseParsingService); - return RegistryBitstreamformatsResponseParsingService; -}()); -export { RegistryBitstreamformatsResponseParsingService }; -//# sourceMappingURL=registry-bitstreamformats-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/registry-bitstreamformats-response-parsing.service.js.map b/src/app/core/data/registry-bitstreamformats-response-parsing.service.js.map deleted file mode 100644 index 949f80e28a..0000000000 --- a/src/app/core/data/registry-bitstreamformats-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"registry-bitstreamformats-response-parsing.service.js","sourceRoot":"","sources":["registry-bitstreamformats-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uCAAuC,EAAgB,MAAM,0BAA0B,CAAC;AACjG,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AACxG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAGrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;IACE,wDAAoB,SAAoC;QAApC,cAAS,GAAT,SAAS,CAA2B;IACxD,CAAC;IAED,8DAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;QAC5D,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAE5C,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,gCAAgC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACvG,OAAO,IAAI,uCAAuC,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACxJ,CAAC;IAZU,8CAA8C;QAD1D,UAAU,EAAE;iDAEoB,yBAAyB;OAD7C,8CAA8C,CAc1D;IAAD,qDAAC;CAAA,AAdD,IAcC;SAdY,8CAA8C"} \ No newline at end of file diff --git a/src/app/core/data/registry-metadatafields-response-parsing.service.js b/src/app/core/data/registry-metadatafields-response-parsing.service.js deleted file mode 100644 index e18cc90082..0000000000 --- a/src/app/core/data/registry-metadatafields-response-parsing.service.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { RegistryMetadatafieldsSuccessResponse } from '../cache/response.models'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { DSOResponseParsingService } from './dso-response-parsing.service'; -import { Injectable } from '@angular/core'; -import { RegistryMetadatafieldsResponse } from '../registry/registry-metadatafields-response.model'; -import { hasValue } from '../../shared/empty.util'; -var RegistryMetadatafieldsResponseParsingService = /** @class */ (function () { - function RegistryMetadatafieldsResponseParsingService(dsoParser) { - this.dsoParser = dsoParser; - } - RegistryMetadatafieldsResponseParsingService.prototype.parse = function (request, data) { - var payload = data.payload; - var metadatafields = []; - if (hasValue(payload._embedded)) { - metadatafields = payload._embedded.metadatafields; - metadatafields.forEach(function (field) { - field.schema = field._embedded.schema; - }); - } - payload.metadatafields = metadatafields; - var deserialized = new DSpaceRESTv2Serializer(RegistryMetadatafieldsResponse).deserialize(payload); - return new RegistryMetadatafieldsSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(data.payload)); - }; - RegistryMetadatafieldsResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) - ], RegistryMetadatafieldsResponseParsingService); - return RegistryMetadatafieldsResponseParsingService; -}()); -export { RegistryMetadatafieldsResponseParsingService }; -//# sourceMappingURL=registry-metadatafields-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/registry-metadatafields-response-parsing.service.js.map b/src/app/core/data/registry-metadatafields-response-parsing.service.js.map deleted file mode 100644 index fb37789d6e..0000000000 --- a/src/app/core/data/registry-metadatafields-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"registry-metadatafields-response-parsing.service.js","sourceRoot":"","sources":["registry-metadatafields-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,qCAAqC,EAEtC,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,8BAA8B,EAAE,MAAM,oDAAoD,CAAC;AACpG,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD;IACE,sDAAoB,SAAoC;QAApC,cAAS,GAAT,SAAS,CAA2B;IACxD,CAAC;IAED,4DAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,cAAc,GAAG,EAAE,CAAC;QAExB,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC/B,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC;YAClD,cAAc,CAAC,OAAO,CAAC,UAAC,KAAK;gBAC3B,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;YACxC,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;QAExC,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,8BAA8B,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACrG,OAAO,IAAI,qCAAqC,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACjJ,CAAC;IApBU,4CAA4C;QADxD,UAAU,EAAE;iDAEoB,yBAAyB;OAD7C,4CAA4C,CAsBxD;IAAD,mDAAC;CAAA,AAtBD,IAsBC;SAtBY,4CAA4C"} \ No newline at end of file diff --git a/src/app/core/data/registry-metadataschemas-response-parsing.service.js b/src/app/core/data/registry-metadataschemas-response-parsing.service.js deleted file mode 100644 index ed18663914..0000000000 --- a/src/app/core/data/registry-metadataschemas-response-parsing.service.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { RegistryMetadataschemasSuccessResponse } from '../cache/response.models'; -import { RegistryMetadataschemasResponse } from '../registry/registry-metadataschemas-response.model'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { DSOResponseParsingService } from './dso-response-parsing.service'; -import { Injectable } from '@angular/core'; -import { hasValue } from '../../shared/empty.util'; -var RegistryMetadataschemasResponseParsingService = /** @class */ (function () { - function RegistryMetadataschemasResponseParsingService(dsoParser) { - this.dsoParser = dsoParser; - } - RegistryMetadataschemasResponseParsingService.prototype.parse = function (request, data) { - var payload = data.payload; - var metadataschemas = []; - if (hasValue(payload._embedded)) { - metadataschemas = payload._embedded.metadataschemas; - } - payload.metadataschemas = metadataschemas; - var deserialized = new DSpaceRESTv2Serializer(RegistryMetadataschemasResponse).deserialize(payload); - return new RegistryMetadataschemasSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(data.payload)); - }; - RegistryMetadataschemasResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) - ], RegistryMetadataschemasResponseParsingService); - return RegistryMetadataschemasResponseParsingService; -}()); -export { RegistryMetadataschemasResponseParsingService }; -//# sourceMappingURL=registry-metadataschemas-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/registry-metadataschemas-response-parsing.service.js.map b/src/app/core/data/registry-metadataschemas-response-parsing.service.js.map deleted file mode 100644 index a2e5eb29e1..0000000000 --- a/src/app/core/data/registry-metadataschemas-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"registry-metadataschemas-response-parsing.service.js","sourceRoot":"","sources":["registry-metadataschemas-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,sCAAsC,EAAgB,MAAM,0BAA0B,CAAC;AAIhG,OAAO,EAAE,+BAA+B,EAAE,MAAM,qDAAqD,CAAC;AACtG,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD;IACE,uDAAoB,SAAoC;QAApC,cAAS,GAAT,SAAS,CAA2B;IACxD,CAAC;IAED,6DAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE7B,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC/B,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;SACrD;QACD,OAAO,CAAC,eAAe,GAAG,eAAe,CAAC;QAE1C,IAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,+BAA+B,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACtG,OAAO,IAAI,sCAAsC,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAClJ,CAAC;IAfU,6CAA6C;QADzD,UAAU,EAAE;iDAEoB,yBAAyB;OAD7C,6CAA6C,CAiBzD;IAAD,oDAAC;CAAA,AAjBD,IAiBC;SAjBY,6CAA6C"} \ No newline at end of file diff --git a/src/app/core/data/remote-data-error.js b/src/app/core/data/remote-data-error.js deleted file mode 100644 index 7c20bd85c3..0000000000 --- a/src/app/core/data/remote-data-error.js +++ /dev/null @@ -1,10 +0,0 @@ -var RemoteDataError = /** @class */ (function () { - function RemoteDataError(statusCode, statusText, message) { - this.statusCode = statusCode; - this.statusText = statusText; - this.message = message; - } - return RemoteDataError; -}()); -export { RemoteDataError }; -//# sourceMappingURL=remote-data-error.js.map \ No newline at end of file diff --git a/src/app/core/data/remote-data-error.js.map b/src/app/core/data/remote-data-error.js.map deleted file mode 100644 index cd2f0c1e5e..0000000000 --- a/src/app/core/data/remote-data-error.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"remote-data-error.js","sourceRoot":"","sources":["remote-data-error.ts"],"names":[],"mappings":"AAAA;IACE,yBACS,UAAkB,EAClB,UAAkB,EAClB,OAAe;QAFf,eAAU,GAAV,UAAU,CAAQ;QAClB,eAAU,GAAV,UAAU,CAAQ;QAClB,YAAO,GAAP,OAAO,CAAQ;IAExB,CAAC;IACH,sBAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/core/data/remote-data.js b/src/app/core/data/remote-data.js deleted file mode 100644 index bdb18de353..0000000000 --- a/src/app/core/data/remote-data.js +++ /dev/null @@ -1,77 +0,0 @@ -import { hasValue } from '../../shared/empty.util'; -export var RemoteDataState; -(function (RemoteDataState) { - RemoteDataState["RequestPending"] = "RequestPending"; - RemoteDataState["ResponsePending"] = "ResponsePending"; - RemoteDataState["Failed"] = "Failed"; - RemoteDataState["Success"] = "Success"; -})(RemoteDataState || (RemoteDataState = {})); -/** - * A class to represent the state of a remote resource - */ -var RemoteData = /** @class */ (function () { - function RemoteData(requestPending, responsePending, isSuccessful, error, payload) { - this.requestPending = requestPending; - this.responsePending = responsePending; - this.isSuccessful = isSuccessful; - this.error = error; - this.payload = payload; - } - Object.defineProperty(RemoteData.prototype, "state", { - get: function () { - if (this.isSuccessful === true && hasValue(this.payload)) { - return RemoteDataState.Success; - } - else if (this.isSuccessful === false) { - return RemoteDataState.Failed; - } - else if (this.requestPending === true) { - return RemoteDataState.RequestPending; - } - else { - return RemoteDataState.ResponsePending; - } - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RemoteData.prototype, "isRequestPending", { - get: function () { - return this.state === RemoteDataState.RequestPending; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RemoteData.prototype, "isResponsePending", { - get: function () { - return this.state === RemoteDataState.ResponsePending; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RemoteData.prototype, "isLoading", { - get: function () { - return this.state === RemoteDataState.RequestPending - || this.state === RemoteDataState.ResponsePending; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RemoteData.prototype, "hasFailed", { - get: function () { - return this.state === RemoteDataState.Failed; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(RemoteData.prototype, "hasSucceeded", { - get: function () { - return this.state === RemoteDataState.Success; - }, - enumerable: true, - configurable: true - }); - return RemoteData; -}()); -export { RemoteData }; -//# sourceMappingURL=remote-data.js.map \ No newline at end of file diff --git a/src/app/core/data/remote-data.js.map b/src/app/core/data/remote-data.js.map deleted file mode 100644 index 9b0161dd69..0000000000 --- a/src/app/core/data/remote-data.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"remote-data.js","sourceRoot":"","sources":["remote-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,oDAAiC,CAAA;IACjC,sDAAmC,CAAA;IACnC,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;AACrB,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED;;GAEG;AACH;IACE,oBACU,cAAuB,EACvB,eAAwB,EACxB,YAAqB,EACtB,KAAsB,EACtB,OAAU;QAJT,mBAAc,GAAd,cAAc,CAAS;QACvB,oBAAe,GAAf,eAAe,CAAS;QACxB,iBAAY,GAAZ,YAAY,CAAS;QACtB,UAAK,GAAL,KAAK,CAAiB;QACtB,YAAO,GAAP,OAAO,CAAG;IAEnB,CAAC;IAED,sBAAI,6BAAK;aAAT;YACE,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBACxD,OAAO,eAAe,CAAC,OAAO,CAAA;aAC/B;iBAAM,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,EAAE;gBACtC,OAAO,eAAe,CAAC,MAAM,CAAA;aAC9B;iBAAM,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,EAAE;gBACvC,OAAO,eAAe,CAAC,cAAc,CAAA;aACtC;iBAAM;gBACL,OAAO,eAAe,CAAC,eAAe,CAAA;aACvC;QACH,CAAC;;;OAAA;IAED,sBAAI,wCAAgB;aAApB;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,cAAc,CAAC;QACvD,CAAC;;;OAAA;IAED,sBAAI,yCAAiB;aAArB;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,eAAe,CAAC;QACxD,CAAC;;;OAAA;IAED,sBAAI,iCAAS;aAAb;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,cAAc;mBAC/C,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,eAAe,CAAC;QACtD,CAAC;;;OAAA;IAED,sBAAI,iCAAS;aAAb;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,MAAM,CAAC;QAC/C,CAAC;;;OAAA;IAED,sBAAI,oCAAY;aAAhB;YACE,OAAO,IAAI,CAAC,KAAK,KAAK,eAAe,CAAC,OAAO,CAAC;QAChD,CAAC;;;OAAA;IAEH,iBAAC;AAAD,CAAC,AA3CD,IA2CC"} \ No newline at end of file diff --git a/src/app/core/data/request.actions.js b/src/app/core/data/request.actions.js deleted file mode 100644 index 3f49f58b47..0000000000 --- a/src/app/core/data/request.actions.js +++ /dev/null @@ -1,89 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -/** - * The list of RequestAction type definitions - */ -export var RequestActionTypes = { - CONFIGURE: type('dspace/core/data/request/CONFIGURE'), - EXECUTE: type('dspace/core/data/request/EXECUTE'), - COMPLETE: type('dspace/core/data/request/COMPLETE'), - RESET_TIMESTAMPS: type('dspace/core/data/request/RESET_TIMESTAMPS'), - REMOVE: type('dspace/core/data/request/REMOVE') -}; -/* tslint:disable:max-classes-per-file */ -var RequestConfigureAction = /** @class */ (function () { - function RequestConfigureAction(request) { - this.type = RequestActionTypes.CONFIGURE; - this.payload = request; - } - return RequestConfigureAction; -}()); -export { RequestConfigureAction }; -var RequestExecuteAction = /** @class */ (function () { - /** - * Create a new RequestExecuteAction - * - * @param uuid - * the request's uuid - */ - function RequestExecuteAction(uuid) { - this.type = RequestActionTypes.EXECUTE; - this.payload = uuid; - } - return RequestExecuteAction; -}()); -export { RequestExecuteAction }; -/** - * An ngrx action to indicate a response was returned - */ -var RequestCompleteAction = /** @class */ (function () { - /** - * Create a new RequestCompleteAction - * - * @param uuid - * the request's uuid - */ - function RequestCompleteAction(uuid, response) { - this.type = RequestActionTypes.COMPLETE; - this.payload = { - uuid: uuid, - response: response - }; - } - return RequestCompleteAction; -}()); -export { RequestCompleteAction }; -/** - * An ngrx action to reset the timeAdded property of all responses in the cached objects - */ -var ResetResponseTimestampsAction = /** @class */ (function () { - /** - * Create a new ResetResponseTimestampsAction - * - * @param newTimestamp - * the new timeAdded all objects should get - */ - function ResetResponseTimestampsAction(newTimestamp) { - this.type = RequestActionTypes.RESET_TIMESTAMPS; - this.payload = newTimestamp; - } - return ResetResponseTimestampsAction; -}()); -export { ResetResponseTimestampsAction }; -/** - * An ngrx action to remove a cached request - */ -var RequestRemoveAction = /** @class */ (function () { - /** - * Create a new RequestRemoveAction - * - * @param uuid - * the request's uuid - */ - function RequestRemoveAction(uuid) { - this.type = RequestActionTypes.REMOVE; - this.uuid = uuid; - } - return RequestRemoveAction; -}()); -export { RequestRemoveAction }; -//# sourceMappingURL=request.actions.js.map \ No newline at end of file diff --git a/src/app/core/data/request.actions.js.map b/src/app/core/data/request.actions.js.map deleted file mode 100644 index 19efc211e6..0000000000 --- a/src/app/core/data/request.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"request.actions.js","sourceRoot":"","sources":["request.actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAI9C;;GAEG;AACH,MAAM,CAAC,IAAM,kBAAkB,GAAG;IAChC,SAAS,EAAE,IAAI,CAAC,oCAAoC,CAAC;IACrD,OAAO,EAAE,IAAI,CAAC,kCAAkC,CAAC;IACjD,QAAQ,EAAE,IAAI,CAAC,mCAAmC,CAAC;IACnD,gBAAgB,EAAE,IAAI,CAAC,2CAA2C,CAAC;IACnE,MAAM,EAAE,IAAI,CAAC,iCAAiC,CAAC;CAChD,CAAC;AAEF,yCAAyC;AACzC;IAIE,gCACE,OAAoB;QAJtB,SAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC;QAMlC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IACH,6BAAC;AAAD,CAAC,AATD,IASC;;AAED;IAIE;;;;;OAKG;IACH,8BAAY,IAAY;QATxB,SAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC;QAUhC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACrB,CAAC;IACH,2BAAC;AAAD,CAAC,AAbD,IAaC;;AAED;;GAEG;AACH;IAOE;;;;;OAKG;IACH,+BAAY,IAAY,EAAE,QAAsB;QAZhD,SAAI,GAAG,kBAAkB,CAAC,QAAQ,CAAC;QAajC,IAAI,CAAC,OAAO,GAAG;YACb,IAAI,MAAA;YACJ,QAAQ,UAAA;SACT,CAAC;IACJ,CAAC;IACH,4BAAC;AAAD,CAAC,AAnBD,IAmBC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,uCAAY,YAAoB;QAThC,SAAI,GAAG,kBAAkB,CAAC,gBAAgB,CAAC;QAUzC,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;IAC9B,CAAC;IACH,oCAAC;AAAD,CAAC,AAbD,IAaC;;AAED;;GAEG;AACH;IAIE;;;;;OAKG;IACH,6BAAY,IAAY;QATxB,SAAI,GAAG,kBAAkB,CAAC,MAAM,CAAC;QAU/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IACH,0BAAC;AAAD,CAAC,AAbD,IAaC"} \ No newline at end of file diff --git a/src/app/core/data/request.effects.js b/src/app/core/data/request.effects.js deleted file mode 100644 index 931aab0a54..0000000000 --- a/src/app/core/data/request.effects.js +++ /dev/null @@ -1,71 +0,0 @@ -import * as tslib_1 from "tslib"; -import { of as observableOf } from 'rxjs'; -import { Inject, Injectable, Injector } from '@angular/core'; -import { Actions, Effect, ofType } from '@ngrx/effects'; -import { GLOBAL_CONFIG } from '../../../config'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { DSpaceRESTv2Service } from '../dspace-rest-v2/dspace-rest-v2.service'; -import { RequestActionTypes, RequestCompleteAction, ResetResponseTimestampsAction } from './request.actions'; -import { RequestService } from './request.service'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; -import { catchError, filter, flatMap, map, take } from 'rxjs/operators'; -import { ErrorResponse } from '../cache/response.models'; -import { StoreActionTypes } from '../../store.actions'; -export var addToResponseCacheAndCompleteAction = function (request, envConfig) { - return function (source) { - return source.pipe(map(function (response) { - return new RequestCompleteAction(request.uuid, response); - })); - }; -}; -var RequestEffects = /** @class */ (function () { - function RequestEffects(EnvConfig, actions$, restApi, injector, requestService) { - var _this = this; - this.EnvConfig = EnvConfig; - this.actions$ = actions$; - this.restApi = restApi; - this.injector = injector; - this.requestService = requestService; - this.execute = this.actions$.pipe(ofType(RequestActionTypes.EXECUTE), flatMap(function (action) { - return _this.requestService.getByUUID(action.payload).pipe(take(1)); - }), filter(function (entry) { return hasValue(entry); }), map(function (entry) { return entry.request; }), flatMap(function (request) { - var body; - if (isNotEmpty(request.body)) { - var serializer = new DSpaceRESTv2Serializer(NormalizedObjectFactory.getConstructor(request.body.type)); - body = serializer.serialize(request.body); - } - return _this.restApi.request(request.method, request.href, body, request.options).pipe(map(function (data) { return _this.injector.get(request.getResponseParser()).parse(request, data); }), addToResponseCacheAndCompleteAction(request, _this.EnvConfig), catchError(function (error) { return observableOf(new ErrorResponse(error)).pipe(addToResponseCacheAndCompleteAction(request, _this.EnvConfig)); })); - })); - /** - * When the store is rehydrated in the browser, set all cache - * timestamps to 'now', because the time zone of the server can - * differ from the client. - * - * This assumes that the server cached everything a negligible - * time ago, and will likely need to be revisited later - */ - this.fixTimestampsOnRehydrate = this.actions$ - .pipe(ofType(StoreActionTypes.REHYDRATE), map(function () { return new ResetResponseTimestampsAction(new Date().getTime()); })); - } - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], RequestEffects.prototype, "execute", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], RequestEffects.prototype, "fixTimestampsOnRehydrate", void 0); - RequestEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, Actions, - DSpaceRESTv2Service, - Injector, - RequestService]) - ], RequestEffects); - return RequestEffects; -}()); -export { RequestEffects }; -/* tslint:enable:max-classes-per-file */ -//# sourceMappingURL=request.effects.js.map \ No newline at end of file diff --git a/src/app/core/data/request.effects.js.map b/src/app/core/data/request.effects.js.map deleted file mode 100644 index 519047c10e..0000000000 --- a/src/app/core/data/request.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"request.effects.js","sourceRoot":"","sources":["request.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/request.models.js b/src/app/core/data/request.models.js deleted file mode 100644 index 017116975d..0000000000 --- a/src/app/core/data/request.models.js +++ /dev/null @@ -1,478 +0,0 @@ -import * as tslib_1 from "tslib"; -import { BrowseEntriesResponseParsingService } from './browse-entries-response-parsing.service'; -import { DSOResponseParsingService } from './dso-response-parsing.service'; -import { EndpointMapResponseParsingService } from './endpoint-map-response-parsing.service'; -import { BrowseResponseParsingService } from './browse-response-parsing.service'; -import { ConfigResponseParsingService } from '../config/config-response-parsing.service'; -import { AuthResponseParsingService } from '../auth/auth-response-parsing.service'; -import { SubmissionResponseParsingService } from '../submission/submission-response-parsing.service'; -import { IntegrationResponseParsingService } from '../integration/integration-response-parsing.service'; -import { RestRequestMethod } from './rest-request-method'; -import { EpersonResponseParsingService } from '../eperson/eperson-response-parsing.service'; -import { BrowseItemsResponseParsingService } from './browse-items-response-parsing-service'; -import { MetadataschemaParsingService } from './metadataschema-parsing.service'; -import { MetadatafieldParsingService } from './metadatafield-parsing.service'; -import { URLCombiner } from '../url-combiner/url-combiner'; -import { TaskResponseParsingService } from '../tasks/task-response-parsing.service'; -/* tslint:disable:max-classes-per-file */ -var RestRequest = /** @class */ (function () { - function RestRequest(uuid, href, method, body, options) { - if (method === void 0) { method = RestRequestMethod.GET; } - this.uuid = uuid; - this.href = href; - this.method = method; - this.body = body; - this.options = options; - this.responseMsToLive = 0; - } - RestRequest.prototype.getResponseParser = function () { - return DSOResponseParsingService; - }; - Object.defineProperty(RestRequest.prototype, "toCache", { - get: function () { - return this.responseMsToLive > 0; - }, - enumerable: true, - configurable: true - }); - return RestRequest; -}()); -export { RestRequest }; -var GetRequest = /** @class */ (function (_super) { - tslib_1.__extends(GetRequest, _super); - function GetRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, RestRequestMethod.GET, body, options) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - _this.options = options; - _this.responseMsToLive = 60 * 15 * 1000; - return _this; - } - return GetRequest; -}(RestRequest)); -export { GetRequest }; -var PostRequest = /** @class */ (function (_super) { - tslib_1.__extends(PostRequest, _super); - function PostRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, RestRequestMethod.POST, body) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - _this.options = options; - return _this; - } - return PostRequest; -}(RestRequest)); -export { PostRequest }; -var PutRequest = /** @class */ (function (_super) { - tslib_1.__extends(PutRequest, _super); - function PutRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, RestRequestMethod.PUT, body) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - _this.options = options; - return _this; - } - return PutRequest; -}(RestRequest)); -export { PutRequest }; -var DeleteRequest = /** @class */ (function (_super) { - tslib_1.__extends(DeleteRequest, _super); - function DeleteRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, RestRequestMethod.DELETE, body) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - _this.options = options; - return _this; - } - return DeleteRequest; -}(RestRequest)); -export { DeleteRequest }; -var OptionsRequest = /** @class */ (function (_super) { - tslib_1.__extends(OptionsRequest, _super); - function OptionsRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, RestRequestMethod.OPTIONS, body) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - _this.options = options; - return _this; - } - return OptionsRequest; -}(RestRequest)); -export { OptionsRequest }; -var HeadRequest = /** @class */ (function (_super) { - tslib_1.__extends(HeadRequest, _super); - function HeadRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, RestRequestMethod.HEAD, body) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - _this.options = options; - return _this; - } - return HeadRequest; -}(RestRequest)); -export { HeadRequest }; -var PatchRequest = /** @class */ (function (_super) { - tslib_1.__extends(PatchRequest, _super); - function PatchRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, RestRequestMethod.PATCH, body) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - _this.options = options; - return _this; - } - return PatchRequest; -}(RestRequest)); -export { PatchRequest }; -var FindByIDRequest = /** @class */ (function (_super) { - tslib_1.__extends(FindByIDRequest, _super); - function FindByIDRequest(uuid, href, resourceID) { - var _this = _super.call(this, uuid, href) || this; - _this.resourceID = resourceID; - return _this; - } - return FindByIDRequest; -}(GetRequest)); -export { FindByIDRequest }; -var FindAllOptions = /** @class */ (function () { - function FindAllOptions() { - } - return FindAllOptions; -}()); -export { FindAllOptions }; -var FindAllRequest = /** @class */ (function (_super) { - tslib_1.__extends(FindAllRequest, _super); - function FindAllRequest(uuid, href, body) { - var _this = _super.call(this, uuid, href) || this; - _this.body = body; - return _this; - } - return FindAllRequest; -}(GetRequest)); -export { FindAllRequest }; -var EndpointMapRequest = /** @class */ (function (_super) { - tslib_1.__extends(EndpointMapRequest, _super); - function EndpointMapRequest(uuid, href, body) { - return _super.call(this, uuid, new URLCombiner(href, '?endpointMap').toString(), body) || this; - } - EndpointMapRequest.prototype.getResponseParser = function () { - return EndpointMapResponseParsingService; - }; - return EndpointMapRequest; -}(GetRequest)); -export { EndpointMapRequest }; -var BrowseEndpointRequest = /** @class */ (function (_super) { - tslib_1.__extends(BrowseEndpointRequest, _super); - function BrowseEndpointRequest(uuid, href) { - return _super.call(this, uuid, href) || this; - } - BrowseEndpointRequest.prototype.getResponseParser = function () { - return BrowseResponseParsingService; - }; - return BrowseEndpointRequest; -}(GetRequest)); -export { BrowseEndpointRequest }; -var BrowseEntriesRequest = /** @class */ (function (_super) { - tslib_1.__extends(BrowseEntriesRequest, _super); - function BrowseEntriesRequest() { - return _super !== null && _super.apply(this, arguments) || this; - } - BrowseEntriesRequest.prototype.getResponseParser = function () { - return BrowseEntriesResponseParsingService; - }; - return BrowseEntriesRequest; -}(GetRequest)); -export { BrowseEntriesRequest }; -var BrowseItemsRequest = /** @class */ (function (_super) { - tslib_1.__extends(BrowseItemsRequest, _super); - function BrowseItemsRequest() { - return _super !== null && _super.apply(this, arguments) || this; - } - BrowseItemsRequest.prototype.getResponseParser = function () { - return BrowseItemsResponseParsingService; - }; - return BrowseItemsRequest; -}(GetRequest)); -export { BrowseItemsRequest }; -var ConfigRequest = /** @class */ (function (_super) { - tslib_1.__extends(ConfigRequest, _super); - function ConfigRequest(uuid, href, options) { - var _this = _super.call(this, uuid, href, null, options) || this; - _this.options = options; - return _this; - } - ConfigRequest.prototype.getResponseParser = function () { - return ConfigResponseParsingService; - }; - return ConfigRequest; -}(GetRequest)); -export { ConfigRequest }; -var AuthPostRequest = /** @class */ (function (_super) { - tslib_1.__extends(AuthPostRequest, _super); - function AuthPostRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.body = body; - _this.options = options; - return _this; - } - AuthPostRequest.prototype.getResponseParser = function () { - return AuthResponseParsingService; - }; - return AuthPostRequest; -}(PostRequest)); -export { AuthPostRequest }; -var AuthGetRequest = /** @class */ (function (_super) { - tslib_1.__extends(AuthGetRequest, _super); - function AuthGetRequest(uuid, href, options) { - var _this = _super.call(this, uuid, href, null, options) || this; - _this.options = options; - return _this; - } - AuthGetRequest.prototype.getResponseParser = function () { - return AuthResponseParsingService; - }; - return AuthGetRequest; -}(GetRequest)); -export { AuthGetRequest }; -var IntegrationRequest = /** @class */ (function (_super) { - tslib_1.__extends(IntegrationRequest, _super); - function IntegrationRequest(uuid, href) { - return _super.call(this, uuid, href) || this; - } - IntegrationRequest.prototype.getResponseParser = function () { - return IntegrationResponseParsingService; - }; - return IntegrationRequest; -}(GetRequest)); -export { IntegrationRequest }; -/** - * Request to create a MetadataSchema - */ -var CreateMetadataSchemaRequest = /** @class */ (function (_super) { - tslib_1.__extends(CreateMetadataSchemaRequest, _super); - function CreateMetadataSchemaRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.body = body; - _this.options = options; - return _this; - } - CreateMetadataSchemaRequest.prototype.getResponseParser = function () { - return MetadataschemaParsingService; - }; - return CreateMetadataSchemaRequest; -}(PostRequest)); -export { CreateMetadataSchemaRequest }; -/** - * Request to update a MetadataSchema - */ -var UpdateMetadataSchemaRequest = /** @class */ (function (_super) { - tslib_1.__extends(UpdateMetadataSchemaRequest, _super); - function UpdateMetadataSchemaRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.body = body; - _this.options = options; - return _this; - } - UpdateMetadataSchemaRequest.prototype.getResponseParser = function () { - return MetadataschemaParsingService; - }; - return UpdateMetadataSchemaRequest; -}(PutRequest)); -export { UpdateMetadataSchemaRequest }; -/** - * Request to create a MetadataField - */ -var CreateMetadataFieldRequest = /** @class */ (function (_super) { - tslib_1.__extends(CreateMetadataFieldRequest, _super); - function CreateMetadataFieldRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.body = body; - _this.options = options; - return _this; - } - CreateMetadataFieldRequest.prototype.getResponseParser = function () { - return MetadatafieldParsingService; - }; - return CreateMetadataFieldRequest; -}(PostRequest)); -export { CreateMetadataFieldRequest }; -/** - * Request to update a MetadataField - */ -var UpdateMetadataFieldRequest = /** @class */ (function (_super) { - tslib_1.__extends(UpdateMetadataFieldRequest, _super); - function UpdateMetadataFieldRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.body = body; - _this.options = options; - return _this; - } - UpdateMetadataFieldRequest.prototype.getResponseParser = function () { - return MetadatafieldParsingService; - }; - return UpdateMetadataFieldRequest; -}(PutRequest)); -export { UpdateMetadataFieldRequest }; -/** - * Class representing a submission HTTP GET request object - */ -var SubmissionRequest = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionRequest, _super); - function SubmissionRequest(uuid, href) { - return _super.call(this, uuid, href) || this; - } - SubmissionRequest.prototype.getResponseParser = function () { - return SubmissionResponseParsingService; - }; - return SubmissionRequest; -}(GetRequest)); -export { SubmissionRequest }; -/** - * Class representing a submission HTTP DELETE request object - */ -var SubmissionDeleteRequest = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionDeleteRequest, _super); - function SubmissionDeleteRequest(uuid, href) { - var _this = _super.call(this, uuid, href) || this; - _this.uuid = uuid; - _this.href = href; - return _this; - } - SubmissionDeleteRequest.prototype.getResponseParser = function () { - return SubmissionResponseParsingService; - }; - return SubmissionDeleteRequest; -}(DeleteRequest)); -export { SubmissionDeleteRequest }; -/** - * Class representing a submission HTTP PATCH request object - */ -var SubmissionPatchRequest = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionPatchRequest, _super); - function SubmissionPatchRequest(uuid, href, body) { - var _this = _super.call(this, uuid, href, body) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - return _this; - } - SubmissionPatchRequest.prototype.getResponseParser = function () { - return SubmissionResponseParsingService; - }; - return SubmissionPatchRequest; -}(PatchRequest)); -export { SubmissionPatchRequest }; -/** - * Class representing a submission HTTP POST request object - */ -var SubmissionPostRequest = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionPostRequest, _super); - function SubmissionPostRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.uuid = uuid; - _this.href = href; - _this.body = body; - _this.options = options; - return _this; - } - SubmissionPostRequest.prototype.getResponseParser = function () { - return SubmissionResponseParsingService; - }; - return SubmissionPostRequest; -}(PostRequest)); -export { SubmissionPostRequest }; -/** - * Class representing an eperson HTTP GET request object - */ -var EpersonRequest = /** @class */ (function (_super) { - tslib_1.__extends(EpersonRequest, _super); - function EpersonRequest(uuid, href) { - return _super.call(this, uuid, href) || this; - } - EpersonRequest.prototype.getResponseParser = function () { - return EpersonResponseParsingService; - }; - return EpersonRequest; -}(GetRequest)); -export { EpersonRequest }; -var CreateRequest = /** @class */ (function (_super) { - tslib_1.__extends(CreateRequest, _super); - function CreateRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.body = body; - _this.options = options; - return _this; - } - CreateRequest.prototype.getResponseParser = function () { - return DSOResponseParsingService; - }; - return CreateRequest; -}(PostRequest)); -export { CreateRequest }; -/** - * Request to delete an object based on its identifier - */ -var DeleteByIDRequest = /** @class */ (function (_super) { - tslib_1.__extends(DeleteByIDRequest, _super); - function DeleteByIDRequest(uuid, href, resourceID) { - var _this = _super.call(this, uuid, href) || this; - _this.resourceID = resourceID; - return _this; - } - return DeleteByIDRequest; -}(DeleteRequest)); -export { DeleteByIDRequest }; -var TaskPostRequest = /** @class */ (function (_super) { - tslib_1.__extends(TaskPostRequest, _super); - function TaskPostRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.body = body; - _this.options = options; - return _this; - } - TaskPostRequest.prototype.getResponseParser = function () { - return TaskResponseParsingService; - }; - return TaskPostRequest; -}(PostRequest)); -export { TaskPostRequest }; -var TaskDeleteRequest = /** @class */ (function (_super) { - tslib_1.__extends(TaskDeleteRequest, _super); - function TaskDeleteRequest(uuid, href, body, options) { - var _this = _super.call(this, uuid, href, body, options) || this; - _this.body = body; - _this.options = options; - return _this; - } - TaskDeleteRequest.prototype.getResponseParser = function () { - return TaskResponseParsingService; - }; - return TaskDeleteRequest; -}(DeleteRequest)); -export { TaskDeleteRequest }; -var MyDSpaceRequest = /** @class */ (function (_super) { - tslib_1.__extends(MyDSpaceRequest, _super); - function MyDSpaceRequest() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.responseMsToLive = 0; - return _this; - } - return MyDSpaceRequest; -}(GetRequest)); -export { MyDSpaceRequest }; -var RequestError = /** @class */ (function (_super) { - tslib_1.__extends(RequestError, _super); - function RequestError() { - return _super !== null && _super.apply(this, arguments) || this; - } - return RequestError; -}(Error)); -export { RequestError }; -/* tslint:enable:max-classes-per-file */ -//# sourceMappingURL=request.models.js.map \ No newline at end of file diff --git a/src/app/core/data/request.models.js.map b/src/app/core/data/request.models.js.map deleted file mode 100644 index 3c530d90c8..0000000000 --- a/src/app/core/data/request.models.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"request.models.js","sourceRoot":"","sources":["request.models.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/request.reducer.js b/src/app/core/data/request.reducer.js deleted file mode 100644 index 4b8e22dcbb..0000000000 --- a/src/app/core/data/request.reducer.js +++ /dev/null @@ -1,106 +0,0 @@ -import { RequestActionTypes } from './request.actions'; -var RequestEntry = /** @class */ (function () { - function RequestEntry() { - } - return RequestEntry; -}()); -export { RequestEntry }; -// Object.create(null) ensures the object has no default js properties (e.g. `__proto__`) -var initialState = Object.create(null); -export function requestReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case RequestActionTypes.CONFIGURE: { - return configureRequest(state, action); - } - case RequestActionTypes.EXECUTE: { - return executeRequest(state, action); - } - case RequestActionTypes.COMPLETE: { - return completeRequest(state, action); - } - case RequestActionTypes.RESET_TIMESTAMPS: { - return resetResponseTimestamps(state, action); - } - case RequestActionTypes.REMOVE: { - return removeRequest(state, action); - } - default: { - return state; - } - } -} -function configureRequest(state, action) { - var _a; - return Object.assign({}, state, (_a = {}, - _a[action.payload.uuid] = { - request: action.payload, - requestPending: true, - responsePending: false, - completed: false, - }, - _a)); -} -function executeRequest(state, action) { - var _a; - var obs = Object.assign({}, state, (_a = {}, - _a[action.payload] = Object.assign({}, state[action.payload], { - requestPending: false, - responsePending: true - }), - _a)); - return obs; -} -/** - * Update a request with the response - * - * @param state - * the current state - * @param action - * a RequestCompleteAction - * @return RequestState - * the new state, with the response added to the request - */ -function completeRequest(state, action) { - var _a; - var time = new Date().getTime(); - return Object.assign({}, state, (_a = {}, - _a[action.payload.uuid] = Object.assign({}, state[action.payload.uuid], { - responsePending: false, - completed: true, - response: Object.assign({}, action.payload.response, { timeAdded: time }) - }), - _a)); -} -/** - * Reset the timeAdded property of all responses - * - * @param state - * the current state - * @param action - * a RequestCompleteAction - * @return RequestState - * the new state, with the timeAdded property reset - */ -function resetResponseTimestamps(state, action) { - var newState = Object.create(null); - Object.keys(state).forEach(function (key) { - newState[key] = Object.assign({}, state[key], { response: Object.assign({}, state[key].response, { timeAdded: action.payload }) }); - }); - return newState; -} -/** - * Remove a request from the RequestState - * @param state The current RequestState - * @param action The RequestRemoveAction to perform - */ -function removeRequest(state, action) { - var newState = Object.create(null); - for (var value in state) { - if (value !== action.uuid) { - newState[value] = state[value]; - } - } - return newState; -} -//# sourceMappingURL=request.reducer.js.map \ No newline at end of file diff --git a/src/app/core/data/request.reducer.js.map b/src/app/core/data/request.reducer.js.map deleted file mode 100644 index 8529b254f0..0000000000 --- a/src/app/core/data/request.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"request.reducer.js","sourceRoot":"","sources":["request.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/request.service.js b/src/app/core/data/request.service.js deleted file mode 100644 index 98987e367b..0000000000 --- a/src/app/core/data/request.service.js +++ /dev/null @@ -1,270 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { HttpHeaders } from '@angular/common/http'; -import { createSelector, select, Store } from '@ngrx/store'; -import { race as observableRace } from 'rxjs'; -import { filter, find, map, mergeMap, take } from 'rxjs/operators'; -import { cloneDeep, remove } from 'lodash'; -import { hasValue, isEmpty, isNotEmpty } from '../../shared/empty.util'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { IndexName } from '../index/index.reducer'; -import { originalRequestUUIDFromRequestUUIDSelector, requestIndexSelector, uuidFromHrefSelector } from '../index/index.selectors'; -import { UUIDService } from '../shared/uuid.service'; -import { RequestConfigureAction, RequestExecuteAction, RequestRemoveAction } from './request.actions'; -import { CommitSSBAction } from '../cache/server-sync-buffer.actions'; -import { RestRequestMethod } from './rest-request-method'; -import { AddToIndexAction, RemoveFromIndexBySubstringAction } from '../index/index.actions'; -import { coreSelector } from '../core.selectors'; -/** - * The base selector function to select the request state in the store - */ -var requestCacheSelector = createSelector(coreSelector, function (state) { return state['data/request']; }); -/** - * Selector function to select a request entry by uuid from the cache - * @param uuid The uuid of the request - */ -var entryFromUUIDSelector = function (uuid) { return createSelector(requestCacheSelector, function (state) { - return hasValue(state) ? state[uuid] : undefined; -}); }; -/** - * Create a selector that fetches a list of request UUIDs from a given index substate of which the request href - * contains a given substring - * @param selector MemoizedSelector to start from - * @param href Substring that the request's href should contain - */ -var uuidsFromHrefSubstringSelector = function (selector, href) { return createSelector(selector, function (state) { return getUuidsFromHrefSubstring(state, href); }); }; -/** - * Fetch a list of request UUIDs from a given index substate of which the request href contains a given substring - * @param state The IndexState - * @param href Substring that the request's href should contain - */ -var getUuidsFromHrefSubstring = function (state, href) { - var result = []; - if (isNotEmpty(state)) { - result = Object.values(state) - .filter(function (value) { return value.startsWith(href); }); - } - return result; -}; -/** - * A service to interact with the request state in the store - */ -var RequestService = /** @class */ (function () { - function RequestService(objectCache, uuidService, store, indexStore) { - this.objectCache = objectCache; - this.uuidService = uuidService; - this.store = store; - this.indexStore = indexStore; - this.requestsOnTheirWayToTheStore = []; - } - RequestService.prototype.generateRequestId = function () { - return "client/" + this.uuidService.generate(); - }; - /** - * Check if a request is currently pending - */ - RequestService.prototype.isPending = function (request) { - // first check requests that haven't made it to the store yet - if (this.requestsOnTheirWayToTheStore.includes(request.href)) { - return true; - } - // then check the store - var isPending = false; - this.getByHref(request.href).pipe(take(1)) - .subscribe(function (re) { - isPending = (hasValue(re) && !re.completed); - }); - return isPending; - }; - /** - * Retrieve a RequestEntry based on their uuid - */ - RequestService.prototype.getByUUID = function (uuid) { - var _this = this; - return observableRace(this.store.pipe(select(entryFromUUIDSelector(uuid))), this.store.pipe(select(originalRequestUUIDFromRequestUUIDSelector(uuid)), mergeMap(function (originalUUID) { - return _this.store.pipe(select(entryFromUUIDSelector(originalUUID))); - }))).pipe(map(function (entry) { - // Headers break after being retrieved from the store (because of lazy initialization) - // Combining them with a new object fixes this issue - if (hasValue(entry) && hasValue(entry.request) && hasValue(entry.request.options) && hasValue(entry.request.options.headers)) { - entry = cloneDeep(entry); - entry.request.options.headers = Object.assign(new HttpHeaders(), entry.request.options.headers); - } - return entry; - })); - }; - /** - * Retrieve a RequestEntry based on their href - */ - RequestService.prototype.getByHref = function (href) { - var _this = this; - return this.store.pipe(select(uuidFromHrefSelector(href)), mergeMap(function (uuid) { return _this.getByUUID(uuid); })); - }; - /** - * Configure a certain request - * Used to make sure a request is in the cache - * @param {RestRequest} request The request to send out - * @param {boolean} forceBypassCache When true, a new request is always dispatched - */ - RequestService.prototype.configure = function (request, forceBypassCache) { - var _this = this; - if (forceBypassCache === void 0) { forceBypassCache = false; } - var isGetRequest = request.method === RestRequestMethod.GET; - if (forceBypassCache) { - this.clearRequestsOnTheirWayToTheStore(request); - } - if (!isGetRequest || (forceBypassCache && !this.isPending(request)) || !this.isCachedOrPending(request)) { - this.dispatchRequest(request); - if (isGetRequest) { - this.trackRequestsOnTheirWayToTheStore(request); - } - } - else { - this.getByHref(request.href).pipe(filter(function (entry) { return hasValue(entry); }), take(1)).subscribe(function (entry) { - return _this.store.dispatch(new AddToIndexAction(IndexName.UUID_MAPPING, request.uuid, entry.request.uuid)); - }); - } - }; - /** - * Convert request Payload to a URL-encoded string - * - * e.g. uriEncodeBody({param: value, param1: value1}) - * returns: param=value¶m1=value1 - * - * @param body - * The request Payload to convert - * @return string - * URL-encoded string - */ - RequestService.prototype.uriEncodeBody = function (body) { - var queryParams = ''; - if (isNotEmpty(body) && typeof body === 'object') { - Object.keys(body) - .forEach(function (param) { - var paramValue = param + "=" + body[param]; - queryParams = isEmpty(queryParams) ? queryParams.concat(paramValue) : queryParams.concat('&', paramValue); - }); - } - return encodeURI(queryParams); - }; - /** - * Remove all request cache providing (part of) the href - * This also includes href-to-uuid index cache - * @param href A substring of the request(s) href - */ - RequestService.prototype.removeByHrefSubstring = function (href) { - var _this = this; - this.store.pipe(select(uuidsFromHrefSubstringSelector(requestIndexSelector, href)), take(1)).subscribe(function (uuids) { - for (var _i = 0, uuids_1 = uuids; _i < uuids_1.length; _i++) { - var uuid = uuids_1[_i]; - _this.removeByUuid(uuid); - } - }); - this.requestsOnTheirWayToTheStore = this.requestsOnTheirWayToTheStore.filter(function (reqHref) { return reqHref.indexOf(href) < 0; }); - this.indexStore.dispatch(new RemoveFromIndexBySubstringAction(IndexName.REQUEST, href)); - }; - /** - * Remove request cache using the request's UUID - * @param uuid - */ - RequestService.prototype.removeByUuid = function (uuid) { - this.store.dispatch(new RequestRemoveAction(uuid)); - }; - /** - * Check if a request is in the cache or if it's still pending - * @param {GetRequest} request The request to check - * @returns {boolean} True if the request is cached or still pending - */ - RequestService.prototype.isCachedOrPending = function (request) { - var inReqCache = this.hasByHref(request.href); - var inObjCache = this.objectCache.hasBySelfLink(request.href); - var isCached = inReqCache || inObjCache; - var isPending = this.isPending(request); - return isCached || isPending; - }; - /** - * Configure and execute the request - * @param {RestRequest} request to dispatch - */ - RequestService.prototype.dispatchRequest = function (request) { - this.store.dispatch(new RequestConfigureAction(request)); - this.store.dispatch(new RequestExecuteAction(request.uuid)); - }; - /** - * ngrx action dispatches are asynchronous. But this.isPending needs to return true as soon as the - * configure method for a GET request has been executed, otherwise certain requests will happen multiple times. - * - * This method will store the href of every GET request that gets configured in a local variable, and - * remove it as soon as it can be found in the store. - */ - RequestService.prototype.trackRequestsOnTheirWayToTheStore = function (request) { - var _this = this; - this.requestsOnTheirWayToTheStore = this.requestsOnTheirWayToTheStore.concat([request.href]); - this.getByHref(request.href).pipe(filter(function (re) { return hasValue(re); }), take(1)).subscribe(function (re) { - _this.requestsOnTheirWayToTheStore = _this.requestsOnTheirWayToTheStore.filter(function (pendingHref) { return pendingHref !== request.href; }); - }); - }; - /** - * This method remove requests that are on their way to the store. - */ - RequestService.prototype.clearRequestsOnTheirWayToTheStore = function (request) { - var _this = this; - this.getByHref(request.href).pipe(find(function (re) { return hasValue(re); })) - .subscribe(function (re) { - if (!re.responsePending) { - remove(_this.requestsOnTheirWayToTheStore, function (item) { return item === request.href; }); - } - }); - }; - /** - * Dispatch commit action to send all changes (for a certain method) to the server (buffer) - * @param {RestRequestMethod} method RestRequestMethod for which the changes should be committed - */ - RequestService.prototype.commit = function (method) { - this.store.dispatch(new CommitSSBAction(method)); - }; - /** - * Check whether a cached response should still be valid - * - * @param entry - * the entry to check - * @return boolean - * false if the uuid has no value, the response was not successful or its time to - * live was exceeded, true otherwise - */ - RequestService.prototype.isValid = function (entry) { - if (hasValue(entry) && entry.completed && entry.response.isSuccessful) { - var timeOutdated = entry.response.timeAdded + entry.request.responseMsToLive; - var isOutDated = new Date().getTime() > timeOutdated; - return !isOutDated; - } - else { - return false; - } - }; - /** - * Check whether the request with the specified href is cached - * - * @param href - * The link of the request to check - * @return boolean - * true if the request with the specified href is cached, - * false otherwise - */ - RequestService.prototype.hasByHref = function (href) { - var _this = this; - var result = false; - this.getByHref(href).pipe(take(1)).subscribe(function (requestEntry) { return result = _this.isValid(requestEntry); }); - return result; - }; - RequestService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [ObjectCacheService, - UUIDService, - Store, - Store]) - ], RequestService); - return RequestService; -}()); -export { RequestService }; -//# sourceMappingURL=request.service.js.map \ No newline at end of file diff --git a/src/app/core/data/request.service.js.map b/src/app/core/data/request.service.js.map deleted file mode 100644 index 0fdec0c417..0000000000 --- a/src/app/core/data/request.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"request.service.js","sourceRoot":"","sources":["request.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/data/rest-request-method.js b/src/app/core/data/rest-request-method.js deleted file mode 100644 index 17fa3d2f91..0000000000 --- a/src/app/core/data/rest-request-method.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Represents a Request Method. - * - * I didn't reuse the RequestMethod enum in @angular/http because - * it uses numbers. The string values here are more clear when - * debugging. - * - * The ones commented out are still unsupported in the rest of the codebase - */ -export var RestRequestMethod; -(function (RestRequestMethod) { - RestRequestMethod["GET"] = "GET"; - RestRequestMethod["POST"] = "POST"; - RestRequestMethod["PUT"] = "PUT"; - RestRequestMethod["DELETE"] = "DELETE"; - RestRequestMethod["OPTIONS"] = "OPTIONS"; - RestRequestMethod["HEAD"] = "HEAD"; - RestRequestMethod["PATCH"] = "PATCH"; -})(RestRequestMethod || (RestRequestMethod = {})); -//# sourceMappingURL=rest-request-method.js.map \ No newline at end of file diff --git a/src/app/core/data/rest-request-method.js.map b/src/app/core/data/rest-request-method.js.map deleted file mode 100644 index 585c948f29..0000000000 --- a/src/app/core/data/rest-request-method.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"rest-request-method.js","sourceRoot":"","sources":["rest-request-method.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAN,IAAY,iBAQX;AARD,WAAY,iBAAiB;IAC3B,gCAAW,CAAA;IACX,kCAAa,CAAA;IACb,gCAAW,CAAA;IACX,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,kCAAa,CAAA;IACb,oCAAe,CAAA;AACjB,CAAC,EARW,iBAAiB,KAAjB,iBAAiB,QAQ5B"} \ No newline at end of file diff --git a/src/app/core/data/search-response-parsing.service.js b/src/app/core/data/search-response-parsing.service.js deleted file mode 100644 index b91b7f6622..0000000000 --- a/src/app/core/data/search-response-parsing.service.js +++ /dev/null @@ -1,70 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { SearchSuccessResponse } from '../cache/response.models'; -import { DSOResponseParsingService } from './dso-response-parsing.service'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { hasValue } from '../../shared/empty.util'; -import { SearchQueryResponse } from '../../+search-page/search-service/search-query-response.model'; -import { MetadataValue } from '../shared/metadata.models'; -var SearchResponseParsingService = /** @class */ (function () { - function SearchResponseParsingService(dsoParser) { - this.dsoParser = dsoParser; - } - SearchResponseParsingService.prototype.parse = function (request, data) { - var _this = this; - // fallback for unexpected empty response - var emptyPayload = { - _embedded: { - objects: [] - } - }; - var payload = data.payload._embedded.searchResult || emptyPayload; - var hitHighlights = payload._embedded.objects - .map(function (object) { return object.hitHighlights; }) - .map(function (hhObject) { - var mdMap = {}; - if (hhObject) { - for (var _i = 0, _a = Object.keys(hhObject); _i < _a.length; _i++) { - var key = _a[_i]; - var value = Object.assign(new MetadataValue(), { value: hhObject[key].join('...'), language: null }); - mdMap[key] = [value]; - } - } - return mdMap; - }); - var dsoSelfLinks = payload._embedded.objects - .filter(function (object) { return hasValue(object._embedded); }) - .map(function (object) { return object._embedded.indexableObject; }) - // we don't need embedded collections, bitstreamformats, etc for search results. - // And parsing them all takes up a lot of time. Throw them away to improve performance - // until objs until partial results are supported by the rest api - .map(function (dso) { return Object.assign({}, dso, { _embedded: undefined }); }) - .map(function (dso) { return _this.dsoParser.parse(request, { - payload: dso, - statusCode: data.statusCode, - statusText: data.statusText - }); }) - .map(function (obj) { return obj.resourceSelfLinks; }) - .reduce(function (combined, thisElement) { return combined.concat(thisElement); }, []); - var objects = payload._embedded.objects - .filter(function (object) { return hasValue(object._embedded); }) - .map(function (object, index) { return Object.assign({}, object, { - indexableObject: dsoSelfLinks[index], - hitHighlights: hitHighlights[index], - // we don't need embedded collections, bitstreamformats, etc for search results. - // And parsing them all takes up a lot of time. Throw them away to improve performance - // until objs until partial results are supported by the rest api - _embedded: undefined - }); }); - payload.objects = objects; - var deserialized = new DSpaceRESTv2Serializer(SearchQueryResponse).deserialize(payload); - return new SearchSuccessResponse(deserialized, data.statusCode, data.statusText, this.dsoParser.processPageInfo(payload)); - }; - SearchResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSOResponseParsingService]) - ], SearchResponseParsingService); - return SearchResponseParsingService; -}()); -export { SearchResponseParsingService }; -//# sourceMappingURL=search-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/data/search-response-parsing.service.js.map b/src/app/core/data/search-response-parsing.service.js.map deleted file mode 100644 index f05aef1d02..0000000000 --- a/src/app/core/data/search-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-response-parsing.service.js","sourceRoot":"","sources":["search-response-parsing.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js b/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js deleted file mode 100644 index 786c3274d2..0000000000 --- a/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=dspace-rest-v2-response.model.js.map \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js.map b/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js.map deleted file mode 100644 index e47b689cae..0000000000 --- a/src/app/core/dspace-rest-v2/dspace-rest-v2-response.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-rest-v2-response.model.js","sourceRoot":"","sources":["dspace-rest-v2-response.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js b/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js deleted file mode 100644 index a812a4d193..0000000000 --- a/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js +++ /dev/null @@ -1,84 +0,0 @@ -import { Serialize, Deserialize } from 'cerialize'; -/** - * This Serializer turns responses from v2 of DSpace's REST API - * to models and vice versa - */ -var DSpaceRESTv2Serializer = /** @class */ (function () { - /** - * Create a new DSpaceRESTv2Serializer instance - * - * @param modelType a class or interface to indicate - * the kind of model this serializer should work with - */ - function DSpaceRESTv2Serializer(modelType) { - this.modelType = modelType; - } - /** - * Convert a model in to the format expected by the backend - * - * @param model The model to serialize - * @returns An object to send to the backend - */ - DSpaceRESTv2Serializer.prototype.serialize = function (model) { - return Serialize(model, this.modelType); - }; - /** - * Convert an array of models in to the format expected by the backend - * - * @param models The array of models to serialize - * @returns An object to send to the backend - */ - DSpaceRESTv2Serializer.prototype.serializeArray = function (models) { - return Serialize(models, this.modelType); - }; - /** - * Convert a response from the backend in to a model. - * - * @param response An object returned by the backend - * @returns a model of type T - */ - DSpaceRESTv2Serializer.prototype.deserialize = function (response) { - // TODO enable validation, once rest data stabilizes - // new DSpaceRESTv2Validator(response).validate(); - if (Array.isArray(response)) { - throw new Error('Expected a single model, use deserializeArray() instead'); - } - var normalized = Object.assign({}, response, this.normalizeLinks(response._links)); - return Deserialize(normalized, this.modelType); - }; - /** - * Convert a response from the backend in to an array of models - * - * @param response An object returned by the backend - * @returns an array of models of type T - */ - DSpaceRESTv2Serializer.prototype.deserializeArray = function (response) { - var _this = this; - // TODO: enable validation, once rest data stabilizes - // new DSpaceRESTv2Validator(response).validate(); - if (!Array.isArray(response)) { - throw new Error('Expected an Array, use deserialize() instead'); - } - var normalized = response.map(function (resource) { - return Object.assign({}, resource, _this.normalizeLinks(resource._links)); - }); - return Deserialize(normalized, this.modelType); - }; - DSpaceRESTv2Serializer.prototype.normalizeLinks = function (links) { - var normalizedLinks = links; - for (var link in normalizedLinks) { - if (Array.isArray(normalizedLinks[link])) { - normalizedLinks[link] = normalizedLinks[link].map(function (linkedResource) { - return linkedResource.href; - }); - } - else { - normalizedLinks[link] = normalizedLinks[link].href; - } - } - return normalizedLinks; - }; - return DSpaceRESTv2Serializer; -}()); -export { DSpaceRESTv2Serializer }; -//# sourceMappingURL=dspace-rest-v2.serializer.js.map \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js.map b/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js.map deleted file mode 100644 index 5ac8f69a76..0000000000 --- a/src/app/core/dspace-rest-v2/dspace-rest-v2.serializer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-rest-v2.serializer.js","sourceRoot":"","sources":["dspace-rest-v2.serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAQnD;;;GAGG;AACH;IAEE;;;;;OAKG;IACH,gCAAoB,SAAgC;QAAhC,cAAS,GAAT,SAAS,CAAuB;IACpD,CAAC;IAED;;;;;OAKG;IACH,0CAAS,GAAT,UAAU,KAAQ;QAChB,OAAO,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACH,+CAAc,GAAd,UAAe,MAAW;QACxB,OAAO,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACH,4CAAW,GAAX,UAAY,QAAa;QACvB,oDAAoD;QACpD,kDAAkD;QAClD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;SAC5E;QACD,IAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACrF,OAAO,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAM,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACH,iDAAgB,GAAhB,UAAiB,QAAa;QAA9B,iBAWC;QAVC,qDAAqD;QACrD,kDAAkD;QAClD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;SACjE;QACD,IAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAC,QAAQ;YACvC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAQ,CAAC;IACxD,CAAC;IAEO,+CAAc,GAAtB,UAAuB,KAAU;QAC/B,IAAM,eAAe,GAAG,KAAK,CAAC;QAC9B,KAAK,IAAM,IAAI,IAAI,eAAe,EAAE;YAClC,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE;gBACxC,eAAe,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAC,cAAc;oBAC/D,OAAO,cAAc,CAAC,IAAI,CAAC;gBAC7B,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,eAAe,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;aACpD;SACF;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAEH,6BAAC;AAAD,CAAC,AAhFD,IAgFC"} \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js b/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js deleted file mode 100644 index 25bf233668..0000000000 --- a/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js +++ /dev/null @@ -1,119 +0,0 @@ -import * as tslib_1 from "tslib"; -import { throwError as observableThrowError } from 'rxjs'; -import { catchError, map } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { HttpClient, HttpHeaders } from '@angular/common/http'; -import { RestRequestMethod } from '../data/rest-request-method'; -import { hasNoValue, isNotEmpty } from '../../shared/empty.util'; -export var DEFAULT_CONTENT_TYPE = 'application/json; charset=utf-8'; -/** - * Service to access DSpace's REST API - */ -var DSpaceRESTv2Service = /** @class */ (function () { - function DSpaceRESTv2Service(http) { - this.http = http; - } - /** - * Performs a request to the REST API with the `get` http method. - * - * @param absoluteURL - * A URL - * @return {Observable} - * An Observable containing the response from the server - */ - DSpaceRESTv2Service.prototype.get = function (absoluteURL) { - var requestOptions = { - observe: 'response', - headers: new HttpHeaders({ 'Content-Type': DEFAULT_CONTENT_TYPE }) - }; - return this.http.get(absoluteURL, requestOptions).pipe(map(function (res) { return ({ - payload: res.body, - statusCode: res.status, - statusText: res.statusText - }); }), catchError(function (err) { - console.log('Error: ', err); - return observableThrowError({ - statusCode: err.status, - statusText: err.statusText, - message: err.message - }); - })); - }; - /** - * Performs a request to the REST API. - * - * @param method - * the HTTP method for the request - * @param url - * the URL for the request - * @param body - * an optional body for the request - * @param options - * the HttpOptions object - * @return {Observable} - * An Observable containing the response from the server - */ - DSpaceRESTv2Service.prototype.request = function (method, url, body, options) { - var requestOptions = {}; - requestOptions.body = body; - if (method === RestRequestMethod.POST && isNotEmpty(body) && isNotEmpty(body.name)) { - requestOptions.body = this.buildFormData(body); - } - requestOptions.observe = 'response'; - if (options && options.responseType) { - requestOptions.responseType = options.responseType; - } - if (hasNoValue(options) || hasNoValue(options.headers)) { - requestOptions.headers = new HttpHeaders(); - } - else { - requestOptions.headers = options.headers; - } - if (!requestOptions.headers.has('Content-Type')) { - // Because HttpHeaders is immutable, the set method returns a new object instead of updating the existing headers - requestOptions.headers = requestOptions.headers.set('Content-Type', DEFAULT_CONTENT_TYPE); - } - return this.http.request(method, url, requestOptions).pipe(map(function (res) { return ({ - payload: res.body, - headers: res.headers, - statusCode: res.status, - statusText: res.statusText - }); }), catchError(function (err) { - console.log('Error: ', err); - return observableThrowError({ - statusCode: err.status, - statusText: err.statusText, - message: err.message - }); - })); - }; - /** - * Create a FormData object from a DSpaceObject - * - * @param {DSpaceObject} dso - * the DSpaceObject - * @return {FormData} - * the result - */ - DSpaceRESTv2Service.prototype.buildFormData = function (dso) { - var form = new FormData(); - form.append('name', dso.name); - if (dso.metadata) { - for (var _i = 0, _a = Object.keys(dso.metadata); _i < _a.length; _i++) { - var key = _a[_i]; - for (var _b = 0, _c = dso.allMetadataValues(key); _b < _c.length; _b++) { - var value = _c[_b]; - form.append(key, value); - } - } - } - return form; - }; - DSpaceRESTv2Service = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [HttpClient]) - ], DSpaceRESTv2Service); - return DSpaceRESTv2Service; -}()); -export { DSpaceRESTv2Service }; -//# sourceMappingURL=dspace-rest-v2.service.js.map \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js.map b/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js.map deleted file mode 100644 index 1fde65d783..0000000000 --- a/src/app/core/dspace-rest-v2/dspace-rest-v2.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-rest-v2.service.js","sourceRoot":"","sources":["dspace-rest-v2.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js b/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js deleted file mode 100644 index eb65106443..0000000000 --- a/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js +++ /dev/null @@ -1,33 +0,0 @@ -import { Validator } from 'jsonschema'; -import schema from './dspace-rest-v2.schema.json'; -/** - * Verifies a document is a valid response from - * a DSpace REST API v2 - */ -var DSpaceRESTv2Validator = /** @class */ (function () { - function DSpaceRESTv2Validator(document) { - this.document = document; - } - /** - * Throws an exception if this.document isn't a valid response from - * a DSpace REST API v2. Succeeds otherwise. - */ - DSpaceRESTv2Validator.prototype.validate = function () { - var validator = new Validator(); - var result = validator.validate(this.document, schema); - if (!result.valid) { - if (result.errors && result.errors.length > 0) { - var message = result.errors - .map(function (error) { return error.message; }) - .join('\n'); - throw new Error(message); - } - else { - throw new Error('JSON API validation failed for an unknown reason'); - } - } - }; - return DSpaceRESTv2Validator; -}()); -export { DSpaceRESTv2Validator }; -//# sourceMappingURL=dspace-rest-v2.validator.js.map \ No newline at end of file diff --git a/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js.map b/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js.map deleted file mode 100644 index 166016e840..0000000000 --- a/src/app/core/dspace-rest-v2/dspace-rest-v2.validator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-rest-v2.validator.js","sourceRoot":"","sources":["dspace-rest-v2.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,MAAM,MAAM,8BAA8B,CAAA;AAEjD;;;GAGG;AACH;IAEE,+BAAoB,QAAa;QAAb,aAAQ,GAAR,QAAQ,CAAK;IAEjC,CAAC;IAED;;;OAGG;IACH,wCAAQ,GAAR;QACE,IAAM,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;QAClC,IAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACjB,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7C,IAAM,OAAO,GAAG,MAAM,CAAC,MAAM;qBAC1B,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,OAAO,EAAb,CAAa,CAAC;qBAC7B,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;aAC1B;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACrE;SACF;IACH,CAAC;IAEH,4BAAC;AAAD,CAAC,AAzBD,IAyBC"} \ No newline at end of file diff --git a/src/app/core/eperson/eperson-response-parsing.service.js b/src/app/core/eperson/eperson-response-parsing.service.js deleted file mode 100644 index 4faf3a3653..0000000000 --- a/src/app/core/eperson/eperson-response-parsing.service.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { EpersonSuccessResponse, ErrorResponse } from '../cache/response.models'; -import { isNotEmpty } from '../../shared/empty.util'; -import { BaseResponseParsingService } from '../data/base-response-parsing.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; -/** - * Provides method to parse response from eperson endpoint. - */ -var EpersonResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(EpersonResponseParsingService, _super); - function EpersonResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = NormalizedObjectFactory; - _this.toCache = false; - return _this; - } - EpersonResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links)) { - var epersonDefinition = this.process(data.payload, request.href); - return new EpersonSuccessResponse(epersonDefinition[Object.keys(epersonDefinition)[0]], data.statusCode, data.statusText, this.processPageInfo(data.payload)); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from EPerson endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - EpersonResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], EpersonResponseParsingService); - return EpersonResponseParsingService; -}(BaseResponseParsingService)); -export { EpersonResponseParsingService }; -//# sourceMappingURL=eperson-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/eperson/eperson-response-parsing.service.js.map b/src/app/core/eperson/eperson-response-parsing.service.js.map deleted file mode 100644 index 6d94558fdd..0000000000 --- a/src/app/core/eperson/eperson-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"eperson-response-parsing.service.js","sourceRoot":"","sources":["eperson-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKnD,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAIpF;;GAEG;AAEH;IAAmD,yDAA0B;IAK3E,uCACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAIE,iBAAO,SACR;QAJkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QALjC,mBAAa,GAAG,uBAAuB,CAAC;QACxC,aAAO,GAAG,KAAK,CAAC;;IAO1B,CAAC;IAED,6CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC/D,IAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAA4B,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9F,OAAO,IAAI,sBAAsB,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SAC/J;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,2CAA2C,CAAC,EACtD,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAC,CAC3D,CACF,CAAC;SACH;IACH,CAAC;IAxBU,6BAA6B;QADzC,UAAU,EAAE;QAOR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAPhC,6BAA6B,CA0BzC;IAAD,oCAAC;CAAA,AA1BD,CAAmD,0BAA0B,GA0B5E;SA1BY,6BAA6B"} \ No newline at end of file diff --git a/src/app/core/eperson/eperson.service.js b/src/app/core/eperson/eperson.service.js deleted file mode 100644 index f86942dca1..0000000000 --- a/src/app/core/eperson/eperson.service.js +++ /dev/null @@ -1,17 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DataService } from '../data/data.service'; -/** - * An abstract class that provides methods to make HTTP request to eperson endpoint. - */ -var EpersonService = /** @class */ (function (_super) { - tslib_1.__extends(EpersonService, _super); - function EpersonService() { - return _super !== null && _super.apply(this, arguments) || this; - } - EpersonService.prototype.getBrowseEndpoint = function (options) { - return this.halService.getEndpoint(this.linkPath); - }; - return EpersonService; -}(DataService)); -export { EpersonService }; -//# sourceMappingURL=eperson.service.js.map \ No newline at end of file diff --git a/src/app/core/eperson/eperson.service.js.map b/src/app/core/eperson/eperson.service.js.map deleted file mode 100644 index b75835c759..0000000000 --- a/src/app/core/eperson/eperson.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"eperson.service.js","sourceRoot":"","sources":["eperson.service.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD;;GAEG;AACH;IAA8E,0CAAoB;IAAlG;;IAKA,CAAC;IAHQ,0CAAiB,GAAxB,UAAyB,OAAuB;QAC9C,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IACH,qBAAC;AAAD,CAAC,AALD,CAA8E,WAAW,GAKxF"} \ No newline at end of file diff --git a/src/app/core/eperson/group-eperson.service.js b/src/app/core/eperson/group-eperson.service.js deleted file mode 100644 index 91c385c3c7..0000000000 --- a/src/app/core/eperson/group-eperson.service.js +++ /dev/null @@ -1,66 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -import { Store } from '@ngrx/store'; -import { filter, map, take } from 'rxjs/operators'; -import { EpersonService } from './eperson.service'; -import { RequestService } from '../data/request.service'; -import { FindAllOptions } from '../data/request.models'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { SearchParam } from '../cache/models/search-param.model'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; -/** - * Provides methods to retrieve eperson group resources. - */ -var GroupEpersonService = /** @class */ (function (_super) { - tslib_1.__extends(GroupEpersonService, _super); - function GroupEpersonService(comparator, dataBuildService, http, notificationsService, requestService, rdbService, store, objectCache, halService) { - var _this = _super.call(this) || this; - _this.comparator = comparator; - _this.dataBuildService = dataBuildService; - _this.http = http; - _this.notificationsService = notificationsService; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.store = store; - _this.objectCache = objectCache; - _this.halService = halService; - _this.linkPath = 'groups'; - _this.browseEndpoint = ''; - _this.forceBypassCache = false; - return _this; - } - /** - * Check if the current user is member of to the indicated group - * - * @param groupName - * the group name - * @return boolean - * true if user is member of the indicated group, false otherwise - */ - GroupEpersonService.prototype.isMemberOf = function (groupName) { - var searchHref = 'isMemberOf'; - var options = new FindAllOptions(); - options.searchParams = [new SearchParam('groupName', groupName)]; - return this.searchBy(searchHref, options).pipe(filter(function (groups) { return !groups.isResponsePending; }), take(1), map(function (groups) { return groups.payload.totalElements > 0; })); - }; - GroupEpersonService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSOChangeAnalyzer, - NormalizedObjectBuildService, - HttpClient, - NotificationsService, - RequestService, - RemoteDataBuildService, - Store, - ObjectCacheService, - HALEndpointService]) - ], GroupEpersonService); - return GroupEpersonService; -}(EpersonService)); -export { GroupEpersonService }; -//# sourceMappingURL=group-eperson.service.js.map \ No newline at end of file diff --git a/src/app/core/eperson/group-eperson.service.js.map b/src/app/core/eperson/group-eperson.service.js.map deleted file mode 100644 index d2562e0c9b..0000000000 --- a/src/app/core/eperson/group-eperson.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"group-eperson.service.js","sourceRoot":"","sources":["group-eperson.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAGjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE;;GAEG;AAEH;IAAyC,+CAAqB;IAK5D,6BACY,UAAoC,EACpC,gBAA8C,EAC9C,IAAgB,EAChB,oBAA0C,EAC1C,cAA8B,EAC9B,UAAkC,EAClC,KAAuB,EACvB,WAA+B,EAC/B,UAA8B;QAT1C,YAWE,iBAAO,SACR;QAXW,gBAAU,GAAV,UAAU,CAA0B;QACpC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,UAAI,GAAJ,IAAI,CAAY;QAChB,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,WAAK,GAAL,KAAK,CAAkB;QACvB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAbhC,cAAQ,GAAG,QAAQ,CAAC;QACpB,oBAAc,GAAG,EAAE,CAAC;QACpB,sBAAgB,GAAG,KAAK,CAAC;;IAcnC,CAAC;IAED;;;;;;;OAOG;IACH,wCAAU,GAAV,UAAW,SAAiB;QAC1B,IAAM,UAAU,GAAG,YAAY,CAAC;QAChC,IAAM,OAAO,GAAG,IAAI,cAAc,EAAE,CAAC;QACrC,OAAO,CAAC,YAAY,GAAG,CAAC,IAAI,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;QAEjE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAC1C,MAAM,CAAC,UAAC,MAAwC,IAAK,OAAA,CAAC,MAAM,CAAC,iBAAiB,EAAzB,CAAyB,CAAC,EAC/E,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,MAAwC,IAAK,OAAA,MAAM,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,EAAhC,CAAgC,CAAC,CACpF,CAAC;IACN,CAAC;IArCU,mBAAmB;QAD/B,UAAU,EAAE;iDAOa,iBAAiB;YACX,4BAA4B;YACxC,UAAU;YACM,oBAAoB;YAC1B,cAAc;YAClB,sBAAsB;YAC3B,KAAK;YACC,kBAAkB;YACnB,kBAAkB;OAd/B,mBAAmB,CAuC/B;IAAD,0BAAC;CAAA,AAvCD,CAAyC,cAAc,GAuCtD;SAvCY,mBAAmB"} \ No newline at end of file diff --git a/src/app/core/eperson/models/eperson.model.js b/src/app/core/eperson/models/eperson.model.js deleted file mode 100644 index c56b5b2a59..0000000000 --- a/src/app/core/eperson/models/eperson.model.js +++ /dev/null @@ -1,21 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from '../../shared/dspace-object.model'; -var EPerson = /** @class */ (function (_super) { - tslib_1.__extends(EPerson, _super); - function EPerson() { - return _super !== null && _super.apply(this, arguments) || this; - } - Object.defineProperty(EPerson.prototype, "name", { - /** - * Getter to retrieve the EPerson's full name as a string - */ - get: function () { - return this.firstMetadataValue('eperson.firstname') + ' ' + this.firstMetadataValue('eperson.lastname'); - }, - enumerable: true, - configurable: true - }); - return EPerson; -}(DSpaceObject)); -export { EPerson }; -//# sourceMappingURL=eperson.model.js.map \ No newline at end of file diff --git a/src/app/core/eperson/models/eperson.model.js.map b/src/app/core/eperson/models/eperson.model.js.map deleted file mode 100644 index 8dce2e3826..0000000000 --- a/src/app/core/eperson/models/eperson.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"eperson.model.js","sourceRoot":"","sources":["eperson.model.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKhE;IAA6B,mCAAY;IAAzC;;IAgDA,CAAC;IAHC,sBAAI,yBAAI;QAHR;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;QAC1G,CAAC;;;OAAA;IACH,cAAC;AAAD,CAAC,AAhDD,CAA6B,YAAY,GAgDxC"} \ No newline at end of file diff --git a/src/app/core/eperson/models/group.model.js b/src/app/core/eperson/models/group.model.js deleted file mode 100644 index 7dd837c499..0000000000 --- a/src/app/core/eperson/models/group.model.js +++ /dev/null @@ -1,11 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from '../../shared/dspace-object.model'; -var Group = /** @class */ (function (_super) { - tslib_1.__extends(Group, _super); - function Group() { - return _super !== null && _super.apply(this, arguments) || this; - } - return Group; -}(DSpaceObject)); -export { Group }; -//# sourceMappingURL=group.model.js.map \ No newline at end of file diff --git a/src/app/core/eperson/models/group.model.js.map b/src/app/core/eperson/models/group.model.js.map deleted file mode 100644 index e071c78c31..0000000000 --- a/src/app/core/eperson/models/group.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"group.model.js","sourceRoot":"","sources":["group.model.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAIhE;IAA2B,iCAAY;IAAvC;;IAqBA,CAAC;IAAD,YAAC;AAAD,CAAC,AArBD,CAA2B,YAAY,GAqBtC"} \ No newline at end of file diff --git a/src/app/core/eperson/models/normalized-eperson.model.js b/src/app/core/eperson/models/normalized-eperson.model.js deleted file mode 100644 index c724f1799b..0000000000 --- a/src/app/core/eperson/models/normalized-eperson.model.js +++ /dev/null @@ -1,52 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, deserialize, inheritSerialization } from 'cerialize'; -import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; -import { EPerson } from './eperson.model'; -import { mapsTo, relationship } from '../../cache/builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -var NormalizedEPerson = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedEPerson, _super); - function NormalizedEPerson() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedEPerson.prototype, "handle", void 0); - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Group, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedEPerson.prototype, "groups", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedEPerson.prototype, "netid", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedEPerson.prototype, "lastActive", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedEPerson.prototype, "canLogIn", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedEPerson.prototype, "email", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedEPerson.prototype, "requireCertificate", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedEPerson.prototype, "selfRegistered", void 0); - NormalizedEPerson = tslib_1.__decorate([ - mapsTo(EPerson), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedEPerson); - return NormalizedEPerson; -}(NormalizedDSpaceObject)); -export { NormalizedEPerson }; -//# sourceMappingURL=normalized-eperson.model.js.map \ No newline at end of file diff --git a/src/app/core/eperson/models/normalized-eperson.model.js.map b/src/app/core/eperson/models/normalized-eperson.model.js.map deleted file mode 100644 index 31dec3fe76..0000000000 --- a/src/app/core/eperson/models/normalized-eperson.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-eperson.model.js","sourceRoot":"","sources":["normalized-eperson.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAI7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI1D;IAAuC,6CAA+B;IAAtE;;IAkDA,CAAC;IA5CC;QADC,aAAa;;qDACQ;IAOtB;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC;;qDACtB;IAMjB;QADC,aAAa;;oDACO;IAMrB;QADC,aAAa;;yDACY;IAM1B;QADC,aAAa;;uDACW;IAMzB;QADC,aAAa;;oDACO;IAMrB;QADC,aAAa;;iEACqB;IAMnC;QADC,aAAa;;6DACiB;IAjDpB,iBAAiB;QAF7B,MAAM,CAAC,OAAO,CAAC;QACf,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,iBAAiB,CAkD7B;IAAD,wBAAC;CAAA,AAlDD,CAAuC,sBAAsB,GAkD5D;SAlDY,iBAAiB"} \ No newline at end of file diff --git a/src/app/core/eperson/models/normalized-group.model.js b/src/app/core/eperson/models/normalized-group.model.js deleted file mode 100644 index ea036db7d6..0000000000 --- a/src/app/core/eperson/models/normalized-group.model.js +++ /dev/null @@ -1,36 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, deserialize, inheritSerialization } from 'cerialize'; -import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; -import { mapsTo, relationship } from '../../cache/builders/build-decorators'; -import { Group } from './group.model'; -import { ResourceType } from '../../shared/resource-type'; -var NormalizedGroup = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedGroup, _super); - function NormalizedGroup() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - deserialize, - relationship(ResourceType.Group, true), - tslib_1.__metadata("design:type", Array) - ], NormalizedGroup.prototype, "groups", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedGroup.prototype, "handle", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedGroup.prototype, "name", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], NormalizedGroup.prototype, "permanent", void 0); - NormalizedGroup = tslib_1.__decorate([ - mapsTo(Group), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedGroup); - return NormalizedGroup; -}(NormalizedDSpaceObject)); -export { NormalizedGroup }; -//# sourceMappingURL=normalized-group.model.js.map \ No newline at end of file diff --git a/src/app/core/eperson/models/normalized-group.model.js.map b/src/app/core/eperson/models/normalized-group.model.js.map deleted file mode 100644 index 24d8f02f8b..0000000000 --- a/src/app/core/eperson/models/normalized-group.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-group.model.js","sourceRoot":"","sources":["normalized-group.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAI7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI1D;IAAqC,2CAA6B;IAAlE;;IA0BA,CAAC;IAnBC;QAFC,WAAW;QACX,YAAY,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC;;mDACtB;IAMjB;QADC,aAAa;;mDACQ;IAMtB;QADC,aAAa;;iDACM;IAMpB;QADC,aAAa;;sDACY;IAzBf,eAAe;QAF3B,MAAM,CAAC,KAAK,CAAC;QACb,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,eAAe,CA0B3B;IAAD,sBAAC;CAAA,AA1BD,CAAqC,sBAAsB,GA0B1D;SA1BY,eAAe"} \ No newline at end of file diff --git a/src/app/core/index/index.actions.js b/src/app/core/index/index.actions.js deleted file mode 100644 index 0b7703e1aa..0000000000 --- a/src/app/core/index/index.actions.js +++ /dev/null @@ -1,70 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -/** - * The list of HrefIndexAction type definitions - */ -export var IndexActionTypes = { - ADD: type('dspace/core/index/ADD'), - REMOVE_BY_VALUE: type('dspace/core/index/REMOVE_BY_VALUE'), - REMOVE_BY_SUBSTRING: type('dspace/core/index/REMOVE_BY_SUBSTRING') -}; -/* tslint:disable:max-classes-per-file */ -/** - * An ngrx action to add an value to the index - */ -var AddToIndexAction = /** @class */ (function () { - /** - * Create a new AddToIndexAction - * - * @param name - * the name of the index to add to - * @param key - * the key to add - * @param value - * the self link of the resource the key belongs to - */ - function AddToIndexAction(name, key, value) { - this.type = IndexActionTypes.ADD; - this.payload = { name: name, key: key, value: value }; - } - return AddToIndexAction; -}()); -export { AddToIndexAction }; -/** - * An ngrx action to remove an value from the index - */ -var RemoveFromIndexByValueAction = /** @class */ (function () { - /** - * Create a new RemoveFromIndexByValueAction - * - * @param name - * the name of the index to remove from - * @param value - * the value to remove the UUID for - */ - function RemoveFromIndexByValueAction(name, value) { - this.type = IndexActionTypes.REMOVE_BY_VALUE; - this.payload = { name: name, value: value }; - } - return RemoveFromIndexByValueAction; -}()); -export { RemoveFromIndexByValueAction }; -/** - * An ngrx action to remove multiple values from the index by substring - */ -var RemoveFromIndexBySubstringAction = /** @class */ (function () { - /** - * Create a new RemoveFromIndexByValueAction - * - * @param name - * the name of the index to remove from - * @param value - * the value to remove the UUID for - */ - function RemoveFromIndexBySubstringAction(name, value) { - this.type = IndexActionTypes.REMOVE_BY_SUBSTRING; - this.payload = { name: name, value: value }; - } - return RemoveFromIndexBySubstringAction; -}()); -export { RemoveFromIndexBySubstringAction }; -//# sourceMappingURL=index.actions.js.map \ No newline at end of file diff --git a/src/app/core/index/index.actions.js.map b/src/app/core/index/index.actions.js.map deleted file mode 100644 index 4070744397..0000000000 --- a/src/app/core/index/index.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.actions.js","sourceRoot":"","sources":["index.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C;;GAEG;AACH,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC9B,GAAG,EAAE,IAAI,CAAC,uBAAuB,CAAC;IAClC,eAAe,EAAE,IAAI,CAAC,mCAAmC,CAAC;IAC1D,mBAAmB,EAAE,IAAI,CAAC,uCAAuC,CAAC;CACnE,CAAC;AAEF,yCAAyC;AACzC;;GAEG;AACH;IAQE;;;;;;;;;OASG;IACH,0BAAY,IAAe,EAAE,GAAW,EAAE,KAAa;QAjBvD,SAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC;QAkB1B,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,GAAG,KAAA,EAAE,KAAK,OAAA,EAAE,CAAC;IACtC,CAAC;IACH,uBAAC;AAAD,CAAC,AArBD,IAqBC;;AAED;;GAEG;AACH;IAOE;;;;;;;OAOG;IACH,sCAAY,IAAe,EAAE,KAAa;QAd1C,SAAI,GAAG,gBAAgB,CAAC,eAAe,CAAC;QAetC,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,KAAK,OAAA,EAAE,CAAC;IACjC,CAAC;IAEH,mCAAC;AAAD,CAAC,AAnBD,IAmBC;;AAED;;GAEG;AACH;IAOE;;;;;;;OAOG;IACH,0CAAY,IAAe,EAAE,KAAa;QAd1C,SAAI,GAAG,gBAAgB,CAAC,mBAAmB,CAAC;QAe1C,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,KAAK,OAAA,EAAE,CAAC;IACjC,CAAC;IAEH,uCAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file diff --git a/src/app/core/index/index.effects.js b/src/app/core/index/index.effects.js deleted file mode 100644 index 173ac8b894..0000000000 --- a/src/app/core/index/index.effects.js +++ /dev/null @@ -1,46 +0,0 @@ -import * as tslib_1 from "tslib"; -import { filter, map } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { Actions, Effect, ofType } from '@ngrx/effects'; -import { ObjectCacheActionTypes } from '../cache/object-cache.actions'; -import { RequestActionTypes } from '../data/request.actions'; -import { AddToIndexAction, RemoveFromIndexByValueAction } from './index.actions'; -import { hasValue } from '../../shared/empty.util'; -import { IndexName } from './index.reducer'; -import { RestRequestMethod } from '../data/rest-request-method'; -var UUIDIndexEffects = /** @class */ (function () { - function UUIDIndexEffects(actions$) { - this.actions$ = actions$; - this.addObject$ = this.actions$ - .pipe(ofType(ObjectCacheActionTypes.ADD), filter(function (action) { return hasValue(action.payload.objectToCache.uuid); }), map(function (action) { - return new AddToIndexAction(IndexName.OBJECT, action.payload.objectToCache.uuid, action.payload.objectToCache.self); - })); - this.removeObject$ = this.actions$ - .pipe(ofType(ObjectCacheActionTypes.REMOVE), map(function (action) { - return new RemoveFromIndexByValueAction(IndexName.OBJECT, action.payload); - })); - this.addRequest$ = this.actions$ - .pipe(ofType(RequestActionTypes.CONFIGURE), filter(function (action) { return action.payload.method === RestRequestMethod.GET; }), map(function (action) { - return new AddToIndexAction(IndexName.REQUEST, action.payload.href, action.payload.uuid); - })); - } - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], UUIDIndexEffects.prototype, "addObject$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], UUIDIndexEffects.prototype, "removeObject$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], UUIDIndexEffects.prototype, "addRequest$", void 0); - UUIDIndexEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions]) - ], UUIDIndexEffects); - return UUIDIndexEffects; -}()); -export { UUIDIndexEffects }; -//# sourceMappingURL=index.effects.js.map \ No newline at end of file diff --git a/src/app/core/index/index.effects.js.map b/src/app/core/index/index.effects.js.map deleted file mode 100644 index 70f86b7e51..0000000000 --- a/src/app/core/index/index.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.effects.js","sourceRoot":"","sources":["index.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,EAEL,sBAAsB,EAEvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAA0B,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE;IAuCE,0BAAoB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;QArC3B,eAAU,GAAG,IAAI,CAAC,QAAQ;aACjC,IAAI,CACH,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAClC,MAAM,CAAC,UAAC,MAA8B,IAAK,OAAA,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC,EACvF,GAAG,CAAC,UAAC,MAA8B;YACjC,OAAO,IAAI,gBAAgB,CACzB,SAAS,CAAC,MAAM,EAChB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EACjC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAClC,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAEM,kBAAa,GAAG,IAAI,CAAC,QAAQ;aACpC,IAAI,CACH,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,EACrC,GAAG,CAAC,UAAC,MAAmC;YACtC,OAAO,IAAI,4BAA4B,CACrC,SAAS,CAAC,MAAM,EAChB,MAAM,CAAC,OAAO,CACf,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAEM,gBAAW,GAAG,IAAI,CAAC,QAAQ;aAClC,IAAI,CACH,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,EACpC,MAAM,CAAC,UAAC,MAA8B,IAAK,OAAA,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,iBAAiB,CAAC,GAAG,EAA/C,CAA+C,CAAC,EAC3F,GAAG,CAAC,UAAC,MAA8B;YACjC,OAAO,IAAI,gBAAgB,CACzB,SAAS,CAAC,OAAO,EACjB,MAAM,CAAC,OAAO,CAAC,IAAI,EACnB,MAAM,CAAC,OAAO,CAAC,IAAI,CACpB,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IAIJ,CAAC;IAvCS;QAAT,MAAM,EAAE;;wDAWL;IAEM;QAAT,MAAM,EAAE;;2DASL;IAEM;QAAT,MAAM,EAAE;;yDAWL;IArCO,gBAAgB;QAD5B,UAAU,EAAE;iDAwCmB,OAAO;OAvC1B,gBAAgB,CA2C5B;IAAD,uBAAC;CAAA,AA3CD,IA2CC;SA3CY,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/index/index.reducer.js b/src/app/core/index/index.reducer.js deleted file mode 100644 index aea43da7ad..0000000000 --- a/src/app/core/index/index.reducer.js +++ /dev/null @@ -1,114 +0,0 @@ -import { IndexActionTypes } from './index.actions'; -/** - * An enum containing all index names - */ -export var IndexName; -(function (IndexName) { - // Contains all objects in the object cache indexed by UUID - IndexName["OBJECT"] = "object/uuid-to-self-link"; - // contains all requests in the request cache indexed by UUID - IndexName["REQUEST"] = "get-request/href-to-uuid"; - /** - * Contains the UUIDs of requests that were sent to the server and - * have their responses cached, indexed by the UUIDs of requests that - * weren't sent because the response they requested was already cached - */ - IndexName["UUID_MAPPING"] = "get-request/configured-to-cache-uuid"; -})(IndexName || (IndexName = {})); -// Object.create(null) ensures the object has no default js properties (e.g. `__proto__`) -var initialState = Object.create(null); -/** - * The Index Reducer - * - * @param state - * the current state - * @param action - * the action to perform on the state - * @return MetaIndexState - * the new state - */ -export function indexReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case IndexActionTypes.ADD: { - return addToIndex(state, action); - } - case IndexActionTypes.REMOVE_BY_VALUE: { - return removeFromIndexByValue(state, action); - } - case IndexActionTypes.REMOVE_BY_SUBSTRING: { - return removeFromIndexBySubstring(state, action); - } - default: { - return state; - } - } -} -/** - * Add an entry to a given index - * - * @param state - * The MetaIndexState that contains all indices - * @param action - * The AddToIndexAction containing the value to add, and the index to add it to - * @return MetaIndexState - * the new state - */ -function addToIndex(state, action) { - var _a, _b; - var subState = state[action.payload.name]; - var newSubState = Object.assign({}, subState, (_a = {}, - _a[action.payload.key] = action.payload.value, - _a)); - var obs = Object.assign({}, state, (_b = {}, - _b[action.payload.name] = newSubState, - _b)); - return obs; -} -/** - * Remove a entries that contain a given value from a given index - * - * @param state - * The MetaIndexState that contains all indices - * @param action - * The RemoveFromIndexByValueAction containing the value to remove, and the index to remove it from - * @return MetaIndexState - * the new state - */ -function removeFromIndexByValue(state, action) { - var _a; - var subState = state[action.payload.name]; - var newSubState = Object.create(null); - for (var value in subState) { - if (subState[value] !== action.payload.value) { - newSubState[value] = subState[value]; - } - } - return Object.assign({}, state, (_a = {}, - _a[action.payload.name] = newSubState, - _a)); -} -/** - * Remove entries that contain a given substring from a given index - * - * @param state - * The MetaIndexState that contains all indices - * @param action - * The RemoveFromIndexByValueAction the substring to remove, and the index to remove it from - * @return MetaIndexState - * the new state - */ -function removeFromIndexBySubstring(state, action) { - var _a; - var subState = state[action.payload.name]; - var newSubState = Object.create(null); - for (var value in subState) { - if (value.indexOf(action.payload.value) < 0) { - newSubState[value] = subState[value]; - } - } - return Object.assign({}, state, (_a = {}, - _a[action.payload.name] = newSubState, - _a)); -} -//# sourceMappingURL=index.reducer.js.map \ No newline at end of file diff --git a/src/app/core/index/index.reducer.js.map b/src/app/core/index/index.reducer.js.map deleted file mode 100644 index b50fd34806..0000000000 --- a/src/app/core/index/index.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.reducer.js","sourceRoot":"","sources":["index.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/index/index.selectors.js b/src/app/core/index/index.selectors.js deleted file mode 100644 index d06a8983ba..0000000000 --- a/src/app/core/index/index.selectors.js +++ /dev/null @@ -1,62 +0,0 @@ -import { createSelector } from '@ngrx/store'; -import { hasValue } from '../../shared/empty.util'; -import { coreSelector } from '../core.selectors'; -import { IndexName } from './index.reducer'; -/** - * Return the MetaIndexState based on the CoreSate - * - * @returns - * a MemoizedSelector to select the MetaIndexState - */ -export var metaIndexSelector = createSelector(coreSelector, function (state) { return state.index; }); -/** - * Return the object index based on the MetaIndexState - * It contains all objects in the object cache indexed by UUID - * - * @returns - * a MemoizedSelector to select the object index - */ -export var objectIndexSelector = createSelector(metaIndexSelector, function (state) { return state[IndexName.OBJECT]; }); -/** - * Return the request index based on the MetaIndexState - * - * @returns - * a MemoizedSelector to select the request index - */ -export var requestIndexSelector = createSelector(metaIndexSelector, function (state) { return state[IndexName.REQUEST]; }); -/** - * Return the request UUID mapping index based on the MetaIndexState - * - * @returns - * a MemoizedSelector to select the request UUID mapping - */ -export var requestUUIDIndexSelector = createSelector(metaIndexSelector, function (state) { return state[IndexName.UUID_MAPPING]; }); -/** - * Return the self link of an object in the object-cache based on its UUID - * - * @param uuid - * the UUID for which you want to find the matching self link - * @returns - * a MemoizedSelector to select the self link - */ -export var selfLinkFromUuidSelector = function (uuid) { return createSelector(objectIndexSelector, function (state) { return hasValue(state) ? state[uuid] : undefined; }); }; -/** - * Return the UUID of a GET request based on its href - * - * @param href - * the href of the GET request - * @returns - * a MemoizedSelector to select the UUID - */ -export var uuidFromHrefSelector = function (href) { return createSelector(requestIndexSelector, function (state) { return hasValue(state) ? state[href] : undefined; }); }; -/** - * Return the UUID of a cached request based on the UUID of a request - * that wasn't sent because the response was already cached - * - * @param uuid - * The UUID of the new request - * @returns - * a MemoizedSelector to select the UUID of the cached request - */ -export var originalRequestUUIDFromRequestUUIDSelector = function (uuid) { return createSelector(requestUUIDIndexSelector, function (state) { return hasValue(state) ? state[uuid] : undefined; }); }; -//# sourceMappingURL=index.selectors.js.map \ No newline at end of file diff --git a/src/app/core/index/index.selectors.js.map b/src/app/core/index/index.selectors.js.map deleted file mode 100644 index 0807f45f9a..0000000000 --- a/src/app/core/index/index.selectors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.selectors.js","sourceRoot":"","sources":["index.selectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAoB,MAAM,aAAa,CAAC;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAA8B,MAAM,iBAAiB,CAAC;AAExE;;;;;GAKG;AACH,MAAM,CAAC,IAAM,iBAAiB,GAA+C,cAAc,CACzF,YAAY,EACZ,UAAC,KAAgB,IAAK,OAAA,KAAK,CAAC,KAAK,EAAX,CAAW,CAClC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,mBAAmB,GAA2C,cAAc,CACvF,iBAAiB,EACjB,UAAC,KAAqB,IAAK,OAAA,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAvB,CAAuB,CACnD,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,IAAM,oBAAoB,GAA2C,cAAc,CACxF,iBAAiB,EACjB,UAAC,KAAqB,IAAK,OAAA,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,EAAxB,CAAwB,CACpD,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,IAAM,wBAAwB,GAA2C,cAAc,CAC5F,iBAAiB,EACjB,UAAC,KAAqB,IAAK,OAAA,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,EAA7B,CAA6B,CACzD,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,wBAAwB,GACnC,UAAC,IAAY,IAAyC,OAAA,cAAc,CAClE,mBAAmB,EACnB,UAAC,KAAiB,IAAK,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAzC,CAAyC,CACjE,EAHqD,CAGrD,CAAC;AAEJ;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,oBAAoB,GAC/B,UAAC,IAAY,IAAyC,OAAA,cAAc,CAClE,oBAAoB,EACpB,UAAC,KAAiB,IAAK,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAzC,CAAyC,CACjE,EAHqD,CAGrD,CAAC;AAEJ;;;;;;;;GAQG;AACH,MAAM,CAAC,IAAM,0CAA0C,GACrD,UAAC,IAAY,IAAyC,OAAA,cAAc,CAClE,wBAAwB,EACxB,UAAC,KAAiB,IAAK,OAAA,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAzC,CAAyC,CACjE,EAHqD,CAGrD,CAAC"} \ No newline at end of file diff --git a/src/app/core/integration/authority.service.js b/src/app/core/integration/authority.service.js deleted file mode 100644 index 86b2860f0b..0000000000 --- a/src/app/core/integration/authority.service.js +++ /dev/null @@ -1,28 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { RequestService } from '../data/request.service'; -import { IntegrationService } from './integration.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -var AuthorityService = /** @class */ (function (_super) { - tslib_1.__extends(AuthorityService, _super); - function AuthorityService(requestService, rdbService, halService) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.halService = halService; - _this.linkPath = 'authorities'; - _this.entriesEndpoint = 'entries'; - _this.entryValueEndpoint = 'entryValues'; - return _this; - } - AuthorityService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - HALEndpointService]) - ], AuthorityService); - return AuthorityService; -}(IntegrationService)); -export { AuthorityService }; -//# sourceMappingURL=authority.service.js.map \ No newline at end of file diff --git a/src/app/core/integration/authority.service.js.map b/src/app/core/integration/authority.service.js.map deleted file mode 100644 index c959e97d98..0000000000 --- a/src/app/core/integration/authority.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"authority.service.js","sourceRoot":"","sources":["authority.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAGrF;IAAsC,4CAAkB;IAKtD,0BACY,cAA8B,EAC9B,UAAkC,EAClC,UAA8B;QAH1C,YAIE,iBAAO,SACR;QAJW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,gBAAU,GAAV,UAAU,CAAoB;QAPhC,cAAQ,GAAG,aAAa,CAAC;QACzB,qBAAe,GAAG,SAAS,CAAC;QAC5B,wBAAkB,GAAG,aAAa,CAAC;;IAO7C,CAAC;IAVU,gBAAgB;QAD5B,UAAU,EAAE;iDAOiB,cAAc;YAClB,sBAAsB;YACtB,kBAAkB;OAR/B,gBAAgB,CAY5B;IAAD,uBAAC;CAAA,AAZD,CAAsC,kBAAkB,GAYvD;SAZY,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/integration/integration-data.js b/src/app/core/integration/integration-data.js deleted file mode 100644 index a7fdf46cc1..0000000000 --- a/src/app/core/integration/integration-data.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * A class to represent the data retrieved by an Integration service - */ -var IntegrationData = /** @class */ (function () { - function IntegrationData(pageInfo, payload) { - this.pageInfo = pageInfo; - this.payload = payload; - } - return IntegrationData; -}()); -export { IntegrationData }; -//# sourceMappingURL=integration-data.js.map \ No newline at end of file diff --git a/src/app/core/integration/integration-data.js.map b/src/app/core/integration/integration-data.js.map deleted file mode 100644 index 5df64ce068..0000000000 --- a/src/app/core/integration/integration-data.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"integration-data.js","sourceRoot":"","sources":["integration-data.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH;IACE,yBACS,QAAkB,EAClB,OAA2B;QAD3B,aAAQ,GAAR,QAAQ,CAAU;QAClB,YAAO,GAAP,OAAO,CAAoB;IAChC,CAAC;IACP,sBAAC;AAAD,CAAC,AALD,IAKC"} \ No newline at end of file diff --git a/src/app/core/integration/integration-object-factory.js b/src/app/core/integration/integration-object-factory.js deleted file mode 100644 index defd3b08d0..0000000000 --- a/src/app/core/integration/integration-object-factory.js +++ /dev/null @@ -1,19 +0,0 @@ -import { IntegrationType } from './intergration-type'; -import { NormalizedAuthorityValue } from './models/normalized-authority-value.model'; -var IntegrationObjectFactory = /** @class */ (function () { - function IntegrationObjectFactory() { - } - IntegrationObjectFactory.getConstructor = function (type) { - switch (type) { - case IntegrationType.Authority: { - return NormalizedAuthorityValue; - } - default: { - return undefined; - } - } - }; - return IntegrationObjectFactory; -}()); -export { IntegrationObjectFactory }; -//# sourceMappingURL=integration-object-factory.js.map \ No newline at end of file diff --git a/src/app/core/integration/integration-object-factory.js.map b/src/app/core/integration/integration-object-factory.js.map deleted file mode 100644 index b86b4a3703..0000000000 --- a/src/app/core/integration/integration-object-factory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"integration-object-factory.js","sourceRoot":"","sources":["integration-object-factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAErF;IAAA;IAWA,CAAC;IAVe,uCAAc,GAA5B,UAA6B,IAAI;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,eAAe,CAAC,SAAS,CAAC,CAAC;gBAC9B,OAAO,wBAAwB,CAAC;aACjC;YACD,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,+BAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/core/integration/integration-response-parsing.service.js b/src/app/core/integration/integration-response-parsing.service.js deleted file mode 100644 index a8d8e54127..0000000000 --- a/src/app/core/integration/integration-response-parsing.service.js +++ /dev/null @@ -1,47 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { ErrorResponse, IntegrationSuccessResponse } from '../cache/response.models'; -import { isNotEmpty } from '../../shared/empty.util'; -import { IntegrationObjectFactory } from './integration-object-factory'; -import { BaseResponseParsingService } from '../data/base-response-parsing.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { IntegrationType } from './intergration-type'; -import { AuthorityValue } from './models/authority.value'; -var IntegrationResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(IntegrationResponseParsingService, _super); - function IntegrationResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = IntegrationObjectFactory; - _this.toCache = true; - return _this; - } - IntegrationResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload) && isNotEmpty(data.payload._links)) { - var dataDefinition = this.process(data.payload, request.uuid); - return new IntegrationSuccessResponse(this.processResponse(dataDefinition), data.statusCode, data.statusText, this.processPageInfo(data.payload)); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from Integration endpoint'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - IntegrationResponseParsingService.prototype.processResponse = function (data) { - var returnList = Array.of(); - data.page.forEach(function (item, index) { - if (item.type === IntegrationType.Authority) { - data.page[index] = Object.assign(new AuthorityValue(), item); - } - }); - return data; - }; - IntegrationResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], IntegrationResponseParsingService); - return IntegrationResponseParsingService; -}(BaseResponseParsingService)); -export { IntegrationResponseParsingService }; -//# sourceMappingURL=integration-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/integration/integration-response-parsing.service.js.map b/src/app/core/integration/integration-response-parsing.service.js.map deleted file mode 100644 index 48a736ada4..0000000000 --- a/src/app/core/integration/integration-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"integration-response-parsing.service.js","sourceRoot":"","sources":["integration-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAInD,OAAO,EACL,aAAa,EACb,0BAA0B,EAE3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI1D;IAAuD,6DAA0B;IAK/E,2CACmC,SAAuB,EAC9C,WAA+B;QAF3C,YAIE,iBAAO,SACR;QAJkC,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QALjC,mBAAa,GAAG,wBAAwB,CAAC;QACzC,aAAO,GAAG,IAAI,CAAC;;IAOzB,CAAC;IAED,iDAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC/D,IAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAmC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAClG,OAAO,IAAI,0BAA0B,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SACnJ;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,+CAA+C,CAAC,EAC1D,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAC,CAC3D,CACF,CAAC;SACH;IACH,CAAC;IAES,2DAAe,GAAzB,UAA0B,IAAqC;QAC7D,IAAM,UAAU,GAAG,KAAK,CAAC,EAAE,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAC,IAAI,EAAE,KAAK;YAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,SAAS,EAAE;gBAC3C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAE,IAAI,CAAC,CAAC;aAC9D;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAnCU,iCAAiC;QAD7C,UAAU,EAAE;QAOR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAPhC,iCAAiC,CAqC7C;IAAD,wCAAC;CAAA,AArCD,CAAuD,0BAA0B,GAqChF;SArCY,iCAAiC"} \ No newline at end of file diff --git a/src/app/core/integration/integration.service.js b/src/app/core/integration/integration.service.js deleted file mode 100644 index 2138128b65..0000000000 --- a/src/app/core/integration/integration.service.js +++ /dev/null @@ -1,84 +0,0 @@ -import { of as observableOf, throwError as observableThrowError } from 'rxjs'; -import { distinctUntilChanged, filter, map, mergeMap, tap } from 'rxjs/operators'; -import { IntegrationRequest } from '../data/request.models'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { IntegrationData } from './integration-data'; -import { IntegrationSearchOptions } from './models/integration-options.model'; -import { getResponseFromEntry } from '../shared/operators'; -var IntegrationService = /** @class */ (function () { - function IntegrationService() { - } - IntegrationService.prototype.getData = function (request) { - return this.requestService.getByHref(request.href).pipe(getResponseFromEntry(), mergeMap(function (response) { - if (response.isSuccessful && isNotEmpty(response)) { - return observableOf(new IntegrationData(response.pageInfo, (response.dataDefinition) ? response.dataDefinition.page : [])); - } - else if (!response.isSuccessful) { - return observableThrowError(new Error("Couldn't retrieve the integration data")); - } - }), distinctUntilChanged()); - }; - IntegrationService.prototype.getEntriesHref = function (endpoint, options) { - if (options === void 0) { options = new IntegrationSearchOptions(); } - var result; - var args = []; - if (hasValue(options.name)) { - result = endpoint + "/" + options.name + "/" + this.entriesEndpoint; - } - else { - result = endpoint; - } - if (hasValue(options.query)) { - args.push("query=" + options.query); - } - if (hasValue(options.metadata)) { - args.push("metadata=" + options.metadata); - } - if (hasValue(options.uuid)) { - args.push("uuid=" + options.uuid); - } - if (hasValue(options.currentPage) && typeof options.currentPage === 'number') { - /* TODO: this is a temporary fix for the pagination start index (0 or 1) discrepancy between the rest and the frontend respectively */ - args.push("page=" + (options.currentPage - 1)); - } - if (hasValue(options.elementsPerPage)) { - args.push("size=" + options.elementsPerPage); - } - if (hasValue(options.sort)) { - args.push("sort=" + options.sort.field + "," + options.sort.direction); - } - if (isNotEmpty(args)) { - result = result + "?" + args.join('&'); - } - return result; - }; - IntegrationService.prototype.getEntryValueHref = function (endpoint, options) { - if (options === void 0) { options = new IntegrationSearchOptions(); } - var result; - var args = []; - if (hasValue(options.name) && hasValue(options.query)) { - result = endpoint + "/" + options.name + "/" + this.entryValueEndpoint + "/" + options.query; - } - else { - result = endpoint; - } - if (hasValue(options.metadata)) { - args.push("metadata=" + options.metadata); - } - if (isNotEmpty(args)) { - result = result + "?" + args.join('&'); - } - return result; - }; - IntegrationService.prototype.getEntriesByName = function (options) { - var _this = this; - return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getEntriesHref(endpoint, options); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new IntegrationRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getData(request); }), distinctUntilChanged()); - }; - IntegrationService.prototype.getEntryByValue = function (options) { - var _this = this; - return this.halService.getEndpoint(this.linkPath).pipe(map(function (endpoint) { return _this.getEntryValueHref(endpoint, options); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new IntegrationRequest(_this.requestService.generateRequestId(), endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), mergeMap(function (request) { return _this.getData(request); }), distinctUntilChanged()); - }; - return IntegrationService; -}()); -export { IntegrationService }; -//# sourceMappingURL=integration.service.js.map \ No newline at end of file diff --git a/src/app/core/integration/integration.service.js.map b/src/app/core/integration/integration.service.js.map deleted file mode 100644 index 6be9b6439c..0000000000 --- a/src/app/core/integration/integration.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"integration.service.js","sourceRoot":"","sources":["integration.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/integration/intergration-type.js b/src/app/core/integration/intergration-type.js deleted file mode 100644 index cfbfa76c50..0000000000 --- a/src/app/core/integration/intergration-type.js +++ /dev/null @@ -1,5 +0,0 @@ -export var IntegrationType; -(function (IntegrationType) { - IntegrationType["Authority"] = "authority"; -})(IntegrationType || (IntegrationType = {})); -//# sourceMappingURL=intergration-type.js.map \ No newline at end of file diff --git a/src/app/core/integration/intergration-type.js.map b/src/app/core/integration/intergration-type.js.map deleted file mode 100644 index 22d36e23e7..0000000000 --- a/src/app/core/integration/intergration-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"intergration-type.js","sourceRoot":"","sources":["intergration-type.ts"],"names":[],"mappings":"AACA,MAAM,CAAN,IAAY,eAEX;AAFD,WAAY,eAAe;IACzB,0CAAuB,CAAA;AACzB,CAAC,EAFW,eAAe,KAAf,eAAe,QAE1B"} \ No newline at end of file diff --git a/src/app/core/integration/models/authority-options.model.js b/src/app/core/integration/models/authority-options.model.js deleted file mode 100644 index b7dd353e92..0000000000 --- a/src/app/core/integration/models/authority-options.model.js +++ /dev/null @@ -1,12 +0,0 @@ -var AuthorityOptions = /** @class */ (function () { - function AuthorityOptions(name, metadata, scope, closed) { - if (closed === void 0) { closed = false; } - this.name = name; - this.metadata = metadata; - this.scope = scope; - this.closed = closed; - } - return AuthorityOptions; -}()); -export { AuthorityOptions }; -//# sourceMappingURL=authority-options.model.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/authority-options.model.js.map b/src/app/core/integration/models/authority-options.model.js.map deleted file mode 100644 index a1bb97b0fa..0000000000 --- a/src/app/core/integration/models/authority-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"authority-options.model.js","sourceRoot":"","sources":["authority-options.model.ts"],"names":[],"mappings":"AAAA;IAME,0BAAY,IAAY,EACZ,QAAgB,EAChB,KAAa,EACb,MAAuB;QAAvB,uBAAA,EAAA,cAAuB;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IACH,uBAAC;AAAD,CAAC,AAfD,IAeC"} \ No newline at end of file diff --git a/src/app/core/integration/models/authority.value.js b/src/app/core/integration/models/authority.value.js deleted file mode 100644 index 8aff2025b4..0000000000 --- a/src/app/core/integration/models/authority.value.js +++ /dev/null @@ -1,48 +0,0 @@ -import * as tslib_1 from "tslib"; -import { IntegrationModel } from './integration.model'; -import { isNotEmpty } from '../../../shared/empty.util'; -import { PLACEHOLDER_PARENT_METADATA } from '../../../shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; -/** - * Class representing an authority object - */ -var AuthorityValue = /** @class */ (function (_super) { - tslib_1.__extends(AuthorityValue, _super); - function AuthorityValue() { - return _super !== null && _super.apply(this, arguments) || this; - } - /** - * This method checks if authority has an identifier value - * - * @return boolean - */ - AuthorityValue.prototype.hasAuthority = function () { - return isNotEmpty(this.id); - }; - /** - * This method checks if authority has a value - * - * @return boolean - */ - AuthorityValue.prototype.hasValue = function () { - return isNotEmpty(this.value); - }; - /** - * This method checks if authority has related information object - * - * @return boolean - */ - AuthorityValue.prototype.hasOtherInformation = function () { - return isNotEmpty(this.otherInformation); - }; - /** - * This method checks if authority has a placeholder as value - * - * @return boolean - */ - AuthorityValue.prototype.hasPlaceholder = function () { - return this.hasValue() && this.value === PLACEHOLDER_PARENT_METADATA; - }; - return AuthorityValue; -}(IntegrationModel)); -export { AuthorityValue }; -//# sourceMappingURL=authority.value.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/authority.value.js.map b/src/app/core/integration/models/authority.value.js.map deleted file mode 100644 index 3b56e06858..0000000000 --- a/src/app/core/integration/models/authority.value.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"authority.value.js","sourceRoot":"","sources":["authority.value.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oGAAoG,CAAC;AAIjJ;;GAEG;AACH;IAAoC,0CAAgB;IAApD;;IA8DA,CAAC;IAnCC;;;;OAIG;IACH,qCAAY,GAAZ;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,iCAAQ,GAAR;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,4CAAmB,GAAnB;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,uCAAc,GAAd;QACE,OAAO,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,2BAA2B,CAAC;IACvE,CAAC;IACH,qBAAC;AAAD,CAAC,AA9DD,CAAoC,gBAAgB,GA8DnD"} \ No newline at end of file diff --git a/src/app/core/integration/models/confidence-type.js b/src/app/core/integration/models/confidence-type.js deleted file mode 100644 index 3895a17951..0000000000 --- a/src/app/core/integration/models/confidence-type.js +++ /dev/null @@ -1,39 +0,0 @@ -export var ConfidenceType; -(function (ConfidenceType) { - /** - * This authority value has been confirmed as accurate by an - * interactive user or authoritative policy - */ - ConfidenceType[ConfidenceType["CF_ACCEPTED"] = 600] = "CF_ACCEPTED"; - /** - * Value is singular and valid but has not been seen and accepted - * by a human, so its provenance is uncertain. - */ - ConfidenceType[ConfidenceType["CF_UNCERTAIN"] = 500] = "CF_UNCERTAIN"; - /** - * There are multiple matching authority values of equal validity. - */ - ConfidenceType[ConfidenceType["CF_AMBIGUOUS"] = 400] = "CF_AMBIGUOUS"; - /** - * There are no matching answers from the authority. - */ - ConfidenceType[ConfidenceType["CF_NOTFOUND"] = 300] = "CF_NOTFOUND"; - /** - * The authority encountered an internal failure - this preserves a - * record in the metadata of why there is no value. - */ - ConfidenceType[ConfidenceType["CF_FAILED"] = 200] = "CF_FAILED"; - /** - * The authority recommends this submission be rejected. - */ - ConfidenceType[ConfidenceType["CF_REJECTED"] = 100] = "CF_REJECTED"; - /** - * No reasonable confidence value is available - */ - ConfidenceType[ConfidenceType["CF_NOVALUE"] = 0] = "CF_NOVALUE"; - /** - * Value has not been set (DB default). - */ - ConfidenceType[ConfidenceType["CF_UNSET"] = -1] = "CF_UNSET"; -})(ConfidenceType || (ConfidenceType = {})); -//# sourceMappingURL=confidence-type.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/confidence-type.js.map b/src/app/core/integration/models/confidence-type.js.map deleted file mode 100644 index f716d3ef42..0000000000 --- a/src/app/core/integration/models/confidence-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"confidence-type.js","sourceRoot":"","sources":["confidence-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,cA2CX;AA3CD,WAAY,cAAc;IACxB;;;OAGG;IACH,mEAAiB,CAAA;IAEjB;;;OAGG;IACH,qEAAkB,CAAA;IAElB;;OAEG;IACH,qEAAkB,CAAA;IAElB;;OAEG;IACH,mEAAiB,CAAA;IAEjB;;;OAGG;IACH,+DAAe,CAAA;IAEf;;OAEG;IACH,mEAAiB,CAAA;IAEjB;;OAEG;IACH,+DAAc,CAAA;IAEd;;OAEG;IACH,4DAAa,CAAA;AACf,CAAC,EA3CW,cAAc,KAAd,cAAc,QA2CzB"} \ No newline at end of file diff --git a/src/app/core/integration/models/integration-options.model.js b/src/app/core/integration/models/integration-options.model.js deleted file mode 100644 index 37c3c4cf3c..0000000000 --- a/src/app/core/integration/models/integration-options.model.js +++ /dev/null @@ -1,18 +0,0 @@ -var IntegrationSearchOptions = /** @class */ (function () { - function IntegrationSearchOptions(uuid, name, metadata, query, elementsPerPage, currentPage, sort) { - if (uuid === void 0) { uuid = ''; } - if (name === void 0) { name = ''; } - if (metadata === void 0) { metadata = ''; } - if (query === void 0) { query = ''; } - this.uuid = uuid; - this.name = name; - this.metadata = metadata; - this.query = query; - this.elementsPerPage = elementsPerPage; - this.currentPage = currentPage; - this.sort = sort; - } - return IntegrationSearchOptions; -}()); -export { IntegrationSearchOptions }; -//# sourceMappingURL=integration-options.model.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/integration-options.model.js.map b/src/app/core/integration/models/integration-options.model.js.map deleted file mode 100644 index d4395a3ed4..0000000000 --- a/src/app/core/integration/models/integration-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"integration-options.model.js","sourceRoot":"","sources":["integration-options.model.ts"],"names":[],"mappings":"AAEA;IAEE,kCAAmB,IAAiB,EACjB,IAAiB,EACjB,QAAqB,EACrB,KAAkB,EAClB,eAAwB,EACxB,WAAoB,EACpB,IAAkB;QANlB,qBAAA,EAAA,SAAiB;QACjB,qBAAA,EAAA,SAAiB;QACjB,yBAAA,EAAA,aAAqB;QACrB,sBAAA,EAAA,UAAkB;QAHlB,SAAI,GAAJ,IAAI,CAAa;QACjB,SAAI,GAAJ,IAAI,CAAa;QACjB,aAAQ,GAAR,QAAQ,CAAa;QACrB,UAAK,GAAL,KAAK,CAAa;QAClB,oBAAe,GAAf,eAAe,CAAS;QACxB,gBAAW,GAAX,WAAW,CAAS;QACpB,SAAI,GAAJ,IAAI,CAAc;IAErC,CAAC;IACH,+BAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/core/integration/models/integration.model.js b/src/app/core/integration/models/integration.model.js deleted file mode 100644 index d77588dd49..0000000000 --- a/src/app/core/integration/models/integration.model.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize } from 'cerialize'; -var IntegrationModel = /** @class */ (function () { - function IntegrationModel() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], IntegrationModel.prototype, "self", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], IntegrationModel.prototype, "uuid", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], IntegrationModel.prototype, "type", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], IntegrationModel.prototype, "_links", void 0); - return IntegrationModel; -}()); -export { IntegrationModel }; -//# sourceMappingURL=integration.model.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/integration.model.js.map b/src/app/core/integration/models/integration.model.js.map deleted file mode 100644 index b6fe631caf..0000000000 --- a/src/app/core/integration/models/integration.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"integration.model.js","sourceRoot":"","sources":["integration.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG1C;IAAA;IAgBA,CAAC;IAbC;QADC,aAAa;;kDACD;IAGb;QADC,aAAa;;kDACD;IAGb;QADC,aAAa;;kDACG;IAGjB;QADC,aAAa;;oDAGb;IAEH,uBAAC;CAAA,AAhBD,IAgBC;SAhBqB,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/integration/models/normalized-authority-value.model.js b/src/app/core/integration/models/normalized-authority-value.model.js deleted file mode 100644 index 7531a3f0f3..0000000000 --- a/src/app/core/integration/models/normalized-authority-value.model.js +++ /dev/null @@ -1,41 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { IntegrationModel } from './integration.model'; -import { mapsTo } from '../../cache/builders/build-decorators'; -import { AuthorityValue } from './authority.value'; -/** - * Normalized model class for an Authority Value - */ -var NormalizedAuthorityValue = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedAuthorityValue, _super); - function NormalizedAuthorityValue() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedAuthorityValue.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedAuthorityValue.prototype, "display", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedAuthorityValue.prototype, "value", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], NormalizedAuthorityValue.prototype, "otherInformation", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedAuthorityValue.prototype, "language", void 0); - NormalizedAuthorityValue = tslib_1.__decorate([ - mapsTo(AuthorityValue), - inheritSerialization(IntegrationModel) - ], NormalizedAuthorityValue); - return NormalizedAuthorityValue; -}(IntegrationModel)); -export { NormalizedAuthorityValue }; -//# sourceMappingURL=normalized-authority-value.model.js.map \ No newline at end of file diff --git a/src/app/core/integration/models/normalized-authority-value.model.js.map b/src/app/core/integration/models/normalized-authority-value.model.js.map deleted file mode 100644 index 9fe308140b..0000000000 --- a/src/app/core/integration/models/normalized-authority-value.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-authority-value.model.js","sourceRoot":"","sources":["normalized-authority-value.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;GAEG;AAGH;IAA8C,oDAAgB;IAA9D;;IAiBA,CAAC;IAdC;QADC,aAAa;;wDACH;IAGX;QADC,aAAa;;6DACE;IAGhB;QADC,aAAa;;2DACA;IAGd;QADC,aAAa;;sEACQ;IAGtB;QADC,aAAa;;8DACG;IAfN,wBAAwB;QAFpC,MAAM,CAAC,cAAc,CAAC;QACtB,oBAAoB,CAAC,gBAAgB,CAAC;OAC1B,wBAAwB,CAiBpC;IAAD,+BAAC;CAAA,AAjBD,CAA8C,gBAAgB,GAiB7D;SAjBY,wBAAwB"} \ No newline at end of file diff --git a/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js b/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js deleted file mode 100644 index c73e04bb3e..0000000000 --- a/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js +++ /dev/null @@ -1,56 +0,0 @@ -import * as tslib_1 from "tslib"; -import { isNotUndefined } from '../../../shared/empty.util'; -import { URLCombiner } from '../../url-combiner/url-combiner'; -/** - * Combines a variable number of strings representing parts - * of a JSON-PATCH path - */ -var JsonPatchOperationPathCombiner = /** @class */ (function (_super) { - tslib_1.__extends(JsonPatchOperationPathCombiner, _super); - function JsonPatchOperationPathCombiner(rootElement) { - var subRootElements = []; - for (var _i = 1; _i < arguments.length; _i++) { - subRootElements[_i - 1] = arguments[_i]; - } - var _this = _super.apply(this, [rootElement].concat(subRootElements)) || this; - _this._rootElement = rootElement; - _this._subRootElement = subRootElements.join('/'); - return _this; - } - Object.defineProperty(JsonPatchOperationPathCombiner.prototype, "rootElement", { - get: function () { - return this._rootElement; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(JsonPatchOperationPathCombiner.prototype, "subRootElement", { - get: function () { - return this._subRootElement; - }, - enumerable: true, - configurable: true - }); - /** - * Combines the parts of this JsonPatchOperationPathCombiner in to a JSON-PATCH path member - * - * e.g. new JsonPatchOperationPathCombiner('sections', 'basic').getPath(['dc.title', '0']) - * returns: {rootElement: 'sections', subRootElement: 'basic', path: '/sections/basic/dc.title/0'} - * - * @return {JsonPatchOperationPathObject} - * The combined path object - */ - JsonPatchOperationPathCombiner.prototype.getPath = function (fragment) { - if (isNotUndefined(fragment) && Array.isArray(fragment)) { - fragment = fragment.join('/'); - } - var path = '/' + this.toString(); - if (isNotUndefined(fragment)) { - path += '/' + fragment; - } - return { rootElement: this._rootElement, subRootElement: this._subRootElement, path: path }; - }; - return JsonPatchOperationPathCombiner; -}(URLCombiner)); -export { JsonPatchOperationPathCombiner }; -//# sourceMappingURL=json-patch-operation-path-combiner.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js.map b/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js.map deleted file mode 100644 index 277d072c2a..0000000000 --- a/src/app/core/json-patch/builder/json-patch-operation-path-combiner.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-patch-operation-path-combiner.js","sourceRoot":"","sources":["json-patch-operation-path-combiner.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAY9D;;;GAGG;AACH;IAAoD,0DAAW;IAI7D,wCAAY,WAAW;QAAE,yBAA4B;aAA5B,UAA4B,EAA5B,qBAA4B,EAA5B,IAA4B;YAA5B,wCAA4B;;QAArD,gCACQ,WAAW,SAAK,eAAe,WAGtC;QAFC,KAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,KAAI,CAAC,eAAe,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;IACnD,CAAC;IAED,sBAAI,uDAAW;aAAf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAED,sBAAI,0DAAc;aAAlB;YACE,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;;;OAAA;IAED;;;;;;;;OAQG;IACI,gDAAO,GAAd,UAAe,QAA0B;QACvC,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACvD,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC/B;QAED,IAAI,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE;YAC5B,IAAI,IAAI,GAAG,GAAG,QAAQ,CAAC;SACxB;QAED,OAAO,EAAC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC;IAC5F,CAAC;IACH,qCAAC;AAAD,CAAC,AAvCD,CAAoD,WAAW,GAuC9D"} \ No newline at end of file diff --git a/src/app/core/json-patch/builder/json-patch-operations-builder.js b/src/app/core/json-patch/builder/json-patch-operations-builder.js deleted file mode 100644 index 87d4f918f7..0000000000 --- a/src/app/core/json-patch/builder/json-patch-operations-builder.js +++ /dev/null @@ -1,134 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Store } from '@ngrx/store'; -import { NewPatchAddOperationAction, NewPatchRemoveOperationAction, NewPatchReplaceOperationAction } from '../json-patch-operations.actions'; -import { Injectable } from '@angular/core'; -import { isEmpty, isNotEmpty } from '../../../shared/empty.util'; -import { dateToISOFormat } from '../../../shared/date.util'; -import { AuthorityValue } from '../../integration/models/authority.value'; -import { FormFieldMetadataValueObject } from '../../../shared/form/builder/models/form-field-metadata-value.model'; -import { FormFieldLanguageValueObject } from '../../../shared/form/builder/models/form-field-language-value.model'; -/** - * Provides methods to dispatch JsonPatch Operations Actions - */ -var JsonPatchOperationsBuilder = /** @class */ (function () { - function JsonPatchOperationsBuilder(store) { - this.store = store; - } - /** - * Dispatches a new NewPatchAddOperationAction - * - * @param path - * a JsonPatchOperationPathObject representing path - * @param value - * The value to update the referenced path - * @param first - * A boolean representing if the value to be added is the first of an array - * @param plain - * A boolean representing if the value to be added is a plain text value - */ - JsonPatchOperationsBuilder.prototype.add = function (path, value, first, plain) { - if (first === void 0) { first = false; } - if (plain === void 0) { plain = false; } - this.store.dispatch(new NewPatchAddOperationAction(path.rootElement, path.subRootElement, path.path, this.prepareValue(value, plain, first))); - }; - /** - * Dispatches a new NewPatchReplaceOperationAction - * - * @param path - * a JsonPatchOperationPathObject representing path - * @param value - * the value to update the referenced path - * @param plain - * a boolean representing if the value to be added is a plain text value - */ - JsonPatchOperationsBuilder.prototype.replace = function (path, value, plain) { - if (plain === void 0) { plain = false; } - this.store.dispatch(new NewPatchReplaceOperationAction(path.rootElement, path.subRootElement, path.path, this.prepareValue(value, plain, false))); - }; - /** - * Dispatches a new NewPatchRemoveOperationAction - * - * @param path - * a JsonPatchOperationPathObject representing path - */ - JsonPatchOperationsBuilder.prototype.remove = function (path) { - this.store.dispatch(new NewPatchRemoveOperationAction(path.rootElement, path.subRootElement, path.path)); - }; - JsonPatchOperationsBuilder.prototype.prepareValue = function (value, plain, first) { - var _this = this; - var operationValue = null; - if (isNotEmpty(value)) { - if (plain) { - operationValue = value; - } - else { - if (Array.isArray(value)) { - operationValue = []; - value.forEach(function (entry) { - if ((typeof entry === 'object')) { - operationValue.push(_this.prepareObjectValue(entry)); - } - else { - operationValue.push(new FormFieldMetadataValueObject(entry)); - } - }); - } - else if (typeof value === 'object') { - operationValue = this.prepareObjectValue(value); - } - else { - operationValue = new FormFieldMetadataValueObject(value); - } - } - } - return (first && !Array.isArray(operationValue)) ? [operationValue] : operationValue; - }; - JsonPatchOperationsBuilder.prototype.prepareObjectValue = function (value) { - var _this = this; - var operationValue = Object.create({}); - if (isEmpty(value) || value instanceof FormFieldMetadataValueObject) { - operationValue = value; - } - else if (value instanceof Date) { - operationValue = new FormFieldMetadataValueObject(dateToISOFormat(value)); - } - else if (value instanceof AuthorityValue) { - operationValue = this.prepareAuthorityValue(value); - } - else if (value instanceof FormFieldLanguageValueObject) { - operationValue = new FormFieldMetadataValueObject(value.value, value.language); - } - else if (value.hasOwnProperty('value')) { - operationValue = new FormFieldMetadataValueObject(value.value); - } - else { - Object.keys(value) - .forEach(function (key) { - if (typeof value[key] === 'object') { - operationValue[key] = _this.prepareObjectValue(value[key]); - } - else { - operationValue[key] = value[key]; - } - }); - } - return operationValue; - }; - JsonPatchOperationsBuilder.prototype.prepareAuthorityValue = function (value) { - var operationValue = null; - if (isNotEmpty(value.id)) { - operationValue = new FormFieldMetadataValueObject(value.value, value.language, value.id); - } - else { - operationValue = new FormFieldMetadataValueObject(value.value, value.language); - } - return operationValue; - }; - JsonPatchOperationsBuilder = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store]) - ], JsonPatchOperationsBuilder); - return JsonPatchOperationsBuilder; -}()); -export { JsonPatchOperationsBuilder }; -//# sourceMappingURL=json-patch-operations-builder.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/builder/json-patch-operations-builder.js.map b/src/app/core/json-patch/builder/json-patch-operations-builder.js.map deleted file mode 100644 index f401e75cae..0000000000 --- a/src/app/core/json-patch/builder/json-patch-operations-builder.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-patch-operations-builder.js","sourceRoot":"","sources":["json-patch-operations-builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.actions.js b/src/app/core/json-patch/json-patch-operations.actions.js deleted file mode 100644 index 9f02747448..0000000000 --- a/src/app/core/json-patch/json-patch-operations.actions.js +++ /dev/null @@ -1,213 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var JsonPatchOperationsActionTypes = { - NEW_JSON_PATCH_ADD_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_ADD_OPERATION'), - NEW_JSON_PATCH_COPY_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_COPY_OPERATION'), - NEW_JSON_PATCH_MOVE_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_MOVE_OPERATION'), - NEW_JSON_PATCH_REMOVE_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_REMOVE_OPERATION'), - NEW_JSON_PATCH_REPLACE_OPERATION: type('dspace/core/patch/NEW_JSON_PATCH_REPLACE_OPERATION'), - COMMIT_JSON_PATCH_OPERATIONS: type('dspace/core/patch/COMMIT_JSON_PATCH_OPERATIONS'), - ROLLBACK_JSON_PATCH_OPERATIONS: type('dspace/core/patch/ROLLBACK_JSON_PATCH_OPERATIONS'), - FLUSH_JSON_PATCH_OPERATIONS: type('dspace/core/patch/FLUSH_JSON_PATCH_OPERATIONS'), - START_TRANSACTION_JSON_PATCH_OPERATIONS: type('dspace/core/patch/START_TRANSACTION_JSON_PATCH_OPERATIONS'), -}; -/* tslint:disable:max-classes-per-file */ -/** - * An ngrx action to commit the current transaction - */ -var CommitPatchOperationsAction = /** @class */ (function () { - /** - * Create a new CommitPatchOperationsAction - * - * @param resourceType - * the resource's type - * @param resourceId - * the resource's ID - */ - function CommitPatchOperationsAction(resourceType, resourceId) { - this.type = JsonPatchOperationsActionTypes.COMMIT_JSON_PATCH_OPERATIONS; - this.payload = { resourceType: resourceType, resourceId: resourceId }; - } - return CommitPatchOperationsAction; -}()); -export { CommitPatchOperationsAction }; -/** - * An ngrx action to rollback the current transaction - */ -var RollbacktPatchOperationsAction = /** @class */ (function () { - /** - * Create a new CommitPatchOperationsAction - * - * @param resourceType - * the resource's type - * @param resourceId - * the resource's ID - */ - function RollbacktPatchOperationsAction(resourceType, resourceId) { - this.type = JsonPatchOperationsActionTypes.ROLLBACK_JSON_PATCH_OPERATIONS; - this.payload = { resourceType: resourceType, resourceId: resourceId }; - } - return RollbacktPatchOperationsAction; -}()); -export { RollbacktPatchOperationsAction }; -/** - * An ngrx action to initiate a transaction block - */ -var StartTransactionPatchOperationsAction = /** @class */ (function () { - /** - * Create a new CommitPatchOperationsAction - * - * @param resourceType - * the resource's type - * @param resourceId - * the resource's ID - * @param startTime - * the start timestamp - */ - function StartTransactionPatchOperationsAction(resourceType, resourceId, startTime) { - this.type = JsonPatchOperationsActionTypes.START_TRANSACTION_JSON_PATCH_OPERATIONS; - this.payload = { resourceType: resourceType, resourceId: resourceId, startTime: startTime }; - } - return StartTransactionPatchOperationsAction; -}()); -export { StartTransactionPatchOperationsAction }; -/** - * An ngrx action to flush list of the JSON Patch operations - */ -var FlushPatchOperationsAction = /** @class */ (function () { - /** - * Create a new FlushPatchOperationsAction - * - * @param resourceType - * the resource's type - * @param resourceId - * the resource's ID - */ - function FlushPatchOperationsAction(resourceType, resourceId) { - this.type = JsonPatchOperationsActionTypes.FLUSH_JSON_PATCH_OPERATIONS; - this.payload = { resourceType: resourceType, resourceId: resourceId }; - } - return FlushPatchOperationsAction; -}()); -export { FlushPatchOperationsAction }; -/** - * An ngrx action to Add new HTTP/PATCH ADD operations to state - */ -var NewPatchAddOperationAction = /** @class */ (function () { - /** - * Create a new NewPatchAddOperationAction - * - * @param resourceType - * the resource's type where to add operation - * @param resourceId - * the resource's ID - * @param path - * the path of the operation - * @param value - * the operation's payload - */ - function NewPatchAddOperationAction(resourceType, resourceId, path, value) { - this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_ADD_OPERATION; - this.payload = { resourceType: resourceType, resourceId: resourceId, path: path, value: value }; - } - return NewPatchAddOperationAction; -}()); -export { NewPatchAddOperationAction }; -/** - * An ngrx action to add new JSON Patch COPY operation to state - */ -var NewPatchCopyOperationAction = /** @class */ (function () { - /** - * Create a new NewPatchCopyOperationAction - * - * @param resourceType - * the resource's type - * @param resourceId - * the resource's ID - * @param from - * the path to copy the value from - * @param path - * the path where to copy the value - */ - function NewPatchCopyOperationAction(resourceType, resourceId, from, path) { - this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_COPY_OPERATION; - this.payload = { resourceType: resourceType, resourceId: resourceId, from: from, path: path }; - } - return NewPatchCopyOperationAction; -}()); -export { NewPatchCopyOperationAction }; -/** - * An ngrx action to Add new JSON Patch MOVE operation to state - */ -var NewPatchMoveOperationAction = /** @class */ (function () { - /** - * Create a new NewPatchMoveOperationAction - * - * @param resourceType - * the resource's type - * @param resourceId - * the resource's ID - * @param from - * the path to move the value from - * @param path - * the path where to move the value - */ - function NewPatchMoveOperationAction(resourceType, resourceId, from, path) { - this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_MOVE_OPERATION; - this.payload = { resourceType: resourceType, resourceId: resourceId, from: from, path: path }; - } - return NewPatchMoveOperationAction; -}()); -export { NewPatchMoveOperationAction }; -/** - * An ngrx action to Add new JSON Patch REMOVE operation to state - */ -var NewPatchRemoveOperationAction = /** @class */ (function () { - /** - * Create a new NewPatchRemoveOperationAction - * - * @param resourceType - * the resource's type - * @param resourceId - * the resource's ID - * @param path - * the path of the operation - */ - function NewPatchRemoveOperationAction(resourceType, resourceId, path) { - this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REMOVE_OPERATION; - this.payload = { resourceType: resourceType, resourceId: resourceId, path: path }; - } - return NewPatchRemoveOperationAction; -}()); -export { NewPatchRemoveOperationAction }; -/** - * An ngrx action to add new JSON Patch REPLACE operation to state - */ -var NewPatchReplaceOperationAction = /** @class */ (function () { - /** - * Create a new NewPatchReplaceOperationAction - * - * @param resourceType - * the resource's type - * @param resourceId - * the resource's ID - * @param path - * the path of the operation - * @param value - * the operation's payload - */ - function NewPatchReplaceOperationAction(resourceType, resourceId, path, value) { - this.type = JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REPLACE_OPERATION; - this.payload = { resourceType: resourceType, resourceId: resourceId, path: path, value: value }; - } - return NewPatchReplaceOperationAction; -}()); -export { NewPatchReplaceOperationAction }; -//# sourceMappingURL=json-patch-operations.actions.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.actions.js.map b/src/app/core/json-patch/json-patch-operations.actions.js.map deleted file mode 100644 index 13851a1595..0000000000 --- a/src/app/core/json-patch/json-patch-operations.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-patch-operations.actions.js","sourceRoot":"","sources":["json-patch-operations.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.effects.js b/src/app/core/json-patch/json-patch-operations.effects.js deleted file mode 100644 index 2d8bc5ffff..0000000000 --- a/src/app/core/json-patch/json-patch-operations.effects.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { map } from 'rxjs/operators'; -import { Effect, Actions, ofType } from '@ngrx/effects'; -import { FlushPatchOperationsAction, JsonPatchOperationsActionTypes } from './json-patch-operations.actions'; -/** - * Provides effect methods for jsonPatch Operations actions - */ -var JsonPatchOperationsEffects = /** @class */ (function () { - function JsonPatchOperationsEffects(actions$) { - this.actions$ = actions$; - /** - * Dispatches a FlushPatchOperationsAction for every dispatched CommitPatchOperationsAction - */ - this.commit$ = this.actions$.pipe(ofType(JsonPatchOperationsActionTypes.COMMIT_JSON_PATCH_OPERATIONS), map(function (action) { - return new FlushPatchOperationsAction(action.payload.resourceType, action.payload.resourceId); - })); - } - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], JsonPatchOperationsEffects.prototype, "commit$", void 0); - JsonPatchOperationsEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions]) - ], JsonPatchOperationsEffects); - return JsonPatchOperationsEffects; -}()); -export { JsonPatchOperationsEffects }; -//# sourceMappingURL=json-patch-operations.effects.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.effects.js.map b/src/app/core/json-patch/json-patch-operations.effects.js.map deleted file mode 100644 index f78e5b8595..0000000000 --- a/src/app/core/json-patch/json-patch-operations.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-patch-operations.effects.js","sourceRoot":"","sources":["json-patch-operations.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,EACwB,0BAA0B,EACvD,8BAA8B,EAC/B,MAAM,iCAAiC,CAAC;AAEzC;;GAEG;AAEH;IAWE,oCAAoB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;QATrC;;WAEG;QACO,YAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CACpC,MAAM,CAAC,8BAA8B,CAAC,4BAA4B,CAAC,EACnE,GAAG,CAAC,UAAC,MAAmC;YACtC,OAAO,IAAI,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC,CAAC;IAEkC,CAAC;IAN/B;QAAT,MAAM,EAAE;;+DAIH;IATK,0BAA0B;QADtC,UAAU,EAAE;iDAYmB,OAAO;OAX1B,0BAA0B,CAatC;IAAD,iCAAC;CAAA,AAbD,IAaC;SAbY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.reducer.js b/src/app/core/json-patch/json-patch-operations.reducer.js deleted file mode 100644 index 5ebda1661d..0000000000 --- a/src/app/core/json-patch/json-patch-operations.reducer.js +++ /dev/null @@ -1,264 +0,0 @@ -import { hasValue, isNotEmpty, isNotUndefined, isNull } from '../../shared/empty.util'; -import { JsonPatchOperationsActionTypes } from './json-patch-operations.actions'; -import { JsonPatchOperationType } from './json-patch.model'; -var initialState = Object.create(null); -/** - * The JSON-PATCH operations Reducer - * - * @param state - * the current state - * @param action - * the action to perform on the state - * @return JsonPatchOperationsState - * the new state - */ -export function jsonPatchOperationsReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case JsonPatchOperationsActionTypes.COMMIT_JSON_PATCH_OPERATIONS: { - return commitOperations(state, action); - } - case JsonPatchOperationsActionTypes.FLUSH_JSON_PATCH_OPERATIONS: { - return flushOperation(state, action); - } - case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_ADD_OPERATION: { - return newOperation(state, action); - } - case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_COPY_OPERATION: { - return newOperation(state, action); - } - case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_MOVE_OPERATION: { - return newOperation(state, action); - } - case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REMOVE_OPERATION: { - return newOperation(state, action); - } - case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REPLACE_OPERATION: { - return newOperation(state, action); - } - case JsonPatchOperationsActionTypes.ROLLBACK_JSON_PATCH_OPERATIONS: { - return rollbackOperations(state, action); - } - case JsonPatchOperationsActionTypes.START_TRANSACTION_JSON_PATCH_OPERATIONS: { - return startTransactionPatchOperations(state, action); - } - default: { - return state; - } - } -} -/** - * Set the transaction start time. - * - * @param state - * the current state - * @param action - * an StartTransactionPatchOperationsAction - * @return JsonPatchOperationsState - * the new state. - */ -function startTransactionPatchOperations(state, action) { - var _a; - if (hasValue(state[action.payload.resourceType]) - && isNull(state[action.payload.resourceType].transactionStartTime)) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { - transactionStartTime: action.payload.startTime, - commitPending: true - }), - _a)); - } - else { - return state; - } -} -/** - * Set commit pending state. - * - * @param state - * the current state - * @param action - * an CommitPatchOperationsAction - * @return JsonPatchOperationsState - * the new state, with the section new validity status. - */ -function commitOperations(state, action) { - var _a; - if (hasValue(state[action.payload.resourceType]) - && state[action.payload.resourceType].commitPending) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { - commitPending: false - }), - _a)); - } - else { - return state; - } -} -/** - * Set commit pending state. - * - * @param state - * the current state - * @param action - * an RollbacktPatchOperationsAction - * @return JsonPatchOperationsState - * the new state. - */ -function rollbackOperations(state, action) { - var _a; - if (hasValue(state[action.payload.resourceType]) - && state[action.payload.resourceType].commitPending) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { - transactionStartTime: null, - commitPending: false - }), - _a)); - } - else { - return state; - } -} -/** - * Add new JSON patch operation list. - * - * @param state - * the current state - * @param action - * an NewPatchAddOperationAction - * @return JsonPatchOperationsState - * the new state, with the section new validity status. - */ -function newOperation(state, action) { - var _a, _b, _c, _d; - var newState = Object.assign({}, state); - var body = hasValidBody(newState, action.payload.resourceType, action.payload.resourceId) - ? newState[action.payload.resourceType].children[action.payload.resourceId].body : Array.of(); - var newBody = addOperationToList(body, action.type, action.payload.path, hasValue(action.payload.value) ? action.payload.value : null); - if (hasValue(newState[action.payload.resourceType]) - && hasValue(newState[action.payload.resourceType].children)) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { - children: Object.assign({}, state[action.payload.resourceType].children, (_b = {}, - _b[action.payload.resourceId] = { - body: newBody, - }, - _b)), - commitPending: isNotUndefined(state[action.payload.resourceType].commitPending) ? state[action.payload.resourceType].commitPending : false - }), - _a)); - } - else { - return Object.assign({}, state, (_c = {}, - _c[action.payload.resourceType] = Object.assign({}, { - children: (_d = {}, - _d[action.payload.resourceId] = { - body: newBody, - }, - _d), - transactionStartTime: null, - commitPending: false - }), - _c)); - } -} -/** - * Check if state has a valid body. - * - * @param state - * the current state - * @param resourceType - * an resource type - * @param resourceId - * an resource ID - * @return boolean - */ -function hasValidBody(state, resourceType, resourceId) { - return (hasValue(state[resourceType]) - && hasValue(state[resourceType].children) - && hasValue(state[resourceType].children[resourceId]) - && isNotEmpty(state[resourceType].children[resourceId].body)); -} -/** - * Set the section validity. - * - * @param state - * the current state - * @param action - * an FlushPatchOperationsAction - * @return SubmissionObjectState - * the new state, with the section new validity status. - */ -function flushOperation(state, action) { - var _a, _b; - if (hasValue(state[action.payload.resourceType])) { - var newChildren_1; - if (isNotUndefined(action.payload.resourceId)) { - // flush only specified child's operations - if (hasValue(state[action.payload.resourceType].children) - && hasValue(state[action.payload.resourceType].children[action.payload.resourceId])) { - newChildren_1 = Object.assign({}, state[action.payload.resourceType].children, (_a = {}, - _a[action.payload.resourceId] = { - body: state[action.payload.resourceType].children[action.payload.resourceId].body - .filter(function (entry) { return entry.timeAdded > state[action.payload.resourceType].transactionStartTime; }) - }, - _a)); - } - else { - newChildren_1 = state[action.payload.resourceType].children; - } - } - else { - // flush all children's operations - newChildren_1 = state[action.payload.resourceType].children; - Object.keys(newChildren_1) - .forEach(function (resourceId) { - var _a; - newChildren_1 = Object.assign({}, newChildren_1, (_a = {}, - _a[resourceId] = { - body: newChildren_1[resourceId].body - .filter(function (entry) { return entry.timeAdded > state[action.payload.resourceType].transactionStartTime; }) - }, - _a)); - }); - } - return Object.assign({}, state, (_b = {}, - _b[action.payload.resourceType] = Object.assign({}, state[action.payload.resourceType], { - children: newChildren_1, - transactionStartTime: null, - }), - _b)); - } - else { - return state; - } -} -function addOperationToList(body, actionType, targetPath, value) { - var newBody = Array.from(body); - switch (actionType) { - case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_ADD_OPERATION: - newBody.push(makeOperationEntry({ - op: JsonPatchOperationType.add, - path: targetPath, - value: value - })); - break; - case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REPLACE_OPERATION: - newBody.push(makeOperationEntry({ - op: JsonPatchOperationType.replace, - path: targetPath, - value: value - })); - break; - case JsonPatchOperationsActionTypes.NEW_JSON_PATCH_REMOVE_OPERATION: - newBody.push(makeOperationEntry({ op: JsonPatchOperationType.remove, path: targetPath })); - break; - } - return newBody; -} -function makeOperationEntry(operation) { - return { operation: operation, timeAdded: new Date().getTime() }; -} -//# sourceMappingURL=json-patch-operations.reducer.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.reducer.js.map b/src/app/core/json-patch/json-patch-operations.reducer.js.map deleted file mode 100644 index 360aba9668..0000000000 --- a/src/app/core/json-patch/json-patch-operations.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-patch-operations.reducer.js","sourceRoot":"","sources":["json-patch-operations.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.service.js b/src/app/core/json-patch/json-patch-operations.service.js deleted file mode 100644 index 27711715e8..0000000000 --- a/src/app/core/json-patch/json-patch-operations.service.js +++ /dev/null @@ -1,117 +0,0 @@ -import { merge as observableMerge, throwError as observableThrowError } from 'rxjs'; -import { distinctUntilChanged, filter, find, flatMap, map, partition, take, tap } from 'rxjs/operators'; -import { hasValue, isEmpty, isNotEmpty, isNotUndefined, isUndefined } from '../../shared/empty.util'; -import { jsonPatchOperationsByResourceType } from './selectors'; -import { CommitPatchOperationsAction, RollbacktPatchOperationsAction, StartTransactionPatchOperationsAction } from './json-patch-operations.actions'; -import { getResponseFromEntry } from '../shared/operators'; -/** - * An abstract class that provides methods to make JSON Patch requests. - */ -var JsonPatchOperationsService = /** @class */ (function () { - function JsonPatchOperationsService() { - } - /** - * Submit a new JSON Patch request with all operations stored in the state that are ready to be dispatched - * - * @param hrefObs - * Observable of request href - * @param resourceType - * The resource type value - * @param resourceId - * The resource id value - * @return Observable - * observable of response - */ - JsonPatchOperationsService.prototype.submitJsonPatchOperations = function (hrefObs, resourceType, resourceId) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - var startTransactionTime = null; - var _a = partition(function (request) { return isNotEmpty(request.body); })(hrefObs.pipe(flatMap(function (endpointURL) { - return _this.store.select(jsonPatchOperationsByResourceType(resourceType)).pipe(take(1), filter(function (operationsList) { return isUndefined(operationsList) || !(operationsList.commitPending); }), tap(function () { return startTransactionTime = new Date().getTime(); }), map(function (operationsList) { - var body = []; - if (isNotEmpty(operationsList)) { - if (isNotEmpty(resourceId)) { - if (isNotUndefined(operationsList.children[resourceId]) && isNotEmpty(operationsList.children[resourceId].body)) { - operationsList.children[resourceId].body.forEach(function (entry) { - body.push(entry.operation); - }); - } - } - else { - Object.keys(operationsList.children) - .filter(function (key) { return operationsList.children.hasOwnProperty(key); }) - .filter(function (key) { return hasValue(operationsList.children[key]); }) - .filter(function (key) { return hasValue(operationsList.children[key].body); }) - .forEach(function (key) { - operationsList.children[key].body.forEach(function (entry) { - body.push(entry.operation); - }); - }); - } - } - return _this.getRequestInstance(requestId, endpointURL, body); - })); - }))), patchRequest$ = _a[0], emptyRequest$ = _a[1]; - return observableMerge(emptyRequest$.pipe(filter(function (request) { return isEmpty(request.body); }), tap(function () { return startTransactionTime = null; }), map(function () { return null; })), patchRequest$.pipe(filter(function (request) { return isNotEmpty(request.body); }), tap(function () { return _this.store.dispatch(new StartTransactionPatchOperationsAction(resourceType, resourceId, startTransactionTime)); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function () { - var _a = partition(function (response) { return response.isSuccessful; })(_this.requestService.getByUUID(requestId).pipe(getResponseFromEntry(), find(function (entry) { return startTransactionTime < entry.timeAdded; }), map(function (entry) { return entry; }))), successResponse$ = _a[0], errorResponse$ = _a[1]; - return observableMerge(errorResponse$.pipe(tap(function () { return _this.store.dispatch(new RollbacktPatchOperationsAction(resourceType, resourceId)); }), flatMap(function (error) { return observableThrowError(error); })), successResponse$.pipe(filter(function (response) { return isNotEmpty(response); }), tap(function () { return _this.store.dispatch(new CommitPatchOperationsAction(resourceType, resourceId)); }), map(function (response) { return response.dataDefinition; }), distinctUntilChanged())); - }))); - }; - /** - * Return an instance for RestRequest class - * - * @param uuid - * The request uuid - * @param href - * The request href - * @param body - * The request body - * @return Object - * instance of PatchRequestDefinition - */ - JsonPatchOperationsService.prototype.getRequestInstance = function (uuid, href, body) { - return new this.patchRequestConstructor(uuid, href, body); - }; - JsonPatchOperationsService.prototype.getEndpointByIDHref = function (endpoint, resourceID) { - return isNotEmpty(resourceID) ? endpoint + "/" + resourceID : "" + endpoint; - }; - /** - * Make a new JSON Patch request with all operations related to the specified resource type - * - * @param linkPath - * The link path of the request - * @param scopeId - * The scope id - * @param resourceType - * The resource type value - * @return Observable - * observable of response - */ - JsonPatchOperationsService.prototype.jsonPatchByResourceType = function (linkPath, scopeId, resourceType) { - var _this = this; - var href$ = this.halService.getEndpoint(linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); })); - return this.submitJsonPatchOperations(href$, resourceType); - }; - /** - * Make a new JSON Patch request with all operations related to the specified resource id - * - * @param linkPath - * The link path of the request - * @param scopeId - * The scope id - * @param resourceType - * The resource type value - * @param resourceId - * The resource id value - * @return Observable - * observable of response - */ - JsonPatchOperationsService.prototype.jsonPatchByResourceID = function (linkPath, scopeId, resourceType, resourceId) { - var _this = this; - var hrefObs = this.halService.getEndpoint(linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); })); - return this.submitJsonPatchOperations(hrefObs, resourceType, resourceId); - }; - return JsonPatchOperationsService; -}()); -export { JsonPatchOperationsService }; -//# sourceMappingURL=json-patch-operations.service.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch-operations.service.js.map b/src/app/core/json-patch/json-patch-operations.service.js.map deleted file mode 100644 index 2a5df7005c..0000000000 --- a/src/app/core/json-patch/json-patch-operations.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-patch-operations.service.js","sourceRoot":"","sources":["json-patch-operations.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch.model.js b/src/app/core/json-patch/json-patch.model.js deleted file mode 100644 index 54a700e167..0000000000 --- a/src/app/core/json-patch/json-patch.model.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * Represents all JSON Patch operations type. - */ -export var JsonPatchOperationType; -(function (JsonPatchOperationType) { - JsonPatchOperationType["test"] = "test"; - JsonPatchOperationType["remove"] = "remove"; - JsonPatchOperationType["add"] = "add"; - JsonPatchOperationType["replace"] = "replace"; - JsonPatchOperationType["move"] = "move"; - JsonPatchOperationType["copy"] = "copy"; -})(JsonPatchOperationType || (JsonPatchOperationType = {})); -/** - * Represents a JSON Patch operations. - */ -var JsonPatchOperationModel = /** @class */ (function () { - function JsonPatchOperationModel() { - } - return JsonPatchOperationModel; -}()); -export { JsonPatchOperationModel }; -//# sourceMappingURL=json-patch.model.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/json-patch.model.js.map b/src/app/core/json-patch/json-patch.model.js.map deleted file mode 100644 index 4f15735e67..0000000000 --- a/src/app/core/json-patch/json-patch.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"json-patch.model.js","sourceRoot":"","sources":["json-patch.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAChC,uCAAa,CAAA;IACb,2CAAiB,CAAA;IACjB,qCAAW,CAAA;IACX,6CAAmB,CAAA;IACnB,uCAAa,CAAA;IACb,uCAAa,CAAA;AACf,CAAC,EAPW,sBAAsB,KAAtB,sBAAsB,QAOjC;AAED;;GAEG;AACH;IAAA;IAIA,CAAC;IAAD,8BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/core/json-patch/selectors.js b/src/app/core/json-patch/selectors.js deleted file mode 100644 index b25e647a08..0000000000 --- a/src/app/core/json-patch/selectors.js +++ /dev/null @@ -1,28 +0,0 @@ -import { coreSelector } from '../core.selectors'; -import { keySelector, subStateSelector } from '../../submission/selectors'; -/** - * Return MemoizedSelector to select all jsonPatchOperations for a specified resource type, stored in the state - * - * @param resourceType - * the resource type - * @return MemoizedSelector - * MemoizedSelector - */ -export function jsonPatchOperationsByResourceType(resourceType) { - return keySelector(coreSelector, 'json/patch', resourceType); -} -/** - * Return MemoizedSelector to select all jsonPatchOperations for a specified resource id, stored in the state - * - * @param resourceType - * the resource type - * @param resourceId - * the resourceId type - * @return MemoizedSelector - * MemoizedSelector - */ -export function jsonPatchOperationsByResourceId(resourceType, resourceId) { - var resourceTypeSelector = jsonPatchOperationsByResourceType(resourceType); - return subStateSelector(resourceTypeSelector, resourceId); -} -//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/core/json-patch/selectors.js.map b/src/app/core/json-patch/selectors.js.map deleted file mode 100644 index cf86522c49..0000000000 --- a/src/app/core/json-patch/selectors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE3E;;;;;;;GAOG;AACH,MAAM,4CAA4C,YAAoB;IACpE,OAAO,WAAW,CAA8C,YAAY,EAAC,YAAY,EAAE,YAAY,CAAC,CAAC;AAC3G,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,0CAA0C,YAAoB,EAAE,UAAkB;IACtF,IAAM,oBAAoB,GAAI,iCAAiC,CAAC,YAAY,CAAC,CAAC;IAC9E,OAAO,gBAAgB,CAAsC,oBAAoB,EAAE,UAAU,CAAC,CAAC;AACjG,CAAC"} \ No newline at end of file diff --git a/src/app/core/metadata/metadata.service.js b/src/app/core/metadata/metadata.service.js deleted file mode 100644 index 2f5a3af133..0000000000 --- a/src/app/core/metadata/metadata.service.js +++ /dev/null @@ -1,317 +0,0 @@ -import * as tslib_1 from "tslib"; -import { catchError, distinctUntilKeyChanged, filter, first, map, take } from 'rxjs/operators'; -import { Inject, Injectable } from '@angular/core'; -import { NavigationEnd, Router } from '@angular/router'; -import { Meta, Title } from '@angular/platform-browser'; -import { TranslateService } from '@ngx-translate/core'; -import { BehaviorSubject } from 'rxjs'; -import { Item } from '../shared/item.model'; -import { GLOBAL_CONFIG } from '../../../config'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -var MetadataService = /** @class */ (function () { - function MetadataService(router, translate, meta, title, envConfig) { - this.router = router; - this.translate = translate; - this.meta = meta; - this.title = title; - this.envConfig = envConfig; - // TODO: determine what open graph meta tags are needed and whether - // the differ per route. potentially add image based on DSpaceObject - this.meta.addTags([ - { property: 'og:title', content: 'DSpace Angular Universal' }, - { property: 'og:description', content: 'The modern front-end for DSpace 7.' } - ]); - this.initialized = false; - this.tagStore = new Map(); - } - MetadataService.prototype.listenForRouteChange = function () { - var _this = this; - this.router.events.pipe(filter(function (event) { return event instanceof NavigationEnd; }), map(function () { return _this.router.routerState.root; }), map(function (route) { - route = _this.getCurrentRoute(route); - return { params: route.params, data: route.data }; - })).subscribe(function (routeInfo) { - _this.processRouteChange(routeInfo); - }); - }; - MetadataService.prototype.processRemoteData = function (remoteData) { - var _this = this; - remoteData.pipe(map(function (rd) { return rd.payload; }), filter(function (co) { return hasValue(co); }), take(1)) - .subscribe(function (dspaceObject) { - if (!_this.initialized) { - _this.initialize(dspaceObject); - } - _this.currentObject.next(dspaceObject); - }); - }; - MetadataService.prototype.processRouteChange = function (routeInfo) { - var _this = this; - if (routeInfo.params.value.id === undefined) { - this.clearMetaTags(); - } - if (routeInfo.data.value.title) { - this.translate.get(routeInfo.data.value.title, routeInfo.data.value).pipe(take(1)).subscribe(function (translatedTitle) { - _this.addMetaTag('title', translatedTitle); - _this.title.setTitle(translatedTitle); - }); - } - if (routeInfo.data.value.description) { - this.translate.get(routeInfo.data.value.description).pipe(take(1)).subscribe(function (translatedDescription) { - _this.addMetaTag('description', translatedDescription); - }); - } - }; - MetadataService.prototype.initialize = function (dspaceObject) { - var _this = this; - this.currentObject = new BehaviorSubject(dspaceObject); - this.currentObject.asObservable().pipe(distinctUntilKeyChanged('uuid')).subscribe(function () { - _this.setMetaTags(); - }); - this.initialized = true; - }; - MetadataService.prototype.getCurrentRoute = function (route) { - while (route.firstChild) { - route = route.firstChild; - } - return route; - }; - MetadataService.prototype.setMetaTags = function () { - this.clearMetaTags(); - this.setTitleTag(); - this.setDescriptionTag(); - this.setCitationTitleTag(); - this.setCitationAuthorTags(); - this.setCitationDateTag(); - this.setCitationISSNTag(); - this.setCitationISBNTag(); - this.setCitationLanguageTag(); - this.setCitationKeywordsTag(); - this.setCitationAbstractUrlTag(); - this.setCitationPdfUrlTag(); - if (this.isDissertation()) { - this.setCitationDissertationNameTag(); - this.setCitationDissertationInstitutionTag(); - } - if (this.isTechReport()) { - this.setCitationTechReportInstitutionTag(); - } - // this.setCitationJournalTitleTag(); - // this.setCitationVolumeTag(); - // this.setCitationIssueTag(); - // this.setCitationFirstPageTag(); - // this.setCitationLastPageTag(); - // this.setCitationDOITag(); - // this.setCitationPMIDTag(); - // this.setCitationFullTextTag(); - // this.setCitationConferenceTag(); - // this.setCitationPatentCountryTag(); - // this.setCitationPatentNumberTag(); - }; - /** - * Add to the - */ - MetadataService.prototype.setTitleTag = function () { - var value = this.getMetaTagValue('dc.title'); - this.addMetaTag('title', value); - this.title.setTitle(value); - }; - /** - * Add to the - */ - MetadataService.prototype.setDescriptionTag = function () { - // TODO: truncate abstract - var value = this.getMetaTagValue('dc.description.abstract'); - this.addMetaTag('desciption', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationTitleTag = function () { - var value = this.getMetaTagValue('dc.title'); - this.addMetaTag('citation_title', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationAuthorTags = function () { - var values = this.getMetaTagValues(['dc.author', 'dc.contributor.author', 'dc.creator']); - this.addMetaTags('citation_author', values); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationDateTag = function () { - var value = this.getFirstMetaTagValue(['dc.date.copyright', 'dc.date.issued', 'dc.date.available', 'dc.date.accessioned']); - this.addMetaTag('citation_date', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationISSNTag = function () { - var value = this.getMetaTagValue('dc.identifier.issn'); - this.addMetaTag('citation_issn', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationISBNTag = function () { - var value = this.getMetaTagValue('dc.identifier.isbn'); - this.addMetaTag('citation_isbn', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationLanguageTag = function () { - var value = this.getFirstMetaTagValue(['dc.language', 'dc.language.iso']); - this.addMetaTag('citation_language', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationDissertationNameTag = function () { - var value = this.getMetaTagValue('dc.title'); - this.addMetaTag('citation_dissertation_name', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationDissertationInstitutionTag = function () { - var value = this.getMetaTagValue('dc.publisher'); - this.addMetaTag('citation_dissertation_institution', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationTechReportInstitutionTag = function () { - var value = this.getMetaTagValue('dc.publisher'); - this.addMetaTag('citation_technical_report_institution', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationKeywordsTag = function () { - var value = this.getMetaTagValuesAndCombine('dc.subject'); - this.addMetaTag('citation_keywords', value); - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationAbstractUrlTag = function () { - if (this.currentObject.value instanceof Item) { - var value = [this.envConfig.ui.baseUrl, this.router.url].join(''); - this.addMetaTag('citation_abstract_html_url', value); - } - }; - /** - * Add to the - */ - MetadataService.prototype.setCitationPdfUrlTag = function () { - var _this = this; - if (this.currentObject.value instanceof Item) { - var item = this.currentObject.value; - item.getFiles() - .pipe(first(function (files) { return isNotEmpty(files); }), catchError(function (error) { - console.debug(error.message); - return []; - })) - .subscribe(function (bitstreams) { - var _loop_1 = function (bitstream) { - bitstream.format.pipe(first(), catchError(function (error) { - console.debug(error.message); - return []; - }), map(function (rd) { return rd.payload; }), filter(function (format) { return hasValue(format); })) - .subscribe(function (format) { - if (format.mimetype === 'application/pdf') { - _this.addMetaTag('citation_pdf_url', bitstream.content); - } - }); - }; - for (var _i = 0, bitstreams_1 = bitstreams; _i < bitstreams_1.length; _i++) { - var bitstream = bitstreams_1[_i]; - _loop_1(bitstream); - } - }); - } - }; - MetadataService.prototype.hasType = function (value) { - return this.currentObject.value.hasMetadata('dc.type', { value: value, ignoreCase: true }); - }; - /** - * Returns true if this._item is a dissertation - * - * @returns {boolean} - * true if this._item has a dc.type equal to 'Thesis' - */ - MetadataService.prototype.isDissertation = function () { - return this.hasType('thesis'); - }; - /** - * Returns true if this._item is a technical report - * - * @returns {boolean} - * true if this._item has a dc.type equal to 'Technical Report' - */ - MetadataService.prototype.isTechReport = function () { - return this.hasType('technical report'); - }; - MetadataService.prototype.getMetaTagValue = function (key) { - return this.currentObject.value.firstMetadataValue(key); - }; - MetadataService.prototype.getFirstMetaTagValue = function (keys) { - return this.currentObject.value.firstMetadataValue(keys); - }; - MetadataService.prototype.getMetaTagValuesAndCombine = function (key) { - return this.getMetaTagValues([key]).join('; '); - }; - MetadataService.prototype.getMetaTagValues = function (keys) { - return this.currentObject.value.allMetadataValues(keys); - }; - MetadataService.prototype.addMetaTag = function (property, content) { - if (content) { - var tag = { property: property, content: content }; - this.meta.addTag(tag); - this.storeTag(property, tag); - } - }; - MetadataService.prototype.addMetaTags = function (property, content) { - for (var _i = 0, content_1 = content; _i < content_1.length; _i++) { - var value = content_1[_i]; - this.addMetaTag(property, value); - } - }; - MetadataService.prototype.storeTag = function (key, tag) { - var tags = this.getTags(key); - tags.push(tag); - this.setTags(key, tags); - }; - MetadataService.prototype.getTags = function (key) { - var tags = this.tagStore.get(key); - if (tags === undefined) { - tags = []; - } - return tags; - }; - MetadataService.prototype.setTags = function (key, tags) { - this.tagStore.set(key, tags); - }; - MetadataService.prototype.clearMetaTags = function () { - var _this = this; - this.tagStore.forEach(function (tags, property) { - _this.meta.removeTag("property='" + property + "'"); - }); - this.tagStore.clear(); - }; - MetadataService.prototype.getTagStore = function () { - return this.tagStore; - }; - MetadataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(4, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Router, - TranslateService, - Meta, - Title, Object]) - ], MetadataService); - return MetadataService; -}()); -export { MetadataService }; -//# sourceMappingURL=metadata.service.js.map \ No newline at end of file diff --git a/src/app/core/metadata/metadata.service.js.map b/src/app/core/metadata/metadata.service.js.map deleted file mode 100644 index 3e55504743..0000000000 --- a/src/app/core/metadata/metadata.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata.service.js","sourceRoot":"","sources":["metadata.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/metadata/metadatafield.model.js b/src/app/core/metadata/metadatafield.model.js deleted file mode 100644 index 4dd4ed83bf..0000000000 --- a/src/app/core/metadata/metadatafield.model.js +++ /dev/null @@ -1,43 +0,0 @@ -import * as tslib_1 from "tslib"; -import { MetadataSchema } from './metadataschema.model'; -import { autoserialize } from 'cerialize'; -import { isNotEmpty } from '../../shared/empty.util'; -var MetadataField = /** @class */ (function () { - function MetadataField() { - } - MetadataField.prototype.toString = function (separator) { - if (separator === void 0) { separator = '.'; } - var key = this.schema.prefix + separator + this.element; - if (isNotEmpty(this.qualifier)) { - key += separator + this.qualifier; - } - return key; - }; - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], MetadataField.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataField.prototype, "self", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataField.prototype, "element", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataField.prototype, "qualifier", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataField.prototype, "scopeNote", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", MetadataSchema) - ], MetadataField.prototype, "schema", void 0); - return MetadataField; -}()); -export { MetadataField }; -//# sourceMappingURL=metadatafield.model.js.map \ No newline at end of file diff --git a/src/app/core/metadata/metadatafield.model.js.map b/src/app/core/metadata/metadatafield.model.js.map deleted file mode 100644 index 0dfd3be4d2..0000000000 --- a/src/app/core/metadata/metadatafield.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadatafield.model.js","sourceRoot":"","sources":["metadatafield.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD;IAAA;IA0BA,CAAC;IAPC,gCAAQ,GAAR,UAAS,SAAuB;QAAvB,0BAAA,EAAA,eAAuB;QAC9B,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;QACxD,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YAC9B,GAAG,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;SACnC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAvBD;QADC,aAAa;;6CACH;IAGX;QADC,aAAa;;+CACD;IAGb;QADC,aAAa;;kDACE;IAGhB;QADC,aAAa;;oDACI;IAGlB;QADC,aAAa;;oDACI;IAGlB;QADC,aAAa;0CACN,cAAc;iDAAC;IASzB,oBAAC;CAAA,AA1BD,IA0BC;SA1BY,aAAa"} \ No newline at end of file diff --git a/src/app/core/metadata/metadataschema.model.js b/src/app/core/metadata/metadataschema.model.js deleted file mode 100644 index 4c99d47821..0000000000 --- a/src/app/core/metadata/metadataschema.model.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize } from 'cerialize'; -var MetadataSchema = /** @class */ (function () { - function MetadataSchema() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], MetadataSchema.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataSchema.prototype, "self", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataSchema.prototype, "prefix", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataSchema.prototype, "namespace", void 0); - return MetadataSchema; -}()); -export { MetadataSchema }; -//# sourceMappingURL=metadataschema.model.js.map \ No newline at end of file diff --git a/src/app/core/metadata/metadataschema.model.js.map b/src/app/core/metadata/metadataschema.model.js.map deleted file mode 100644 index 471749b028..0000000000 --- a/src/app/core/metadata/metadataschema.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadataschema.model.js","sourceRoot":"","sources":["metadataschema.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG1C;IAAA;IAYA,CAAC;IAVC;QADC,aAAa;;8CACH;IAGX;QADC,aAAa;;gDACD;IAGb;QADC,aAAa;;kDACC;IAGf;QADC,aAAa;;qDACI;IACpB,qBAAC;CAAA,AAZD,IAYC;SAZY,cAAc"} \ No newline at end of file diff --git a/src/app/core/metadata/normalized-metadata-schema.model.js b/src/app/core/metadata/normalized-metadata-schema.model.js deleted file mode 100644 index 81f6a7bf89..0000000000 --- a/src/app/core/metadata/normalized-metadata-schema.model.js +++ /dev/null @@ -1,36 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize } from 'cerialize'; -import { NormalizedObject } from '../cache/models/normalized-object.model'; -import { mapsTo } from '../cache/builders/build-decorators'; -import { MetadataSchema } from './metadataschema.model'; -/** - * Normalized class for a DSpace MetadataSchema - */ -var NormalizedMetadataSchema = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedMetadataSchema, _super); - function NormalizedMetadataSchema() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], NormalizedMetadataSchema.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedMetadataSchema.prototype, "self", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedMetadataSchema.prototype, "prefix", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedMetadataSchema.prototype, "namespace", void 0); - NormalizedMetadataSchema = tslib_1.__decorate([ - mapsTo(MetadataSchema) - ], NormalizedMetadataSchema); - return NormalizedMetadataSchema; -}(NormalizedObject)); -export { NormalizedMetadataSchema }; -//# sourceMappingURL=normalized-metadata-schema.model.js.map \ No newline at end of file diff --git a/src/app/core/metadata/normalized-metadata-schema.model.js.map b/src/app/core/metadata/normalized-metadata-schema.model.js.map deleted file mode 100644 index 3bdc210fe4..0000000000 --- a/src/app/core/metadata/normalized-metadata-schema.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-metadata-schema.model.js","sourceRoot":"","sources":["normalized-metadata-schema.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD;;GAEG;AAEH;IAA8C,oDAAgC;IAA9E;;IAwBA,CAAC;IAnBC;QADC,aAAa;;wDACH;IAMX;QADC,aAAa;;0DACD;IAMb;QADC,aAAa;;4DACC;IAMf;QADC,aAAa;;+DACI;IAvBP,wBAAwB;QADpC,MAAM,CAAC,cAAc,CAAC;OACV,wBAAwB,CAwBpC;IAAD,+BAAC;CAAA,AAxBD,CAA8C,gBAAgB,GAwB7D;SAxBY,wBAAwB"} \ No newline at end of file diff --git a/src/app/core/registry/mock-bitstream-format.model.js b/src/app/core/registry/mock-bitstream-format.model.js deleted file mode 100644 index 2b95f79f22..0000000000 --- a/src/app/core/registry/mock-bitstream-format.model.js +++ /dev/null @@ -1,7 +0,0 @@ -var BitstreamFormat = /** @class */ (function () { - function BitstreamFormat() { - } - return BitstreamFormat; -}()); -export { BitstreamFormat }; -//# sourceMappingURL=mock-bitstream-format.model.js.map \ No newline at end of file diff --git a/src/app/core/registry/mock-bitstream-format.model.js.map b/src/app/core/registry/mock-bitstream-format.model.js.map deleted file mode 100644 index 660273c9b0..0000000000 --- a/src/app/core/registry/mock-bitstream-format.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-bitstream-format.model.js","sourceRoot":"","sources":["mock-bitstream-format.model.ts"],"names":[],"mappings":"AAAA;IAAA;IAOA,CAAC;IAAD,sBAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/core/registry/registry-bitstreamformats-response.model.js b/src/app/core/registry/registry-bitstreamformats-response.model.js deleted file mode 100644 index cf8c1942c0..0000000000 --- a/src/app/core/registry/registry-bitstreamformats-response.model.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs } from 'cerialize'; -import { PageInfo } from '../shared/page-info.model'; -import { BitstreamFormat } from '../shared/bitstream-format.model'; -var RegistryBitstreamformatsResponse = /** @class */ (function () { - function RegistryBitstreamformatsResponse() { - } - tslib_1.__decorate([ - autoserializeAs(BitstreamFormat), - tslib_1.__metadata("design:type", Array) - ], RegistryBitstreamformatsResponse.prototype, "bitstreamformats", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", PageInfo) - ], RegistryBitstreamformatsResponse.prototype, "page", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], RegistryBitstreamformatsResponse.prototype, "self", void 0); - return RegistryBitstreamformatsResponse; -}()); -export { RegistryBitstreamformatsResponse }; -//# sourceMappingURL=registry-bitstreamformats-response.model.js.map \ No newline at end of file diff --git a/src/app/core/registry/registry-bitstreamformats-response.model.js.map b/src/app/core/registry/registry-bitstreamformats-response.model.js.map deleted file mode 100644 index 97b0fa35e0..0000000000 --- a/src/app/core/registry/registry-bitstreamformats-response.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"registry-bitstreamformats-response.model.js","sourceRoot":"","sources":["registry-bitstreamformats-response.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE;IAAA;IASA,CAAC;IAPC;QADC,eAAe,CAAC,eAAe,CAAC;;8EACG;IAGpC;QADC,aAAa;0CACR,QAAQ;kEAAC;IAGf;QADC,aAAa;;kEACD;IACf,uCAAC;CAAA,AATD,IASC;SATY,gCAAgC"} \ No newline at end of file diff --git a/src/app/core/registry/registry-metadatafields-response.model.js b/src/app/core/registry/registry-metadatafields-response.model.js deleted file mode 100644 index db76e693f6..0000000000 --- a/src/app/core/registry/registry-metadatafields-response.model.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { PageInfo } from '../shared/page-info.model'; -import { autoserialize, autoserializeAs } from 'cerialize'; -import { MetadataField } from '../metadata/metadatafield.model'; -var RegistryMetadatafieldsResponse = /** @class */ (function () { - function RegistryMetadatafieldsResponse() { - } - tslib_1.__decorate([ - autoserializeAs(MetadataField), - tslib_1.__metadata("design:type", Array) - ], RegistryMetadatafieldsResponse.prototype, "metadatafields", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", PageInfo) - ], RegistryMetadatafieldsResponse.prototype, "page", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], RegistryMetadatafieldsResponse.prototype, "self", void 0); - return RegistryMetadatafieldsResponse; -}()); -export { RegistryMetadatafieldsResponse }; -//# sourceMappingURL=registry-metadatafields-response.model.js.map \ No newline at end of file diff --git a/src/app/core/registry/registry-metadatafields-response.model.js.map b/src/app/core/registry/registry-metadatafields-response.model.js.map deleted file mode 100644 index 144b47cce1..0000000000 --- a/src/app/core/registry/registry-metadatafields-response.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"registry-metadatafields-response.model.js","sourceRoot":"","sources":["registry-metadatafields-response.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE;IAAA;IASA,CAAC;IAPC;QADC,eAAe,CAAC,aAAa,CAAC;;0EACC;IAGhC;QADC,aAAa;0CACR,QAAQ;gEAAC;IAGf;QADC,aAAa;;gEACD;IACf,qCAAC;CAAA,AATD,IASC;SATY,8BAA8B"} \ No newline at end of file diff --git a/src/app/core/registry/registry-metadataschemas-response.model.js b/src/app/core/registry/registry-metadataschemas-response.model.js deleted file mode 100644 index c5d74cec98..0000000000 --- a/src/app/core/registry/registry-metadataschemas-response.model.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { MetadataSchema } from '../metadata/metadataschema.model'; -import { PageInfo } from '../shared/page-info.model'; -import { autoserialize, autoserializeAs } from 'cerialize'; -var RegistryMetadataschemasResponse = /** @class */ (function () { - function RegistryMetadataschemasResponse() { - } - tslib_1.__decorate([ - autoserializeAs(MetadataSchema), - tslib_1.__metadata("design:type", Array) - ], RegistryMetadataschemasResponse.prototype, "metadataschemas", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", PageInfo) - ], RegistryMetadataschemasResponse.prototype, "page", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], RegistryMetadataschemasResponse.prototype, "self", void 0); - return RegistryMetadataschemasResponse; -}()); -export { RegistryMetadataschemasResponse }; -//# sourceMappingURL=registry-metadataschemas-response.model.js.map \ No newline at end of file diff --git a/src/app/core/registry/registry-metadataschemas-response.model.js.map b/src/app/core/registry/registry-metadataschemas-response.model.js.map deleted file mode 100644 index d953130dfe..0000000000 --- a/src/app/core/registry/registry-metadataschemas-response.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"registry-metadataschemas-response.model.js","sourceRoot":"","sources":["registry-metadataschemas-response.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE3D;IAAA;IASA,CAAC;IAPC;QADC,eAAe,CAAC,cAAc,CAAC;;4EACE;IAGlC;QADC,aAAa;0CACR,QAAQ;iEAAC;IAGf;QADC,aAAa;;iEACD;IACf,sCAAC;CAAA,AATD,IASC;SATY,+BAA+B"} \ No newline at end of file diff --git a/src/app/core/registry/registry.service.js b/src/app/core/registry/registry.service.js deleted file mode 100644 index b4df79c0d9..0000000000 --- a/src/app/core/registry/registry.service.js +++ /dev/null @@ -1,386 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { Injectable } from '@angular/core'; -import { PaginatedList } from '../data/paginated-list'; -import { PageInfo } from '../shared/page-info.model'; -import { MetadataField } from '../metadata/metadatafield.model'; -import { CreateMetadataFieldRequest, CreateMetadataSchemaRequest, DeleteRequest, GetRequest, UpdateMetadataFieldRequest, UpdateMetadataSchemaRequest } from '../data/request.models'; -import { RegistryMetadataschemasResponseParsingService } from '../data/registry-metadataschemas-response-parsing.service'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { RequestService } from '../data/request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { RegistryMetadatafieldsResponseParsingService } from '../data/registry-metadatafields-response-parsing.service'; -import { hasValue, hasNoValue, isNotEmpty, isNotEmptyOperator } from '../../shared/empty.util'; -import { URLCombiner } from '../url-combiner/url-combiner'; -import { PaginationComponentOptions } from '../../shared/pagination/pagination-component-options.model'; -import { RegistryBitstreamformatsResponseParsingService } from '../data/registry-bitstreamformats-response-parsing.service'; -import { configureRequest, getResponseFromEntry } from '../shared/operators'; -import { createSelector, select, Store } from '@ngrx/store'; -import { MetadataRegistryCancelFieldAction, MetadataRegistryCancelSchemaAction, MetadataRegistryDeselectAllFieldAction, MetadataRegistryDeselectAllSchemaAction, MetadataRegistryDeselectFieldAction, MetadataRegistryDeselectSchemaAction, MetadataRegistryEditFieldAction, MetadataRegistryEditSchemaAction, MetadataRegistrySelectFieldAction, MetadataRegistrySelectSchemaAction } from '../../+admin/admin-registries/metadata-registry/metadata-registry.actions'; -import { distinctUntilChanged, flatMap, map, take, tap } from 'rxjs/operators'; -import { DSpaceRESTv2Serializer } from '../dspace-rest-v2/dspace-rest-v2.serializer'; -import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; -import { ResourceType } from '../shared/resource-type'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { NotificationOptions } from '../../shared/notifications/models/notification-options.model'; -import { HttpHeaders } from '@angular/common/http'; -import { TranslateService } from '@ngx-translate/core'; -var metadataRegistryStateSelector = function (state) { return state.metadataRegistry; }; -var editMetadataSchemaSelector = createSelector(metadataRegistryStateSelector, function (metadataState) { return metadataState.editSchema; }); -var selectedMetadataSchemasSelector = createSelector(metadataRegistryStateSelector, function (metadataState) { return metadataState.selectedSchemas; }); -var editMetadataFieldSelector = createSelector(metadataRegistryStateSelector, function (metadataState) { return metadataState.editField; }); -var selectedMetadataFieldsSelector = createSelector(metadataRegistryStateSelector, function (metadataState) { return metadataState.selectedFields; }); -var RegistryService = /** @class */ (function () { - function RegistryService(requestService, rdb, halService, store, notificationsService, translateService) { - this.requestService = requestService; - this.rdb = rdb; - this.halService = halService; - this.store = store; - this.notificationsService = notificationsService; - this.translateService = translateService; - this.metadataSchemasPath = 'metadataschemas'; - this.metadataFieldsPath = 'metadatafields'; - this.bitstreamFormatsPath = 'bitstreamformats'; - } - RegistryService.prototype.getMetadataSchemas = function (pagination) { - var _this = this; - var requestObs = this.getMetadataSchemasRequestObs(pagination); - var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); - var rmrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.metadataschemasResponse; })); - var metadataschemasObs = rmrObs.pipe(map(function (rmr) { return rmr.metadataschemas; })); - var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); - var payloadObs = observableCombineLatest(metadataschemasObs, pageInfoObs).pipe(map(function (_a) { - var metadataschemas = _a[0], pageInfo = _a[1]; - return new PaginatedList(pageInfo, metadataschemas); - })); - return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); - }; - RegistryService.prototype.getMetadataSchemaByName = function (schemaName) { - var _this = this; - // Temporary pagination to get ALL metadataschemas until there's a rest api endpoint for fetching a specific schema - var pagination = Object.assign(new PaginationComponentOptions(), { - id: 'all-metadatafields-pagination', - pageSize: 10000 - }); - var requestObs = this.getMetadataSchemasRequestObs(pagination); - var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); - var rmrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.metadataschemasResponse; })); - var metadataschemaObs = rmrObs.pipe(map(function (rmr) { return rmr.metadataschemas; }), map(function (metadataSchemas) { return metadataSchemas.filter(function (value) { return value.prefix === schemaName; })[0]; })); - return this.rdb.toRemoteDataObservable(requestEntryObs, metadataschemaObs); - }; - RegistryService.prototype.getMetadataFieldsBySchema = function (schema, pagination) { - var _this = this; - var requestObs = this.getMetadataFieldsBySchemaRequestObs(pagination, schema); - var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); - var rmrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.metadatafieldsResponse; })); - var metadatafieldsObs = rmrObs.pipe(map(function (rmr) { return rmr.metadatafields; })); - var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); - var payloadObs = observableCombineLatest(metadatafieldsObs, pageInfoObs).pipe(map(function (_a) { - var metadatafields = _a[0], pageInfo = _a[1]; - return new PaginatedList(pageInfo, metadatafields); - })); - return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); - }; - /** - * Retrieve all existing metadata fields as a paginated list - * @param pagination Pagination options to determine which page of metadata fields should be requested - * When no pagination is provided, all metadata fields are requested in one large page - * @returns an observable that emits a remote data object with a page of metadata fields - */ - RegistryService.prototype.getAllMetadataFields = function (pagination) { - var _this = this; - if (hasNoValue(pagination)) { - pagination = { currentPage: 1, pageSize: 10000 }; - } - var requestObs = this.getMetadataFieldsRequestObs(pagination); - var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); - var rmrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.metadatafieldsResponse; })); - var metadatafieldsObs = rmrObs.pipe(map(function (rmr) { return rmr.metadatafields; }), - /* Make sure to explicitly cast this into a MetadataField object, on first page loads this object comes from the object cache created by the server and its prototype is unknown */ - map(function (metadataFields) { return metadataFields.map(function (metadataField) { return Object.assign(new MetadataField(), metadataField); }); })); - var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); - var payloadObs = observableCombineLatest(metadatafieldsObs, pageInfoObs).pipe(map(function (_a) { - var metadatafields = _a[0], pageInfo = _a[1]; - return new PaginatedList(pageInfo, metadatafields); - })); - return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); - }; - RegistryService.prototype.getBitstreamFormats = function (pagination) { - var _this = this; - var requestObs = this.getBitstreamFormatsRequestObs(pagination); - var requestEntryObs = requestObs.pipe(flatMap(function (request) { return _this.requestService.getByHref(request.href); })); - var rbrObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.bitstreamformatsResponse; })); - var bitstreamformatsObs = rbrObs.pipe(map(function (rbr) { return rbr.bitstreamformats; })); - var pageInfoObs = requestEntryObs.pipe(getResponseFromEntry(), map(function (response) { return response.pageInfo; })); - var payloadObs = observableCombineLatest(bitstreamformatsObs, pageInfoObs).pipe(map(function (_a) { - var bitstreamformats = _a[0], pageInfo = _a[1]; - return new PaginatedList(pageInfo, bitstreamformats); - })); - return this.rdb.toRemoteDataObservable(requestEntryObs, payloadObs); - }; - RegistryService.prototype.getMetadataSchemasRequestObs = function (pagination) { - var _this = this; - return this.halService.getEndpoint(this.metadataSchemasPath).pipe(map(function (url) { - var args = []; - args.push("size=" + pagination.pageSize); - args.push("page=" + (pagination.currentPage - 1)); - if (isNotEmpty(args)) { - url = new URLCombiner(url, "?" + args.join('&')).toString(); - } - var request = new GetRequest(_this.requestService.generateRequestId(), url); - return Object.assign(request, { - getResponseParser: function () { - return RegistryMetadataschemasResponseParsingService; - } - }); - }), tap(function (request) { return _this.requestService.configure(request); })); - }; - RegistryService.prototype.getMetadataFieldsBySchemaRequestObs = function (pagination, schema) { - var _this = this; - return this.halService.getEndpoint(this.metadataFieldsPath + '/search/bySchema').pipe( - // return this.halService.getEndpoint(this.metadataFieldsPath).pipe( - map(function (url) { - var args = []; - args.push("schema=" + schema.prefix); - args.push("size=" + pagination.pageSize); - args.push("page=" + (pagination.currentPage - 1)); - if (isNotEmpty(args)) { - url = new URLCombiner(url, "?" + args.join('&')).toString(); - } - var request = new GetRequest(_this.requestService.generateRequestId(), url); - return Object.assign(request, { - getResponseParser: function () { - return RegistryMetadatafieldsResponseParsingService; - } - }); - }), tap(function (request) { return _this.requestService.configure(request); })); - }; - RegistryService.prototype.getMetadataFieldsRequestObs = function (pagination) { - var _this = this; - return this.halService.getEndpoint(this.metadataFieldsPath).pipe(map(function (url) { - var args = []; - args.push("size=" + pagination.pageSize); - args.push("page=" + (pagination.currentPage - 1)); - if (isNotEmpty(args)) { - url = new URLCombiner(url, "?" + args.join('&')).toString(); - } - var request = new GetRequest(_this.requestService.generateRequestId(), url); - return Object.assign(request, { - getResponseParser: function () { - return RegistryMetadatafieldsResponseParsingService; - } - }); - }), tap(function (request) { return _this.requestService.configure(request); })); - }; - RegistryService.prototype.getBitstreamFormatsRequestObs = function (pagination) { - var _this = this; - return this.halService.getEndpoint(this.bitstreamFormatsPath).pipe(map(function (url) { - var args = []; - args.push("size=" + pagination.pageSize); - args.push("page=" + (pagination.currentPage - 1)); - if (isNotEmpty(args)) { - url = new URLCombiner(url, "?" + args.join('&')).toString(); - } - var request = new GetRequest(_this.requestService.generateRequestId(), url); - return Object.assign(request, { - getResponseParser: function () { - return RegistryBitstreamformatsResponseParsingService; - } - }); - }), tap(function (request) { return _this.requestService.configure(request); })); - }; - RegistryService.prototype.editMetadataSchema = function (schema) { - this.store.dispatch(new MetadataRegistryEditSchemaAction(schema)); - }; - RegistryService.prototype.cancelEditMetadataSchema = function () { - this.store.dispatch(new MetadataRegistryCancelSchemaAction()); - }; - RegistryService.prototype.getActiveMetadataSchema = function () { - return this.store.pipe(select(editMetadataSchemaSelector)); - }; - RegistryService.prototype.selectMetadataSchema = function (schema) { - this.store.dispatch(new MetadataRegistrySelectSchemaAction(schema)); - }; - RegistryService.prototype.deselectMetadataSchema = function (schema) { - this.store.dispatch(new MetadataRegistryDeselectSchemaAction(schema)); - }; - RegistryService.prototype.deselectAllMetadataSchema = function () { - this.store.dispatch(new MetadataRegistryDeselectAllSchemaAction()); - }; - RegistryService.prototype.getSelectedMetadataSchemas = function () { - return this.store.pipe(select(selectedMetadataSchemasSelector)); - }; - RegistryService.prototype.editMetadataField = function (field) { - this.store.dispatch(new MetadataRegistryEditFieldAction(field)); - }; - RegistryService.prototype.cancelEditMetadataField = function () { - this.store.dispatch(new MetadataRegistryCancelFieldAction()); - }; - RegistryService.prototype.getActiveMetadataField = function () { - return this.store.pipe(select(editMetadataFieldSelector)); - }; - RegistryService.prototype.selectMetadataField = function (field) { - this.store.dispatch(new MetadataRegistrySelectFieldAction(field)); - }; - RegistryService.prototype.deselectMetadataField = function (field) { - this.store.dispatch(new MetadataRegistryDeselectFieldAction(field)); - }; - RegistryService.prototype.deselectAllMetadataField = function () { - this.store.dispatch(new MetadataRegistryDeselectAllFieldAction()); - }; - RegistryService.prototype.getSelectedMetadataFields = function () { - return this.store.pipe(select(selectedMetadataFieldsSelector)); - }; - /** - * Create or Update a MetadataSchema - * If the MetadataSchema contains an id, it is assumed the schema already exists and is updated instead - * Since creating or updating is nearly identical, the only real difference is the request (and slight difference in endpoint): - * - On creation, a CreateMetadataSchemaRequest is used - * - On update, a UpdateMetadataSchemaRequest is used - * @param schema The MetadataSchema to create or update - */ - RegistryService.prototype.createOrUpdateMetadataSchema = function (schema) { - var _this = this; - var isUpdate = hasValue(schema.id); - var requestId = this.requestService.generateRequestId(); - var endpoint$ = this.halService.getEndpoint(this.metadataSchemasPath).pipe(isNotEmptyOperator(), map(function (endpoint) { return (isUpdate ? endpoint + "/" + schema.id : endpoint); }), distinctUntilChanged()); - var serializedSchema = new DSpaceRESTv2Serializer(NormalizedObjectFactory.getConstructor(ResourceType.MetadataSchema)).serialize(schema); - var request$ = endpoint$.pipe(take(1), map(function (endpoint) { - if (isUpdate) { - var options = Object.create({}); - var headers = new HttpHeaders(); - headers = headers.append('Content-Type', 'application/json'); - options.headers = headers; - return new UpdateMetadataSchemaRequest(requestId, endpoint, JSON.stringify(serializedSchema), options); - } - else { - return new CreateMetadataSchemaRequest(requestId, endpoint, JSON.stringify(serializedSchema)); - } - })); - // Execute the post/put request - request$.pipe(configureRequest(this.requestService)).subscribe(); - // Return created/updated schema - return this.requestService.getByUUID(requestId).pipe(getResponseFromEntry(), map(function (response) { - if (!response.isSuccessful) { - if (hasValue(response.errorMessage)) { - _this.notificationsService.error('Server Error:', response.errorMessage, new NotificationOptions(-1)); - } - } - else { - _this.showNotifications(true, isUpdate, false, { prefix: schema.prefix }); - return response; - } - }), isNotEmptyOperator(), map(function (response) { - if (isNotEmpty(response.metadataschema)) { - return response.metadataschema; - } - })); - }; - RegistryService.prototype.deleteMetadataSchema = function (id) { - return this.delete(this.metadataSchemasPath, id); - }; - RegistryService.prototype.clearMetadataSchemaRequests = function () { - var _this = this; - return this.halService.getEndpoint(this.metadataSchemasPath).pipe(tap(function (href) { return _this.requestService.removeByHrefSubstring(href); })); - }; - /** - * Create or Update a MetadataField - * If the MetadataField contains an id, it is assumed the field already exists and is updated instead - * Since creating or updating is nearly identical, the only real difference is the request (and slight difference in endpoint): - * - On creation, a CreateMetadataFieldRequest is used - * - On update, a UpdateMetadataFieldRequest is used - * @param field The MetadataField to create or update - */ - RegistryService.prototype.createOrUpdateMetadataField = function (field) { - var _this = this; - var isUpdate = hasValue(field.id); - var requestId = this.requestService.generateRequestId(); - var endpoint$ = this.halService.getEndpoint(this.metadataFieldsPath).pipe(isNotEmptyOperator(), map(function (endpoint) { return (isUpdate ? endpoint + "/" + field.id : endpoint + "?schemaId=" + field.schema.id); }), distinctUntilChanged()); - var request$ = endpoint$.pipe(take(1), map(function (endpoint) { - if (isUpdate) { - var options = Object.create({}); - var headers = new HttpHeaders(); - headers = headers.append('Content-Type', 'application/json'); - options.headers = headers; - return new UpdateMetadataFieldRequest(requestId, endpoint, JSON.stringify(field), options); - } - else { - return new CreateMetadataFieldRequest(requestId, endpoint, JSON.stringify(field)); - } - })); - // Execute the post/put request - request$.pipe(configureRequest(this.requestService)).subscribe(); - // Return created/updated field - return this.requestService.getByUUID(requestId).pipe(getResponseFromEntry(), map(function (response) { - if (!response.isSuccessful) { - if (hasValue(response.errorMessage)) { - _this.notificationsService.error('Server Error:', response.errorMessage, new NotificationOptions(-1)); - } - } - else { - var fieldString = field.schema.prefix + "." + field.element + (field.qualifier ? "." + field.qualifier : ''); - _this.showNotifications(true, isUpdate, true, { field: fieldString }); - return response; - } - }), isNotEmptyOperator(), map(function (response) { - if (isNotEmpty(response.metadatafield)) { - return response.metadatafield; - } - })); - }; - RegistryService.prototype.deleteMetadataField = function (id) { - return this.delete(this.metadataFieldsPath, id); - }; - RegistryService.prototype.clearMetadataFieldRequests = function () { - var _this = this; - return this.halService.getEndpoint(this.metadataFieldsPath).pipe(tap(function (href) { return _this.requestService.removeByHrefSubstring(href); })); - }; - RegistryService.prototype.delete = function (path, id) { - var requestId = this.requestService.generateRequestId(); - var endpoint$ = this.halService.getEndpoint(path).pipe(isNotEmptyOperator(), map(function (endpoint) { return endpoint + "/" + id; }), distinctUntilChanged()); - var request$ = endpoint$.pipe(take(1), map(function (endpoint) { return new DeleteRequest(requestId, endpoint); })); - // Execute the delete request - request$.pipe(configureRequest(this.requestService)).subscribe(); - return this.requestService.getByUUID(requestId).pipe(getResponseFromEntry()); - }; - RegistryService.prototype.showNotifications = function (success, edited, isField, options) { - var _this = this; - var prefix = 'admin.registries.schema.notification'; - var suffix = success ? 'success' : 'failure'; - var editedString = edited ? 'edited' : 'created'; - var messages = observableCombineLatest(this.translateService.get(success ? prefix + "." + suffix : prefix + "." + suffix), this.translateService.get("" + prefix + (isField ? '.field' : '') + "." + editedString, options)); - messages.subscribe(function (_a) { - var head = _a[0], content = _a[1]; - if (success) { - _this.notificationsService.success(head, content); - } - else { - _this.notificationsService.error(head, content); - } - }); - }; - /** - * Retrieve a filtered paginated list of metadata fields - * @param query {string} The query to filter the field names by - * @returns an observable that emits a remote data object with a page of metadata fields that match the query - */ - RegistryService.prototype.queryMetadataFields = function (query) { - return this.getAllMetadataFields().pipe(map(function (rd) { - var filteredFields = rd.payload.page.filter(function (field) { return field.toString().indexOf(query) >= 0; }); - var page = new PaginatedList(new PageInfo(), filteredFields); - return Object.assign({}, rd, { payload: page }); - })); - }; - RegistryService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - HALEndpointService, - Store, - NotificationsService, - TranslateService]) - ], RegistryService); - return RegistryService; -}()); -export { RegistryService }; -//# sourceMappingURL=registry.service.js.map \ No newline at end of file diff --git a/src/app/core/registry/registry.service.js.map b/src/app/core/registry/registry.service.js.map deleted file mode 100644 index 9a81d423e7..0000000000 --- a/src/app/core/registry/registry.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"registry.service.js","sourceRoot":"","sources":["registry.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/roles/role-types.js b/src/app/core/roles/role-types.js deleted file mode 100644 index 78e876cd48..0000000000 --- a/src/app/core/roles/role-types.js +++ /dev/null @@ -1,7 +0,0 @@ -export var RoleType; -(function (RoleType) { - RoleType["Submitter"] = "submitter"; - RoleType["Controller"] = "controller"; - RoleType["Admin"] = "admin"; -})(RoleType || (RoleType = {})); -//# sourceMappingURL=role-types.js.map \ No newline at end of file diff --git a/src/app/core/roles/role-types.js.map b/src/app/core/roles/role-types.js.map deleted file mode 100644 index 95b2dea04d..0000000000 --- a/src/app/core/roles/role-types.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"role-types.js","sourceRoot":"","sources":["role-types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,mCAAuB,CAAA;IACvB,qCAAyB,CAAA;IACzB,2BAAe,CAAA;AACjB,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB"} \ No newline at end of file diff --git a/src/app/core/roles/role.service.js b/src/app/core/roles/role.service.js deleted file mode 100644 index 169d06592f..0000000000 --- a/src/app/core/roles/role.service.js +++ /dev/null @@ -1,67 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { distinctUntilChanged } from 'rxjs/operators'; -import { RoleType } from './role-types'; -import { CollectionDataService } from '../data/collection-data.service'; -/** - * A service that provides methods to identify user role. - */ -var RoleService = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {CollectionDataService} collectionService - */ - function RoleService(collectionService) { - this.collectionService = collectionService; - } - /** - * Check if current user is a submitter - */ - RoleService.prototype.isSubmitter = function () { - return this.collectionService.hasAuthorizedCollection().pipe(distinctUntilChanged()); - }; - /** - * Check if current user is a controller - */ - RoleService.prototype.isController = function () { - // TODO find a way to check if user is a controller - return observableOf(true); - }; - /** - * Check if current user is an admin - */ - RoleService.prototype.isAdmin = function () { - // TODO find a way to check if user is an admin - return observableOf(false); - }; - /** - * Check if current user by role type - * - * @param {RoleType} role - * the role type - */ - RoleService.prototype.checkRole = function (role) { - var check; - switch (role) { - case RoleType.Submitter: - check = this.isSubmitter(); - break; - case RoleType.Controller: - check = this.isController(); - break; - case RoleType.Admin: - check = this.isAdmin(); - break; - } - return check; - }; - RoleService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [CollectionDataService]) - ], RoleService); - return RoleService; -}()); -export { RoleService }; -//# sourceMappingURL=role.service.js.map \ No newline at end of file diff --git a/src/app/core/roles/role.service.js.map b/src/app/core/roles/role.service.js.map deleted file mode 100644 index 5b04248904..0000000000 --- a/src/app/core/roles/role.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"role.service.js","sourceRoot":"","sources":["role.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAExE;;GAEG;AAEH;IAEE;;;;OAIG;IACH,qBAAoB,iBAAwC;QAAxC,sBAAiB,GAAjB,iBAAiB,CAAuB;IAC5D,CAAC;IAED;;OAEG;IACH,iCAAW,GAAX;QACE,OAAO,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAC1D,oBAAoB,EAAE,CACvB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,kCAAY,GAAZ;QACE,mDAAmD;QACnD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,6BAAO,GAAP;QACE,+CAA+C;QAC/C,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,+BAAS,GAAT,UAAU,IAAc;QACtB,IAAI,KAA0B,CAAC;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,QAAQ,CAAC,SAAS;gBACrB,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,QAAQ,CAAC,UAAU;gBACtB,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5B,MAAM;YACR,KAAK,QAAQ,CAAC,KAAK;gBACjB,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM;SACT;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAxDU,WAAW;QADvB,UAAU,EAAE;iDAQ4B,qBAAqB;OAPjD,WAAW,CAyDvB;IAAD,kBAAC;CAAA,AAzDD,IAyDC;SAzDY,WAAW"} \ No newline at end of file diff --git a/src/app/core/serializer.js b/src/app/core/serializer.js deleted file mode 100644 index 4b3b4ca18d..0000000000 --- a/src/app/core/serializer.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=serializer.js.map \ No newline at end of file diff --git a/src/app/core/serializer.js.map b/src/app/core/serializer.js.map deleted file mode 100644 index 36f3dae23e..0000000000 --- a/src/app/core/serializer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"serializer.js","sourceRoot":"","sources":["serializer.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/shared/bitstream-format.model.js b/src/app/core/shared/bitstream-format.model.js deleted file mode 100644 index 9b822ece42..0000000000 --- a/src/app/core/shared/bitstream-format.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Model class for a Bitstream Format - */ -var BitstreamFormat = /** @class */ (function () { - function BitstreamFormat() { - } - return BitstreamFormat; -}()); -export { BitstreamFormat }; -//# sourceMappingURL=bitstream-format.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/bitstream-format.model.js.map b/src/app/core/shared/bitstream-format.model.js.map deleted file mode 100644 index fc2f4bac23..0000000000 --- a/src/app/core/shared/bitstream-format.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bitstream-format.model.js","sourceRoot":"","sources":["bitstream-format.model.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH;IAAA;IA+CA,CAAC;IAAD,sBAAC;AAAD,CAAC,AA/CD,IA+CC"} \ No newline at end of file diff --git a/src/app/core/shared/bitstream.model.js b/src/app/core/shared/bitstream.model.js deleted file mode 100644 index 4ca998a61d..0000000000 --- a/src/app/core/shared/bitstream.model.js +++ /dev/null @@ -1,11 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from './dspace-object.model'; -var Bitstream = /** @class */ (function (_super) { - tslib_1.__extends(Bitstream, _super); - function Bitstream() { - return _super !== null && _super.apply(this, arguments) || this; - } - return Bitstream; -}(DSpaceObject)); -export { Bitstream }; -//# sourceMappingURL=bitstream.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/bitstream.model.js.map b/src/app/core/shared/bitstream.model.js.map deleted file mode 100644 index 98c82ef30a..0000000000 --- a/src/app/core/shared/bitstream.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bitstream.model.js","sourceRoot":"","sources":["bitstream.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAMrD;IAA+B,qCAAY;IAA3C;;IAqCA,CAAC;IAAD,gBAAC;AAAD,CAAC,AArCD,CAA+B,YAAY,GAqC1C"} \ No newline at end of file diff --git a/src/app/core/shared/browse-definition.model.js b/src/app/core/shared/browse-definition.model.js deleted file mode 100644 index aded025a94..0000000000 --- a/src/app/core/shared/browse-definition.model.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs } from 'cerialize'; -var BrowseDefinition = /** @class */ (function () { - function BrowseDefinition() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], BrowseDefinition.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], BrowseDefinition.prototype, "metadataBrowse", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Array) - ], BrowseDefinition.prototype, "sortOptions", void 0); - tslib_1.__decorate([ - autoserializeAs('order'), - tslib_1.__metadata("design:type", String) - ], BrowseDefinition.prototype, "defaultSortOrder", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], BrowseDefinition.prototype, "type", void 0); - tslib_1.__decorate([ - autoserializeAs('metadata'), - tslib_1.__metadata("design:type", Array) - ], BrowseDefinition.prototype, "metadataKeys", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], BrowseDefinition.prototype, "_links", void 0); - return BrowseDefinition; -}()); -export { BrowseDefinition }; -//# sourceMappingURL=browse-definition.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/browse-definition.model.js.map b/src/app/core/shared/browse-definition.model.js.map deleted file mode 100644 index 5c903b3347..0000000000 --- a/src/app/core/shared/browse-definition.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-definition.model.js","sourceRoot":"","sources":["browse-definition.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAG3D;IAAA;IAuBA,CAAC;IArBC;QADC,aAAa;;gDACH;IAGX;QADC,aAAa;;4DACU;IAGxB;QADC,aAAa;;yDACY;IAG1B;QADC,eAAe,CAAC,OAAO,CAAC;;8DACA;IAGzB;QADC,aAAa;;kDACD;IAGb;QADC,eAAe,CAAC,UAAU,CAAC;;0DACL;IAGvB;QADC,aAAa;;oDAGb;IACH,uBAAC;CAAA,AAvBD,IAuBC;SAvBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/core/shared/browse-entry.model.js b/src/app/core/shared/browse-entry.model.js deleted file mode 100644 index c0305a9bb8..0000000000 --- a/src/app/core/shared/browse-entry.model.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs } from 'cerialize'; -var BrowseEntry = /** @class */ (function () { - function BrowseEntry() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], BrowseEntry.prototype, "type", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], BrowseEntry.prototype, "authority", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], BrowseEntry.prototype, "value", void 0); - tslib_1.__decorate([ - autoserializeAs('valueLang'), - tslib_1.__metadata("design:type", String) - ], BrowseEntry.prototype, "language", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], BrowseEntry.prototype, "count", void 0); - return BrowseEntry; -}()); -export { BrowseEntry }; -//# sourceMappingURL=browse-entry.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/browse-entry.model.js.map b/src/app/core/shared/browse-entry.model.js.map deleted file mode 100644 index fb24ae05ea..0000000000 --- a/src/app/core/shared/browse-entry.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-entry.model.js","sourceRoot":"","sources":["browse-entry.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAG3D;IAAA;IAiBA,CAAC;IAdC;QADC,aAAa;;6CACD;IAGb;QADC,aAAa;;kDACI;IAGlB;QADC,aAAa;;8CACA;IAGd;QADC,eAAe,CAAC,WAAW,CAAC;;iDACZ;IAGjB;QADC,aAAa;;8CACA;IAEhB,kBAAC;CAAA,AAjBD,IAiBC;SAjBY,WAAW"} \ No newline at end of file diff --git a/src/app/core/shared/bundle.model.js b/src/app/core/shared/bundle.model.js deleted file mode 100644 index 1ede803117..0000000000 --- a/src/app/core/shared/bundle.model.js +++ /dev/null @@ -1,11 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from './dspace-object.model'; -var Bundle = /** @class */ (function (_super) { - tslib_1.__extends(Bundle, _super); - function Bundle() { - return _super !== null && _super.apply(this, arguments) || this; - } - return Bundle; -}(DSpaceObject)); -export { Bundle }; -//# sourceMappingURL=bundle.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/bundle.model.js.map b/src/app/core/shared/bundle.model.js.map deleted file mode 100644 index 708d273307..0000000000 --- a/src/app/core/shared/bundle.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bundle.model.js","sourceRoot":"","sources":["bundle.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAMrD;IAA4B,kCAAY;IAAxC;;IAkBA,CAAC;IAAD,aAAC;AAAD,CAAC,AAlBD,CAA4B,YAAY,GAkBvC"} \ No newline at end of file diff --git a/src/app/core/shared/collection.model.js b/src/app/core/shared/collection.model.js deleted file mode 100644 index b454d0c7ec..0000000000 --- a/src/app/core/shared/collection.model.js +++ /dev/null @@ -1,66 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from './dspace-object.model'; -var Collection = /** @class */ (function (_super) { - tslib_1.__extends(Collection, _super); - function Collection() { - return _super !== null && _super.apply(this, arguments) || this; - } - Object.defineProperty(Collection.prototype, "introductoryText", { - /** - * The introductory text of this Collection - * Corresponds to the metadata field dc.description - */ - get: function () { - return this.firstMetadataValue('dc.description'); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Collection.prototype, "shortDescription", { - /** - * The short description: HTML - * Corresponds to the metadata field dc.description.abstract - */ - get: function () { - return this.firstMetadataValue('dc.description.abstract'); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Collection.prototype, "copyrightText", { - /** - * The copyright text of this Collection - * Corresponds to the metadata field dc.rights - */ - get: function () { - return this.firstMetadataValue('dc.rights'); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Collection.prototype, "dcLicense", { - /** - * The license of this Collection - * Corresponds to the metadata field dc.rights.license - */ - get: function () { - return this.firstMetadataValue('dc.rights.license'); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Collection.prototype, "sidebarText", { - /** - * The sidebar text of this Collection - * Corresponds to the metadata field dc.description.tableofcontents - */ - get: function () { - return this.firstMetadataValue('dc.description.tableofcontents'); - }, - enumerable: true, - configurable: true - }); - return Collection; -}(DSpaceObject)); -export { Collection }; -//# sourceMappingURL=collection.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/collection.model.js.map b/src/app/core/shared/collection.model.js.map deleted file mode 100644 index b19d242005..0000000000 --- a/src/app/core/shared/collection.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection.model.js","sourceRoot":"","sources":["collection.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AASrD;IAAgC,sCAAY;IAA5C;;IA0EA,CAAC;IA/DC,sBAAI,wCAAgB;QAJpB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QACnD,CAAC;;;OAAA;IAMD,sBAAI,wCAAgB;QAJpB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,CAAC;QAC5D,CAAC;;;OAAA;IAMD,sBAAI,qCAAa;QAJjB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;;;OAAA;IAMD,sBAAI,iCAAS;QAJb;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC;;;OAAA;IAMD,sBAAI,mCAAW;QAJf;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,gCAAgC,CAAC,CAAC;QACnE,CAAC;;;OAAA;IA6BH,iBAAC;AAAD,CAAC,AA1ED,CAAgC,YAAY,GA0E3C"} \ No newline at end of file diff --git a/src/app/core/shared/community.model.js b/src/app/core/shared/community.model.js deleted file mode 100644 index d762595a4a..0000000000 --- a/src/app/core/shared/community.model.js +++ /dev/null @@ -1,55 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from './dspace-object.model'; -var Community = /** @class */ (function (_super) { - tslib_1.__extends(Community, _super); - function Community() { - return _super !== null && _super.apply(this, arguments) || this; - } - Object.defineProperty(Community.prototype, "introductoryText", { - /** - * The introductory text of this Community - * Corresponds to the metadata field dc.description - */ - get: function () { - return this.firstMetadataValue('dc.description'); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Community.prototype, "shortDescription", { - /** - * The short description: HTML - * Corresponds to the metadata field dc.description.abstract - */ - get: function () { - return this.firstMetadataValue('dc.description.abstract'); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Community.prototype, "copyrightText", { - /** - * The copyright text of this Community - * Corresponds to the metadata field dc.rights - */ - get: function () { - return this.firstMetadataValue('dc.rights'); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(Community.prototype, "sidebarText", { - /** - * The sidebar text of this Community - * Corresponds to the metadata field dc.description.tableofcontents - */ - get: function () { - return this.firstMetadataValue('dc.description.tableofcontents'); - }, - enumerable: true, - configurable: true - }); - return Community; -}(DSpaceObject)); -export { Community }; -//# sourceMappingURL=community.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/community.model.js.map b/src/app/core/shared/community.model.js.map deleted file mode 100644 index 974b25cc40..0000000000 --- a/src/app/core/shared/community.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community.model.js","sourceRoot":"","sources":["community.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAOrD;IAA+B,qCAAY;IAA3C;;IA0DA,CAAC;IA/CC,sBAAI,uCAAgB;QAJpB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;QACnD,CAAC;;;OAAA;IAMD,sBAAI,uCAAgB;QAJpB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,CAAC;QAC5D,CAAC;;;OAAA;IAMD,sBAAI,oCAAa;QAJjB;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;;;OAAA;IAMD,sBAAI,kCAAW;QAJf;;;WAGG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,gCAAgC,CAAC,CAAC;QACnE,CAAC;;;OAAA;IAqBH,gBAAC;AAAD,CAAC,AA1DD,CAA+B,YAAY,GA0D1C"} \ No newline at end of file diff --git a/src/app/core/shared/dspace-object-type.model.js b/src/app/core/shared/dspace-object-type.model.js deleted file mode 100644 index 462683c50f..0000000000 --- a/src/app/core/shared/dspace-object-type.model.js +++ /dev/null @@ -1,9 +0,0 @@ -export var DSpaceObjectType; -(function (DSpaceObjectType) { - DSpaceObjectType["BUNDLE"] = "BUNDLE"; - DSpaceObjectType["BITSTREAM"] = "BITSTREAM"; - DSpaceObjectType["ITEM"] = "ITEM"; - DSpaceObjectType["COLLECTION"] = "COLLECTION"; - DSpaceObjectType["COMMUNITY"] = "COMMUNITY"; -})(DSpaceObjectType || (DSpaceObjectType = {})); -//# sourceMappingURL=dspace-object-type.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/dspace-object-type.model.js.map b/src/app/core/shared/dspace-object-type.model.js.map deleted file mode 100644 index 6b22f291f1..0000000000 --- a/src/app/core/shared/dspace-object-type.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-object-type.model.js","sourceRoot":"","sources":["dspace-object-type.model.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,2CAAuB,CAAA;IACvB,iCAAa,CAAA;IACb,6CAAyB,CAAA;IACzB,2CAAuB,CAAA;AACzB,CAAC,EANW,gBAAgB,KAAhB,gBAAgB,QAM3B"} \ No newline at end of file diff --git a/src/app/core/shared/dspace-object.model.js b/src/app/core/shared/dspace-object.model.js deleted file mode 100644 index 12f6bb3240..0000000000 --- a/src/app/core/shared/dspace-object.model.js +++ /dev/null @@ -1,107 +0,0 @@ -import { Metadata } from './metadata.utils'; -import { isUndefined } from '../../shared/empty.util'; -import { hasNoValue } from '../../shared/empty.util'; -/** - * An abstract model class for a DSpaceObject. - */ -var DSpaceObject = /** @class */ (function () { - function DSpaceObject() { - } - Object.defineProperty(DSpaceObject.prototype, "name", { - /** - * The name for this DSpaceObject - */ - get: function () { - return (isUndefined(this._name)) ? this.firstMetadataValue('dc.title') : this._name; - }, - /** - * The name for this DSpaceObject - */ - set: function (name) { - this._name = name; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DSpaceObject.prototype, "metadataAsList", { - /** - * Retrieve the current metadata as a list of MetadatumViewModels - */ - get: function () { - return Metadata.toViewModelList(this.metadata); - }, - enumerable: true, - configurable: true - }); - /** - * Gets all matching metadata in this DSpaceObject. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {MetadataValue[]} the matching values or an empty array. - */ - DSpaceObject.prototype.allMetadata = function (keyOrKeys, valueFilter) { - return Metadata.all(this.metadata, keyOrKeys, valueFilter); - }; - /** - * Like [[allMetadata]], but only returns string values. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {string[]} the matching string values or an empty array. - */ - DSpaceObject.prototype.allMetadataValues = function (keyOrKeys, valueFilter) { - return Metadata.allValues(this.metadata, keyOrKeys, valueFilter); - }; - /** - * Gets the first matching MetadataValue object in this DSpaceObject, or `undefined`. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {MetadataValue} the first matching value, or `undefined`. - */ - DSpaceObject.prototype.firstMetadata = function (keyOrKeys, valueFilter) { - return Metadata.first(this.metadata, keyOrKeys, valueFilter); - }; - /** - * Like [[firstMetadata]], but only returns a string value, or `undefined`. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {string} the first matching string value, or `undefined`. - */ - DSpaceObject.prototype.firstMetadataValue = function (keyOrKeys, valueFilter) { - return Metadata.firstValue(this.metadata, keyOrKeys, valueFilter); - }; - /** - * Checks for a matching metadata value in this DSpaceObject. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {boolean} whether a match is found. - */ - DSpaceObject.prototype.hasMetadata = function (keyOrKeys, valueFilter) { - return Metadata.has(this.metadata, keyOrKeys, valueFilter); - }; - /** - * Find metadata on a specific field and order all of them using their "place" property. - * @param key - */ - DSpaceObject.prototype.findMetadataSortedByPlace = function (key) { - return this.allMetadata([key]).sort(function (a, b) { - if (hasNoValue(a.place) && hasNoValue(b.place)) { - return 0; - } - if (hasNoValue(a.place)) { - return -1; - } - if (hasNoValue(b.place)) { - return 1; - } - return a.place - b.place; - }); - }; - return DSpaceObject; -}()); -export { DSpaceObject }; -//# sourceMappingURL=dspace-object.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/dspace-object.model.js.map b/src/app/core/shared/dspace-object.model.js.map deleted file mode 100644 index 76b3781cb2..0000000000 --- a/src/app/core/shared/dspace-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-object.model.js","sourceRoot":"","sources":["dspace-object.model.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAKtD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD;;GAEG;AACH;IAAA;IAmIA,CAAC;IA3GC,sBAAI,8BAAI;QAHR;;WAEG;aACH;YACE,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QACtF,CAAC;QAED;;WAEG;aACH,UAAS,IAAI;YACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,CAAC;;;OAPA;IAiBD,sBAAI,wCAAc;QAHlB;;WAEG;aACH;YACE,OAAO,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC;;;OAAA;IAYD;;;;;;OAMG;IACH,kCAAW,GAAX,UAAY,SAA4B,EAAE,WAAiC;QACzE,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;OAMG;IACH,wCAAiB,GAAjB,UAAkB,SAA4B,EAAE,WAAiC;QAC/E,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;OAMG;IACH,oCAAa,GAAb,UAAc,SAA4B,EAAE,WAAiC;QAC3E,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;OAMG;IACH,yCAAkB,GAAlB,UAAmB,SAA4B,EAAE,WAAiC;QAChF,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;OAMG;IACH,kCAAW,GAAX,UAAY,SAA4B,EAAE,WAAiC;QACzE,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACH,gDAAyB,GAAzB,UAA0B,GAAW;QACnC,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAC,CAAgB,EAAE,CAAgB;YACrE,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBAC9C,OAAO,CAAC,CAAC;aACV;YACD,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBACvB,OAAO,CAAC,CAAC,CAAC;aACX;YACD,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBACvB,OAAO,CAAC,CAAC;aACV;YACD,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAEH,mBAAC;AAAD,CAAC,AAnID,IAmIC"} \ No newline at end of file diff --git a/src/app/core/shared/file.service.js b/src/app/core/shared/file.service.js deleted file mode 100644 index 865ae26d7d..0000000000 --- a/src/app/core/shared/file.service.js +++ /dev/null @@ -1,50 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { HttpHeaders } from '@angular/common/http'; -import { DSpaceRESTv2Service } from '../dspace-rest-v2/dspace-rest-v2.service'; -import { RestRequestMethod } from '../data/rest-request-method'; -import { saveAs } from 'file-saver'; -/** - * Provides utility methods to save files on the client-side. - */ -var FileService = /** @class */ (function () { - function FileService(restService) { - this.restService = restService; - } - /** - * Makes a HTTP Get request to download a file - * - * @param url - * file url - */ - FileService.prototype.downloadFile = function (url) { - var _this = this; - var headers = new HttpHeaders(); - var options = Object.create({ headers: headers, responseType: 'blob' }); - return this.restService.request(RestRequestMethod.GET, url, null, options) - .subscribe(function (data) { - saveAs(data.payload, _this.getFileNameFromResponseContentDisposition(data)); - }); - }; - /** - * Derives file name from the http response - * by looking inside content-disposition - * @param res - * http DSpaceRESTV2Response - */ - FileService.prototype.getFileNameFromResponseContentDisposition = function (res) { - // NOTE: to be able to retrieve 'Content-Disposition' header, - // you need to set 'Access-Control-Expose-Headers': 'Content-Disposition' ON SERVER SIDE - var contentDisposition = res.headers.get('content-disposition') || ''; - var matches = /filename="([^;]+)"/ig.exec(contentDisposition) || []; - return (matches[1] || 'untitled').trim().replace(/\.[^/.]+$/, ''); - }; - ; - FileService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSpaceRESTv2Service]) - ], FileService); - return FileService; -}()); -export { FileService }; -//# sourceMappingURL=file.service.js.map \ No newline at end of file diff --git a/src/app/core/shared/file.service.js.map b/src/app/core/shared/file.service.js.map deleted file mode 100644 index c0452e0f09..0000000000 --- a/src/app/core/shared/file.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"file.service.js","sourceRoot":"","sources":["file.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,mBAAmB,EAAe,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGpC;;GAEG;AAEH;IACE,qBACU,WAAgC;QAAhC,gBAAW,GAAX,WAAW,CAAqB;IACtC,CAAC;IAEL;;;;;OAKG;IACH,kCAAY,GAAZ,UAAa,GAAW;QAAxB,iBAOC;QANC,IAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,IAAM,OAAO,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAC,OAAO,SAAA,EAAE,YAAY,EAAE,MAAM,EAAC,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC;aACvE,SAAS,CAAC,UAAC,IAAI;YACd,MAAM,CAAC,IAAI,CAAC,OAAe,EAAE,KAAI,CAAC,yCAAyC,CAAC,IAAI,CAAC,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACH,+DAAyC,GAAzC,UAA0C,GAAyB;QACjE,6DAA6D;QAC7D,wFAAwF;QACxF,IAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;QACxE,IAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACtE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAAA,CAAC;IAhCS,WAAW;QADvB,UAAU,EAAE;iDAGY,mBAAmB;OAF/B,WAAW,CAiCvB;IAAD,kBAAC;CAAA,AAjCD,IAiCC;SAjCY,WAAW"} \ No newline at end of file diff --git a/src/app/core/shared/generic-constructor.js b/src/app/core/shared/generic-constructor.js deleted file mode 100644 index 470d00546d..0000000000 --- a/src/app/core/shared/generic-constructor.js +++ /dev/null @@ -1,2 +0,0 @@ -/* tslint:enable:interface-over-type-literal */ -//# sourceMappingURL=generic-constructor.js.map \ No newline at end of file diff --git a/src/app/core/shared/generic-constructor.js.map b/src/app/core/shared/generic-constructor.js.map deleted file mode 100644 index d1cb9f319e..0000000000 --- a/src/app/core/shared/generic-constructor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"generic-constructor.js","sourceRoot":"","sources":["generic-constructor.ts"],"names":[],"mappings":"AAOA,+CAA+C"} \ No newline at end of file diff --git a/src/app/core/shared/hal-endpoint.service.js b/src/app/core/shared/hal-endpoint.service.js deleted file mode 100644 index 644ddc95f0..0000000000 --- a/src/app/core/shared/hal-endpoint.service.js +++ /dev/null @@ -1,75 +0,0 @@ -import * as tslib_1 from "tslib"; -import { distinctUntilChanged, map, startWith, switchMap } from 'rxjs/operators'; -import { RequestService } from '../data/request.service'; -import { EndpointMapRequest } from '../data/request.models'; -import { hasValue, isEmpty, isNotEmpty } from '../../shared/empty.util'; -import { RESTURLCombiner } from '../url-combiner/rest-url-combiner'; -import { Inject, Injectable } from '@angular/core'; -import { GLOBAL_CONFIG } from '../../../config'; -import { getResponseFromEntry } from './operators'; -import { URLCombiner } from '../url-combiner/url-combiner'; -var HALEndpointService = /** @class */ (function () { - function HALEndpointService(requestService, EnvConfig) { - this.requestService = requestService; - this.EnvConfig = EnvConfig; - } - HALEndpointService.prototype.getRootHref = function () { - return new RESTURLCombiner(this.EnvConfig, '/').toString(); - }; - HALEndpointService.prototype.getRootEndpointMap = function () { - return this.getEndpointMapAt(this.getRootHref()); - }; - HALEndpointService.prototype.getEndpointMapAt = function (href) { - var request = new EndpointMapRequest(this.requestService.generateRequestId(), href); - this.requestService.configure(request); - return this.requestService.getByHref(request.href).pipe(getResponseFromEntry(), map(function (response) { return response.endpointMap; })); - }; - HALEndpointService.prototype.getEndpoint = function (linkPath) { - return this.getEndpointAt.apply(this, [this.getRootHref()].concat(linkPath.split('/'))); - }; - /** - * Resolve the actual hal url based on a list of hal names - * @param {string} href The root url to start from - * @param {string} halNames List of hal names for which a url should be resolved - * @returns {Observable} Observable that emits the found hal url - */ - HALEndpointService.prototype.getEndpointAt = function (href) { - var _this = this; - var halNames = []; - for (var _i = 1; _i < arguments.length; _i++) { - halNames[_i - 1] = arguments[_i]; - } - if (isEmpty(halNames)) { - throw new Error('cant\'t fetch the URL without the HAL link names'); - } - var nextHref$ = this.getEndpointMapAt(href).pipe(map(function (endpointMap) { - /*TODO remove if/else block once the rest response contains _links for facets*/ - var nextName = halNames[0]; - if (hasValue(endpointMap) && hasValue(endpointMap[nextName])) { - return endpointMap[nextName]; - } - else { - return new URLCombiner(href, nextName).toString(); - } - })); - if (halNames.length === 1) { - return nextHref$; - } - else { - return nextHref$.pipe(switchMap(function (nextHref) { return _this.getEndpointAt.apply(_this, [nextHref].concat(halNames.slice(1))); })); - } - }; - HALEndpointService.prototype.isEnabledOnRestApi = function (linkPath) { - return this.getRootEndpointMap().pipe( - // TODO this only works when there's no / in linkPath - map(function (endpointMap) { return isNotEmpty(endpointMap[linkPath]); }), startWith(undefined), distinctUntilChanged()); - }; - HALEndpointService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(1, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [RequestService, Object]) - ], HALEndpointService); - return HALEndpointService; -}()); -export { HALEndpointService }; -//# sourceMappingURL=hal-endpoint.service.js.map \ No newline at end of file diff --git a/src/app/core/shared/hal-endpoint.service.js.map b/src/app/core/shared/hal-endpoint.service.js.map deleted file mode 100644 index fe1334a14f..0000000000 --- a/src/app/core/shared/hal-endpoint.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"hal-endpoint.service.js","sourceRoot":"","sources":["hal-endpoint.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/item-type.model.js b/src/app/core/shared/item-relationships/item-type.model.js deleted file mode 100644 index f8264a7bb7..0000000000 --- a/src/app/core/shared/item-relationships/item-type.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Describes a type of Item - */ -var ItemType = /** @class */ (function () { - function ItemType() { - } - return ItemType; -}()); -export { ItemType }; -//# sourceMappingURL=item-type.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/item-type.model.js.map b/src/app/core/shared/item-relationships/item-type.model.js.map deleted file mode 100644 index 0153ee426e..0000000000 --- a/src/app/core/shared/item-relationships/item-type.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-type.model.js","sourceRoot":"","sources":["item-type.model.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH;IAAA;IAoBA,CAAC;IAAD,eAAC;AAAD,CAAC,AApBD,IAoBC"} \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/relationship-type.model.js b/src/app/core/shared/item-relationships/relationship-type.model.js deleted file mode 100644 index 5442dda2a5..0000000000 --- a/src/app/core/shared/item-relationships/relationship-type.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Describes a type of Relationship between multiple possible Items - */ -var RelationshipType = /** @class */ (function () { - function RelationshipType() { - } - return RelationshipType; -}()); -export { RelationshipType }; -//# sourceMappingURL=relationship-type.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/relationship-type.model.js.map b/src/app/core/shared/item-relationships/relationship-type.model.js.map deleted file mode 100644 index e477b7d090..0000000000 --- a/src/app/core/shared/item-relationships/relationship-type.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"relationship-type.model.js","sourceRoot":"","sources":["relationship-type.model.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH;IAAA;IAiEA,CAAC;IAAD,uBAAC;AAAD,CAAC,AAjED,IAiEC"} \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/relationship.model.js b/src/app/core/shared/item-relationships/relationship.model.js deleted file mode 100644 index adf7c234de..0000000000 --- a/src/app/core/shared/item-relationships/relationship.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Describes a Relationship between two Items - */ -var Relationship = /** @class */ (function () { - function Relationship() { - } - return Relationship; -}()); -export { Relationship }; -//# sourceMappingURL=relationship.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/item-relationships/relationship.model.js.map b/src/app/core/shared/item-relationships/relationship.model.js.map deleted file mode 100644 index e610d87740..0000000000 --- a/src/app/core/shared/item-relationships/relationship.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"relationship.model.js","sourceRoot":"","sources":["relationship.model.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH;IAAA;IA6CA,CAAC;IAAD,mBAAC;AAAD,CAAC,AA7CD,IA6CC"} \ No newline at end of file diff --git a/src/app/core/shared/item.model.js b/src/app/core/shared/item.model.js deleted file mode 100644 index d085f6e120..0000000000 --- a/src/app/core/shared/item.model.js +++ /dev/null @@ -1,60 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map, startWith, filter, take } from 'rxjs/operators'; -import { DSpaceObject } from './dspace-object.model'; -import { hasValue, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; -var Item = /** @class */ (function (_super) { - tslib_1.__extends(Item, _super); - function Item() { - return _super !== null && _super.apply(this, arguments) || this; - } - Object.defineProperty(Item.prototype, "owner", { - get: function () { - return this.owningCollection; - }, - enumerable: true, - configurable: true - }); - /** - * Retrieves the thumbnail of this item - * @returns {Observable} the primaryBitstream of the 'THUMBNAIL' bundle - */ - Item.prototype.getThumbnail = function () { - // TODO: currently this just picks the first thumbnail - // should be adjusted when we have a way to determine - // the primary thumbnail from rest - return this.getBitstreamsByBundleName('THUMBNAIL').pipe(filter(function (thumbnails) { return isNotEmpty(thumbnails); }), map(function (thumbnails) { return thumbnails[0]; })); - }; - /** - * Retrieves the thumbnail for the given original of this item - * @returns {Observable} the primaryBitstream of the 'THUMBNAIL' bundle - */ - Item.prototype.getThumbnailForOriginal = function (original) { - return this.getBitstreamsByBundleName('THUMBNAIL').pipe(map(function (files) { - return files.find(function (thumbnail) { return thumbnail.name.startsWith(original.name); }); - }), startWith(undefined)); - }; - /** - * Retrieves all files that should be displayed on the item page of this item - * @returns {Observable>>} an array of all Bitstreams in the 'ORIGINAL' bundle - */ - Item.prototype.getFiles = function () { - return this.getBitstreamsByBundleName('ORIGINAL'); - }; - /** - * Retrieves bitstreams by bundle name - * @param bundleName The name of the Bundle that should be returned - * @returns {Observable} the bitstreams with the given bundleName - * TODO now that bitstreams can be paginated this should move to the server - * see https://github.com/DSpace/dspace-angular/issues/332 - */ - Item.prototype.getBitstreamsByBundleName = function (bundleName) { - return this.bitstreams.pipe(filter(function (rd) { return !rd.isResponsePending && isNotUndefined(rd.payload); }), map(function (rd) { return rd.payload.page; }), filter(function (bitstreams) { return hasValue(bitstreams); }), take(1), startWith([]), map(function (bitstreams) { - return bitstreams - .filter(function (bitstream) { return hasValue(bitstream); }) - .filter(function (bitstream) { return bitstream.bundleName === bundleName; }); - })); - }; - return Item; -}(DSpaceObject)); -export { Item }; -//# sourceMappingURL=item.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/item.model.js.map b/src/app/core/shared/item.model.js.map deleted file mode 100644 index 3a1724abb6..0000000000 --- a/src/app/core/shared/item.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item.model.js","sourceRoot":"","sources":["item.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAG9D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIrD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAI/E;IAA0B,gCAAY;IAAtC;;IAkGA,CAAC;IA7DC,sBAAI,uBAAK;aAAT;YACE,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;;;OAAA;IAMD;;;OAGG;IACH,2BAAY,GAAZ;QACE,sDAAsD;QACtD,qDAAqD;QACrD,kCAAkC;QAClC,OAAO,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,IAAI,CACrD,MAAM,CAAC,UAAC,UAAU,IAAK,OAAA,UAAU,CAAC,UAAU,CAAC,EAAtB,CAAsB,CAAC,EAC9C,GAAG,CAAC,UAAC,UAAU,IAAK,OAAA,UAAU,CAAC,CAAC,CAAC,EAAb,CAAa,CAAC,CAAE,CAAA;IACxC,CAAC;IAED;;;OAGG;IACH,sCAAuB,GAAvB,UAAwB,QAAmB;QACzC,OAAO,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,IAAI,CACrD,GAAG,CAAC,UAAC,KAAK;YACR,OAAO,KAAK,CAAC,IAAI,CAAC,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAxC,CAAwC,CAAC,CAAA;QAC5E,CAAC,CAAC,EAAC,SAAS,CAAC,SAAS,CAAC,CAAE,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,uBAAQ,GAAR;QACE,OAAO,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACH,wCAAyB,GAAzB,UAA0B,UAAkB;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CACzB,MAAM,CAAC,UAAC,EAAwC,IAAK,OAAA,CAAC,EAAE,CAAC,iBAAiB,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAAnD,CAAmD,CAAC,EACzG,GAAG,CAAC,UAAC,EAAwC,IAAK,OAAA,EAAE,CAAC,OAAO,CAAC,IAAI,EAAf,CAAe,CAAC,EAClE,MAAM,CAAC,UAAC,UAAuB,IAAK,OAAA,QAAQ,CAAC,UAAU,CAAC,EAApB,CAAoB,CAAC,EACzD,IAAI,CAAC,CAAC,CAAC,EACP,SAAS,CAAC,EAAE,CAAC,EACb,GAAG,CAAC,UAAC,UAAU;YACb,OAAO,UAAU;iBACd,MAAM,CAAC,UAAC,SAAS,IAAK,OAAA,QAAQ,CAAC,SAAS,CAAC,EAAnB,CAAmB,CAAC;iBAC1C,MAAM,CAAC,UAAC,SAAS,IAAK,OAAA,SAAS,CAAC,UAAU,KAAK,UAAU,EAAnC,CAAmC,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAEH,WAAC;AAAD,CAAC,AAlGD,CAA0B,YAAY,GAkGrC"} \ No newline at end of file diff --git a/src/app/core/shared/license.model.js b/src/app/core/shared/license.model.js deleted file mode 100644 index a5e53573a1..0000000000 --- a/src/app/core/shared/license.model.js +++ /dev/null @@ -1,11 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from './dspace-object.model'; -var License = /** @class */ (function (_super) { - tslib_1.__extends(License, _super); - function License() { - return _super !== null && _super.apply(this, arguments) || this; - } - return License; -}(DSpaceObject)); -export { License }; -//# sourceMappingURL=license.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/license.model.js.map b/src/app/core/shared/license.model.js.map deleted file mode 100644 index 4380b59922..0000000000 --- a/src/app/core/shared/license.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"license.model.js","sourceRoot":"","sources":["license.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD;IAA6B,mCAAY;IAAzC;;IAWA,CAAC;IAAD,cAAC;AAAD,CAAC,AAXD,CAA6B,YAAY,GAWxC"} \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js b/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js deleted file mode 100644 index af54dddd24..0000000000 --- a/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js +++ /dev/null @@ -1,57 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Item } from '../../item.model'; -import { MetadataRepresentationType } from '../metadata-representation.model'; -import { hasValue } from '../../../../shared/empty.util'; -/** - * An object to convert item types into the metadata field it should render for the item's value - */ -export var ItemTypeToValue = { - Default: 'dc.title', - Person: 'dc.contributor.author', - OrgUnit: 'dc.title' -}; -/** - * This class determines which fields to use when rendering an Item as a metadata value. - */ -var ItemMetadataRepresentation = /** @class */ (function (_super) { - tslib_1.__extends(ItemMetadataRepresentation, _super); - function ItemMetadataRepresentation() { - return _super !== null && _super.apply(this, arguments) || this; - } - Object.defineProperty(ItemMetadataRepresentation.prototype, "itemType", { - /** - * The type of item this item can be represented as - */ - get: function () { - return this.firstMetadataValue('relationship.type'); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ItemMetadataRepresentation.prototype, "representationType", { - /** - * Fetch the way this item should be rendered as in a list - */ - get: function () { - return MetadataRepresentationType.Item; - }, - enumerable: true, - configurable: true - }); - /** - * Get the value to display, depending on the itemType - */ - ItemMetadataRepresentation.prototype.getValue = function () { - var metadata; - if (hasValue(ItemTypeToValue[this.itemType])) { - metadata = ItemTypeToValue[this.itemType]; - } - else { - metadata = ItemTypeToValue.Default; - } - return this.firstMetadataValue(metadata); - }; - return ItemMetadataRepresentation; -}(Item)); -export { ItemMetadataRepresentation }; -//# sourceMappingURL=item-metadata-representation.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js.map b/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js.map deleted file mode 100644 index 5cb25e9aac..0000000000 --- a/src/app/core/shared/metadata-representation/item/item-metadata-representation.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-metadata-representation.model.js","sourceRoot":"","sources":["item-metadata-representation.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAA0B,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AACtG,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,IAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,UAAU;IACnB,MAAM,EAAE,uBAAuB;IAC/B,OAAO,EAAE,UAAU;CACpB,CAAC;AAEF;;GAEG;AACH;IAAgD,sDAAI;IAApD;;IA6BA,CAAC;IAxBC,sBAAI,gDAAQ;QAHZ;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC;;;OAAA;IAKD,sBAAI,0DAAkB;QAHtB;;WAEG;aACH;YACE,OAAO,0BAA0B,CAAC,IAAI,CAAC;QACzC,CAAC;;;OAAA;IAED;;OAEG;IACH,6CAAQ,GAAR;QACE,IAAI,QAAQ,CAAC;QACb,IAAI,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE;YAC5C,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC3C;aAAM;YACL,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC;SACpC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAEH,iCAAC;AAAD,CAAC,AA7BD,CAAgD,IAAI,GA6BnD"} \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/metadata-representation.model.js b/src/app/core/shared/metadata-representation/metadata-representation.model.js deleted file mode 100644 index 2e5057ddd8..0000000000 --- a/src/app/core/shared/metadata-representation/metadata-representation.model.js +++ /dev/null @@ -1,11 +0,0 @@ -/** - * An Enum defining the representation type of metadata - */ -export var MetadataRepresentationType; -(function (MetadataRepresentationType) { - MetadataRepresentationType["None"] = "none"; - MetadataRepresentationType["Item"] = "item"; - MetadataRepresentationType["AuthorityControlled"] = "authority_controlled"; - MetadataRepresentationType["PlainText"] = "plain_text"; -})(MetadataRepresentationType || (MetadataRepresentationType = {})); -//# sourceMappingURL=metadata-representation.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/metadata-representation.model.js.map b/src/app/core/shared/metadata-representation/metadata-representation.model.js.map deleted file mode 100644 index ea75b0fc78..0000000000 --- a/src/app/core/shared/metadata-representation/metadata-representation.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-representation.model.js","sourceRoot":"","sources":["metadata-representation.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAN,IAAY,0BAKX;AALD,WAAY,0BAA0B;IACpC,2CAAa,CAAA;IACb,2CAAa,CAAA;IACb,0EAA4C,CAAA;IAC5C,sDAAwB,CAAA;AAC1B,CAAC,EALW,0BAA0B,KAA1B,0BAA0B,QAKrC"} \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js b/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js deleted file mode 100644 index 60b14385eb..0000000000 --- a/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tslib_1 from "tslib"; -import { MetadataRepresentationType } from '../metadata-representation.model'; -import { hasValue } from '../../../../shared/empty.util'; -import { MetadataValue } from '../../metadata.models'; -/** - * This class defines the way the metadatum it extends should be represented - */ -var MetadatumRepresentation = /** @class */ (function (_super) { - tslib_1.__extends(MetadatumRepresentation, _super); - function MetadatumRepresentation(itemType) { - var _this = _super.call(this) || this; - _this.itemType = itemType; - return _this; - } - Object.defineProperty(MetadatumRepresentation.prototype, "representationType", { - /** - * Fetch the way this metadatum should be rendered as in a list - */ - get: function () { - if (hasValue(this.authority)) { - return MetadataRepresentationType.AuthorityControlled; - } - else { - return MetadataRepresentationType.PlainText; - } - }, - enumerable: true, - configurable: true - }); - /** - * Get the value to display - */ - MetadatumRepresentation.prototype.getValue = function () { - return this.value; - }; - return MetadatumRepresentation; -}(MetadataValue)); -export { MetadatumRepresentation }; -//# sourceMappingURL=metadatum-representation.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js.map b/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js.map deleted file mode 100644 index e8614af9cc..0000000000 --- a/src/app/core/shared/metadata-representation/metadatum/metadatum-representation.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadatum-representation.model.js","sourceRoot":"","sources":["metadatum-representation.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA0B,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AACtG,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;GAEG;AACH;IAA6C,mDAAa;IAOxD,iCAAY,QAAgB;QAA5B,YACE,iBAAO,SAER;QADC,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;;IAC3B,CAAC;IAKD,sBAAI,uDAAkB;QAHtB;;WAEG;aACH;YACE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBAC5B,OAAO,0BAA0B,CAAC,mBAAmB,CAAC;aACvD;iBAAM;gBACL,OAAO,0BAA0B,CAAC,SAAS,CAAC;aAC7C;QACH,CAAC;;;OAAA;IAED;;OAEG;IACH,0CAAQ,GAAR;QACE,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEH,8BAAC;AAAD,CAAC,AA9BD,CAA6C,aAAa,GA8BzD"} \ No newline at end of file diff --git a/src/app/core/shared/metadata.models.js b/src/app/core/shared/metadata.models.js deleted file mode 100644 index acf11607e2..0000000000 --- a/src/app/core/shared/metadata.models.js +++ /dev/null @@ -1,98 +0,0 @@ -import * as tslib_1 from "tslib"; -import * as uuidv4 from 'uuid/v4'; -import { autoserialize, Serialize, Deserialize } from 'cerialize'; -import { hasValue } from '../../shared/empty.util'; -/* tslint:disable:max-classes-per-file */ -var VIRTUAL_METADATA_PREFIX = 'virtual::'; -/** A map of metadata keys to an ordered list of MetadataValue objects. */ -var MetadataMap = /** @class */ (function () { - function MetadataMap() { - } - return MetadataMap; -}()); -export { MetadataMap }; -/** A single metadata value and its properties. */ -var MetadataValue = /** @class */ (function () { - function MetadataValue() { - /** The uuid. */ - this.uuid = uuidv4(); - } - Object.defineProperty(MetadataValue.prototype, "isVirtual", { - /** - * Returns true if this Metadatum's authority key starts with 'virtual::' - */ - get: function () { - return hasValue(this.authority) && this.authority.startsWith(VIRTUAL_METADATA_PREFIX); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(MetadataValue.prototype, "virtualValue", { - /** - * If this is a virtual Metadatum, it returns everything in the authority key after 'virtual::'. - * Returns undefined otherwise. - */ - get: function () { - if (this.isVirtual) { - return this.authority.substring(this.authority.indexOf(VIRTUAL_METADATA_PREFIX) + VIRTUAL_METADATA_PREFIX.length); - } - else { - return undefined; - } - }, - enumerable: true, - configurable: true - }); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataValue.prototype, "language", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataValue.prototype, "value", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], MetadataValue.prototype, "place", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], MetadataValue.prototype, "authority", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], MetadataValue.prototype, "confidence", void 0); - return MetadataValue; -}()); -export { MetadataValue }; -var MetadatumViewModel = /** @class */ (function () { - function MetadatumViewModel() { - /** The uuid. */ - this.uuid = uuidv4(); - } - return MetadatumViewModel; -}()); -export { MetadatumViewModel }; -/** Serializer used for MetadataMaps. - * This is necessary because Cerialize has trouble instantiating the MetadataValues using their constructor - * when they are inside arrays which also represent the values in a map. - */ -export var MetadataMapSerializer = { - Serialize: function (map) { - var json = {}; - Object.keys(map).forEach(function (key) { - json[key] = Serialize(map[key], MetadataValue); - }); - return json; - }, - Deserialize: function (json) { - var metadataMap = {}; - Object.keys(json).forEach(function (key) { - metadataMap[key] = Deserialize(json[key], MetadataValue); - }); - return metadataMap; - } -}; -/* tslint:enable:max-classes-per-file */ -//# sourceMappingURL=metadata.models.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata.models.js.map b/src/app/core/shared/metadata.models.js.map deleted file mode 100644 index 03fe92a3ec..0000000000 --- a/src/app/core/shared/metadata.models.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata.models.js","sourceRoot":"","sources":["metadata.models.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,yCAAyC;AAEzC,IAAM,uBAAuB,GAAG,WAAW,CAAC;AAiB5C,0EAA0E;AAC1E;IAAA;IAEA,CAAC;IAAD,kBAAC;AAAD,CAAC,AAFD,IAEC;;AAED,kDAAkD;AAClD;IAAA;QACE,gBAAgB;QAChB,SAAI,GAAW,MAAM,EAAE,CAAC;IA2C1B,CAAC;IAfC,sBAAI,oCAAS;QAHb;;WAEG;aACH;YACE,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;QACxF,CAAC;;;OAAA;IAMD,sBAAI,uCAAY;QAJhB;;;WAGG;aACH;YACE,IAAI,IAAI,CAAC,SAAS,EAAE;gBAClB,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,uBAAuB,CAAC,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;aACnH;iBAAM;gBACL,OAAO,SAAS,CAAC;aAClB;QACH,CAAC;;;OAAA;IAtCD;QADC,aAAa;;mDACG;IAIjB;QADC,aAAa;;gDACA;IAOd;QADC,aAAa;;gDACA;IAId;QADC,aAAa;;oDACI;IAIlB;QADC,aAAa;;qDACK;IAoBrB,oBAAC;CAAA,AA7CD,IA6CC;SA7CY,aAAa;AA8D1B;IAAA;QACE,gBAAgB;QAChB,SAAI,GAAW,MAAM,EAAE,CAAC;IAsB1B,CAAC;IAAD,yBAAC;AAAD,CAAC,AAxBD,IAwBC;;AAED;;;GAGG;AACH,MAAM,CAAC,IAAM,qBAAqB,GAAG;IACnC,SAAS,EAAT,UAAU,GAAgB;QACxB,IAAM,IAAI,GAAG,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,GAAW;YACnC,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,EAAX,UAAY,IAAS;QACnB,IAAM,WAAW,GAAgB,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAC,GAAW;YACpC,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC;CACF,CAAC;AACF,wCAAwC"} \ No newline at end of file diff --git a/src/app/core/shared/metadata.utils.js b/src/app/core/shared/metadata.utils.js deleted file mode 100644 index 945870e4ab..0000000000 --- a/src/app/core/shared/metadata.utils.js +++ /dev/null @@ -1,211 +0,0 @@ -import { isEmpty, isNotUndefined, isUndefined } from '../../shared/empty.util'; -import { MetadataValue } from './metadata.models'; -import { groupBy, sortBy } from 'lodash'; -/** - * Utility class for working with DSpace object metadata. - * - * When specifying metadata keys, wildcards are supported, so `'*'` will match all keys, `'dc.date.*'` will - * match all qualified dc dates, and so on. Exact keys will be evaluated (and matches returned) in the order - * they are given. - * - * When multiple keys in a map match a given wildcard, they are evaluated in the order they are stored in - * the map (alphanumeric if obtained from the REST api). If duplicate or overlapping keys are specified, the - * first one takes precedence. For example, specifying `['dc.date', 'dc.*', '*']` will cause any `dc.date` - * values to be evaluated (and returned, if matched) first, followed by any other `dc` metadata values, - * followed by any other (non-dc) metadata values. - */ -var Metadata = /** @class */ (function () { - function Metadata() { - } - /** - * Gets all matching metadata in the map(s). - * - * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). When multiple maps are given, they will be - * checked in order, and only values from the first with at least one match will be returned. - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {MetadataValue[]} the matching values or an empty array. - */ - Metadata.all = function (mapOrMaps, keyOrKeys, filter) { - var mdMaps = mapOrMaps instanceof Array ? mapOrMaps : [mapOrMaps]; - var matches = []; - for (var _i = 0, mdMaps_1 = mdMaps; _i < mdMaps_1.length; _i++) { - var mdMap = mdMaps_1[_i]; - for (var _a = 0, _b = Metadata.resolveKeys(mdMap, keyOrKeys); _a < _b.length; _a++) { - var mdKey = _b[_a]; - var candidates = mdMap[mdKey]; - if (candidates) { - for (var _c = 0, candidates_1 = candidates; _c < candidates_1.length; _c++) { - var candidate = candidates_1[_c]; - if (Metadata.valueMatches(candidate, filter)) { - matches.push(candidate); - } - } - } - } - if (!isEmpty(matches)) { - return matches; - } - } - return matches; - }; - /** - * Like [[Metadata.all]], but only returns string values. - * - * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). When multiple maps are given, they will be - * checked in order, and only values from the first with at least one match will be returned. - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {string[]} the matching string values or an empty array. - */ - Metadata.allValues = function (mapOrMaps, keyOrKeys, filter) { - return Metadata.all(mapOrMaps, keyOrKeys, filter).map(function (mdValue) { return mdValue.value; }); - }; - /** - * Gets the first matching MetadataValue object in the map(s), or `undefined`. - * - * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {MetadataValue} the first matching value, or `undefined`. - */ - Metadata.first = function (mdMapOrMaps, keyOrKeys, filter) { - var mdMaps = mdMapOrMaps instanceof Array ? mdMapOrMaps : [mdMapOrMaps]; - for (var _i = 0, mdMaps_2 = mdMaps; _i < mdMaps_2.length; _i++) { - var mdMap = mdMaps_2[_i]; - for (var _a = 0, _b = Metadata.resolveKeys(mdMap, keyOrKeys); _a < _b.length; _a++) { - var key = _b[_a]; - var values = mdMap[key]; - if (values) { - return values.find(function (value) { return Metadata.valueMatches(value, filter); }); - } - } - } - }; - /** - * Like [[Metadata.first]], but only returns a string value, or `undefined`. - * - * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {string} the first matching string value, or `undefined`. - */ - Metadata.firstValue = function (mdMapOrMaps, keyOrKeys, filter) { - var value = Metadata.first(mdMapOrMaps, keyOrKeys, filter); - return isUndefined(value) ? undefined : value.value; - }; - /** - * Checks for a matching metadata value in the given map(s). - * - * @param {MetadataMapInterface|MetadataMapInterface[]} mapOrMaps The source map(s). - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. - * @param {MetadataValueFilter} filter The value filter to use. If unspecified, no filtering will be done. - * @returns {boolean} whether a match is found. - */ - Metadata.has = function (mdMapOrMaps, keyOrKeys, filter) { - return isNotUndefined(Metadata.first(mdMapOrMaps, keyOrKeys, filter)); - }; - /** - * Checks if a value matches a filter. - * - * @param {MetadataValue} mdValue the value to check. - * @param {MetadataValueFilter} filter the filter to use. - * @returns {boolean} whether the filter matches, or true if no filter is given. - */ - Metadata.valueMatches = function (mdValue, filter) { - if (!filter) { - return true; - } - else if (filter.language && filter.language !== mdValue.language) { - return false; - } - else if (filter.value) { - var fValue = filter.value; - var mValue = mdValue.value; - if (filter.ignoreCase) { - fValue = filter.value.toLowerCase(); - mValue = mdValue.value.toLowerCase(); - } - if (filter.substring) { - return mValue.includes(fValue); - } - else { - return mValue === fValue; - } - } - return true; - }; - /** - * Gets the list of keys in the map limited by, and in the order given by `keyOrKeys`. - * - * @param {MetadataMapInterface} mdMap The source map. - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see above. - */ - Metadata.resolveKeys = function (mdMap, keyOrKeys) { - if (mdMap === void 0) { mdMap = {}; } - var inputKeys = keyOrKeys instanceof Array ? keyOrKeys : [keyOrKeys]; - var outputKeys = []; - for (var _i = 0, inputKeys_1 = inputKeys; _i < inputKeys_1.length; _i++) { - var inputKey = inputKeys_1[_i]; - if (inputKey.includes('*')) { - var inputKeyRegex = new RegExp('^' + inputKey.replace('.', '\.').replace('*', '.*') + '$'); - for (var _a = 0, _b = Object.keys(mdMap); _a < _b.length; _a++) { - var mapKey = _b[_a]; - if (!outputKeys.includes(mapKey) && inputKeyRegex.test(mapKey)) { - outputKeys.push(mapKey); - } - } - } - else if (mdMap.hasOwnProperty(inputKey) && !outputKeys.includes(inputKey)) { - outputKeys.push(inputKey); - } - } - return outputKeys; - }; - /** - * Creates an array of MetadatumViewModels from an existing MetadataMapInterface. - * - * @param {MetadataMapInterface} mdMap The source map. - * @returns {MetadatumViewModel[]} List of metadata view models based on the source map. - */ - Metadata.toViewModelList = function (mdMap) { - var metadatumList = []; - Object.keys(mdMap) - .sort() - .forEach(function (key) { - var fields = mdMap[key].map(function (metadataValue, index) { - return Object.assign({}, metadataValue, { - order: index, - key: key - }); - }); - metadatumList = metadatumList.concat(fields); - }); - return metadatumList; - }; - /** - * Creates an MetadataMapInterface from an existing array of MetadatumViewModels. - * - * @param {MetadatumViewModel[]} viewModelList The source list. - * @returns {MetadataMapInterface} Map with metadata values based on the source list. - */ - Metadata.toMetadataMap = function (viewModelList) { - var metadataMap = {}; - var groupedList = groupBy(viewModelList, function (viewModel) { return viewModel.key; }); - Object.keys(groupedList) - .sort() - .forEach(function (key) { - var orderedValues = sortBy(groupedList[key], ['order']); - metadataMap[key] = orderedValues.map(function (value) { - var val = Object.assign(new MetadataValue(), value); - delete val.order; - delete val.key; - return val; - }); - }); - return metadataMap; - }; - return Metadata; -}()); -export { Metadata }; -//# sourceMappingURL=metadata.utils.js.map \ No newline at end of file diff --git a/src/app/core/shared/metadata.utils.js.map b/src/app/core/shared/metadata.utils.js.map deleted file mode 100644 index 3348b42336..0000000000 --- a/src/app/core/shared/metadata.utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata.utils.js","sourceRoot":"","sources":["metadata.utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/shared/operators.js b/src/app/core/shared/operators.js deleted file mode 100644 index dba1ece736..0000000000 --- a/src/app/core/shared/operators.js +++ /dev/null @@ -1,105 +0,0 @@ -import { filter, find, flatMap, map, tap } from 'rxjs/operators'; -import { hasValue, hasValueOperator, isNotEmpty } from '../../shared/empty.util'; -/** - * This file contains custom RxJS operators that can be used in multiple places - */ -export var getRequestFromRequestHref = function (requestService) { - return function (source) { - return source.pipe(flatMap(function (href) { return requestService.getByHref(href); }), hasValueOperator()); - }; -}; -export var getRequestFromRequestUUID = function (requestService) { - return function (source) { - return source.pipe(flatMap(function (uuid) { return requestService.getByUUID(uuid); }), hasValueOperator()); - }; -}; -export var filterSuccessfulResponses = function () { - return function (source) { - return source.pipe(getResponseFromEntry(), filter(function (response) { return response.isSuccessful === true; })); - }; -}; -export var getResponseFromEntry = function () { - return function (source) { - return source.pipe(filter(function (entry) { return hasValue(entry) && hasValue(entry.response); }), map(function (entry) { return entry.response; })); - }; -}; -export var getResourceLinksFromResponse = function () { - return function (source) { - return source.pipe(filterSuccessfulResponses(), map(function (response) { return response.resourceSelfLinks; })); - }; -}; -export var configureRequest = function (requestService, forceBypassCache) { - return function (source) { - return source.pipe(tap(function (request) { return requestService.configure(request, forceBypassCache); })); - }; -}; -export var getRemoteDataPayload = function () { - return function (source) { - return source.pipe(map(function (remoteData) { return remoteData.payload; })); - }; -}; -export var getSucceededRemoteData = function () { - return function (source) { - return source.pipe(find(function (rd) { return rd.hasSucceeded; })); - }; -}; -/** - * Operator that checks if a remote data object contains a page not found error - * When it does contain such an error, it will redirect the user to a page not found, without altering the current URL - * @param router The router used to navigate to a new page - */ -export var redirectToPageNotFoundOn404 = function (router) { - return function (source) { - return source.pipe(tap(function (rd) { - if (rd.hasFailed && rd.error.statusCode === 404) { - router.navigateByUrl('/404', { skipLocationChange: true }); - } - })); - }; -}; -export var getFinishedRemoteData = function () { - return function (source) { - return source.pipe(find(function (rd) { return !rd.isLoading; })); - }; -}; -export var getAllSucceededRemoteData = function () { - return function (source) { - return source.pipe(filter(function (rd) { return rd.hasSucceeded; })); - }; -}; -export var toDSpaceObjectListRD = function () { - return function (source) { - return source.pipe(filter(function (rd) { return rd.hasSucceeded; }), map(function (rd) { - var dsoPage = rd.payload.page.map(function (searchResult) { return searchResult.indexableObject; }); - var payload = Object.assign(rd.payload, { page: dsoPage }); - return Object.assign(rd, { payload: payload }); - })); - }; -}; -/** - * Get the browse links from a definition by ID given an array of all definitions - * @param {string} definitionID - * @returns {(source: Observable>) => Observable} - */ -export var getBrowseDefinitionLinks = function (definitionID) { - return function (source) { - return source.pipe(getRemoteDataPayload(), map(function (browseDefinitions) { return browseDefinitions - .find(function (def) { return def.id === definitionID; }); }), map(function (def) { - if (isNotEmpty(def)) { - return def._links; - } - else { - throw new Error("No metadata browse definition could be found for id '" + definitionID + "'"); - } - })); - }; -}; -/** - * Get the first occurrence of an object within a paginated list - */ -export var getFirstOccurrence = function () { - return function (source) { - return source.pipe(map(function (rd) { return Object.assign(rd, { payload: rd.payload.page.length > 0 ? rd.payload.page[0] : undefined }); })); - }; -}; -//# sourceMappingURL=operators.js.map \ No newline at end of file diff --git a/src/app/core/shared/operators.js.map b/src/app/core/shared/operators.js.map deleted file mode 100644 index dfb16c246f..0000000000 --- a/src/app/core/shared/operators.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"operators.js","sourceRoot":"","sources":["operators.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/shared/page-info.model.js b/src/app/core/shared/page-info.model.js deleted file mode 100644 index af6158995b..0000000000 --- a/src/app/core/shared/page-info.model.js +++ /dev/null @@ -1,48 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs } from 'cerialize'; -/** - * Represents the state of a paginated response - */ -var PageInfo = /** @class */ (function () { - function PageInfo() { - } - tslib_1.__decorate([ - autoserializeAs(Number, 'size'), - tslib_1.__metadata("design:type", Number) - ], PageInfo.prototype, "elementsPerPage", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], PageInfo.prototype, "totalElements", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Number) - ], PageInfo.prototype, "totalPages", void 0); - tslib_1.__decorate([ - autoserializeAs(Number, 'number'), - tslib_1.__metadata("design:type", Number) - ], PageInfo.prototype, "currentPage", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], PageInfo.prototype, "last", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], PageInfo.prototype, "next", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], PageInfo.prototype, "prev", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], PageInfo.prototype, "first", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], PageInfo.prototype, "self", void 0); - return PageInfo; -}()); -export { PageInfo }; -//# sourceMappingURL=page-info.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/page-info.model.js.map b/src/app/core/shared/page-info.model.js.map deleted file mode 100644 index 53aca86049..0000000000 --- a/src/app/core/shared/page-info.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"page-info.model.js","sourceRoot":"","sources":["page-info.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE3D;;GAEG;AACH;IAAA;IAuCA,CAAC;IAlCC;QADC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;;qDACR;IAMxB;QADC,aAAa;;mDACQ;IAMtB;QADC,aAAa;;gDACK;IAMnB;QADC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC;;iDACd;IAGpB;QADC,aAAa;;0CACD;IAGb;QADC,aAAa;;0CACD;IAGb;QADC,aAAa;;0CACD;IAGb;QADC,aAAa;;2CACA;IAGd;QADC,aAAa;;0CACD;IACf,eAAC;CAAA,AAvCD,IAuCC;SAvCY,QAAQ"} \ No newline at end of file diff --git a/src/app/core/shared/resource-policy.model.js b/src/app/core/shared/resource-policy.model.js deleted file mode 100644 index 8e896c4d7b..0000000000 --- a/src/app/core/shared/resource-policy.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Model class for a Resource Policy - */ -var ResourcePolicy = /** @class */ (function () { - function ResourcePolicy() { - } - return ResourcePolicy; -}()); -export { ResourcePolicy }; -//# sourceMappingURL=resource-policy.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/resource-policy.model.js.map b/src/app/core/shared/resource-policy.model.js.map deleted file mode 100644 index 1831562283..0000000000 --- a/src/app/core/shared/resource-policy.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"resource-policy.model.js","sourceRoot":"","sources":["resource-policy.model.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH;IAAA;IA+BA,CAAC;IAAD,qBAAC;AAAD,CAAC,AA/BD,IA+BC"} \ No newline at end of file diff --git a/src/app/core/shared/resource-type.js b/src/app/core/shared/resource-type.js deleted file mode 100644 index 2eba7cecb6..0000000000 --- a/src/app/core/shared/resource-type.js +++ /dev/null @@ -1,30 +0,0 @@ -export var ResourceType; -(function (ResourceType) { - ResourceType["DSpaceObject"] = "dspaceobject"; - ResourceType["Bundle"] = "bundle"; - ResourceType["Bitstream"] = "bitstream"; - ResourceType["BitstreamFormat"] = "bitstreamformat"; - ResourceType["Item"] = "item"; - ResourceType["Collection"] = "collection"; - ResourceType["Community"] = "community"; - ResourceType["EPerson"] = "eperson"; - ResourceType["Group"] = "group"; - ResourceType["ResourcePolicy"] = "resourcePolicy"; - ResourceType["MetadataSchema"] = "metadataschema"; - ResourceType["MetadataField"] = "metadatafield"; - ResourceType["Relationship"] = "relationship"; - ResourceType["RelationshipType"] = "relationshiptype"; - ResourceType["ItemType"] = "entitytype"; - ResourceType["License"] = "license"; - ResourceType["Workflowitem"] = "workflowitem"; - ResourceType["Workspaceitem"] = "workspaceitem"; - ResourceType["SubmissionDefinitions"] = "submissiondefinitions"; - ResourceType["SubmissionDefinition"] = "submissiondefinition"; - ResourceType["SubmissionForm"] = "submissionform"; - ResourceType["SubmissionForms"] = "submissionforms"; - ResourceType["SubmissionSections"] = "submissionsections"; - ResourceType["SubmissionSection"] = "submissionsection"; - ResourceType["ClaimedTask"] = "claimedtask"; - ResourceType["PoolTask"] = "pooltask"; -})(ResourceType || (ResourceType = {})); -//# sourceMappingURL=resource-type.js.map \ No newline at end of file diff --git a/src/app/core/shared/resource-type.js.map b/src/app/core/shared/resource-type.js.map deleted file mode 100644 index 22474f21ea..0000000000 --- a/src/app/core/shared/resource-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"resource-type.js","sourceRoot":"","sources":["resource-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,YA2BX;AA3BD,WAAY,YAAY;IACtB,6CAA6B,CAAA;IAC7B,iCAAiB,CAAA;IACjB,uCAAuB,CAAA;IACvB,mDAAmC,CAAA;IACnC,6BAAa,CAAA;IACb,yCAAyB,CAAA;IACzB,uCAAuB,CAAA;IACvB,mCAAmB,CAAA;IACnB,+BAAe,CAAA;IACf,iDAAiC,CAAA;IACjC,iDAAiC,CAAA;IACjC,+CAA+B,CAAA;IAC/B,6CAA6B,CAAA;IAC7B,qDAAqC,CAAA;IACrC,uCAAuB,CAAA;IACvB,mCAAmB,CAAA;IACnB,6CAA6B,CAAA;IAC7B,+CAA+B,CAAA;IAC/B,+DAA+C,CAAA;IAC/C,6DAA6C,CAAA;IAC7C,iDAAiC,CAAA;IACjC,mDAAmC,CAAA;IACnC,yDAAyC,CAAA;IACzC,uDAAuC,CAAA;IACvC,2CAA2B,CAAA;IAC3B,qCAAqB,CAAA;AACvB,CAAC,EA3BW,YAAY,KAAZ,YAAY,QA2BvB"} \ No newline at end of file diff --git a/src/app/core/shared/sort-option.model.js b/src/app/core/shared/sort-option.model.js deleted file mode 100644 index 28fd01f333..0000000000 --- a/src/app/core/shared/sort-option.model.js +++ /dev/null @@ -1,17 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize } from 'cerialize'; -var SortOption = /** @class */ (function () { - function SortOption() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SortOption.prototype, "name", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], SortOption.prototype, "metadata", void 0); - return SortOption; -}()); -export { SortOption }; -//# sourceMappingURL=sort-option.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/sort-option.model.js.map b/src/app/core/shared/sort-option.model.js.map deleted file mode 100644 index 9cc1c2ab26..0000000000 --- a/src/app/core/shared/sort-option.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sort-option.model.js","sourceRoot":"","sources":["sort-option.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C;IAAA;IAMA,CAAC;IAJC;QADC,aAAa;;4CACD;IAGb;QADC,aAAa;;gDACG;IACnB,iBAAC;CAAA,AAND,IAMC;SANY,UAAU"} \ No newline at end of file diff --git a/src/app/core/shared/submit-data-response-definition.model.js b/src/app/core/shared/submit-data-response-definition.model.js deleted file mode 100644 index 2b7715c9be..0000000000 --- a/src/app/core/shared/submit-data-response-definition.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=submit-data-response-definition.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/submit-data-response-definition.model.js.map b/src/app/core/shared/submit-data-response-definition.model.js.map deleted file mode 100644 index 3f64e805e5..0000000000 --- a/src/app/core/shared/submit-data-response-definition.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submit-data-response-definition.model.js","sourceRoot":"","sources":["submit-data-response-definition.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/shared/uuid.service.js b/src/app/core/shared/uuid.service.js deleted file mode 100644 index 0d22b513a8..0000000000 --- a/src/app/core/shared/uuid.service.js +++ /dev/null @@ -1,16 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import * as uuidv4 from 'uuid/v4'; -var UUIDService = /** @class */ (function () { - function UUIDService() { - } - UUIDService.prototype.generate = function () { - return uuidv4(); - }; - UUIDService = tslib_1.__decorate([ - Injectable() - ], UUIDService); - return UUIDService; -}()); -export { UUIDService }; -//# sourceMappingURL=uuid.service.js.map \ No newline at end of file diff --git a/src/app/core/shared/uuid.service.js.map b/src/app/core/shared/uuid.service.js.map deleted file mode 100644 index d82c081412..0000000000 --- a/src/app/core/shared/uuid.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"uuid.service.js","sourceRoot":"","sources":["uuid.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAGlC;IAAA;IAIA,CAAC;IAHC,8BAAQ,GAAR;QACE,OAAO,MAAM,EAAE,CAAC;IAClB,CAAC;IAHU,WAAW;QADvB,UAAU,EAAE;OACA,WAAW,CAIvB;IAAD,kBAAC;CAAA,AAJD,IAIC;SAJY,WAAW"} \ No newline at end of file diff --git a/src/app/core/shared/view-mode.model.js b/src/app/core/shared/view-mode.model.js deleted file mode 100644 index c56238b365..0000000000 --- a/src/app/core/shared/view-mode.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * This enumeration represents all possible ways of representing a group of objects in the UI - */ -export var ViewMode; -(function (ViewMode) { - ViewMode["List"] = "list"; - ViewMode["Grid"] = "grid"; - ViewMode["Detail"] = "detail"; -})(ViewMode || (ViewMode = {})); -//# sourceMappingURL=view-mode.model.js.map \ No newline at end of file diff --git a/src/app/core/shared/view-mode.model.js.map b/src/app/core/shared/view-mode.model.js.map deleted file mode 100644 index 180e03558a..0000000000 --- a/src/app/core/shared/view-mode.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"view-mode.model.js","sourceRoot":"","sources":["view-mode.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,6BAAiB,CAAA;AACnB,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB"} \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-submission-object.model.js b/src/app/core/submission/models/normalized-submission-object.model.js deleted file mode 100644 index a30fd59c35..0000000000 --- a/src/app/core/submission/models/normalized-submission-object.model.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, autoserializeAs, inheritSerialization } from 'cerialize'; -import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; -import { WorkspaceitemSectionsObject } from './workspaceitem-sections.model'; -/** - * An abstract model class for a NormalizedSubmissionObject. - */ -var NormalizedSubmissionObject = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedSubmissionObject, _super); - function NormalizedSubmissionObject() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedSubmissionObject.prototype, "id", void 0); - tslib_1.__decorate([ - autoserializeAs(String, 'id'), - tslib_1.__metadata("design:type", String) - ], NormalizedSubmissionObject.prototype, "uuid", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Date) - ], NormalizedSubmissionObject.prototype, "lastModified", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", WorkspaceitemSectionsObject) - ], NormalizedSubmissionObject.prototype, "sections", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Array) - ], NormalizedSubmissionObject.prototype, "errors", void 0); - NormalizedSubmissionObject = tslib_1.__decorate([ - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedSubmissionObject); - return NormalizedSubmissionObject; -}(NormalizedDSpaceObject)); -export { NormalizedSubmissionObject }; -//# sourceMappingURL=normalized-submission-object.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-submission-object.model.js.map b/src/app/core/submission/models/normalized-submission-object.model.js.map deleted file mode 100644 index 9a3e3bc65d..0000000000 --- a/src/app/core/submission/models/normalized-submission-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-submission-object.model.js","sourceRoot":"","sources":["normalized-submission-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAI7E;;GAEG;AAEH;IAAwE,sDAAyB;IAAjG;;IA+BA,CAAC;IAzBC;QADC,aAAa;;0DACH;IAMX;QADC,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC;;4DACjB;IAMb;QADC,aAAa;0CACA,IAAI;oEAAC;IAMnB;QADC,aAAa;0CACJ,2BAA2B;gEAAC;IAMtC;QADC,aAAa;;8DACkB;IA9BrB,0BAA0B;QADtC,oBAAoB,CAAC,sBAAsB,CAAC;OAChC,0BAA0B,CA+BtC;IAAD,iCAAC;CAAA,AA/BD,CAAwE,sBAAsB,GA+B7F;SA/BY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-workflowitem.model.js b/src/app/core/submission/models/normalized-workflowitem.model.js deleted file mode 100644 index f75d0d41df..0000000000 --- a/src/app/core/submission/models/normalized-workflowitem.model.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { mapsTo, relationship } from '../../cache/builders/build-decorators'; -import { Workflowitem } from './workflowitem.model'; -import { NormalizedSubmissionObject } from './normalized-submission-object.model'; -import { ResourceType } from '../../shared/resource-type'; -/** - * An model class for a NormalizedWorkflowItem. - */ -var NormalizedWorkflowItem = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedWorkflowItem, _super); - function NormalizedWorkflowItem() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Collection, false), - tslib_1.__metadata("design:type", String) - ], NormalizedWorkflowItem.prototype, "collection", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Item, false), - tslib_1.__metadata("design:type", String) - ], NormalizedWorkflowItem.prototype, "item", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.SubmissionDefinition, false), - tslib_1.__metadata("design:type", String) - ], NormalizedWorkflowItem.prototype, "submissionDefinition", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.EPerson, false), - tslib_1.__metadata("design:type", String) - ], NormalizedWorkflowItem.prototype, "submitter", void 0); - NormalizedWorkflowItem = tslib_1.__decorate([ - mapsTo(Workflowitem), - inheritSerialization(NormalizedSubmissionObject) - ], NormalizedWorkflowItem); - return NormalizedWorkflowItem; -}(NormalizedSubmissionObject)); -export { NormalizedWorkflowItem }; -//# sourceMappingURL=normalized-workflowitem.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-workflowitem.model.js.map b/src/app/core/submission/models/normalized-workflowitem.model.js.map deleted file mode 100644 index 712c22d6f7..0000000000 --- a/src/app/core/submission/models/normalized-workflowitem.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-workflowitem.model.js","sourceRoot":"","sources":["normalized-workflowitem.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAA4C,kDAAwC;IAApF;;IA8BA,CAAC;IAvBC;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC;;8DAC1B;IAOnB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;;wDAC1B;IAOb;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,oBAAoB,EAAE,KAAK,CAAC;;wEAC1B;IAO7B;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;;6DACxB;IA5BP,sBAAsB;QAFlC,MAAM,CAAC,YAAY,CAAC;QACpB,oBAAoB,CAAC,0BAA0B,CAAC;OACpC,sBAAsB,CA8BlC;IAAD,6BAAC;CAAA,AA9BD,CAA4C,0BAA0B,GA8BrE;SA9BY,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-workspaceitem.model.js b/src/app/core/submission/models/normalized-workspaceitem.model.js deleted file mode 100644 index 99e722ea6b..0000000000 --- a/src/app/core/submission/models/normalized-workspaceitem.model.js +++ /dev/null @@ -1,44 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { Workspaceitem } from './workspaceitem.model'; -import { NormalizedSubmissionObject } from './normalized-submission-object.model'; -import { mapsTo, relationship } from '../../cache/builders/build-decorators'; -import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; -import { ResourceType } from '../../shared/resource-type'; -/** - * An model class for a NormalizedWorkspaceItem. - */ -var NormalizedWorkspaceItem = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedWorkspaceItem, _super); - function NormalizedWorkspaceItem() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Collection, false), - tslib_1.__metadata("design:type", String) - ], NormalizedWorkspaceItem.prototype, "collection", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Item, false), - tslib_1.__metadata("design:type", String) - ], NormalizedWorkspaceItem.prototype, "item", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.SubmissionDefinition, false), - tslib_1.__metadata("design:type", String) - ], NormalizedWorkspaceItem.prototype, "submissionDefinition", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.EPerson, false), - tslib_1.__metadata("design:type", String) - ], NormalizedWorkspaceItem.prototype, "submitter", void 0); - NormalizedWorkspaceItem = tslib_1.__decorate([ - mapsTo(Workspaceitem), - inheritSerialization(NormalizedDSpaceObject), - inheritSerialization(NormalizedSubmissionObject) - ], NormalizedWorkspaceItem); - return NormalizedWorkspaceItem; -}(NormalizedSubmissionObject)); -export { NormalizedWorkspaceItem }; -//# sourceMappingURL=normalized-workspaceitem.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/normalized-workspaceitem.model.js.map b/src/app/core/submission/models/normalized-workspaceitem.model.js.map deleted file mode 100644 index 259e7691cf..0000000000 --- a/src/app/core/submission/models/normalized-workspaceitem.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-workspaceitem.model.js","sourceRoot":"","sources":["normalized-workspaceitem.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D;;GAEG;AAIH;IAA6C,mDAAwC;IAArF;;IA6BA,CAAC;IAtBC;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC;;+DAC1B;IAOnB;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;;yDAC1B;IAOb;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,oBAAoB,EAAE,KAAK,CAAC;;yEAC1B;IAO7B;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;;8DACxB;IA5BP,uBAAuB;QAHnC,MAAM,CAAC,aAAa,CAAC;QACrB,oBAAoB,CAAC,sBAAsB,CAAC;QAC5C,oBAAoB,CAAC,0BAA0B,CAAC;OACpC,uBAAuB,CA6BnC;IAAD,8BAAC;CAAA,AA7BD,CAA6C,0BAA0B,GA6BtE;SA7BY,uBAAuB"} \ No newline at end of file diff --git a/src/app/core/submission/models/submission-object.model.js b/src/app/core/submission/models/submission-object.model.js deleted file mode 100644 index e1e60c5a14..0000000000 --- a/src/app/core/submission/models/submission-object.model.js +++ /dev/null @@ -1,14 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from '../../shared/dspace-object.model'; -/** - * An abstract model class for a SubmissionObject. - */ -var SubmissionObject = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionObject, _super); - function SubmissionObject() { - return _super !== null && _super.apply(this, arguments) || this; - } - return SubmissionObject; -}(DSpaceObject)); -export { SubmissionObject }; -//# sourceMappingURL=submission-object.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/submission-object.model.js.map b/src/app/core/submission/models/submission-object.model.js.map deleted file mode 100644 index 39f97f5d7a..0000000000 --- a/src/app/core/submission/models/submission-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-object.model.js","sourceRoot":"","sources":["submission-object.model.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAahE;;GAEG;AACH;IAA+C,4CAAY;IAA3D;;IA8CA,CAAC;IAAD,uBAAC;AAAD,CAAC,AA9CD,CAA+C,YAAY,GA8C1D"} \ No newline at end of file diff --git a/src/app/core/submission/models/submission-upload-file-access-condition.model.js b/src/app/core/submission/models/submission-upload-file-access-condition.model.js deleted file mode 100644 index d466644be2..0000000000 --- a/src/app/core/submission/models/submission-upload-file-access-condition.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * An interface to represent bitstream's access condition. - */ -var SubmissionUploadFileAccessConditionObject = /** @class */ (function () { - function SubmissionUploadFileAccessConditionObject() { - } - return SubmissionUploadFileAccessConditionObject; -}()); -export { SubmissionUploadFileAccessConditionObject }; -//# sourceMappingURL=submission-upload-file-access-condition.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/submission-upload-file-access-condition.model.js.map b/src/app/core/submission/models/submission-upload-file-access-condition.model.js.map deleted file mode 100644 index a0e0032701..0000000000 --- a/src/app/core/submission/models/submission-upload-file-access-condition.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-upload-file-access-condition.model.js","sourceRoot":"","sources":["submission-upload-file-access-condition.model.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;IAAA;IA0BA,CAAC;IAAD,gDAAC;AAAD,CAAC,AA1BD,IA0BC"} \ No newline at end of file diff --git a/src/app/core/submission/models/workflowitem.model.js b/src/app/core/submission/models/workflowitem.model.js deleted file mode 100644 index 2ddb44ad60..0000000000 --- a/src/app/core/submission/models/workflowitem.model.js +++ /dev/null @@ -1,14 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Workspaceitem } from './workspaceitem.model'; -/** - * A model class for a Workflowitem. - */ -var Workflowitem = /** @class */ (function (_super) { - tslib_1.__extends(Workflowitem, _super); - function Workflowitem() { - return _super !== null && _super.apply(this, arguments) || this; - } - return Workflowitem; -}(Workspaceitem)); -export { Workflowitem }; -//# sourceMappingURL=workflowitem.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workflowitem.model.js.map b/src/app/core/submission/models/workflowitem.model.js.map deleted file mode 100644 index 5105f5650d..0000000000 --- a/src/app/core/submission/models/workflowitem.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workflowitem.model.js","sourceRoot":"","sources":["workflowitem.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;GAEG;AACH;IAAkC,wCAAa;IAA/C;;IACA,CAAC;IAAD,mBAAC;AAAD,CAAC,AADD,CAAkC,aAAa,GAC9C"} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-form.model.js b/src/app/core/submission/models/workspaceitem-section-form.model.js deleted file mode 100644 index 8a73a48ef8..0000000000 --- a/src/app/core/submission/models/workspaceitem-section-form.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=workspaceitem-section-form.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-form.model.js.map b/src/app/core/submission/models/workspaceitem-section-form.model.js.map deleted file mode 100644 index 823e525b8b..0000000000 --- a/src/app/core/submission/models/workspaceitem-section-form.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-section-form.model.js","sourceRoot":"","sources":["workspaceitem-section-form.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-license.model.js b/src/app/core/submission/models/workspaceitem-section-license.model.js deleted file mode 100644 index 6e69b8cb5c..0000000000 --- a/src/app/core/submission/models/workspaceitem-section-license.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=workspaceitem-section-license.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-license.model.js.map b/src/app/core/submission/models/workspaceitem-section-license.model.js.map deleted file mode 100644 index 922351e245..0000000000 --- a/src/app/core/submission/models/workspaceitem-section-license.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-section-license.model.js","sourceRoot":"","sources":["workspaceitem-section-license.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-upload-file.model.js b/src/app/core/submission/models/workspaceitem-section-upload-file.model.js deleted file mode 100644 index 97d5062f8a..0000000000 --- a/src/app/core/submission/models/workspaceitem-section-upload-file.model.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * An interface to represent submission's upload section file entry. - */ -var WorkspaceitemSectionUploadFileObject = /** @class */ (function () { - function WorkspaceitemSectionUploadFileObject() { - } - return WorkspaceitemSectionUploadFileObject; -}()); -export { WorkspaceitemSectionUploadFileObject }; -//# sourceMappingURL=workspaceitem-section-upload-file.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-upload-file.model.js.map b/src/app/core/submission/models/workspaceitem-section-upload-file.model.js.map deleted file mode 100644 index 6f0c01bc80..0000000000 --- a/src/app/core/submission/models/workspaceitem-section-upload-file.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-section-upload-file.model.js","sourceRoot":"","sources":["workspaceitem-section-upload-file.model.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH;IAAA;IAuCA,CAAC;IAAD,2CAAC;AAAD,CAAC,AAvCD,IAuCC"} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-upload.model.js b/src/app/core/submission/models/workspaceitem-section-upload.model.js deleted file mode 100644 index 52836c66be..0000000000 --- a/src/app/core/submission/models/workspaceitem-section-upload.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=workspaceitem-section-upload.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-section-upload.model.js.map b/src/app/core/submission/models/workspaceitem-section-upload.model.js.map deleted file mode 100644 index 65f414c553..0000000000 --- a/src/app/core/submission/models/workspaceitem-section-upload.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-section-upload.model.js","sourceRoot":"","sources":["workspaceitem-section-upload.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-sections.model.js b/src/app/core/submission/models/workspaceitem-sections.model.js deleted file mode 100644 index 26f0ca8795..0000000000 --- a/src/app/core/submission/models/workspaceitem-sections.model.js +++ /dev/null @@ -1,11 +0,0 @@ -/** - * An interface to represent submission's section object. - * A map of section keys to an ordered list of WorkspaceitemSectionDataType objects. - */ -var WorkspaceitemSectionsObject = /** @class */ (function () { - function WorkspaceitemSectionsObject() { - } - return WorkspaceitemSectionsObject; -}()); -export { WorkspaceitemSectionsObject }; -//# sourceMappingURL=workspaceitem-sections.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem-sections.model.js.map b/src/app/core/submission/models/workspaceitem-sections.model.js.map deleted file mode 100644 index be362aef82..0000000000 --- a/src/app/core/submission/models/workspaceitem-sections.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-sections.model.js","sourceRoot":"","sources":["workspaceitem-sections.model.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH;IAAA;IAEA,CAAC;IAAD,kCAAC;AAAD,CAAC,AAFD,IAEC"} \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem.model.js b/src/app/core/submission/models/workspaceitem.model.js deleted file mode 100644 index 42734e3856..0000000000 --- a/src/app/core/submission/models/workspaceitem.model.js +++ /dev/null @@ -1,14 +0,0 @@ -import * as tslib_1 from "tslib"; -import { SubmissionObject } from './submission-object.model'; -/** - * A model class for a Workspaceitem. - */ -var Workspaceitem = /** @class */ (function (_super) { - tslib_1.__extends(Workspaceitem, _super); - function Workspaceitem() { - return _super !== null && _super.apply(this, arguments) || this; - } - return Workspaceitem; -}(SubmissionObject)); -export { Workspaceitem }; -//# sourceMappingURL=workspaceitem.model.js.map \ No newline at end of file diff --git a/src/app/core/submission/models/workspaceitem.model.js.map b/src/app/core/submission/models/workspaceitem.model.js.map deleted file mode 100644 index 799705d1ea..0000000000 --- a/src/app/core/submission/models/workspaceitem.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem.model.js","sourceRoot":"","sources":["workspaceitem.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;GAEG;AACH;IAAmC,yCAAgB;IAAnD;;IAEA,CAAC;IAAD,oBAAC;AAAD,CAAC,AAFD,CAAmC,gBAAgB,GAElD"} \ No newline at end of file diff --git a/src/app/core/submission/submission-json-patch-operations.service.js b/src/app/core/submission/submission-json-patch-operations.service.js deleted file mode 100644 index ffad1ab7d4..0000000000 --- a/src/app/core/submission/submission-json-patch-operations.service.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Store } from '@ngrx/store'; -import { RequestService } from '../data/request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { JsonPatchOperationsService } from '../json-patch/json-patch-operations.service'; -import { SubmissionPatchRequest } from '../data/request.models'; -/** - * A service that provides methods to make JSON Patch requests. - */ -var SubmissionJsonPatchOperationsService = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionJsonPatchOperationsService, _super); - function SubmissionJsonPatchOperationsService(requestService, store, halService) { - var _this = _super.call(this) || this; - _this.requestService = requestService; - _this.store = store; - _this.halService = halService; - _this.linkPath = ''; - _this.patchRequestConstructor = SubmissionPatchRequest; - return _this; - } - SubmissionJsonPatchOperationsService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - Store, - HALEndpointService]) - ], SubmissionJsonPatchOperationsService); - return SubmissionJsonPatchOperationsService; -}(JsonPatchOperationsService)); -export { SubmissionJsonPatchOperationsService }; -//# sourceMappingURL=submission-json-patch-operations.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-json-patch-operations.service.js.map b/src/app/core/submission/submission-json-patch-operations.service.js.map deleted file mode 100644 index 67f351bcc7..0000000000 --- a/src/app/core/submission/submission-json-patch-operations.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-json-patch-operations.service.js","sourceRoot":"","sources":["submission-json-patch-operations.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAEzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAGhE;;GAEG;AAEH;IAA0D,gEAAsF;IAI9I,8CACY,cAA8B,EAC9B,KAAuB,EACvB,UAA8B;QAH1C,YAKE,iBAAO,SACR;QALW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,WAAK,GAAL,KAAK,CAAkB;QACvB,gBAAU,GAAV,UAAU,CAAoB;QANhC,cAAQ,GAAG,EAAE,CAAC;QACd,6BAAuB,GAAG,sBAAsB,CAAC;;IAQ3D,CAAC;IAVU,oCAAoC;QADhD,UAAU,EAAE;iDAMiB,cAAc;YACvB,KAAK;YACA,kBAAkB;OAP/B,oCAAoC,CAYhD;IAAD,2CAAC;CAAA,AAZD,CAA0D,0BAA0B,GAYnF;SAZY,oCAAoC"} \ No newline at end of file diff --git a/src/app/core/submission/submission-resource-type.js b/src/app/core/submission/submission-resource-type.js deleted file mode 100644 index ea0d9e2e19..0000000000 --- a/src/app/core/submission/submission-resource-type.js +++ /dev/null @@ -1,23 +0,0 @@ -export var SubmissionResourceType; -(function (SubmissionResourceType) { - SubmissionResourceType["Bundle"] = "bundle"; - SubmissionResourceType["Bitstream"] = "bitstream"; - SubmissionResourceType["BitstreamFormat"] = "bitstreamformat"; - SubmissionResourceType["Item"] = "item"; - SubmissionResourceType["Collection"] = "collection"; - SubmissionResourceType["Community"] = "community"; - SubmissionResourceType["ResourcePolicy"] = "resourcePolicy"; - SubmissionResourceType["License"] = "license"; - SubmissionResourceType["EPerson"] = "eperson"; - SubmissionResourceType["Group"] = "group"; - SubmissionResourceType["WorkspaceItem"] = "workspaceitem"; - SubmissionResourceType["WorkflowItem"] = "workflowitem"; - SubmissionResourceType["SubmissionDefinitions"] = "submissiondefinitions"; - SubmissionResourceType["SubmissionDefinition"] = "submissiondefinition"; - SubmissionResourceType["SubmissionForm"] = "submissionform"; - SubmissionResourceType["SubmissionForms"] = "submissionforms"; - SubmissionResourceType["SubmissionSections"] = "submissionsections"; - SubmissionResourceType["SubmissionSection"] = "submissionsection"; - SubmissionResourceType["Authority"] = "authority"; -})(SubmissionResourceType || (SubmissionResourceType = {})); -//# sourceMappingURL=submission-resource-type.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-resource-type.js.map b/src/app/core/submission/submission-resource-type.js.map deleted file mode 100644 index a3b43d393e..0000000000 --- a/src/app/core/submission/submission-resource-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-resource-type.js","sourceRoot":"","sources":["submission-resource-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,sBAoBX;AApBD,WAAY,sBAAsB;IAChC,2CAAiB,CAAA;IACjB,iDAAuB,CAAA;IACvB,6DAAmC,CAAA;IACnC,uCAAa,CAAA;IACb,mDAAyB,CAAA;IACzB,iDAAuB,CAAA;IACvB,2DAAiC,CAAA;IACjC,6CAAmB,CAAA;IACnB,6CAAmB,CAAA;IACnB,yCAAe,CAAA;IACf,yDAA+B,CAAA;IAC/B,uDAA6B,CAAA;IAC7B,yEAA+C,CAAA;IAC/C,uEAA6C,CAAA;IAC7C,2DAAiC,CAAA;IACjC,6DAAmC,CAAA;IACnC,mEAAyC,CAAA;IACzC,iEAAuC,CAAA;IACvC,iDAAuB,CAAA;AACzB,CAAC,EApBW,sBAAsB,KAAtB,sBAAsB,QAoBjC"} \ No newline at end of file diff --git a/src/app/core/submission/submission-response-parsing.service.js b/src/app/core/submission/submission-response-parsing.service.js deleted file mode 100644 index 002dbc3b38..0000000000 --- a/src/app/core/submission/submission-response-parsing.service.js +++ /dev/null @@ -1,150 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { ErrorResponse, SubmissionSuccessResponse } from '../cache/response.models'; -import { isEmpty, isNotEmpty, isNotNull } from '../../shared/empty.util'; -import { BaseResponseParsingService } from '../data/base-response-parsing.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { NormalizedWorkspaceItem } from './models/normalized-workspaceitem.model'; -import { NormalizedWorkflowItem } from './models/normalized-workflowitem.model'; -import { FormFieldMetadataValueObject } from '../../shared/form/builder/models/form-field-metadata-value.model'; -import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; -/** - * Export a function to check if object has same properties of FormFieldMetadataValueObject - * - * @param obj - */ -export function isServerFormValue(obj) { - return (typeof obj === 'object' - && obj.hasOwnProperty('value') - && obj.hasOwnProperty('language') - && obj.hasOwnProperty('authority') - && obj.hasOwnProperty('confidence')); -} -/** - * Export a function to normalize sections object of the server response - * - * @param obj - * @param objIndex - */ -export function normalizeSectionData(obj, objIndex) { - var result = obj; - if (isNotNull(obj)) { - // If is an Instance of FormFieldMetadataValueObject normalize it - if (typeof obj === 'object' && isServerFormValue(obj)) { - // If authority property is set normalize as a FormFieldMetadataValueObject object - /* NOTE: Data received from server could have authority property equal to null, but into form - field's model is required a FormFieldMetadataValueObject object as field value, so instantiate it */ - result = new FormFieldMetadataValueObject(obj.value, obj.language, obj.authority, (obj.display || obj.value), obj.place || objIndex, obj.confidence, obj.otherInformation); - } - else if (Array.isArray(obj)) { - result = []; - obj.forEach(function (item, index) { - result[index] = normalizeSectionData(item, index); - }); - } - else if (typeof obj === 'object') { - result = Object.create({}); - Object.keys(obj) - .forEach(function (key) { - result[key] = normalizeSectionData(obj[key]); - }); - } - } - return result; -} -/** - * Provides methods to parse response for a submission request. - */ -var SubmissionResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionResponseParsingService, _super); - function SubmissionResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = NormalizedObjectFactory; - _this.toCache = false; - return _this; - } - /** - * Parses data from the workspaceitems/workflowitems endpoints - * - * @param {RestRequest} request - * @param {DSpaceRESTV2Response} data - * @returns {RestResponse} - */ - SubmissionResponseParsingService.prototype.parse = function (request, data) { - if (isNotEmpty(data.payload) - && isNotEmpty(data.payload._links) - && this.isSuccessStatus(data.statusCode)) { - var dataDefinition = this.processResponse(data.payload, request.href); - return new SubmissionSuccessResponse(dataDefinition, data.statusCode, data.statusText, this.processPageInfo(data.payload)); - } - else if (isEmpty(data.payload) && this.isSuccessStatus(data.statusCode)) { - return new SubmissionSuccessResponse(null, data.statusCode, data.statusText); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from server'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - /** - * Parses response and normalize it - * - * @param {DSpaceRESTV2Response} data - * @param {string} requestHref - * @returns {any[]} - */ - SubmissionResponseParsingService.prototype.processResponse = function (data, requestHref) { - var dataDefinition = this.process(data, requestHref); - var normalizedDefinition = Array.of(); - var processedList = Array.isArray(dataDefinition) ? dataDefinition : Array.of(dataDefinition); - processedList.forEach(function (item) { - var normalizedItem = Object.assign({}, item); - // In case data is an Instance of NormalizedWorkspaceItem normalize field value of all the section of type form - if (item instanceof NormalizedWorkspaceItem - || item instanceof NormalizedWorkflowItem) { - if (item.sections) { - var precessedSection_1 = Object.create({}); - // Iterate over all workspaceitem's sections - Object.keys(item.sections) - .forEach(function (sectionId) { - if (typeof item.sections[sectionId] === 'object' && isNotEmpty(item.sections[sectionId])) { - var normalizedSectionData_1 = Object.create({}); - // Iterate over all sections property - Object.keys(item.sections[sectionId]) - .forEach(function (metdadataId) { - var entry = item.sections[sectionId][metdadataId]; - // If entry is not an array, for sure is not a section of type form - if (Array.isArray(entry)) { - normalizedSectionData_1[metdadataId] = []; - entry.forEach(function (valueItem, index) { - // Parse value and normalize it - var normValue = normalizeSectionData(valueItem, index); - if (isNotEmpty(normValue)) { - normalizedSectionData_1[metdadataId].push(normValue); - } - }); - } - else { - normalizedSectionData_1[metdadataId] = entry; - } - }); - precessedSection_1[sectionId] = normalizedSectionData_1; - } - }); - normalizedItem = Object.assign({}, item, { sections: precessedSection_1 }); - } - } - normalizedDefinition.push(normalizedItem); - }); - return normalizedDefinition; - }; - SubmissionResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], SubmissionResponseParsingService); - return SubmissionResponseParsingService; -}(BaseResponseParsingService)); -export { SubmissionResponseParsingService }; -//# sourceMappingURL=submission-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-response-parsing.service.js.map b/src/app/core/submission/submission-response-parsing.service.js.map deleted file mode 100644 index 02a7e9b250..0000000000 --- a/src/app/core/submission/submission-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-response-parsing.service.js","sourceRoot":"","sources":["submission-response-parsing.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/submission/submission-rest.service.js b/src/app/core/submission/submission-rest.service.js deleted file mode 100644 index 50e12f99b3..0000000000 --- a/src/app/core/submission/submission-rest.service.js +++ /dev/null @@ -1,121 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { merge as observableMerge, throwError as observableThrowError } from 'rxjs'; -import { distinctUntilChanged, filter, flatMap, map, mergeMap, tap } from 'rxjs/operators'; -import { RequestService } from '../data/request.service'; -import { isNotEmpty } from '../../shared/empty.util'; -import { SubmissionDeleteRequest, SubmissionPatchRequest, SubmissionPostRequest, SubmissionRequest } from '../data/request.models'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { getResponseFromEntry } from '../shared/operators'; -/** - * The service handling all submission REST requests - */ -var SubmissionRestService = /** @class */ (function () { - function SubmissionRestService(rdbService, requestService, halService) { - this.rdbService = rdbService; - this.requestService = requestService; - this.halService = halService; - this.linkPath = 'workspaceitems'; - } - /** - * Fetch a RestRequest - * - * @param requestId - * The base endpoint for the type of object - * @return Observable - * server response - */ - SubmissionRestService.prototype.fetchRequest = function (requestId) { - var responses = this.requestService.getByUUID(requestId).pipe(getResponseFromEntry()); - var errorResponses = responses.pipe(filter(function (response) { return !response.isSuccessful; }), mergeMap(function (error) { return observableThrowError(error); })); - var successResponses = responses.pipe(filter(function (response) { return response.isSuccessful; }), map(function (response) { return response.dataDefinition; }), distinctUntilChanged()); - return observableMerge(errorResponses, successResponses); - }; - /** - * Create the HREF for a specific submission object based on its identifier - * - * @param endpoint - * The base endpoint for the type of object - * @param resourceID - * The identifier for the object - */ - SubmissionRestService.prototype.getEndpointByIDHref = function (endpoint, resourceID) { - return isNotEmpty(resourceID) ? endpoint + "/" + resourceID : "" + endpoint; - }; - /** - * Delete an existing submission Object on the server - * - * @param scopeId - * The submission Object to be removed - * @param linkName - * The endpoint link name - * @return Observable - * server response - */ - SubmissionRestService.prototype.deleteById = function (scopeId, linkName) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - return this.halService.getEndpoint(linkName || this.linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), map(function (endpointURL) { return new SubmissionDeleteRequest(requestId, endpointURL); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function () { return _this.fetchRequest(requestId); }), distinctUntilChanged()); - }; - /** - * Return an existing submission Object from the server - * - * @param linkName - * The endpoint link name - * @param id - * The submission Object to retrieve - * @return Observable - * server response - */ - SubmissionRestService.prototype.getDataById = function (linkName, id) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - return this.halService.getEndpoint(linkName).pipe(map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, id); }), filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return new SubmissionRequest(requestId, endpointURL); }), tap(function (request) { return _this.requestService.configure(request, true); }), flatMap(function () { return _this.fetchRequest(requestId); }), distinctUntilChanged()); - }; - /** - * Make a new post request - * - * @param linkName - * The endpoint link name - * @param body - * The post request body - * @param scopeId - * The submission Object id - * @param options - * The [HttpOptions] object - * @return Observable - * server response - */ - SubmissionRestService.prototype.postToEndpoint = function (linkName, body, scopeId, options) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - return this.halService.getEndpoint(linkName).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), distinctUntilChanged(), map(function (endpointURL) { return new SubmissionPostRequest(requestId, endpointURL, body, options); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function () { return _this.fetchRequest(requestId); }), distinctUntilChanged()); - }; - /** - * Make a new patch to a specified object - * - * @param linkName - * The endpoint link name - * @param body - * The post request body - * @param scopeId - * The submission Object id - * @return Observable - * server response - */ - SubmissionRestService.prototype.patchToEndpoint = function (linkName, body, scopeId) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - return this.halService.getEndpoint(linkName).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), distinctUntilChanged(), map(function (endpointURL) { return new SubmissionPatchRequest(requestId, endpointURL, body); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function () { return _this.fetchRequest(requestId); }), distinctUntilChanged()); - }; - SubmissionRestService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RemoteDataBuildService, - RequestService, - HALEndpointService]) - ], SubmissionRestService); - return SubmissionRestService; -}()); -export { SubmissionRestService }; -//# sourceMappingURL=submission-rest.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-rest.service.js.map b/src/app/core/submission/submission-rest.service.js.map deleted file mode 100644 index 5be3262b87..0000000000 --- a/src/app/core/submission/submission-rest.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-rest.service.js","sourceRoot":"","sources":["submission-rest.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/submission/submission-scope-type.js b/src/app/core/submission/submission-scope-type.js deleted file mode 100644 index 93eb6385d8..0000000000 --- a/src/app/core/submission/submission-scope-type.js +++ /dev/null @@ -1,6 +0,0 @@ -export var SubmissionScopeType; -(function (SubmissionScopeType) { - SubmissionScopeType["WorkspaceItem"] = "WORKSPACE"; - SubmissionScopeType["WorkflowItem"] = "WORKFLOW"; -})(SubmissionScopeType || (SubmissionScopeType = {})); -//# sourceMappingURL=submission-scope-type.js.map \ No newline at end of file diff --git a/src/app/core/submission/submission-scope-type.js.map b/src/app/core/submission/submission-scope-type.js.map deleted file mode 100644 index d1025182f8..0000000000 --- a/src/app/core/submission/submission-scope-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-scope-type.js","sourceRoot":"","sources":["submission-scope-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,kDAA2B,CAAA;IAC3B,gDAAyB,CAAA;AAC3B,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,QAG9B"} \ No newline at end of file diff --git a/src/app/core/submission/workflowitem-data.service.js b/src/app/core/submission/workflowitem-data.service.js deleted file mode 100644 index 5a73b3b377..0000000000 --- a/src/app/core/submission/workflowitem-data.service.js +++ /dev/null @@ -1,51 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -import { Store } from '@ngrx/store'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { DataService } from '../data/data.service'; -import { RequestService } from '../data/request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; -/** - * A service that provides methods to make REST requests with workflowitems endpoint. - */ -var WorkflowitemDataService = /** @class */ (function (_super) { - tslib_1.__extends(WorkflowitemDataService, _super); - function WorkflowitemDataService(comparator, dataBuildService, halService, http, notificationsService, requestService, rdbService, objectCache, store) { - var _this = _super.call(this) || this; - _this.comparator = comparator; - _this.dataBuildService = dataBuildService; - _this.halService = halService; - _this.http = http; - _this.notificationsService = notificationsService; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.objectCache = objectCache; - _this.store = store; - _this.linkPath = 'workflowitems'; - _this.forceBypassCache = true; - return _this; - } - WorkflowitemDataService.prototype.getBrowseEndpoint = function (options) { - return this.halService.getEndpoint(this.linkPath); - }; - WorkflowitemDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSOChangeAnalyzer, - NormalizedObjectBuildService, - HALEndpointService, - HttpClient, - NotificationsService, - RequestService, - RemoteDataBuildService, - ObjectCacheService, - Store]) - ], WorkflowitemDataService); - return WorkflowitemDataService; -}(DataService)); -export { WorkflowitemDataService }; -//# sourceMappingURL=workflowitem-data.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/workflowitem-data.service.js.map b/src/app/core/submission/workflowitem-data.service.js.map deleted file mode 100644 index e9d7ac746b..0000000000 --- a/src/app/core/submission/workflowitem-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workflowitem-data.service.js","sourceRoot":"","sources":["workflowitem-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE;;GAEG;AAEH;IAA6C,mDAAyB;IAIpE,iCACY,UAA2C,EAC3C,gBAA8C,EAC9C,UAA8B,EAC9B,IAAgB,EAChB,oBAA0C,EAC1C,cAA8B,EAC9B,UAAkC,EAClC,WAA+B,EAC/B,KAAuB;QATnC,YAUE,iBAAO,SACR;QAVW,gBAAU,GAAV,UAAU,CAAiC;QAC3C,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,gBAAU,GAAV,UAAU,CAAoB;QAC9B,UAAI,GAAJ,IAAI,CAAY;QAChB,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,iBAAW,GAAX,WAAW,CAAoB;QAC/B,WAAK,GAAL,KAAK,CAAkB;QAZzB,cAAQ,GAAG,eAAe,CAAC;QAC3B,sBAAgB,GAAG,IAAI,CAAC;;IAalC,CAAC;IAEM,mDAAiB,GAAxB,UAAyB,OAAuB;QAC9C,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAnBU,uBAAuB;QADnC,UAAU,EAAE;iDAMa,iBAAiB;YACX,4BAA4B;YAClC,kBAAkB;YACxB,UAAU;YACM,oBAAoB;YAC1B,cAAc;YAClB,sBAAsB;YACrB,kBAAkB;YACxB,KAAK;OAbb,uBAAuB,CAqBnC;IAAD,8BAAC;CAAA,AArBD,CAA6C,WAAW,GAqBvD;SArBY,uBAAuB"} \ No newline at end of file diff --git a/src/app/core/submission/workspaceitem-data.service.js b/src/app/core/submission/workspaceitem-data.service.js deleted file mode 100644 index f36c51985e..0000000000 --- a/src/app/core/submission/workspaceitem-data.service.js +++ /dev/null @@ -1,51 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -import { Store } from '@ngrx/store'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { DataService } from '../data/data.service'; -import { RequestService } from '../data/request.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; -/** - * A service that provides methods to make REST requests with workspaceitems endpoint. - */ -var WorkspaceitemDataService = /** @class */ (function (_super) { - tslib_1.__extends(WorkspaceitemDataService, _super); - function WorkspaceitemDataService(comparator, dataBuildService, halService, http, notificationsService, requestService, rdbService, objectCache, store) { - var _this = _super.call(this) || this; - _this.comparator = comparator; - _this.dataBuildService = dataBuildService; - _this.halService = halService; - _this.http = http; - _this.notificationsService = notificationsService; - _this.requestService = requestService; - _this.rdbService = rdbService; - _this.objectCache = objectCache; - _this.store = store; - _this.linkPath = 'workspaceitems'; - _this.forceBypassCache = true; - return _this; - } - WorkspaceitemDataService.prototype.getBrowseEndpoint = function (options) { - return this.halService.getEndpoint(this.linkPath); - }; - WorkspaceitemDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [DSOChangeAnalyzer, - NormalizedObjectBuildService, - HALEndpointService, - HttpClient, - NotificationsService, - RequestService, - RemoteDataBuildService, - ObjectCacheService, - Store]) - ], WorkspaceitemDataService); - return WorkspaceitemDataService; -}(DataService)); -export { WorkspaceitemDataService }; -//# sourceMappingURL=workspaceitem-data.service.js.map \ No newline at end of file diff --git a/src/app/core/submission/workspaceitem-data.service.js.map b/src/app/core/submission/workspaceitem-data.service.js.map deleted file mode 100644 index 3056aae1a3..0000000000 --- a/src/app/core/submission/workspaceitem-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-data.service.js","sourceRoot":"","sources":["workspaceitem-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE;;GAEG;AAEH;IAA8C,oDAA0B;IAItE,kCACY,UAA4C,EAC5C,gBAA8C,EAC9C,UAA8B,EAC9B,IAAgB,EAChB,oBAA0C,EAC1C,cAA8B,EAC9B,UAAkC,EAClC,WAA+B,EAC/B,KAAuB;QATnC,YAUE,iBAAO,SACR;QAVW,gBAAU,GAAV,UAAU,CAAkC;QAC5C,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,gBAAU,GAAV,UAAU,CAAoB;QAC9B,UAAI,GAAJ,IAAI,CAAY;QAChB,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,iBAAW,GAAX,WAAW,CAAoB;QAC/B,WAAK,GAAL,KAAK,CAAkB;QAZzB,cAAQ,GAAG,gBAAgB,CAAC;QAC5B,sBAAgB,GAAG,IAAI,CAAC;;IAalC,CAAC;IAEM,oDAAiB,GAAxB,UAAyB,OAAuB;QAC9C,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAnBU,wBAAwB;QADpC,UAAU,EAAE;iDAMa,iBAAiB;YACX,4BAA4B;YAClC,kBAAkB;YACxB,UAAU;YACM,oBAAoB;YAC1B,cAAc;YAClB,sBAAsB;YACrB,kBAAkB;YACxB,KAAK;OAbb,wBAAwB,CAqBpC;IAAD,+BAAC;CAAA,AArBD,CAA8C,WAAW,GAqBxD;SArBY,wBAAwB"} \ No newline at end of file diff --git a/src/app/core/tasks/claimed-task-data.service.js b/src/app/core/tasks/claimed-task-data.service.js deleted file mode 100644 index 0f77d2fd65..0000000000 --- a/src/app/core/tasks/claimed-task-data.service.js +++ /dev/null @@ -1,109 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -import { Store } from '@ngrx/store'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { RequestService } from '../data/request.service'; -import { TasksService } from './tasks.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; -/** - * The service handling all REST requests for ClaimedTask - */ -var ClaimedTaskDataService = /** @class */ (function (_super) { - tslib_1.__extends(ClaimedTaskDataService, _super); - /** - * Initialize instance variables - * - * @param {RequestService} requestService - * @param {RemoteDataBuildService} rdbService - * @param {NormalizedObjectBuildService} dataBuildService - * @param {Store} store - * @param {ObjectCacheService} objectCache - * @param {HALEndpointService} halService - * @param {NotificationsService} notificationsService - * @param {HttpClient} http - * @param {DSOChangeAnalyzer} - * Emit the server response - */ - ClaimedTaskDataService.prototype.approveTask = function (scopeId) { - var body = { - submit_approve: 'true' - }; - return this.postToEndpoint(this.linkPath, this.requestService.uriEncodeBody(body), scopeId, this.makeHttpOptions()); - }; - /** - * Make a request to reject the given task - * - * @param reason - * The reason of reject - * @param scopeId - * The task id - * @return {Observable} - * Emit the server response - */ - ClaimedTaskDataService.prototype.rejectTask = function (reason, scopeId) { - var body = { - submit_reject: 'true', - reason: reason - }; - return this.postToEndpoint(this.linkPath, this.requestService.uriEncodeBody(body), scopeId, this.makeHttpOptions()); - }; - /** - * Make a request to return the given task to the pool - * - * @param scopeId - * The task id - * @return {Observable} - * Emit the server response - */ - ClaimedTaskDataService.prototype.returnToPoolTask = function (scopeId) { - return this.deleteById(this.linkPath, scopeId, this.makeHttpOptions()); - }; - ClaimedTaskDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - NormalizedObjectBuildService, - Store, - ObjectCacheService, - HALEndpointService, - NotificationsService, - HttpClient, - DSOChangeAnalyzer]) - ], ClaimedTaskDataService); - return ClaimedTaskDataService; -}(TasksService)); -export { ClaimedTaskDataService }; -//# sourceMappingURL=claimed-task-data.service.js.map \ No newline at end of file diff --git a/src/app/core/tasks/claimed-task-data.service.js.map b/src/app/core/tasks/claimed-task-data.service.js.map deleted file mode 100644 index 99939a49aa..0000000000 --- a/src/app/core/tasks/claimed-task-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-task-data.service.js","sourceRoot":"","sources":["claimed-task-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAGxE;;GAEG;AAEH;IAA4C,kDAAyB;IAYnE;;;;;;;;;;;;OAYG;IACH,gCACY,cAA8B,EAC9B,UAAkC,EAClC,gBAA8C,EAC9C,KAAuB,EACvB,WAA+B,EAC/B,UAA8B,EAC9B,oBAA0C,EAC1C,IAAgB,EAChB,UAA0C;QATtD,YAUE,iBAAO,SACR;QAVW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,WAAK,GAAL,KAAK,CAAkB;QACvB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAC9B,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAI,GAAJ,IAAI,CAAY;QAChB,gBAAU,GAAV,UAAU,CAAgC;QAhCtD;;WAEG;QACO,cAAQ,GAAG,cAAc,CAAC;QAEpC;;WAEG;QACO,sBAAgB,GAAG,IAAI,CAAC;;IA0BlC,CAAC;IAED;;;;;;;OAOG;IACI,4CAAW,GAAlB,UAAmB,OAAe;QAChC,IAAM,IAAI,GAAG;YACX,cAAc,EAAE,MAAM;SACvB,CAAC;QACF,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtH,CAAC;IAED;;;;;;;;;OASG;IACI,2CAAU,GAAjB,UAAkB,MAAc,EAAE,OAAe;QAC/C,IAAM,IAAI,GAAG;YACX,aAAa,EAAE,MAAM;YACrB,MAAM,QAAA;SACP,CAAC;QACF,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtH,CAAC;IAED;;;;;;;OAOG;IACI,iDAAgB,GAAvB,UAAwB,OAAe;QACrC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACzE,CAAC;IAjFU,sBAAsB;QADlC,UAAU,EAAE;iDA2BiB,cAAc;YAClB,sBAAsB;YAChB,4BAA4B;YACvC,KAAK;YACC,kBAAkB;YACnB,kBAAkB;YACR,oBAAoB;YACpC,UAAU;YACJ,iBAAiB;OAlC9B,sBAAsB,CAmFlC;IAAD,6BAAC;CAAA,AAnFD,CAA4C,YAAY,GAmFvD;SAnFY,sBAAsB"} \ No newline at end of file diff --git a/src/app/core/tasks/models/claimed-task-object.model.js b/src/app/core/tasks/models/claimed-task-object.model.js deleted file mode 100644 index d989e74103..0000000000 --- a/src/app/core/tasks/models/claimed-task-object.model.js +++ /dev/null @@ -1,14 +0,0 @@ -import * as tslib_1 from "tslib"; -import { TaskObject } from './task-object.model'; -/** - * A model class for a ClaimedTask. - */ -var ClaimedTask = /** @class */ (function (_super) { - tslib_1.__extends(ClaimedTask, _super); - function ClaimedTask() { - return _super !== null && _super.apply(this, arguments) || this; - } - return ClaimedTask; -}(TaskObject)); -export { ClaimedTask }; -//# sourceMappingURL=claimed-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/claimed-task-object.model.js.map b/src/app/core/tasks/models/claimed-task-object.model.js.map deleted file mode 100644 index db6fbca599..0000000000 --- a/src/app/core/tasks/models/claimed-task-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-task-object.model.js","sourceRoot":"","sources":["claimed-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;GAEG;AACH;IAAiC,uCAAU;IAA3C;;IAEA,CAAC;IAAD,kBAAC;AAAD,CAAC,AAFD,CAAiC,UAAU,GAE1C"} \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-claimed-task-object.model.js b/src/app/core/tasks/models/normalized-claimed-task-object.model.js deleted file mode 100644 index ff2afd23de..0000000000 --- a/src/app/core/tasks/models/normalized-claimed-task-object.model.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NormalizedTaskObject } from './normalized-task-object.model'; -import { mapsTo, relationship } from '../../cache/builders/build-decorators'; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { ClaimedTask } from './claimed-task-object.model'; -import { ResourceType } from '../../shared/resource-type'; -/** - * A normalized model class for a ClaimedTask. - */ -var NormalizedClaimedTask = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedClaimedTask, _super); - function NormalizedClaimedTask() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedClaimedTask.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedClaimedTask.prototype, "step", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedClaimedTask.prototype, "action", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Workflowitem, false), - tslib_1.__metadata("design:type", String) - ], NormalizedClaimedTask.prototype, "workflowitem", void 0); - NormalizedClaimedTask = tslib_1.__decorate([ - mapsTo(ClaimedTask), - inheritSerialization(NormalizedTaskObject) - ], NormalizedClaimedTask); - return NormalizedClaimedTask; -}(NormalizedTaskObject)); -export { NormalizedClaimedTask }; -//# sourceMappingURL=normalized-claimed-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-claimed-task-object.model.js.map b/src/app/core/tasks/models/normalized-claimed-task-object.model.js.map deleted file mode 100644 index a258c6c215..0000000000 --- a/src/app/core/tasks/models/normalized-claimed-task-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-claimed-task-object.model.js","sourceRoot":"","sources":["normalized-claimed-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAA2C,iDAAiC;IAA5E;;IA2BA,CAAC;IArBC;QADC,aAAa;;qDACH;IAMX;QADC,aAAa;;uDACD;IAMb;QADC,aAAa;;yDACC;IAOf;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC;;+DAC1B;IAzBV,qBAAqB;QAFjC,MAAM,CAAC,WAAW,CAAC;QACnB,oBAAoB,CAAC,oBAAoB,CAAC;OAC9B,qBAAqB,CA2BjC;IAAD,4BAAC;CAAA,AA3BD,CAA2C,oBAAoB,GA2B9D;SA3BY,qBAAqB"} \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-pool-task-object.model.js b/src/app/core/tasks/models/normalized-pool-task-object.model.js deleted file mode 100644 index 5999d59086..0000000000 --- a/src/app/core/tasks/models/normalized-pool-task-object.model.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NormalizedTaskObject } from './normalized-task-object.model'; -import { PoolTask } from './pool-task-object.model'; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { mapsTo, relationship } from '../../cache/builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -/** - * A normalized model class for a PoolTask. - */ -var NormalizedPoolTask = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedPoolTask, _super); - function NormalizedPoolTask() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedPoolTask.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedPoolTask.prototype, "step", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedPoolTask.prototype, "action", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Workflowitem, false), - tslib_1.__metadata("design:type", String) - ], NormalizedPoolTask.prototype, "workflowitem", void 0); - NormalizedPoolTask = tslib_1.__decorate([ - mapsTo(PoolTask), - inheritSerialization(NormalizedTaskObject) - ], NormalizedPoolTask); - return NormalizedPoolTask; -}(NormalizedTaskObject)); -export { NormalizedPoolTask }; -//# sourceMappingURL=normalized-pool-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-pool-task-object.model.js.map b/src/app/core/tasks/models/normalized-pool-task-object.model.js.map deleted file mode 100644 index a7beecfbc2..0000000000 --- a/src/app/core/tasks/models/normalized-pool-task-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-pool-task-object.model.js","sourceRoot":"","sources":["normalized-pool-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AAGH;IAAwC,8CAA8B;IAAtE;;IA0BA,CAAC;IApBC;QADC,aAAa;;kDACH;IAMX;QADC,aAAa;;oDACD;IAMb;QADC,aAAa;;sDACC;IAOf;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC;;4DAC1B;IAzBV,kBAAkB;QAF9B,MAAM,CAAC,QAAQ,CAAC;QAChB,oBAAoB,CAAC,oBAAoB,CAAC;OAC9B,kBAAkB,CA0B9B;IAAD,yBAAC;CAAA,AA1BD,CAAwC,oBAAoB,GA0B3D;SA1BY,kBAAkB"} \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-task-object.model.js b/src/app/core/tasks/models/normalized-task-object.model.js deleted file mode 100644 index be01d57c88..0000000000 --- a/src/app/core/tasks/models/normalized-task-object.model.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize, inheritSerialization } from 'cerialize'; -import { mapsTo, relationship } from '../../cache/builders/build-decorators'; -import { ResourceType } from '../../shared/resource-type'; -import { NormalizedDSpaceObject } from '../../cache/models/normalized-dspace-object.model'; -import { TaskObject } from './task-object.model'; -/** - * An abstract normalized model class for a TaskObject. - */ -var NormalizedTaskObject = /** @class */ (function (_super) { - tslib_1.__extends(NormalizedTaskObject, _super); - function NormalizedTaskObject() { - return _super !== null && _super.apply(this, arguments) || this; - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedTaskObject.prototype, "id", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedTaskObject.prototype, "step", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], NormalizedTaskObject.prototype, "action", void 0); - tslib_1.__decorate([ - autoserialize, - relationship(ResourceType.Workflowitem, false), - tslib_1.__metadata("design:type", String) - ], NormalizedTaskObject.prototype, "workflowitem", void 0); - NormalizedTaskObject = tslib_1.__decorate([ - mapsTo(TaskObject), - inheritSerialization(NormalizedDSpaceObject) - ], NormalizedTaskObject); - return NormalizedTaskObject; -}(NormalizedDSpaceObject)); -export { NormalizedTaskObject }; -//# sourceMappingURL=normalized-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/normalized-task-object.model.js.map b/src/app/core/tasks/models/normalized-task-object.model.js.map deleted file mode 100644 index 064e77da70..0000000000 --- a/src/app/core/tasks/models/normalized-task-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"normalized-task-object.model.js","sourceRoot":"","sources":["normalized-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD;;GAEG;AAGH;IAA2E,gDAAyB;IAApG;;IA0BA,CAAC;IApBC;QADC,aAAa;;oDACH;IAMX;QADC,aAAa;;sDACD;IAMb;QADC,aAAa;;wDACC;IAOf;QAFC,aAAa;QACb,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC;;8DAC1B;IAzBD,oBAAoB;QAFzC,MAAM,CAAC,UAAU,CAAC;QAClB,oBAAoB,CAAC,sBAAsB,CAAC;OACvB,oBAAoB,CA0BzC;IAAD,2BAAC;CAAA,AA1BD,CAA2E,sBAAsB,GA0BhG;SA1BqB,oBAAoB"} \ No newline at end of file diff --git a/src/app/core/tasks/models/pool-task-object.model.js b/src/app/core/tasks/models/pool-task-object.model.js deleted file mode 100644 index a6d4ba9acd..0000000000 --- a/src/app/core/tasks/models/pool-task-object.model.js +++ /dev/null @@ -1,14 +0,0 @@ -import * as tslib_1 from "tslib"; -import { TaskObject } from './task-object.model'; -/** - * A model class for a PoolTask. - */ -var PoolTask = /** @class */ (function (_super) { - tslib_1.__extends(PoolTask, _super); - function PoolTask() { - return _super !== null && _super.apply(this, arguments) || this; - } - return PoolTask; -}(TaskObject)); -export { PoolTask }; -//# sourceMappingURL=pool-task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/pool-task-object.model.js.map b/src/app/core/tasks/models/pool-task-object.model.js.map deleted file mode 100644 index 36227a16c3..0000000000 --- a/src/app/core/tasks/models/pool-task-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pool-task-object.model.js","sourceRoot":"","sources":["pool-task-object.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;GAEG;AACH;IAA8B,oCAAU;IAAxC;;IAEA,CAAC;IAAD,eAAC;AAAD,CAAC,AAFD,CAA8B,UAAU,GAEvC"} \ No newline at end of file diff --git a/src/app/core/tasks/models/process-task-response.js b/src/app/core/tasks/models/process-task-response.js deleted file mode 100644 index 908a08a83b..0000000000 --- a/src/app/core/tasks/models/process-task-response.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * A class to represent the data retrieved by after processing a task - */ -var ProcessTaskResponse = /** @class */ (function () { - function ProcessTaskResponse(isSuccessful, error, payload) { - this.isSuccessful = isSuccessful; - this.error = error; - this.payload = payload; - } - Object.defineProperty(ProcessTaskResponse.prototype, "hasSucceeded", { - get: function () { - return this.isSuccessful; - }, - enumerable: true, - configurable: true - }); - return ProcessTaskResponse; -}()); -export { ProcessTaskResponse }; -//# sourceMappingURL=process-task-response.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/process-task-response.js.map b/src/app/core/tasks/models/process-task-response.js.map deleted file mode 100644 index ce51c1e1d6..0000000000 --- a/src/app/core/tasks/models/process-task-response.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"process-task-response.js","sourceRoot":"","sources":["process-task-response.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH;IACE,6BACU,YAAqB,EACtB,KAAuB,EACvB,OAAa;QAFZ,iBAAY,GAAZ,YAAY,CAAS;QACtB,UAAK,GAAL,KAAK,CAAkB;QACvB,YAAO,GAAP,OAAO,CAAM;IAEtB,CAAC;IAED,sBAAI,6CAAY;aAAhB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IACH,0BAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/core/tasks/models/task-object.model.js b/src/app/core/tasks/models/task-object.model.js deleted file mode 100644 index 03109ad998..0000000000 --- a/src/app/core/tasks/models/task-object.model.js +++ /dev/null @@ -1,14 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DSpaceObject } from '../../shared/dspace-object.model'; -/** - * An abstract model class for a TaskObject. - */ -var TaskObject = /** @class */ (function (_super) { - tslib_1.__extends(TaskObject, _super); - function TaskObject() { - return _super !== null && _super.apply(this, arguments) || this; - } - return TaskObject; -}(DSpaceObject)); -export { TaskObject }; -//# sourceMappingURL=task-object.model.js.map \ No newline at end of file diff --git a/src/app/core/tasks/models/task-object.model.js.map b/src/app/core/tasks/models/task-object.model.js.map deleted file mode 100644 index f8bd94f41f..0000000000 --- a/src/app/core/tasks/models/task-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"task-object.model.js","sourceRoot":"","sources":["task-object.model.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKhE;;GAEG;AACH;IAAgC,sCAAY;IAA5C;;IAqBA,CAAC;IAAD,iBAAC;AAAD,CAAC,AArBD,CAAgC,YAAY,GAqB3C"} \ No newline at end of file diff --git a/src/app/core/tasks/pool-task-data.service.js b/src/app/core/tasks/pool-task-data.service.js deleted file mode 100644 index 6e8b94c509..0000000000 --- a/src/app/core/tasks/pool-task-data.service.js +++ /dev/null @@ -1,78 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -import { Store } from '@ngrx/store'; -import { RemoteDataBuildService } from '../cache/builders/remote-data-build.service'; -import { RequestService } from '../data/request.service'; -import { TasksService } from './tasks.service'; -import { HALEndpointService } from '../shared/hal-endpoint.service'; -import { NormalizedObjectBuildService } from '../cache/builders/normalized-object-build.service'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { DSOChangeAnalyzer } from '../data/dso-change-analyzer.service'; -/** - * The service handling all REST requests for PoolTask - */ -var PoolTaskDataService = /** @class */ (function (_super) { - tslib_1.__extends(PoolTaskDataService, _super); - /** - * Initialize instance variables - * - * @param {RequestService} requestService - * @param {RemoteDataBuildService} rdbService - * @param {NormalizedObjectBuildService} dataBuildService - * @param {Store} store - * @param {ObjectCacheService} objectCache - * @param {HALEndpointService} halService - * @param {NotificationsService} notificationsService - * @param {HttpClient} http - * @param {DSOChangeAnalyzer} - * Emit the server response - */ - PoolTaskDataService.prototype.claimTask = function (scopeId) { - return this.postToEndpoint(this.linkPath, {}, scopeId, this.makeHttpOptions()); - }; - PoolTaskDataService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [RequestService, - RemoteDataBuildService, - NormalizedObjectBuildService, - Store, - ObjectCacheService, - HALEndpointService, - NotificationsService, - HttpClient, - DSOChangeAnalyzer]) - ], PoolTaskDataService); - return PoolTaskDataService; -}(TasksService)); -export { PoolTaskDataService }; -//# sourceMappingURL=pool-task-data.service.js.map \ No newline at end of file diff --git a/src/app/core/tasks/pool-task-data.service.js.map b/src/app/core/tasks/pool-task-data.service.js.map deleted file mode 100644 index 3848f03263..0000000000 --- a/src/app/core/tasks/pool-task-data.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pool-task-data.service.js","sourceRoot":"","sources":["pool-task-data.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAGxE;;GAEG;AAEH;IAAyC,+CAAsB;IAY7D;;;;;;;;;;;;OAYG;IACH,6BACY,cAA8B,EAC9B,UAAkC,EAClC,gBAA8C,EAC9C,KAAuB,EACvB,WAA+B,EAC/B,UAA8B,EAC9B,oBAA0C,EAC1C,IAAgB,EAChB,UAAuC;QATnD,YAUE,iBAAO,SACR;QAVW,oBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAU,GAAV,UAAU,CAAwB;QAClC,sBAAgB,GAAhB,gBAAgB,CAA8B;QAC9C,WAAK,GAAL,KAAK,CAAkB;QACvB,iBAAW,GAAX,WAAW,CAAoB;QAC/B,gBAAU,GAAV,UAAU,CAAoB;QAC9B,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAI,GAAJ,IAAI,CAAY;QAChB,gBAAU,GAAV,UAAU,CAA6B;QAhCnD;;WAEG;QACO,cAAQ,GAAG,WAAW,CAAC;QAEjC;;WAEG;QACO,sBAAgB,GAAG,IAAI,CAAC;;IA0BlC,CAAC;IAED;;;;;;;OAOG;IACI,uCAAS,GAAhB,UAAiB,OAAe;QAC9B,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACjF,CAAC;IAhDU,mBAAmB;QAD/B,UAAU,EAAE;iDA2BiB,cAAc;YAClB,sBAAsB;YAChB,4BAA4B;YACvC,KAAK;YACC,kBAAkB;YACnB,kBAAkB;YACR,oBAAoB;YACpC,UAAU;YACJ,iBAAiB;OAlC9B,mBAAmB,CAiD/B;IAAD,0BAAC;CAAA,AAjDD,CAAyC,YAAY,GAiDpD;SAjDY,mBAAmB"} \ No newline at end of file diff --git a/src/app/core/tasks/task-response-parsing.service.js b/src/app/core/tasks/task-response-parsing.service.js deleted file mode 100644 index be48104bf7..0000000000 --- a/src/app/core/tasks/task-response-parsing.service.js +++ /dev/null @@ -1,50 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { BaseResponseParsingService } from '../data/base-response-parsing.service'; -import { GLOBAL_CONFIG } from '../../../config'; -import { ObjectCacheService } from '../cache/object-cache.service'; -import { NormalizedObjectFactory } from '../cache/models/normalized-object-factory'; -import { ErrorResponse, TaskResponse } from '../cache/response.models'; -/** - * Provides methods to parse response for a task request. - */ -var TaskResponseParsingService = /** @class */ (function (_super) { - tslib_1.__extends(TaskResponseParsingService, _super); - /** - * Initialize instance variables - * - * @param {GlobalConfig} EnvConfig - * @param {ObjectCacheService} objectCache - */ - function TaskResponseParsingService(EnvConfig, objectCache) { - var _this = _super.call(this) || this; - _this.EnvConfig = EnvConfig; - _this.objectCache = objectCache; - _this.objectFactory = NormalizedObjectFactory; - _this.toCache = false; - return _this; - } - /** - * Parses data from the tasks endpoints - * - * @param {RestRequest} request - * @param {DSpaceRESTV2Response} data - * @returns {RestResponse} - */ - TaskResponseParsingService.prototype.parse = function (request, data) { - if (this.isSuccessStatus(data.statusCode)) { - return new TaskResponse(data.statusCode, data.statusText); - } - else { - return new ErrorResponse(Object.assign(new Error('Unexpected response from server'), { statusCode: data.statusCode, statusText: data.statusText })); - } - }; - TaskResponseParsingService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ObjectCacheService]) - ], TaskResponseParsingService); - return TaskResponseParsingService; -}(BaseResponseParsingService)); -export { TaskResponseParsingService }; -//# sourceMappingURL=task-response-parsing.service.js.map \ No newline at end of file diff --git a/src/app/core/tasks/task-response-parsing.service.js.map b/src/app/core/tasks/task-response-parsing.service.js.map deleted file mode 100644 index e7be5a994a..0000000000 --- a/src/app/core/tasks/task-response-parsing.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"task-response-parsing.service.js","sourceRoot":"","sources":["task-response-parsing.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAMnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,aAAa,EAAgB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAErF;;GAEG;AAEH;IAAgD,sDAA0B;IAKxE;;;;;OAKG;IACH,oCAA6C,SAAuB,EAC9C,WAA+B;QADrD,YAEE,iBAAO,SACR;QAH4C,eAAS,GAAT,SAAS,CAAc;QAC9C,iBAAW,GAAX,WAAW,CAAoB;QAV3C,mBAAa,GAAG,uBAAuB,CAAC;QACxC,aAAO,GAAG,KAAK,CAAC;;IAW1B,CAAC;IAED;;;;;;OAMG;IACH,0CAAK,GAAL,UAAM,OAAoB,EAAE,IAA0B;QACpD,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACzC,OAAO,IAAI,YAAY,CAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAC5D;aAAM;YACL,OAAO,IAAI,aAAa,CACtB,MAAM,CAAC,MAAM,CACX,IAAI,KAAK,CAAC,iCAAiC,CAAC,EAC5C,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAC7D,CACF,CAAC;SACH;IACH,CAAC;IAlCU,0BAA0B;QADtC,UAAU,EAAE;QAYE,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACC,kBAAkB;OAZ1C,0BAA0B,CAoCtC;IAAD,iCAAC;CAAA,AApCD,CAAgD,0BAA0B,GAoCzE;SApCY,0BAA0B"} \ No newline at end of file diff --git a/src/app/core/tasks/tasks.service.js b/src/app/core/tasks/tasks.service.js deleted file mode 100644 index 7504ec248e..0000000000 --- a/src/app/core/tasks/tasks.service.js +++ /dev/null @@ -1,96 +0,0 @@ -import * as tslib_1 from "tslib"; -import { HttpHeaders } from '@angular/common/http'; -import { merge as observableMerge, of as observableOf } from 'rxjs'; -import { distinctUntilChanged, filter, flatMap, map, mergeMap, tap } from 'rxjs/operators'; -import { DataService } from '../data/data.service'; -import { TaskDeleteRequest, TaskPostRequest } from '../data/request.models'; -import { isNotEmpty } from '../../shared/empty.util'; -import { ProcessTaskResponse } from './models/process-task-response'; -import { RemoteDataError } from '../data/remote-data-error'; -import { getResponseFromEntry } from '../shared/operators'; -/** - * An abstract class that provides methods to handle task requests. - */ -var TasksService = /** @class */ (function (_super) { - tslib_1.__extends(TasksService, _super); - function TasksService() { - return _super !== null && _super.apply(this, arguments) || this; - } - TasksService.prototype.getBrowseEndpoint = function (options) { - return this.halService.getEndpoint(this.linkPath); - }; - /** - * Fetch a RestRequest - * - * @param requestId - * The base endpoint for the type of object - * @return Observable - * server response - */ - TasksService.prototype.fetchRequest = function (requestId) { - var responses = this.requestService.getByUUID(requestId).pipe(getResponseFromEntry()); - var errorResponses = responses.pipe(filter(function (response) { return !response.isSuccessful; }), mergeMap(function (response) { return observableOf(new ProcessTaskResponse(response.isSuccessful, new RemoteDataError(response.statusCode, response.statusText, response.errorMessage))); })); - var successResponses = responses.pipe(filter(function (response) { return response.isSuccessful; }), map(function (response) { return new ProcessTaskResponse(response.isSuccessful); }), distinctUntilChanged()); - return observableMerge(errorResponses, successResponses); - }; - /** - * Create the HREF for a specific submission object based on its identifier - * - * @param endpoint - * The base endpoint for the type of object - * @param resourceID - * The identifier for the object - */ - TasksService.prototype.getEndpointByIDHref = function (endpoint, resourceID) { - return isNotEmpty(resourceID) ? endpoint + "/" + resourceID : "" + endpoint; - }; - /** - * Make a new post request - * - * @param linkPath - * The endpoint link name - * @param body - * The request body - * @param scopeId - * The task id to be removed - * @param options - * The HttpOptions object - * @return Observable - * server response - */ - TasksService.prototype.postToEndpoint = function (linkPath, body, scopeId, options) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - return this.halService.getEndpoint(linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), distinctUntilChanged(), map(function (endpointURL) { return new TaskPostRequest(requestId, endpointURL, body, options); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function (request) { return _this.fetchRequest(requestId); }), distinctUntilChanged()); - }; - /** - * Delete an existing task on the server - * - * @param linkPath - * The endpoint link name - * @param scopeId - * The task id to be removed - * @param options - * The HttpOptions object - * @return Observable - * server response - */ - TasksService.prototype.deleteById = function (linkPath, scopeId, options) { - var _this = this; - var requestId = this.requestService.generateRequestId(); - return this.halService.getEndpoint(linkPath || this.linkPath).pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged(), map(function (endpointURL) { return _this.getEndpointByIDHref(endpointURL, scopeId); }), map(function (endpointURL) { return new TaskDeleteRequest(requestId, endpointURL, null, options); }), tap(function (request) { return _this.requestService.configure(request); }), flatMap(function (request) { return _this.fetchRequest(requestId); }), distinctUntilChanged()); - }; - /** - * Create a new HttpOptions - */ - TasksService.prototype.makeHttpOptions = function () { - var options = Object.create({}); - var headers = new HttpHeaders(); - headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); - options.headers = headers; - return options; - }; - return TasksService; -}(DataService)); -export { TasksService }; -//# sourceMappingURL=tasks.service.js.map \ No newline at end of file diff --git a/src/app/core/tasks/tasks.service.js.map b/src/app/core/tasks/tasks.service.js.map deleted file mode 100644 index 6ae3946573..0000000000 --- a/src/app/core/tasks/tasks.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tasks.service.js","sourceRoot":"","sources":["tasks.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/core/url-baser/url-baser.js b/src/app/core/url-baser/url-baser.js deleted file mode 100644 index ea748cbea1..0000000000 --- a/src/app/core/url-baser/url-baser.js +++ /dev/null @@ -1,39 +0,0 @@ -import { isEmpty } from '../../shared/empty.util'; -/** - * Extracts the base URL - * from a URL with query parameters - */ -var URLBaser = /** @class */ (function () { - /** - * Creates a new URLBaser - * - * @param originalURL - * a string representing the original URL with possible query parameters - */ - function URLBaser(originalURL) { - this.original = originalURL; - } - /** - * Removes the query parameters from the original URL of this URLBaser - * - * @return {string} - * The base URL - */ - URLBaser.prototype.toString = function () { - if (isEmpty(this.original)) { - return ''; - } - else { - var index = this.original.indexOf('?'); - if (index < 0) { - return this.original; - } - else { - return this.original.substring(0, index); - } - } - }; - return URLBaser; -}()); -export { URLBaser }; -//# sourceMappingURL=url-baser.js.map \ No newline at end of file diff --git a/src/app/core/url-baser/url-baser.js.map b/src/app/core/url-baser/url-baser.js.map deleted file mode 100644 index 6aae19fb0a..0000000000 --- a/src/app/core/url-baser/url-baser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"url-baser.js","sourceRoot":"","sources":["url-baser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;;GAGG;AACH;IAGE;;;;;OAKG;IACH,kBAAY,WAAmB;QAC7B,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,2BAAQ,GAAR;QACE,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC1B,OAAO,EAAE,CAAC;SACX;aAAM;YACL,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,KAAK,GAAG,CAAC,EAAE;gBACb,OAAO,IAAI,CAAC,QAAQ,CAAC;aACtB;iBAAM;gBACL,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;aAC1C;SACF;IACH,CAAC;IAEH,eAAC;AAAD,CAAC,AAhCD,IAgCC"} \ No newline at end of file diff --git a/src/app/core/url-combiner/rest-url-combiner.js b/src/app/core/url-combiner/rest-url-combiner.js deleted file mode 100644 index 887f063c85..0000000000 --- a/src/app/core/url-combiner/rest-url-combiner.js +++ /dev/null @@ -1,21 +0,0 @@ -import * as tslib_1 from "tslib"; -import { URLCombiner } from './url-combiner'; -/** - * Combines a variable number of strings representing parts - * of a relative REST URL in to a single, absolute REST URL - * - * TODO write tests once GlobalConfig becomes injectable - */ -var RESTURLCombiner = /** @class */ (function (_super) { - tslib_1.__extends(RESTURLCombiner, _super); - function RESTURLCombiner(EnvConfig) { - var parts = []; - for (var _i = 1; _i < arguments.length; _i++) { - parts[_i - 1] = arguments[_i]; - } - return _super.apply(this, [EnvConfig.rest.baseUrl].concat(parts)) || this; - } - return RESTURLCombiner; -}(URLCombiner)); -export { RESTURLCombiner }; -//# sourceMappingURL=rest-url-combiner.js.map \ No newline at end of file diff --git a/src/app/core/url-combiner/rest-url-combiner.js.map b/src/app/core/url-combiner/rest-url-combiner.js.map deleted file mode 100644 index 9b39c4edca..0000000000 --- a/src/app/core/url-combiner/rest-url-combiner.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"rest-url-combiner.js","sourceRoot":"","sources":["rest-url-combiner.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI7C;;;;;GAKG;AACH;IAAqC,2CAAW;IAC9C,yBAAY,SAAuB;QAAE,eAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,8BAAkB;;mCAC/C,SAAS,CAAC,IAAI,CAAC,OAAO,SAAK,KAAK;IACxC,CAAC;IACH,sBAAC;AAAD,CAAC,AAJD,CAAqC,WAAW,GAI/C"} \ No newline at end of file diff --git a/src/app/core/url-combiner/ui-url-combiner.js b/src/app/core/url-combiner/ui-url-combiner.js deleted file mode 100644 index 0b20f6de37..0000000000 --- a/src/app/core/url-combiner/ui-url-combiner.js +++ /dev/null @@ -1,21 +0,0 @@ -import * as tslib_1 from "tslib"; -import { URLCombiner } from './url-combiner'; -/** - * Combines a variable number of strings representing parts - * of a relative UI URL in to a single, absolute UI URL - * - * TODO write tests once GlobalConfig becomes injectable - */ -var UIURLCombiner = /** @class */ (function (_super) { - tslib_1.__extends(UIURLCombiner, _super); - function UIURLCombiner(EnvConfig) { - var parts = []; - for (var _i = 1; _i < arguments.length; _i++) { - parts[_i - 1] = arguments[_i]; - } - return _super.apply(this, [EnvConfig.ui.baseUrl].concat(parts)) || this; - } - return UIURLCombiner; -}(URLCombiner)); -export { UIURLCombiner }; -//# sourceMappingURL=ui-url-combiner.js.map \ No newline at end of file diff --git a/src/app/core/url-combiner/ui-url-combiner.js.map b/src/app/core/url-combiner/ui-url-combiner.js.map deleted file mode 100644 index c013190d7f..0000000000 --- a/src/app/core/url-combiner/ui-url-combiner.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ui-url-combiner.js","sourceRoot":"","sources":["ui-url-combiner.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C;;;;;GAKG;AACH;IAAmC,yCAAW;IAC5C,uBAAY,SAAuB;QAAE,eAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,8BAAkB;;mCAC/C,SAAS,CAAC,EAAE,CAAC,OAAO,SAAK,KAAK;IACtC,CAAC;IACH,oBAAC;AAAD,CAAC,AAJD,CAAmC,WAAW,GAI7C"} \ No newline at end of file diff --git a/src/app/core/url-combiner/url-combiner.js b/src/app/core/url-combiner/url-combiner.js deleted file mode 100644 index 2da34fde1a..0000000000 --- a/src/app/core/url-combiner/url-combiner.js +++ /dev/null @@ -1,52 +0,0 @@ -import { isEmpty } from '../../shared/empty.util'; -/** - * Combines a variable number of strings representing parts - * of a URL in to a single, normalized URL - */ -var URLCombiner = /** @class */ (function () { - /** - * Creates a new URLCombiner - * - * @param parts - * a variable number of strings representing parts of a URL - */ - function URLCombiner() { - var parts = []; - for (var _i = 0; _i < arguments.length; _i++) { - parts[_i] = arguments[_i]; - } - // can't do this in the constructor signature, - // because of the spread operator - this.parts = parts; - } - /** - * Combines the parts of this URLCombiner in to a single, - * normalized URL - * - * e.g. new URLCombiner('http:/foo.com/', '/bar', 'id', '5').toString() - * returns: http://foo.com/bar/id/5 - * - * @return {string} - * The combined URL - */ - URLCombiner.prototype.toString = function () { - if (isEmpty(this.parts)) { - return ''; - } - else { - var url = this.parts.join('/'); - // make sure protocol is followed by two slashes - url = url.replace(/:\//g, '://'); - // remove consecutive slashes - url = url.replace(/([^:\s])\/+/g, '$1/'); - // remove trailing slash before parameters or hash - url = url.replace(/\/(\?|&|#[^!])/g, '$1'); - // replace ? in parameters with & - url = url.replace(/(\?.+)\?/g, '$1&'); - return url; - } - }; - return URLCombiner; -}()); -export { URLCombiner }; -//# sourceMappingURL=url-combiner.js.map \ No newline at end of file diff --git a/src/app/core/url-combiner/url-combiner.js.map b/src/app/core/url-combiner/url-combiner.js.map deleted file mode 100644 index f3372b7158..0000000000 --- a/src/app/core/url-combiner/url-combiner.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"url-combiner.js","sourceRoot":"","sources":["url-combiner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD;;;GAGG;AACH;IAGE;;;;;OAKG;IACH;QAAY,eAAkB;aAAlB,UAAkB,EAAlB,qBAAkB,EAAlB,IAAkB;YAAlB,0BAAkB;;QAC5B,8CAA8C;QAC9C,iCAAiC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;;;;;;;OASG;IACH,8BAAQ,GAAR;QACE,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,EAAE,CAAC;SACX;aAAM;YACL,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE/B,gDAAgD;YAChD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAEjC,6BAA6B;YAC7B,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAEzC,kDAAkD;YAClD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YAE3C,iCAAiC;YACjC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YAEtC,OAAO,GAAG,CAAC;SACZ;IACH,CAAC;IAEH,kBAAC;AAAD,CAAC,AA/CD,IA+CC"} \ No newline at end of file diff --git a/src/app/footer/footer.component.js b/src/app/footer/footer.component.js deleted file mode 100644 index 9b61c075e4..0000000000 --- a/src/app/footer/footer.component.js +++ /dev/null @@ -1,17 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -var FooterComponent = /** @class */ (function () { - function FooterComponent() { - this.dateObj = Date.now(); - } - FooterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-footer', - styleUrls: ['footer.component.scss'], - templateUrl: 'footer.component.html' - }) - ], FooterComponent); - return FooterComponent; -}()); -export { FooterComponent }; -//# sourceMappingURL=footer.component.js.map \ No newline at end of file diff --git a/src/app/footer/footer.component.js.map b/src/app/footer/footer.component.js.map deleted file mode 100644 index f010e95142..0000000000 --- a/src/app/footer/footer.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"footer.component.js","sourceRoot":"","sources":["footer.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAO1C;IALA;QAOE,YAAO,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAE/B,CAAC;IAJY,eAAe;QAL3B,SAAS,CAAC;YACT,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,CAAC,uBAAuB,CAAC;YACpC,WAAW,EAAE,uBAAuB;SACrC,CAAC;OACW,eAAe,CAI3B;IAAD,sBAAC;CAAA,AAJD,IAIC;SAJY,eAAe"} \ No newline at end of file diff --git a/src/app/header-nav-wrapper/header-navbar-wrapper.component.js b/src/app/header-nav-wrapper/header-navbar-wrapper.component.js deleted file mode 100644 index 652f164d8a..0000000000 --- a/src/app/header-nav-wrapper/header-navbar-wrapper.component.js +++ /dev/null @@ -1,43 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, HostBinding } from '@angular/core'; -import { Store } from '@ngrx/store'; -import { hasValue } from '../shared/empty.util'; -import { MenuService } from '../shared/menu/menu.service'; -import { MenuID } from '../shared/menu/initial-menus-state'; -/** - * This component represents a wrapper for the horizontal navbar and the header - */ -var HeaderNavbarWrapperComponent = /** @class */ (function () { - function HeaderNavbarWrapperComponent(store, menuService) { - this.store = store; - this.menuService = menuService; - this.isOpen = false; - this.menuID = MenuID.PUBLIC; - } - HeaderNavbarWrapperComponent.prototype.ngOnInit = function () { - var _this = this; - this.isNavBarCollapsed = this.menuService.isMenuCollapsed(this.menuID); - this.sub = this.isNavBarCollapsed.subscribe(function (isCollapsed) { return _this.isOpen = !isCollapsed; }); - }; - HeaderNavbarWrapperComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - HostBinding('class.open'), - tslib_1.__metadata("design:type", Object) - ], HeaderNavbarWrapperComponent.prototype, "isOpen", void 0); - HeaderNavbarWrapperComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-header-navbar-wrapper', - styleUrls: ['header-navbar-wrapper.component.scss'], - templateUrl: 'header-navbar-wrapper.component.html', - }), - tslib_1.__metadata("design:paramtypes", [Store, - MenuService]) - ], HeaderNavbarWrapperComponent); - return HeaderNavbarWrapperComponent; -}()); -export { HeaderNavbarWrapperComponent }; -//# sourceMappingURL=header-navbar-wrapper.component.js.map \ No newline at end of file diff --git a/src/app/header-nav-wrapper/header-navbar-wrapper.component.js.map b/src/app/header-nav-wrapper/header-navbar-wrapper.component.js.map deleted file mode 100644 index f742261544..0000000000 --- a/src/app/header-nav-wrapper/header-navbar-wrapper.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"header-navbar-wrapper.component.js","sourceRoot":"","sources":["header-navbar-wrapper.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAqB,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D;;GAEG;AAMH;IAME,sCACU,KAAsB,EACtB,WAAwB;QADxB,UAAK,GAAL,KAAK,CAAiB;QACtB,gBAAW,GAAX,WAAW,CAAa;QAPP,WAAM,GAAG,KAAK,CAAC;QAG1C,WAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAMvB,CAAC;IAED,+CAAQ,GAAR;QAAA,iBAGC;QAFC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,UAAC,WAAW,IAAK,OAAA,KAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAA1B,CAA0B,CAAC,CAAA;IAC1F,CAAC;IAED,kDAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IApB0B;QAA1B,WAAW,CAAC,YAAY,CAAC;;gEAAgB;IAD/B,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;iDAQiB,KAAK;YACC,WAAW;OARvB,4BAA4B,CAsBxC;IAAD,mCAAC;CAAA,AAtBD,IAsBC;SAtBY,4BAA4B"} \ No newline at end of file diff --git a/src/app/header/header.component.js b/src/app/header/header.component.js deleted file mode 100644 index 0929f8c308..0000000000 --- a/src/app/header/header.component.js +++ /dev/null @@ -1,28 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { MenuService } from '../shared/menu/menu.service'; -import { MenuID } from '../shared/menu/initial-menus-state'; -/** - * Represents the header with the logo and simple navigation - */ -var HeaderComponent = /** @class */ (function () { - function HeaderComponent(menuService) { - this.menuService = menuService; - this.showAuth = false; - this.menuID = MenuID.PUBLIC; - } - HeaderComponent.prototype.toggleNavbar = function () { - this.menuService.toggleMenu(this.menuID); - }; - HeaderComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-header', - styleUrls: ['header.component.scss'], - templateUrl: 'header.component.html', - }), - tslib_1.__metadata("design:paramtypes", [MenuService]) - ], HeaderComponent); - return HeaderComponent; -}()); -export { HeaderComponent }; -//# sourceMappingURL=header.component.js.map \ No newline at end of file diff --git a/src/app/header/header.component.js.map b/src/app/header/header.component.js.map deleted file mode 100644 index 95aa45ca67..0000000000 --- a/src/app/header/header.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"header.component.js","sourceRoot":"","sources":["header.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAE5D;;GAEG;AAMH;IASE,yBACU,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QAJ3B,aAAQ,GAAG,KAAK,CAAC;QACxB,WAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAKvB,CAAC;IAEM,sCAAY,GAAnB;QACE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAhBU,eAAe;QAL3B,SAAS,CAAC;YACT,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,CAAC,uBAAuB,CAAC;YACpC,WAAW,EAAE,uBAAuB;SACrC,CAAC;iDAWuB,WAAW;OAVvB,eAAe,CAiB3B;IAAD,sBAAC;CAAA,AAjBD,IAiBC;SAjBY,eAAe"} \ No newline at end of file diff --git a/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js b/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js deleted file mode 100644 index 1d6acc5d7a..0000000000 --- a/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js +++ /dev/null @@ -1,85 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Injector } from '@angular/core'; -import { NavbarSectionComponent } from '../navbar-section/navbar-section.component'; -import { MenuService } from '../../shared/menu/menu.service'; -import { MenuID } from '../../shared/menu/initial-menus-state'; -import { slide } from '../../shared/animations/slide'; -import { first } from 'rxjs/operators'; -import { HostWindowService } from '../../shared/host-window.service'; -import { rendersSectionForMenu } from '../../shared/menu/menu-section.decorator'; -/** - * Represents an expandable section in the navbar - */ -var ExpandableNavbarSectionComponent = /** @class */ (function (_super) { - tslib_1.__extends(ExpandableNavbarSectionComponent, _super); - function ExpandableNavbarSectionComponent(menuSection, menuService, injector, windowService) { - var _this = _super.call(this, menuSection, menuService, injector) || this; - _this.menuService = menuService; - _this.injector = injector; - _this.windowService = windowService; - /** - * This section resides in the Public Navbar - */ - _this.menuID = MenuID.PUBLIC; - return _this; - } - ExpandableNavbarSectionComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - }; - /** - * Overrides the super function that activates this section (triggered on hover) - * Has an extra check to make sure the section can only be activated on non-mobile devices - * @param {Event} event The user event that triggered this function - */ - ExpandableNavbarSectionComponent.prototype.activateSection = function (event) { - var _this = this; - this.windowService.isXsOrSm().pipe(first()).subscribe(function (isMobile) { - if (!isMobile) { - _super.prototype.activateSection.call(_this, event); - } - }); - }; - /** - * Overrides the super function that deactivates this section (triggered on hover) - * Has an extra check to make sure the section can only be deactivated on non-mobile devices - * @param {Event} event The user event that triggered this function - */ - ExpandableNavbarSectionComponent.prototype.deactivateSection = function (event) { - var _this = this; - this.windowService.isXsOrSm().pipe(first()).subscribe(function (isMobile) { - if (!isMobile) { - _super.prototype.deactivateSection.call(_this, event); - } - }); - }; - /** - * Overrides the super function that toggles this section (triggered on click) - * Has an extra check to make sure the section can only be toggled on mobile devices - * @param {Event} event The user event that triggered this function - */ - ExpandableNavbarSectionComponent.prototype.toggleSection = function (event) { - var _this = this; - event.preventDefault(); - this.windowService.isXsOrSm().pipe(first()).subscribe(function (isMobile) { - if (isMobile) { - _super.prototype.toggleSection.call(_this, event); - } - }); - }; - ExpandableNavbarSectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-expandable-navbar-section', - templateUrl: './expandable-navbar-section.component.html', - styleUrls: ['./expandable-navbar-section.component.scss'], - animations: [slide] - }), - rendersSectionForMenu(MenuID.PUBLIC, true), - tslib_1.__param(0, Inject('sectionDataProvider')), - tslib_1.__metadata("design:paramtypes", [Object, MenuService, - Injector, - HostWindowService]) - ], ExpandableNavbarSectionComponent); - return ExpandableNavbarSectionComponent; -}(NavbarSectionComponent)); -export { ExpandableNavbarSectionComponent }; -//# sourceMappingURL=expandable-navbar-section.component.js.map \ No newline at end of file diff --git a/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js.map b/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js.map deleted file mode 100644 index 00834d2b20..0000000000 --- a/src/app/navbar/expandable-navbar-section/expandable-navbar-section.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"expandable-navbar-section.component.js","sourceRoot":"","sources":["expandable-navbar-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF;;GAEG;AAQH;IAAsD,4DAAsB;IAM1E,0CAA2C,WAAW,EAChC,WAAwB,EACxB,QAAkB,EACpB,aAAgC;QAHpD,YAKE,kBAAM,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,SAC1C;QALqB,iBAAW,GAAX,WAAW,CAAa;QACxB,cAAQ,GAAR,QAAQ,CAAU;QACpB,mBAAa,GAAb,aAAa,CAAmB;QARpD;;WAEG;QACH,YAAM,GAAG,MAAM,CAAC,MAAM,CAAC;;IAQvB,CAAC;IAED,mDAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,0DAAe,GAAf,UAAgB,KAAK;QAArB,iBAQC;QAPC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,CAChC,KAAK,EAAE,CACR,CAAC,SAAS,CAAC,UAAC,QAAQ;YACnB,IAAI,CAAC,QAAQ,EAAE;gBACb,iBAAM,eAAe,aAAC,KAAK,CAAC,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,4DAAiB,GAAjB,UAAkB,KAAK;QAAvB,iBAQC;QAPC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,CAChC,KAAK,EAAE,CACR,CAAC,SAAS,CAAC,UAAC,QAAQ;YACnB,IAAI,CAAC,QAAQ,EAAE;gBACb,iBAAM,iBAAiB,aAAC,KAAK,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,wDAAa,GAAb,UAAc,KAAK;QAAnB,iBASC;QARC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,CAChC,KAAK,EAAE,CACR,CAAC,SAAS,CAAC,UAAC,QAAQ;YACnB,IAAI,QAAQ,EAAE;gBACZ,iBAAM,aAAa,aAAC,KAAK,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IA9DU,gCAAgC;QAP5C,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,WAAW,EAAE,4CAA4C;YACzD,SAAS,EAAE,CAAC,4CAA4C,CAAC;YACzD,UAAU,EAAE,CAAC,KAAK,CAAC;SACpB,CAAC;QACD,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC;QAO5B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;yDACP,WAAW;YACd,QAAQ;YACL,iBAAiB;OATzC,gCAAgC,CA+D5C;IAAD,uCAAC;CAAA,AA/DD,CAAsD,sBAAsB,GA+D3E;SA/DY,gCAAgC"} \ No newline at end of file diff --git a/src/app/navbar/navbar-section/navbar-section.component.js b/src/app/navbar/navbar-section/navbar-section.component.js deleted file mode 100644 index 768e9de26a..0000000000 --- a/src/app/navbar/navbar-section/navbar-section.component.js +++ /dev/null @@ -1,39 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject, Injector } from '@angular/core'; -import { MenuSectionComponent } from '../../shared/menu/menu-section/menu-section.component'; -import { MenuService } from '../../shared/menu/menu.service'; -import { MenuID } from '../../shared/menu/initial-menus-state'; -import { rendersSectionForMenu } from '../../shared/menu/menu-section.decorator'; -/** - * Represents a non-expandable section in the navbar - */ -var NavbarSectionComponent = /** @class */ (function (_super) { - tslib_1.__extends(NavbarSectionComponent, _super); - function NavbarSectionComponent(menuSection, menuService, injector) { - var _this = _super.call(this, menuSection, menuService, injector) || this; - _this.menuService = menuService; - _this.injector = injector; - /** - * This section resides in the Public Navbar - */ - _this.menuID = MenuID.PUBLIC; - return _this; - } - NavbarSectionComponent.prototype.ngOnInit = function () { - _super.prototype.ngOnInit.call(this); - }; - NavbarSectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-navbar-section', - templateUrl: './navbar-section.component.html', - styleUrls: ['./navbar-section.component.scss'] - }), - rendersSectionForMenu(MenuID.PUBLIC, false), - tslib_1.__param(0, Inject('sectionDataProvider')), - tslib_1.__metadata("design:paramtypes", [Object, MenuService, - Injector]) - ], NavbarSectionComponent); - return NavbarSectionComponent; -}(MenuSectionComponent)); -export { NavbarSectionComponent }; -//# sourceMappingURL=navbar-section.component.js.map \ No newline at end of file diff --git a/src/app/navbar/navbar-section/navbar-section.component.js.map b/src/app/navbar/navbar-section/navbar-section.component.js.map deleted file mode 100644 index e2282258dd..0000000000 --- a/src/app/navbar/navbar-section/navbar-section.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"navbar-section.component.js","sourceRoot":"","sources":["navbar-section.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF;;GAEG;AAOH;IAA4C,kDAAoB;IAM9D,gCAA2C,WAAW,EAChC,WAAwB,EACxB,QAAkB;QAFxC,YAIE,kBAAM,WAAW,EAAE,WAAW,EAAE,QAAQ,CAAC,SAC1C;QAJqB,iBAAW,GAAX,WAAW,CAAa;QACxB,cAAQ,GAAR,QAAQ,CAAU;QAPxC;;WAEG;QACH,YAAM,GAAG,MAAM,CAAC,MAAM,CAAC;;IAOvB,CAAC;IAED,yCAAQ,GAAR;QACE,iBAAM,QAAQ,WAAE,CAAC;IACnB,CAAC;IAfU,sBAAsB;QANlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;YAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;SAC/C,CAAC;QACD,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;QAO7B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;yDACP,WAAW;YACd,QAAQ;OAR7B,sBAAsB,CAgBlC;IAAD,6BAAC;CAAA,AAhBD,CAA4C,oBAAoB,GAgB/D;SAhBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/navbar/navbar.component.js b/src/app/navbar/navbar.component.js deleted file mode 100644 index 117578b1fe..0000000000 --- a/src/app/navbar/navbar.component.js +++ /dev/null @@ -1,130 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector } from '@angular/core'; -import { slideMobileNav } from '../shared/animations/slide'; -import { MenuComponent } from '../shared/menu/menu.component'; -import { MenuService } from '../shared/menu/menu.service'; -import { MenuID, MenuItemType } from '../shared/menu/initial-menus-state'; -import { HostWindowService } from '../shared/host-window.service'; -/** - * Component representing the public navbar - */ -var NavbarComponent = /** @class */ (function (_super) { - tslib_1.__extends(NavbarComponent, _super); - function NavbarComponent(menuService, injector, windowService) { - var _this = _super.call(this, menuService, injector) || this; - _this.menuService = menuService; - _this.injector = injector; - _this.windowService = windowService; - /** - * The menu ID of the Navbar is PUBLIC - * @type {MenuID.PUBLIC} - */ - _this.menuID = MenuID.PUBLIC; - return _this; - } - NavbarComponent.prototype.ngOnInit = function () { - this.createMenu(); - _super.prototype.ngOnInit.call(this); - }; - /** - * Initialize all menu sections and items for this menu - */ - NavbarComponent.prototype.createMenu = function () { - var _this = this; - var menuList = [ - /* News */ - { - id: 'browse_global', - active: false, - visible: true, - model: { - type: MenuItemType.TEXT, - text: 'menu.section.browse_global' - }, - index: 0 - }, - // { - // id: 'browse_global_communities_and_collections', - // parentID: 'browse_global', - // active: false, - // visible: true, - // model: { - // type: MenuItemType.LINK, - // text: 'menu.section.browse_global_communities_and_collections', - // link: '#' - // } as LinkMenuItemModel, - // }, - { - id: 'browse_global_global_by_title', - parentID: 'browse_global', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.browse_global_by_title', - link: '/browse/title' - }, - }, - { - id: 'browse_global_global_by_issue_date', - parentID: 'browse_global', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.browse_global_by_issue_date', - link: '/browse/dateissued' - }, - }, - { - id: 'browse_global_by_author', - parentID: 'browse_global', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.browse_global_by_author', - link: '/browse/author' - }, - }, - { - id: 'browse_global_by_subject', - parentID: 'browse_global', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.browse_global_by_subject', - link: '/browse/subject' - }, - }, - /* Statistics */ - { - id: 'statistics', - active: false, - visible: true, - model: { - type: MenuItemType.LINK, - text: 'menu.section.statistics', - link: '' - }, - index: 2 - }, - ]; - menuList.forEach(function (menuSection) { return _this.menuService.addSection(_this.menuID, menuSection); }); - }; - NavbarComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-navbar', - styleUrls: ['navbar.component.scss'], - templateUrl: 'navbar.component.html', - animations: [slideMobileNav] - }), - tslib_1.__metadata("design:paramtypes", [MenuService, - Injector, - HostWindowService]) - ], NavbarComponent); - return NavbarComponent; -}(MenuComponent)); -export { NavbarComponent }; -//# sourceMappingURL=navbar.component.js.map \ No newline at end of file diff --git a/src/app/navbar/navbar.component.js.map b/src/app/navbar/navbar.component.js.map deleted file mode 100644 index 766fd0b9a0..0000000000 --- a/src/app/navbar/navbar.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"navbar.component.js","sourceRoot":"","sources":["navbar.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/navbar/navbar.effects.js b/src/app/navbar/navbar.effects.js deleted file mode 100644 index 147eb6d39c..0000000000 --- a/src/app/navbar/navbar.effects.js +++ /dev/null @@ -1,63 +0,0 @@ -import * as tslib_1 from "tslib"; -import { first, map, switchMap } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { Actions, Effect, ofType } from '@ngrx/effects'; -import * as fromRouter from '@ngrx/router-store'; -import { HostWindowActionTypes } from '../shared/host-window.actions'; -import { CollapseMenuAction, MenuActionTypes } from '../shared/menu/menu.actions'; -import { MenuID } from '../shared/menu/initial-menus-state'; -import { MenuService } from '../shared/menu/menu.service'; -var NavbarEffects = /** @class */ (function () { - function NavbarEffects(actions$, menuService) { - var _this = this; - this.actions$ = actions$; - this.menuService = menuService; - this.menuID = MenuID.PUBLIC; - /** - * Effect that collapses the public menu on window resize - * @type {Observable} - */ - this.resize$ = this.actions$ - .pipe(ofType(HostWindowActionTypes.RESIZE), map(function () { return new CollapseMenuAction(_this.menuID); })); - /** - * Effect that collapses the public menu on reroute - * @type {Observable} - */ - this.routeChange$ = this.actions$ - .pipe(ofType(fromRouter.ROUTER_NAVIGATION), map(function () { return new CollapseMenuAction(_this.menuID); })); - /** - * Effect that collapses the public menu when the admin sidebar opens - * @type {Observable} - */ - this.openAdminSidebar$ = this.actions$ - .pipe(ofType(MenuActionTypes.EXPAND_MENU_PREVIEW), switchMap(function (action) { - return _this.menuService.getMenu(action.menuID).pipe(first(), map(function (menu) { - if (menu.id === MenuID.ADMIN) { - if (!menu.previewCollapsed && menu.collapsed) { - return new CollapseMenuAction(MenuID.PUBLIC); - } - } - return { type: 'NO_ACTION' }; - })); - })); - } - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], NavbarEffects.prototype, "resize$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], NavbarEffects.prototype, "routeChange$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], NavbarEffects.prototype, "openAdminSidebar$", void 0); - NavbarEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions, MenuService]) - ], NavbarEffects); - return NavbarEffects; -}()); -export { NavbarEffects }; -//# sourceMappingURL=navbar.effects.js.map \ No newline at end of file diff --git a/src/app/navbar/navbar.effects.js.map b/src/app/navbar/navbar.effects.js.map deleted file mode 100644 index bd26e8b32b..0000000000 --- a/src/app/navbar/navbar.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"navbar.effects.js","sourceRoot":"","sources":["navbar.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACL,kBAAkB,EAElB,eAAe,EAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAI1D;IAyCE,uBAAoB,QAAiB,EAAU,WAAwB;QAAvE,iBAEC;QAFmB,aAAQ,GAAR,QAAQ,CAAS;QAAU,gBAAW,GAAX,WAAW,CAAa;QAxCvE,WAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACvB;;;WAGG;QACO,YAAO,GAAG,IAAI,CAAC,QAAQ;aAC9B,IAAI,CACH,MAAM,CAAC,qBAAqB,CAAC,MAAM,CAAC,EACpC,GAAG,CAAC,cAAM,OAAA,IAAI,kBAAkB,CAAC,KAAI,CAAC,MAAM,CAAC,EAAnC,CAAmC,CAAC,CAC/C,CAAC;QAEJ;;;WAGG;QACO,iBAAY,GAAG,IAAI,CAAC,QAAQ;aACnC,IAAI,CACH,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,EACpC,GAAG,CAAC,cAAM,OAAA,IAAI,kBAAkB,CAAC,KAAI,CAAC,MAAM,CAAC,EAAnC,CAAmC,CAAC,CAC/C,CAAC;QACJ;;;WAGG;QACO,sBAAiB,GAAG,IAAI,CAAC,QAAQ;aACxC,IAAI,CACH,MAAM,CAAC,eAAe,CAAC,mBAAmB,CAAC,EAC3C,SAAS,CAAC,UAAC,MAA+B;YACxC,OAAO,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CACjD,KAAK,EAAE,EACP,GAAG,CAAC,UAAC,IAAe;gBAClB,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,KAAK,EAAE;oBAC5B,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,SAAS,EAAE;wBAC5C,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;qBAC7C;iBACF;gBACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC,CAAC;QACR,CAAC,CAAC,CACH,CAAC;IAGJ,CAAC;IArCS;QAAT,MAAM,EAAE;;kDAIL;IAMM;QAAT,MAAM,EAAE;;uDAIL;IAKM;QAAT,MAAM,EAAE;;4DAeL;IAxCO,aAAa;QADzB,UAAU,EAAE;iDA0CmB,OAAO,EAAuB,WAAW;OAzC5D,aAAa,CA6CzB;IAAD,oBAAC;CAAA,AA7CD,IA6CC;SA7CY,aAAa"} \ No newline at end of file diff --git a/src/app/navbar/navbar.module.js b/src/app/navbar/navbar.module.js deleted file mode 100644 index e834bfe183..0000000000 --- a/src/app/navbar/navbar.module.js +++ /dev/null @@ -1,51 +0,0 @@ -import * as tslib_1 from "tslib"; -import { SharedModule } from '../shared/shared.module'; -import { CommonModule } from '@angular/common'; -import { NgModule } from '@angular/core'; -import { EffectsModule } from '@ngrx/effects'; -import { CoreModule } from '../core/core.module'; -import { NavbarEffects } from './navbar.effects'; -import { NavbarSectionComponent } from './navbar-section/navbar-section.component'; -import { ExpandableNavbarSectionComponent } from './expandable-navbar-section/expandable-navbar-section.component'; -import { NavbarComponent } from './navbar.component'; -var effects = [ - NavbarEffects -]; -var NavbarModule = /** @class */ (function () { - /** - * This module handles all components and pipes that are necessary for the horizontal navigation bar - */ - function NavbarModule() { - } - NavbarModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule, - EffectsModule.forFeature(effects), - CoreModule.forRoot() - ], - declarations: [ - NavbarComponent, - NavbarSectionComponent, - ExpandableNavbarSectionComponent - ], - providers: [], - entryComponents: [ - NavbarSectionComponent, - ExpandableNavbarSectionComponent - ], - exports: [ - NavbarComponent, - NavbarSectionComponent, - ExpandableNavbarSectionComponent - ] - }) - /** - * This module handles all components and pipes that are necessary for the horizontal navigation bar - */ - ], NavbarModule); - return NavbarModule; -}()); -export { NavbarModule }; -//# sourceMappingURL=navbar.module.js.map \ No newline at end of file diff --git a/src/app/navbar/navbar.module.js.map b/src/app/navbar/navbar.module.js.map deleted file mode 100644 index 4fa76c23f8..0000000000 --- a/src/app/navbar/navbar.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"navbar.module.js","sourceRoot":"","sources":["navbar.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,gCAAgC,EAAE,MAAM,iEAAiE,CAAC;AACnH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,IAAM,OAAO,GAAG;IACd,aAAa;CACd,CAAC;AA+BF;IAHA;;OAEG;IACH;IACA,CAAC;IADY,YAAY;QA7BxB,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;gBACZ,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC;gBACjC,UAAU,CAAC,OAAO,EAAE;aACrB;YACD,YAAY,EAAE;gBACZ,eAAe;gBACf,sBAAsB;gBACtB,gCAAgC;aACjC;YACD,SAAS,EAAE,EAEV;YACD,eAAe,EAAE;gBACf,sBAAsB;gBACtB,gCAAgC;aACjC;YACD,OAAO,EAAE;gBACP,eAAe;gBACf,sBAAsB;gBACtB,gCAAgC;aACjC;SACF,CAAC;QAEF;;WAEG;OACU,YAAY,CACxB;IAAD,mBAAC;CAAA,AADD,IACC;SADY,YAAY"} \ No newline at end of file diff --git a/src/app/pagenotfound/pagenotfound.component.js b/src/app/pagenotfound/pagenotfound.component.js deleted file mode 100644 index b5579673ca..0000000000 --- a/src/app/pagenotfound/pagenotfound.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ServerResponseService } from '../shared/services/server-response.service'; -import { Component, ChangeDetectionStrategy } from '@angular/core'; -import { AuthService } from '../core/auth/auth.service'; -/** - * This component representing the `PageNotFound` DSpace page. - */ -var PageNotFoundComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {AuthService} authservice - * @param {ServerResponseService} responseService - */ - function PageNotFoundComponent(authservice, responseService) { - this.authservice = authservice; - this.responseService = responseService; - this.responseService.setNotFound(); - } - /** - * Remove redirect url from the state - */ - PageNotFoundComponent.prototype.ngOnInit = function () { - this.authservice.clearRedirectUrl(); - }; - PageNotFoundComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-pagenotfound', - styleUrls: ['./pagenotfound.component.scss'], - templateUrl: './pagenotfound.component.html', - changeDetection: ChangeDetectionStrategy.Default - }), - tslib_1.__metadata("design:paramtypes", [AuthService, ServerResponseService]) - ], PageNotFoundComponent); - return PageNotFoundComponent; -}()); -export { PageNotFoundComponent }; -//# sourceMappingURL=pagenotfound.component.js.map \ No newline at end of file diff --git a/src/app/pagenotfound/pagenotfound.component.js.map b/src/app/pagenotfound/pagenotfound.component.js.map deleted file mode 100644 index decf78cd28..0000000000 --- a/src/app/pagenotfound/pagenotfound.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pagenotfound.component.js","sourceRoot":"","sources":["pagenotfound.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAU,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD;;GAEG;AAOH;IAEE;;;;;OAKG;IACH,+BAAoB,WAAwB,EAAU,eAAsC;QAAxE,gBAAW,GAAX,WAAW,CAAa;QAAU,oBAAe,GAAf,eAAe,CAAuB;QAC1F,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,wCAAQ,GAAR;QACE,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;IACtC,CAAC;IAjBU,qBAAqB;QANjC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE,CAAC,+BAA+B,CAAC;YAC5C,WAAW,EAAE,+BAA+B;YAC5C,eAAe,EAAE,uBAAuB,CAAC,OAAO;SACjD,CAAC;iDASiC,WAAW,EAA2B,qBAAqB;OARjF,qBAAqB,CAmBjC;IAAD,4BAAC;CAAA,AAnBD,IAmBC;SAnBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/alert/alert.component.js b/src/app/shared/alert/alert.component.js deleted file mode 100644 index bd7b404238..0000000000 --- a/src/app/shared/alert/alert.component.js +++ /dev/null @@ -1,82 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; -import { trigger } from '@angular/animations'; -import { AlertType } from './aletr-type'; -import { fadeOutLeave, fadeOutState } from '../animations/fade'; -/** - * This component allow to create div that uses the Bootstrap's Alerts component. - */ -var AlertComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} cdr - */ - function AlertComponent(cdr) { - this.cdr = cdr; - /** - * A boolean representing if alert is dismissible - */ - this.dismissible = false; - /** - * An event fired when alert is dismissed. - */ - this.close = new EventEmitter(); - /** - * The initial animation name - */ - this.animate = 'fadeIn'; - /** - * A boolean representing if alert is dismissed or not - */ - this.dismissed = false; - } - /** - * Dismiss div with animation - */ - AlertComponent.prototype.dismiss = function () { - var _this = this; - if (this.dismissible) { - this.animate = 'fadeOut'; - this.cdr.detectChanges(); - setTimeout(function () { - _this.dismissed = true; - _this.close.emit(); - _this.cdr.detectChanges(); - }, 300); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], AlertComponent.prototype, "content", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], AlertComponent.prototype, "dismissible", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], AlertComponent.prototype, "type", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], AlertComponent.prototype, "close", void 0); - AlertComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-alert', - encapsulation: ViewEncapsulation.None, - animations: [ - trigger('enterLeave', [ - fadeOutLeave, fadeOutState, - ]) - ], - templateUrl: './alert.component.html', - styleUrls: ['./alert.component.scss'] - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef]) - ], AlertComponent); - return AlertComponent; -}()); -export { AlertComponent }; -//# sourceMappingURL=alert.component.js.map \ No newline at end of file diff --git a/src/app/shared/alert/alert.component.js.map b/src/app/shared/alert/alert.component.js.map deleted file mode 100644 index 243bcc880a..0000000000 --- a/src/app/shared/alert/alert.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"alert.component.js","sourceRoot":"","sources":["alert.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEhE;;GAEG;AAYH;IAgCE;;;;OAIG;IACH,wBAAoB,GAAsB;QAAtB,QAAG,GAAH,GAAG,CAAmB;QA9B1C;;WAEG;QACM,gBAAW,GAAG,KAAK,CAAC;QAO7B;;WAEG;QACO,UAAK,GAAsB,IAAI,YAAY,EAAO,CAAC;QAE7D;;WAEG;QACI,YAAO,GAAG,QAAQ,CAAC;QAE1B;;WAEG;QACI,cAAS,GAAG,KAAK,CAAC;IAQzB,CAAC;IAED;;OAEG;IACH,gCAAO,GAAP;QAAA,iBAWC;QAVC,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,UAAU,CAAC;gBACT,KAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,KAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAClB,KAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;SAET;IACH,CAAC;IAjDQ;QAAR,KAAK,EAAE;;mDAAiB;IAKhB;QAAR,KAAK,EAAE;;uDAAqB;IAKpB;QAAR,KAAK,EAAE;;gDAAiB;IAKf;QAAT,MAAM,EAAE;0CAAQ,YAAY;iDAAgC;IApBlD,cAAc;QAX1B,SAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,aAAa,EAAE,iBAAiB,CAAC,IAAI;YACrC,UAAU,EAAE;gBACV,OAAO,CAAC,YAAY,EAAE;oBACpB,YAAY,EAAE,YAAY;iBAC3B,CAAC;aACH;YACD,WAAW,EAAE,wBAAwB;YACrC,SAAS,EAAE,CAAC,wBAAwB,CAAC;SACtC,CAAC;iDAsCyB,iBAAiB;OArC/B,cAAc,CAuD1B;IAAD,qBAAC;CAAA,AAvDD,IAuDC;SAvDY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/alert/aletr-type.js b/src/app/shared/alert/aletr-type.js deleted file mode 100644 index cbd99c8234..0000000000 --- a/src/app/shared/alert/aletr-type.js +++ /dev/null @@ -1,8 +0,0 @@ -export var AlertType; -(function (AlertType) { - AlertType["Success"] = "alert-success"; - AlertType["Error"] = "alert-danger"; - AlertType["Info"] = "alert-info"; - AlertType["Warning"] = "alert-warning"; -})(AlertType || (AlertType = {})); -//# sourceMappingURL=aletr-type.js.map \ No newline at end of file diff --git a/src/app/shared/alert/aletr-type.js.map b/src/app/shared/alert/aletr-type.js.map deleted file mode 100644 index 856e8e7b2f..0000000000 --- a/src/app/shared/alert/aletr-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"aletr-type.js","sourceRoot":"","sources":["aletr-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,sCAAyB,CAAA;IACzB,mCAAsB,CAAA;IACtB,gCAAmB,CAAA;IACnB,sCAAyB,CAAA;AAC3B,CAAC,EALW,SAAS,KAAT,SAAS,QAKpB"} \ No newline at end of file diff --git a/src/app/shared/animations/bgColor.js b/src/app/shared/animations/bgColor.js deleted file mode 100644 index 8935f336b4..0000000000 --- a/src/app/shared/animations/bgColor.js +++ /dev/null @@ -1,12 +0,0 @@ -import { animate, animateChild, group, query, state, style, transition, trigger } from '@angular/animations'; -var startStyle = style({ backgroundColor: '{{ startColor }}' }); -var endStyle = style({ backgroundColor: '{{ endColor }}' }); -export var bgColor = trigger('bgColor', [ - state('startBackground', startStyle, { params: { startColor: '*' } }), - state('endBackground', endStyle, { params: { endColor: '*' } }), - transition('startBackground <=> endBackground', group([ - query('@*', animateChild()), - animate('200ms'), - ])) -]); -//# sourceMappingURL=bgColor.js.map \ No newline at end of file diff --git a/src/app/shared/animations/bgColor.js.map b/src/app/shared/animations/bgColor.js.map deleted file mode 100644 index 34f08a2cc2..0000000000 --- a/src/app/shared/animations/bgColor.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bgColor.js","sourceRoot":"","sources":["bgColor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,YAAY,EACZ,KAAK,EAAE,KAAK,EACZ,KAAK,EACL,KAAK,EACL,UAAU,EACV,OAAO,EACR,MAAM,qBAAqB,CAAC;AAE7B,IAAM,UAAU,GAAG,KAAK,CAAC,EAAE,eAAe,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAClE,IAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAE9D,MAAM,CAAC,IAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EACtC;IACE,KAAK,CAAC,iBAAiB,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC;IACrE,KAAK,CAAC,eAAe,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;IAC/D,UAAU,CAAC,mCAAmC,EAC5C,KAAK,CACH;QACE,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC;QAC3B,OAAO,CAAC,OAAO,CAAC;KAEjB,CACF,CAAC;CACL,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fade.js b/src/app/shared/animations/fade.js deleted file mode 100644 index dc92c5a630..0000000000 --- a/src/app/shared/animations/fade.js +++ /dev/null @@ -1,30 +0,0 @@ -import { animate, state, style, transition, trigger } from '@angular/animations'; -export var fadeInState = state('fadeIn', style({ opacity: 1 })); -export var fadeInEnter = transition('* => fadeIn', [ - style({ opacity: 0 }), - animate(300, style({ opacity: 1 })) -]); -var fadeEnter = transition(':enter', [ - style({ opacity: 0 }), - animate(300, style({ opacity: 1 })) -]); -export var fadeOutState = state('fadeOut', style({ opacity: 0 })); -export var fadeOutLeave = transition('fadeIn => fadeOut', [ - style({ opacity: 1 }), - animate(400, style({ opacity: 0 })) -]); -var fadeLeave = transition(':leave', [ - style({ opacity: 0 }), - animate(300, style({ opacity: 1 })) -]); -export var fadeIn = trigger('fadeIn', [ - fadeEnter -]); -export var fadeOut = trigger('fadeOut', [ - fadeLeave -]); -export var fadeInOut = trigger('fadeInOut', [ - fadeEnter, - fadeLeave -]); -//# sourceMappingURL=fade.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fade.js.map b/src/app/shared/animations/fade.js.map deleted file mode 100644 index 0c99723e76..0000000000 --- a/src/app/shared/animations/fade.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fade.js","sourceRoot":"","sources":["fade.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;AAChE,MAAM,CAAC,IAAM,WAAW,GAAI,UAAU,CAAC,aAAa,EAAE;IACpD,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACpC,CAAC,CAAC;AACH,IAAM,SAAS,GAAI,UAAU,CAAC,QAAQ,EAAE;IACtC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;AAClE,MAAM,CAAC,IAAM,YAAY,GAAG,UAAU,CAAC,mBAAmB,EAAE;IAC1D,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACpC,CAAC,CAAC;AACH,IAAM,SAAS,GAAI,UAAU,CAAC,QAAQ,EAAE;IACtC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACpC,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE;IACtC,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE;IACxC,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAC5C,SAAS;IACT,SAAS;CACV,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/focus.js b/src/app/shared/animations/focus.js deleted file mode 100644 index 9d55caeb52..0000000000 --- a/src/app/shared/animations/focus.js +++ /dev/null @@ -1,12 +0,0 @@ -import { animate, state, transition, trigger, style } from '@angular/animations'; -export var focusShadow = trigger('focusShadow', [ - state('focus', style({ boxShadow: 'rgba(119, 119, 119, 0.6) 0px 0px 6px' })), - state('blur', style({ boxShadow: 'none' })), - transition('focus <=> blur', [animate('250ms')]) -]); -export var focusBackground = trigger('focusBackground', [ - state('focus', style({ backgroundColor: 'rgba(119, 119, 119, 0.1)' })), - state('blur', style({ backgroundColor: 'transparent' })), - transition('focus <=> blur', [animate('250ms')]) -]); -//# sourceMappingURL=focus.js.map \ No newline at end of file diff --git a/src/app/shared/animations/focus.js.map b/src/app/shared/animations/focus.js.map deleted file mode 100644 index f978a5c9ff..0000000000 --- a/src/app/shared/animations/focus.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"focus.js","sourceRoot":"","sources":["focus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAEhD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,sCAAsC,EAAE,CAAC,CAAC;IAE5E,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IAE3C,UAAU,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;CACjD,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,EAAE;IAExD,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,eAAe,EAAE,0BAA0B,EAAE,CAAC,CAAC;IAEtE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC,CAAC;IAExD,UAAU,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;CACjD,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fromBottom.js b/src/app/shared/animations/fromBottom.js deleted file mode 100644 index 2447dc0ca7..0000000000 --- a/src/app/shared/animations/fromBottom.js +++ /dev/null @@ -1,22 +0,0 @@ -import { animate, state, style, transition, trigger } from '@angular/animations'; -export var fromBottomInState = state('fromBottomIn', style({ opacity: 1, transform: 'translateY(0)' })); -export var fromBottomEnter = transition('* => fromBottomIn', [ - style({ opacity: 0, transform: 'translateY(5%)' }), - animate('400ms ease-in-out') -]); -export var fromBottomOutState = state('fromBottomOut', style({ opacity: 0, transform: 'translateY(-5%)' })); -export var fromBottomLeave = transition('fromBottomIn => fromBottomOut', [ - style({ opacity: 1, transform: 'translateY(0)' }), - animate('300ms ease-in-out') -]); -export var fromBottomIn = trigger('fromBottomIn', [ - fromBottomEnter -]); -export var fromBottomOut = trigger('fromBottomOut', [ - fromBottomLeave -]); -export var fromBottomInOut = trigger('fromBottomInOut', [ - fromBottomEnter, - fromBottomLeave -]); -//# sourceMappingURL=fromBottom.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fromBottom.js.map b/src/app/shared/animations/fromBottom.js.map deleted file mode 100644 index 0ee4636ebf..0000000000 --- a/src/app/shared/animations/fromBottom.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fromBottom.js","sourceRoot":"","sources":["fromBottom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,iBAAiB,GAAG,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;AACxG,MAAM,CAAC,IAAM,eAAe,GAAG,UAAU,CAAC,mBAAmB,EAAE;IAC7D,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC;IAChD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,kBAAkB,GAAG,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC,CAAC,CAAC;AAC5G,MAAM,CAAC,IAAM,eAAe,GAAG,UAAU,CAAC,+BAA+B,EAAE;IACzE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC;IAC/C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,OAAO,CAAC,cAAc,EAAE;IAClD,eAAe;CAChB,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,aAAa,GAAG,OAAO,CAAC,eAAe,EAAE;IACpD,eAAe;CAChB,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,EAAE;IACxD,eAAe;IACf,eAAe;CAChB,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fromLeft.js b/src/app/shared/animations/fromLeft.js deleted file mode 100644 index ace2e29dac..0000000000 --- a/src/app/shared/animations/fromLeft.js +++ /dev/null @@ -1,22 +0,0 @@ -import { animate, state, style, transition, trigger } from '@angular/animations'; -export var fromLeftInState = state('fromLeftIn', style({ opacity: 1, transform: 'translateX(0)' })); -export var fromLeftEnter = transition('* => fromLeftIn', [ - style({ opacity: 0, transform: 'translateX(-5%)' }), - animate('400ms ease-in-out') -]); -export var fromLeftOutState = state('fromLeftOut', style({ opacity: 0, transform: 'translateX(5%)' })); -export var fromLeftLeave = transition('fromLeftIn => fromLeftOut', [ - style({ opacity: 1, transform: 'translateX(0)' }), - animate('300ms ease-in-out') -]); -export var fromLeftIn = trigger('fromLeftIn', [ - fromLeftEnter -]); -export var fromLeftOut = trigger('fromLeftOut', [ - fromLeftLeave -]); -export var fromLeftInOut = trigger('fromLeftInOut', [ - fromLeftEnter, - fromLeftLeave -]); -//# sourceMappingURL=fromLeft.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fromLeft.js.map b/src/app/shared/animations/fromLeft.js.map deleted file mode 100644 index 12e6f5d440..0000000000 --- a/src/app/shared/animations/fromLeft.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fromLeft.js","sourceRoot":"","sources":["fromLeft.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;AACpG,MAAM,CAAC,IAAM,aAAa,GAAG,UAAU,CAAC,iBAAiB,EAAE;IACzD,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC;IACjD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC,CAAC,CAAC;AACvG,MAAM,CAAC,IAAM,aAAa,GAAG,UAAU,CAAC,2BAA2B,EAAE;IACnE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC;IAC/C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE;IAC9C,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAChD,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,aAAa,GAAG,OAAO,CAAC,eAAe,EAAE;IACpD,aAAa;IACb,aAAa;CACd,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fromRight.js b/src/app/shared/animations/fromRight.js deleted file mode 100644 index 9c6aabb23f..0000000000 --- a/src/app/shared/animations/fromRight.js +++ /dev/null @@ -1,22 +0,0 @@ -import { animate, state, style, transition, trigger } from '@angular/animations'; -export var fromRightInState = state('fromRightIn', style({ opacity: 1, transform: 'translateX(0)' })); -export var fromRightEnter = transition('* => fromRightIn', [ - style({ opacity: 0, transform: 'translateX(5%)' }), - animate('400ms ease-in-out') -]); -export var fromRightOutState = state('fromRightOut', style({ opacity: 0, transform: 'translateX(-5%)' })); -export var fromRightLeave = transition('fromRightIn => fromRightOut', [ - style({ opacity: 1, transform: 'translateX(0)' }), - animate('300ms ease-in-out') -]); -export var fromRightIn = trigger('fromRightIn', [ - fromRightEnter -]); -export var fromRightOut = trigger('fromRightOut', [ - fromRightLeave -]); -export var fromRightInOut = trigger('fromRightInOut', [ - fromRightEnter, - fromRightLeave -]); -//# sourceMappingURL=fromRight.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fromRight.js.map b/src/app/shared/animations/fromRight.js.map deleted file mode 100644 index 2fb535b538..0000000000 --- a/src/app/shared/animations/fromRight.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fromRight.js","sourceRoot":"","sources":["fromRight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;AACtG,MAAM,CAAC,IAAM,cAAc,GAAG,UAAU,CAAC,kBAAkB,EAAE;IAC3D,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC;IAChD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,iBAAiB,GAAG,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC,CAAC,CAAC;AAC1G,MAAM,CAAC,IAAM,cAAc,GAAG,UAAU,CAAC,6BAA6B,EAAE;IACtE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC;IAC/C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAChD,cAAc;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,OAAO,CAAC,cAAc,EAAE;IAClD,cAAc;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,cAAc,GAAG,OAAO,CAAC,gBAAgB,EAAE;IACtD,cAAc;IACd,cAAc;CACf,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/fromTop.js b/src/app/shared/animations/fromTop.js deleted file mode 100644 index 9c65ebae57..0000000000 --- a/src/app/shared/animations/fromTop.js +++ /dev/null @@ -1,22 +0,0 @@ -import { animate, state, style, transition, trigger } from '@angular/animations'; -export var fromTopInState = state('fromTopIn', style({ opacity: 1, transform: 'translateY(0)' })); -export var fromTopEnter = transition('* => fromTopIn', [ - style({ opacity: 0, transform: 'translateY(-5%)' }), - animate('400ms ease-in-out') -]); -export var fromTopOutState = state('fromTopOut', style({ opacity: 0, transform: 'translateY(5%)' })); -export var fromTopLeave = transition('fromTopIn => fromTopOut', [ - style({ opacity: 1, transform: 'translateY(0)' }), - animate('300ms ease-in-out') -]); -export var fromTopIn = trigger('fromTopIn', [ - fromTopEnter -]); -export var fromTopOut = trigger('fromTopOut', [ - fromTopLeave -]); -export var fromTopInOut = trigger('fromTopInOut', [ - fromTopEnter, - fromTopLeave -]); -//# sourceMappingURL=fromTop.js.map \ No newline at end of file diff --git a/src/app/shared/animations/fromTop.js.map b/src/app/shared/animations/fromTop.js.map deleted file mode 100644 index 442316ab09..0000000000 --- a/src/app/shared/animations/fromTop.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"fromTop.js","sourceRoot":"","sources":["fromTop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,cAAc,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;AAClG,MAAM,CAAC,IAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,EAAE;IACvD,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAC,CAAC;IACjD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAC,CAAC,CAAC,CAAC;AACrG,MAAM,CAAC,IAAM,YAAY,GAAG,UAAU,CAAC,yBAAyB,EAAE;IAChE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,eAAe,EAAC,CAAC;IAC/C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAC5C,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE;IAC9C,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,YAAY,GAAG,OAAO,CAAC,cAAc,EAAE;IAClD,YAAY;IACZ,YAAY;CACb,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/overlay.js b/src/app/shared/animations/overlay.js deleted file mode 100644 index 168cac167e..0000000000 --- a/src/app/shared/animations/overlay.js +++ /dev/null @@ -1,7 +0,0 @@ -import { animate, state, transition, trigger, style } from '@angular/animations'; -export var overlay = trigger('overlay', [ - state('show', style({ opacity: 0.5 })), - state('hide', style({ opacity: 0 })), - transition('show <=> hide', animate(250)) -]); -//# sourceMappingURL=overlay.js.map \ No newline at end of file diff --git a/src/app/shared/animations/overlay.js.map b/src/app/shared/animations/overlay.js.map deleted file mode 100644 index 4a7b1ff05a..0000000000 --- a/src/app/shared/animations/overlay.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"overlay.js","sourceRoot":"","sources":["overlay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE;IAExC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;IAEtC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAEpC,UAAU,CAAC,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;CAC1C,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/push.js b/src/app/shared/animations/push.js deleted file mode 100644 index 42a0cf191b..0000000000 --- a/src/app/shared/animations/push.js +++ /dev/null @@ -1,12 +0,0 @@ -import { animate, state, transition, trigger, style } from '@angular/animations'; -export var pushInOut = trigger('pushInOut', [ - /* - state('expanded', style({ right: '100%' })); - - state('collapsed', style({ right: 0 })); - */ - state('expanded', style({ left: '100%' })), - state('collapsed', style({ left: 0 })), - transition('expanded <=> collapsed', animate(250)), -]); -//# sourceMappingURL=push.js.map \ No newline at end of file diff --git a/src/app/shared/animations/push.js.map b/src/app/shared/animations/push.js.map deleted file mode 100644 index e13df10003..0000000000 --- a/src/app/shared/animations/push.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"push.js","sourceRoot":"","sources":["push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAE5C;;;;IAIA;IAEA,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAE1C,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAEtC,UAAU,CAAC,wBAAwB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;CACnD,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/rotate.js b/src/app/shared/animations/rotate.js deleted file mode 100644 index 6fcd8586cf..0000000000 --- a/src/app/shared/animations/rotate.js +++ /dev/null @@ -1,31 +0,0 @@ -import { animate, state, style, transition, trigger } from '@angular/animations'; -export var rotateInState = state('rotateIn', style({ opacity: 1, transform: 'rotate(0deg)' })); -export var rotateEnter = transition('* => rotateIn', [ - style({ opacity: 0, transform: 'rotate(5deg)' }), - animate('400ms ease-in-out') -]); -export var rotateOutState = state('rotateOut', style({ opacity: 0, transform: 'rotate(5deg)' })); -export var rotateLeave = transition('rotateIn => rotateOut', [ - style({ opacity: 1, transform: 'rotate(0deg)' }), - animate('400ms ease-in-out') -]); -export var rotateIn = trigger('rotateIn', [ - rotateEnter -]); -export var rotateOut = trigger('rotateOut', [ - rotateLeave -]); -export var rotateInOut = trigger('rotateInOut', [ - rotateEnter, - rotateLeave -]); -var expandedStyle = { transform: 'rotate(90deg)' }; -var collapsedStyle = { transform: 'rotate(0deg)' }; -export var rotate = trigger('rotate', [ - state('expanded', style(expandedStyle)), - state('collapsed', style(collapsedStyle)), - transition('expanded <=> collapsed', [ - animate('200ms') - ]) -]); -//# sourceMappingURL=rotate.js.map \ No newline at end of file diff --git a/src/app/shared/animations/rotate.js.map b/src/app/shared/animations/rotate.js.map deleted file mode 100644 index e2c07bcf5c..0000000000 --- a/src/app/shared/animations/rotate.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"rotate.js","sourceRoot":"","sources":["rotate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,aAAa,GAAG,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;AACjG,MAAM,CAAC,IAAM,WAAW,GAAG,UAAU,CAAC,eAAe,EAAE;IACrD,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;IAChD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,cAAc,GAAG,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;AACnG,MAAM,CAAC,IAAM,WAAW,GAAG,UAAU,CAAC,uBAAuB,EAAE;IAC7D,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;IAChD,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE;IAC1C,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAC5C,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAChD,WAAW;IACX,WAAW;CACZ,CAAC,CAAC;AAEH,IAAM,aAAa,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;AACrD,IAAM,cAAc,GAAG,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;AAErD,MAAM,CAAC,IAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EACpC;IACE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IACvC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACzC,UAAU,CAAC,wBAAwB,EAAE;QACnC,OAAO,CAAC,OAAO,CAAC;KACjB,CAAC;CAEH,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/scale.js b/src/app/shared/animations/scale.js deleted file mode 100644 index 0b957dcef0..0000000000 --- a/src/app/shared/animations/scale.js +++ /dev/null @@ -1,22 +0,0 @@ -import { animate, state, style, transition, trigger } from '@angular/animations'; -export var scaleInState = state('scaleIn', style({ opacity: 1, transform: 'scale(1)' })); -export var scaleEnter = transition('* => scaleIn', [ - style({ opacity: 0, transform: 'scale(0)' }), - animate('400ms ease-in-out') -]); -export var scaleOutState = state('scaleOut', style({ opacity: 0, transform: 'scale(0)' })); -export var scaleLeave = transition('scaleIn => scaleOut', [ - style({ opacity: 1, transform: 'scale(1)' }), - animate('400ms ease-in-out') -]); -export var scaleIn = trigger('scaleIn', [ - scaleEnter -]); -export var scaleOut = trigger('scaleOut', [ - scaleLeave -]); -export var scaleInOut = trigger('scaleInOut', [ - scaleEnter, - scaleLeave -]); -//# sourceMappingURL=scale.js.map \ No newline at end of file diff --git a/src/app/shared/animations/scale.js.map b/src/app/shared/animations/scale.js.map deleted file mode 100644 index 210c724577..0000000000 --- a/src/app/shared/animations/scale.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"scale.js","sourceRoot":"","sources":["scale.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC,CAAC,CAAC;AACzF,MAAM,CAAC,IAAM,UAAU,GAAI,UAAU,CAAC,cAAc,EAAE;IACpD,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC;IAC1C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,aAAa,GAAG,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC,CAAC,CAAC;AAC3F,MAAM,CAAC,IAAM,UAAU,GAAG,UAAU,CAAC,qBAAqB,EAAE;IAC1D,KAAK,CAAC,EAAC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC;IAC1C,OAAO,CAAC,mBAAmB,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE;IACxC,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE;IAC1C,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE;IAC9C,UAAU;IACV,UAAU;CACX,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/shrink.js b/src/app/shared/animations/shrink.js deleted file mode 100644 index 219953756f..0000000000 --- a/src/app/shared/animations/shrink.js +++ /dev/null @@ -1,13 +0,0 @@ -import { animate, state, style, transition, trigger } from '@angular/animations'; -export var shrinkInOut = trigger('shrinkInOut', [ - state('in', style({ height: '100%', opacity: 1 })), - transition('* => void', [ - style({ height: '!', opacity: 1 }), - animate(200, style({ height: 0, opacity: 0 })) - ]), - transition('void => *', [ - style({ height: 0, opacity: 0 }), - animate(200, style({ height: '*', opacity: 1 })) - ]) -]); -//# sourceMappingURL=shrink.js.map \ No newline at end of file diff --git a/src/app/shared/animations/shrink.js.map b/src/app/shared/animations/shrink.js.map deleted file mode 100644 index 084ccfa583..0000000000 --- a/src/app/shared/animations/shrink.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"shrink.js","sourceRoot":"","sources":["shrink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF,MAAM,CAAC,IAAM,WAAW,GAAG,OAAO,CAAC,aAAa,EAAE;IAChD,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC;IAChD,UAAU,CAAC,WAAW,EAAE;QACtB,KAAK,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;QAChC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC;KAC7C,CAAC;IACF,UAAU,CAAC,WAAW,EAAE;QACtB,KAAK,CAAC,EAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC,CAAC;KAC/C,CAAC;CACH,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/animations/slide.js b/src/app/shared/animations/slide.js deleted file mode 100644 index ee6098ab69..0000000000 --- a/src/app/shared/animations/slide.js +++ /dev/null @@ -1,45 +0,0 @@ -import { animate, animateChild, group, query, state, style, transition, trigger } from '@angular/animations'; -export var slide = trigger('slide', [ - state('expanded', style({ height: '*' })), - state('collapsed', style({ height: 0 })), - state('void', style({ height: 0 })), - state('*', style({ height: '*' })), - transition(':enter', [animate('200ms')]), - transition(':leave', [animate('200ms')]), - transition('expanded <=> collapsed', animate(250)) -]); -export var slideHorizontal = trigger('slideHorizontal', [ - state('void', style({ width: 0 })), - state('*', style({ width: '*' })), - transition(':enter', [animate('200ms')]), - transition(':leave', [animate('200ms')]) -]); -export var slideMobileNav = trigger('slideMobileNav', [ - state('expanded', style({ height: '100vh' })), - state('collapsed', style({ height: 0 })), - transition('expanded <=> collapsed', animate('300ms')) -]); -var collapsedStyle = style({ marginLeft: '-{{ sidebarWidth }}' }); -var expandedStyle = style({ marginLeft: '0' }); -var options = { params: { sidebarWidth: '*' } }; -export var slideSidebar = trigger('slideSidebar', [ - transition('expanded => collapsed', group([ - query('@*', animateChild()), - query('.sidebar-collapsible', expandedStyle, options), - query('.sidebar-collapsible', animate('300ms ease-in-out', collapsedStyle)) - ])), - transition('collapsed => expanded', group([ - query('@*', animateChild()), - query('.sidebar-collapsible', collapsedStyle), - query('.sidebar-collapsible', animate('300ms ease-in-out', expandedStyle), options) - ])) -]); -export var slideSidebarPadding = trigger('slideSidebarPadding', [ - state('hidden', style({ paddingLeft: 0 })), - state('shown', style({ paddingLeft: '{{ collapsedSidebarWidth }}' }), { params: { collapsedSidebarWidth: '*' } }), - state('expanded', style({ paddingLeft: '{{ totalSidebarWidth }}' }), { params: { totalSidebarWidth: '*' } }), - transition('hidden <=> shown', [animate('200ms')]), - transition('hidden <=> expanded', [animate('200ms')]), - transition('shown <=> expanded', [animate('200ms')]), -]); -//# sourceMappingURL=slide.js.map \ No newline at end of file diff --git a/src/app/shared/animations/slide.js.map b/src/app/shared/animations/slide.js.map deleted file mode 100644 index d21fb79207..0000000000 --- a/src/app/shared/animations/slide.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"slide.js","sourceRoot":"","sources":["slide.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/auth-nav-menu/auth-nav-menu.component.js b/src/app/shared/auth-nav-menu/auth-nav-menu.component.js deleted file mode 100644 index 828f0e88f8..0000000000 --- a/src/app/shared/auth-nav-menu/auth-nav-menu.component.js +++ /dev/null @@ -1,41 +0,0 @@ -import * as tslib_1 from "tslib"; -import { of as observableOf } from 'rxjs'; -import { filter, map } from 'rxjs/operators'; -import { Component } from '@angular/core'; -import { select, Store } from '@ngrx/store'; -import { fadeInOut, fadeOut } from '../animations/fade'; -import { HostWindowService } from '../host-window.service'; -import { routerStateSelector } from '../../app.reducer'; -import { isNotUndefined } from '../empty.util'; -import { getAuthenticatedUser, isAuthenticated, isAuthenticationLoading } from '../../core/auth/selectors'; -import { LOGIN_ROUTE, LOGOUT_ROUTE } from '../../core/auth/auth.service'; -var AuthNavMenuComponent = /** @class */ (function () { - function AuthNavMenuComponent(store, windowService) { - this.store = store; - this.windowService = windowService; - this.showAuth = observableOf(false); - this.isXsOrSm$ = this.windowService.isXsOrSm(); - } - AuthNavMenuComponent.prototype.ngOnInit = function () { - // set isAuthenticated - this.isAuthenticated = this.store.pipe(select(isAuthenticated)); - // set loading - this.loading = this.store.pipe(select(isAuthenticationLoading)); - this.user = this.store.pipe(select(getAuthenticatedUser)); - this.showAuth = this.store.pipe(select(routerStateSelector), filter(function (router) { return isNotUndefined(router) && isNotUndefined(router.state); }), map(function (router) { return (!router.state.url.startsWith(LOGIN_ROUTE) - && !router.state.url.startsWith(LOGOUT_ROUTE)); })); - }; - AuthNavMenuComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-auth-nav-menu', - templateUrl: './auth-nav-menu.component.html', - styleUrls: ['./auth-nav-menu.component.scss'], - animations: [fadeInOut, fadeOut] - }), - tslib_1.__metadata("design:paramtypes", [Store, - HostWindowService]) - ], AuthNavMenuComponent); - return AuthNavMenuComponent; -}()); -export { AuthNavMenuComponent }; -//# sourceMappingURL=auth-nav-menu.component.js.map \ No newline at end of file diff --git a/src/app/shared/auth-nav-menu/auth-nav-menu.component.js.map b/src/app/shared/auth-nav-menu/auth-nav-menu.component.js.map deleted file mode 100644 index 85e26fb386..0000000000 --- a/src/app/shared/auth-nav-menu/auth-nav-menu.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-nav-menu.component.js","sourceRoot":"","sources":["auth-nav-menu.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAc,EAAE,IAAI,YAAY,EAAgB,MAAM,MAAM,CAAC;AAEpE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAY,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAE3G,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAQzE;IAqBE,8BAAoB,KAAsB,EACtB,aAAgC;QADhC,UAAK,GAAL,KAAK,CAAiB;QACtB,kBAAa,GAAb,aAAa,CAAmB;QAP7C,aAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QASpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,uCAAQ,GAAR;QACE,sBAAsB;QACtB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QAEhE,cAAc;QACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAEhE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAE1D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC7B,MAAM,CAAC,mBAAmB,CAAC,EAC3B,MAAM,CAAC,UAAC,MAA0B,IAAK,OAAA,cAAc,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAtD,CAAsD,CAAC,EAC9F,GAAG,CAAC,UAAC,MAA0B,IAAK,OAAA,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC;eACzE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EADZ,CACY,CAC/C,CACF,CAAC;IACJ,CAAC;IA3CU,oBAAoB;QANhC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,gCAAgC;YAC7C,SAAS,EAAE,CAAC,gCAAgC,CAAC;YAC7C,UAAU,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC;SACjC,CAAC;iDAsB2B,KAAK;YACG,iBAAiB;OAtBzC,oBAAoB,CA4ChC;IAAD,2BAAC;CAAA,AA5CD,IA4CC;SA5CY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js b/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js deleted file mode 100644 index 1137f082db..0000000000 --- a/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { select, Store } from '@ngrx/store'; -import { getAuthenticatedUser, isAuthenticationLoading } from '../../../core/auth/selectors'; -import { MYDSPACE_ROUTE } from '../../../+my-dspace-page/my-dspace-page.component'; -/** - * This component represents the user nav menu. - */ -var UserMenuComponent = /** @class */ (function () { - function UserMenuComponent(store) { - this.store = store; - /** - * The mydspace page route. - * @type {string} - */ - this.mydspaceRoute = MYDSPACE_ROUTE; - } - /** - * Initialize all instance variables - */ - UserMenuComponent.prototype.ngOnInit = function () { - // set loading - this.loading$ = this.store.pipe(select(isAuthenticationLoading)); - // set user - this.user$ = this.store.pipe(select(getAuthenticatedUser)); - }; - UserMenuComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-user-menu', - templateUrl: './user-menu.component.html', - styleUrls: ['./user-menu.component.scss'] - }), - tslib_1.__metadata("design:paramtypes", [Store]) - ], UserMenuComponent); - return UserMenuComponent; -}()); -export { UserMenuComponent }; -//# sourceMappingURL=user-menu.component.js.map \ No newline at end of file diff --git a/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js.map b/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js.map deleted file mode 100644 index ce06b1675a..0000000000 --- a/src/app/shared/auth-nav-menu/user-menu/user-menu.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"user-menu.component.js","sourceRoot":"","sources":["user-menu.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAI5C,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC7F,OAAO,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AAEnF;;GAEG;AAMH;IAoBE,2BAAoB,KAAsB;QAAtB,UAAK,GAAL,KAAK,CAAiB;QAN1C;;;WAGG;QACI,kBAAa,GAAG,cAAc,CAAC;IAGtC,CAAC;IAED;;OAEG;IACH,oCAAQ,GAAR;QAEE,cAAc;QACd,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAEjE,WAAW;QACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAE7D,CAAC;IAlCU,iBAAiB;QAL7B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,WAAW,EAAE,4BAA4B;YACzC,SAAS,EAAE,CAAC,4BAA4B,CAAC;SAC1C,CAAC;iDAqB2B,KAAK;OApBrB,iBAAiB,CAmC7B;IAAD,wBAAC;CAAA,AAnCD,IAmCC;SAnCY,iBAAiB"} \ No newline at end of file diff --git a/src/app/shared/authority-confidence/authority-confidence-state.directive.js b/src/app/shared/authority-confidence/authority-confidence-state.directive.js deleted file mode 100644 index 85001ab2b9..0000000000 --- a/src/app/shared/authority-confidence/authority-confidence-state.directive.js +++ /dev/null @@ -1,134 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, ElementRef, EventEmitter, HostListener, Inject, Input, Output, Renderer2 } from '@angular/core'; -import { findIndex } from 'lodash'; -import { AuthorityValue } from '../../core/integration/models/authority.value'; -import { FormFieldMetadataValueObject } from '../form/builder/models/form-field-metadata-value.model'; -import { ConfidenceType } from '../../core/integration/models/confidence-type'; -import { isNotEmpty, isNull } from '../empty.util'; -import { GLOBAL_CONFIG } from '../../../config'; -/** - * Directive to add to the element a bootstrap utility class based on metadata confidence value - */ -var AuthorityConfidenceStateDirective = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {GlobalConfig} EnvConfig - * @param {ElementRef} elem - * @param {Renderer2} renderer - */ - function AuthorityConfidenceStateDirective(EnvConfig, elem, renderer) { - this.EnvConfig = EnvConfig; - this.elem = elem; - this.renderer = renderer; - /** - * A boolean representing if to show html icon if authority value is empty - */ - this.visibleWhenAuthorityEmpty = true; - /** - * The css class applied before directive changes - */ - this.previousClass = null; - /** - * An event fired when click on element that has a confidence value empty or different from CF_ACCEPTED - */ - this.whenClickOnConfidenceNotAccepted = new EventEmitter(); - } - /** - * Listener to click event - */ - AuthorityConfidenceStateDirective.prototype.onClick = function () { - if (isNotEmpty(this.authorityValue) && this.getConfidenceByValue(this.authorityValue) !== ConfidenceType.CF_ACCEPTED) { - this.whenClickOnConfidenceNotAccepted.emit(this.getConfidenceByValue(this.authorityValue)); - } - }; - /** - * Apply css class to element whenever authority value change - * - * @param {SimpleChanges} changes - */ - AuthorityConfidenceStateDirective.prototype.ngOnChanges = function (changes) { - if (!changes.authorityValue.firstChange) { - this.previousClass = this.getClassByConfidence(this.getConfidenceByValue(changes.authorityValue.previousValue)); - } - this.newClass = this.getClassByConfidence(this.getConfidenceByValue(changes.authorityValue.currentValue)); - if (isNull(this.previousClass)) { - this.renderer.addClass(this.elem.nativeElement, this.newClass); - } - else if (this.previousClass !== this.newClass) { - this.renderer.removeClass(this.elem.nativeElement, this.previousClass); - this.renderer.addClass(this.elem.nativeElement, this.newClass); - } - }; - /** - * Apply css class to element after view init - */ - AuthorityConfidenceStateDirective.prototype.ngAfterViewInit = function () { - if (isNull(this.previousClass)) { - this.renderer.addClass(this.elem.nativeElement, this.newClass); - } - else if (this.previousClass !== this.newClass) { - this.renderer.removeClass(this.elem.nativeElement, this.previousClass); - this.renderer.addClass(this.elem.nativeElement, this.newClass); - } - }; - /** - * Return confidence value as ConfidenceType - * - * @param value - */ - AuthorityConfidenceStateDirective.prototype.getConfidenceByValue = function (value) { - var confidence = ConfidenceType.CF_UNSET; - if (isNotEmpty(value) && value instanceof AuthorityValue && value.hasAuthority()) { - confidence = ConfidenceType.CF_ACCEPTED; - } - if (isNotEmpty(value) && value instanceof FormFieldMetadataValueObject) { - confidence = value.confidence; - } - return confidence; - }; - /** - * Return the properly css class based on confidence value - * - * @param confidence - */ - AuthorityConfidenceStateDirective.prototype.getClassByConfidence = function (confidence) { - if (!this.visibleWhenAuthorityEmpty && confidence === ConfidenceType.CF_UNSET) { - return 'd-none'; - } - var confidenceIcons = this.EnvConfig.submission.icons.authority.confidence; - var confidenceIndex = findIndex(confidenceIcons, { value: confidence }); - var defaultconfidenceIndex = findIndex(confidenceIcons, { value: 'default' }); - var defaultClass = (defaultconfidenceIndex !== -1) ? confidenceIcons[defaultconfidenceIndex].style : ''; - return (confidenceIndex !== -1) ? confidenceIcons[confidenceIndex].style : defaultClass; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], AuthorityConfidenceStateDirective.prototype, "authorityValue", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], AuthorityConfidenceStateDirective.prototype, "visibleWhenAuthorityEmpty", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], AuthorityConfidenceStateDirective.prototype, "whenClickOnConfidenceNotAccepted", void 0); - tslib_1.__decorate([ - HostListener('click'), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", []), - tslib_1.__metadata("design:returntype", void 0) - ], AuthorityConfidenceStateDirective.prototype, "onClick", null); - AuthorityConfidenceStateDirective = tslib_1.__decorate([ - Directive({ - selector: '[dsAuthorityConfidenceState]' - }), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, ElementRef, - Renderer2]) - ], AuthorityConfidenceStateDirective); - return AuthorityConfidenceStateDirective; -}()); -export { AuthorityConfidenceStateDirective }; -//# sourceMappingURL=authority-confidence-state.directive.js.map \ No newline at end of file diff --git a/src/app/shared/authority-confidence/authority-confidence-state.directive.js.map b/src/app/shared/authority-confidence/authority-confidence-state.directive.js.map deleted file mode 100644 index 397f4923c4..0000000000 --- a/src/app/shared/authority-confidence/authority-confidence-state.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"authority-confidence-state.directive.js","sourceRoot":"","sources":["authority-confidence-state.directive.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/browse-by/browse-by.component.js b/src/app/shared/browse-by/browse-by.component.js deleted file mode 100644 index af012851bb..0000000000 --- a/src/app/shared/browse-by/browse-by.component.js +++ /dev/null @@ -1,157 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Injector, Input, Output } from '@angular/core'; -import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; -import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; -import { fadeIn, fadeInOut } from '../animations/fade'; -import { Observable } from 'rxjs'; -import { getStartsWithComponent, StartsWithType } from '../starts-with/starts-with-decorator'; -var BrowseByComponent = /** @class */ (function () { - function BrowseByComponent(injector) { - this.injector = injector; - /** - * The type of StartsWith options used to define what component to render for the options - * Defaults to text - */ - this.type = StartsWithType.text; - /** - * The list of options to render for the StartsWith component - */ - this.startsWithOptions = []; - /** - * Whether or not the pagination should be rendered as simple previous and next buttons instead of the normal pagination - */ - this.enableArrows = false; - /** - * If enableArrows is set to true, should it hide the options gear? - */ - this.hideGear = false; - /** - * If enableArrows is set to true, emit when the previous button is clicked - */ - this.prev = new EventEmitter(); - /** - * If enableArrows is set to true, emit when the next button is clicked - */ - this.next = new EventEmitter(); - /** - * If enableArrows is set to true, emit when the page size is changed - */ - this.pageSizeChange = new EventEmitter(); - /** - * If enableArrows is set to true, emit when the sort direction is changed - */ - this.sortDirectionChange = new EventEmitter(); - /** - * Declare SortDirection enumeration to use it in the template - */ - this.sortDirections = SortDirection; - } - /** - * Go to the previous page - */ - BrowseByComponent.prototype.goPrev = function () { - this.prev.emit(true); - }; - /** - * Go to the next page - */ - BrowseByComponent.prototype.goNext = function () { - this.next.emit(true); - }; - /** - * Change the page size - * @param size - */ - BrowseByComponent.prototype.doPageSizeChange = function (size) { - this.paginationConfig.pageSize = size; - this.pageSizeChange.emit(size); - }; - /** - * Change the sort direction - * @param direction - */ - BrowseByComponent.prototype.doSortDirectionChange = function (direction) { - this.sortConfig.direction = direction; - this.sortDirectionChange.emit(direction); - }; - /** - * Get the switchable StartsWith component dependant on the type - */ - BrowseByComponent.prototype.getStartsWithComponent = function () { - return getStartsWithComponent(this.type); - }; - BrowseByComponent.prototype.ngOnInit = function () { - var _this = this; - this.objectInjector = Injector.create({ - providers: [{ provide: 'startsWithOptions', useFactory: function () { return (_this.startsWithOptions); }, deps: [] }], - parent: this.injector - }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], BrowseByComponent.prototype, "title", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Observable) - ], BrowseByComponent.prototype, "objects$", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", PaginationComponentOptions) - ], BrowseByComponent.prototype, "paginationConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SortOptions) - ], BrowseByComponent.prototype, "sortConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], BrowseByComponent.prototype, "type", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], BrowseByComponent.prototype, "startsWithOptions", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], BrowseByComponent.prototype, "enableArrows", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], BrowseByComponent.prototype, "hideGear", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], BrowseByComponent.prototype, "prev", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], BrowseByComponent.prototype, "next", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], BrowseByComponent.prototype, "pageSizeChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], BrowseByComponent.prototype, "sortDirectionChange", void 0); - BrowseByComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-browse-by', - styleUrls: ['./browse-by.component.scss'], - templateUrl: './browse-by.component.html', - animations: [ - fadeIn, - fadeInOut - ] - }) - /** - * Component to display a browse-by page for any ListableObject - */ - , - tslib_1.__metadata("design:paramtypes", [Injector]) - ], BrowseByComponent); - return BrowseByComponent; -}()); -export { BrowseByComponent }; -//# sourceMappingURL=browse-by.component.js.map \ No newline at end of file diff --git a/src/app/shared/browse-by/browse-by.component.js.map b/src/app/shared/browse-by/browse-by.component.js.map deleted file mode 100644 index 28f67adaaa..0000000000 --- a/src/app/shared/browse-by/browse-by.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-by.component.js","sourceRoot":"","sources":["browse-by.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/chips/chips.component.js b/src/app/shared/chips/chips.component.js deleted file mode 100644 index 3b806df7d9..0000000000 --- a/src/app/shared/chips/chips.component.js +++ /dev/null @@ -1,136 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output, } from '@angular/core'; -import { isObject } from 'lodash'; -import { Chips } from './models/chips.model'; -import { UploaderService } from '../uploader/uploader.service'; -import { TranslateService } from '@ngx-translate/core'; -var ChipsComponent = /** @class */ (function () { - function ChipsComponent(cdr, uploaderService, translate) { - this.cdr = cdr; - this.uploaderService = uploaderService; - this.translate = translate; - this.editable = true; - this.showIcons = false; - this.selected = new EventEmitter(); - this.remove = new EventEmitter(); - this.change = new EventEmitter(); - this.dragged = -1; - this.options = { - animation: 300, - chosenClass: 'm-0', - dragClass: 'm-0', - filter: '.chips-sort-ignore', - ghostClass: 'm-0' - }; - } - ChipsComponent.prototype.ngOnChanges = function (changes) { - if (changes.chips && !changes.chips.isFirstChange()) { - this.chips = changes.chips.currentValue; - } - }; - ChipsComponent.prototype.chipsSelected = function (event, index) { - event.preventDefault(); - if (this.editable) { - this.chips.getChips().forEach(function (item, i) { - if (i === index) { - item.setEditMode(); - } - else { - item.unsetEditMode(); - } - }); - this.selected.emit(index); - } - }; - ChipsComponent.prototype.removeChips = function (event, index) { - event.preventDefault(); - event.stopPropagation(); - // Can't remove if this element is in editMode - if (!this.chips.getChipByIndex(index).editMode) { - this.chips.remove(this.chips.getChipByIndex(index)); - } - }; - ChipsComponent.prototype.onDragStart = function (index) { - this.uploaderService.overrideDragOverPage(); - this.dragged = index; - }; - ChipsComponent.prototype.onDragEnd = function (event) { - this.uploaderService.allowDragOverPage(); - this.dragged = -1; - this.chips.updateOrder(); - }; - ChipsComponent.prototype.showTooltip = function (tooltip, index, field) { - var _this = this; - tooltip.close(); - var chipsItem = this.chips.getChipByIndex(index); - var textToDisplay = []; - if (!chipsItem.editMode && this.dragged === -1) { - if (field) { - if (isObject(chipsItem.item[field])) { - textToDisplay.push(chipsItem.item[field].display); - if (chipsItem.item[field].hasOtherInformation()) { - Object.keys(chipsItem.item[field].otherInformation) - .forEach(function (otherField) { - _this.translate.get('form.other-information.' + otherField) - .subscribe(function (label) { - textToDisplay.push(label + ': ' + chipsItem.item[field].otherInformation[otherField]); - }); - }); - } - } - else { - textToDisplay.push(chipsItem.item[field]); - } - } - else { - textToDisplay.push(chipsItem.display); - } - this.cdr.detectChanges(); - if (!chipsItem.hasIcons() || !chipsItem.hasVisibleIcons() || field) { - this.tipText = textToDisplay; - tooltip.open(); - } - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Chips) - ], ChipsComponent.prototype, "chips", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ChipsComponent.prototype, "wrapperClass", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ChipsComponent.prototype, "editable", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ChipsComponent.prototype, "showIcons", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ChipsComponent.prototype, "selected", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ChipsComponent.prototype, "remove", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ChipsComponent.prototype, "change", void 0); - ChipsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-chips', - styleUrls: ['./chips.component.scss'], - templateUrl: './chips.component.html', - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - UploaderService, - TranslateService]) - ], ChipsComponent); - return ChipsComponent; -}()); -export { ChipsComponent }; -//# sourceMappingURL=chips.component.js.map \ No newline at end of file diff --git a/src/app/shared/chips/chips.component.js.map b/src/app/shared/chips/chips.component.js.map deleted file mode 100644 index ecbcaa17e4..0000000000 --- a/src/app/shared/chips/chips.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chips.component.js","sourceRoot":"","sources":["chips.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/chips/models/chips-item.model.js b/src/app/shared/chips/models/chips-item.model.js deleted file mode 100644 index 98a8eb6d80..0000000000 --- a/src/app/shared/chips/models/chips-item.model.js +++ /dev/null @@ -1,88 +0,0 @@ -import { isObject, uniqueId } from 'lodash'; -import { hasValue, isNotEmpty } from '../../empty.util'; -import { ConfidenceType } from '../../../core/integration/models/confidence-type'; -var ChipsItem = /** @class */ (function () { - function ChipsItem(item, fieldToDisplay, objToDisplay, icons, editMode) { - if (fieldToDisplay === void 0) { fieldToDisplay = 'display'; } - this.id = uniqueId(); - this._item = item; - this.fieldToDisplay = fieldToDisplay; - this.objToDisplay = objToDisplay; - this.setDisplayText(); - this.editMode = editMode || false; - this.icons = icons || []; - } - Object.defineProperty(ChipsItem.prototype, "item", { - get: function () { - return this._item; - }, - set: function (item) { - this._item = item; - }, - enumerable: true, - configurable: true - }); - ChipsItem.prototype.isNestedItem = function () { - return (isNotEmpty(this.item) - && isObject(this.item) - && isNotEmpty(this.objToDisplay) - && this.item[this.objToDisplay]); - }; - ChipsItem.prototype.hasIcons = function () { - return isNotEmpty(this.icons); - }; - ChipsItem.prototype.hasVisibleIcons = function () { - if (isNotEmpty(this.icons)) { - var hasVisible = false; - // check if it has at least one visible icon - for (var _i = 0, _a = this.icons; _i < _a.length; _i++) { - var icon = _a[_i]; - if (this._item.hasOwnProperty(icon.metadata) - && (((typeof this._item[icon.metadata] === 'string') && hasValue(this._item[icon.metadata])) - || this._item[icon.metadata].hasValue()) - && !this._item[icon.metadata].hasPlaceholder()) { - if ((icon.visibleWhenAuthorityEmpty - || this._item[icon.metadata].confidence !== ConfidenceType.CF_UNSET) - && isNotEmpty(icon.style)) { - hasVisible = true; - break; - } - } - } - return hasVisible; - } - else { - return false; - } - }; - ChipsItem.prototype.setEditMode = function () { - this.editMode = true; - }; - ChipsItem.prototype.updateIcons = function (icons) { - this.icons = icons; - }; - ChipsItem.prototype.updateItem = function (item) { - this._item = item; - this.setDisplayText(); - }; - ChipsItem.prototype.unsetEditMode = function () { - this.editMode = false; - }; - ChipsItem.prototype.setDisplayText = function () { - var value = this._item; - if (isObject(this._item)) { - // Check If displayField is in an internal object - var obj = this.objToDisplay ? this._item[this.objToDisplay] : this._item; - if (isObject(obj) && obj) { - value = obj[this.fieldToDisplay] || obj.value; - } - else { - value = obj; - } - } - this.display = value; - }; - return ChipsItem; -}()); -export { ChipsItem }; -//# sourceMappingURL=chips-item.model.js.map \ No newline at end of file diff --git a/src/app/shared/chips/models/chips-item.model.js.map b/src/app/shared/chips/models/chips-item.model.js.map deleted file mode 100644 index efefb8f99a..0000000000 --- a/src/app/shared/chips/models/chips-item.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chips-item.model.js","sourceRoot":"","sources":["chips-item.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AASlF;IAUE,mBAAY,IAAS,EACT,cAAkC,EAClC,YAAqB,EACrB,KAAuB,EACvB,QAAkB;QAHlB,+BAAA,EAAA,0BAAkC;QAK5C,IAAI,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,KAAK,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,sBAAW,2BAAI;aAIf;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aAND,UAAgB,IAAI;YAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,CAAC;;;OAAA;IAMD,gCAAY,GAAZ;QACE,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;eACxB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;eACnB,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;eAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,4BAAQ,GAAR;QACG,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,mCAAe,GAAf;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC1B,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,4CAA4C;YAC5C,KAAmB,UAAU,EAAV,KAAA,IAAI,CAAC,KAAK,EAAV,cAAU,EAAV,IAAU,EAAE;gBAA1B,IAAM,IAAI,SAAA;gBACb,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC;uBACvC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;2BACtF,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAkC,CAAC,QAAQ,EAAE,CAAC;uBACzE,CAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAkC,CAAC,cAAc,EAAE,EAAE;oBAClF,IAAI,CAAC,IAAI,CAAC,yBAAyB;2BAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAkC,CAAC,UAAU,KAAK,cAAc,CAAC,QAAQ,CAAC;2BACnG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;wBAC3B,UAAU,GAAG,IAAI,CAAC;wBAClB,MAAM;qBACP;iBACF;aACF;YACD,OAAO,UAAU,CAAC;SACnB;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,+BAAW,GAAX;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,+BAAW,GAAX,UAAY,KAAsB;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,8BAAU,GAAV,UAAW,IAAS;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,iCAAa,GAAb;QACE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IAEO,kCAAc,GAAtB;QACE,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACvB,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACxB,iDAAiD;YACjD,IAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;YAE3E,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE;gBACxB,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC;aAC/C;iBAAM;gBACL,KAAK,GAAG,GAAG,CAAC;aACb;SACF;QAED,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IACH,gBAAC;AAAD,CAAC,AAnGD,IAmGC"} \ No newline at end of file diff --git a/src/app/shared/chips/models/chips.model.js b/src/app/shared/chips/models/chips.model.js deleted file mode 100644 index 83ae701633..0000000000 --- a/src/app/shared/chips/models/chips.model.js +++ /dev/null @@ -1,127 +0,0 @@ -import { findIndex, isEqual, isObject } from 'lodash'; -import { BehaviorSubject } from 'rxjs'; -import { ChipsItem } from './chips-item.model'; -import { hasValue, isNotEmpty } from '../../empty.util'; -import { PLACEHOLDER_PARENT_METADATA } from '../../form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; -import { FormFieldMetadataValueObject } from '../../form/builder/models/form-field-metadata-value.model'; -import { AuthorityValue } from '../../../core/integration/models/authority.value'; -var Chips = /** @class */ (function () { - function Chips(items, displayField, displayObj, iconsConfig) { - if (items === void 0) { items = []; } - if (displayField === void 0) { displayField = 'display'; } - this.displayField = displayField; - this.displayObj = displayObj; - this.iconsConfig = iconsConfig || []; - if (Array.isArray(items)) { - this.setInitialItems(items); - } - } - Chips.prototype.add = function (item) { - var icons = this.getChipsIcons(item); - var chipsItem = new ChipsItem(item, this.displayField, this.displayObj, icons); - var duplicatedIndex = findIndex(this._items, { display: chipsItem.display.trim() }); - if (duplicatedIndex === -1 || !isEqual(item, this.getChipByIndex(duplicatedIndex).item)) { - this._items.push(chipsItem); - this.chipsItems.next(this._items); - } - }; - Chips.prototype.getChipById = function (id) { - var index = findIndex(this._items, { id: id }); - return this.getChipByIndex(index); - }; - Chips.prototype.getChipByIndex = function (index) { - if (this._items.length > 0 && this._items[index]) { - return this._items[index]; - } - else { - return null; - } - }; - Chips.prototype.getChips = function () { - return this._items; - }; - /** - * To use to get items before to store it - * @returns {any[]} - */ - Chips.prototype.getChipsItems = function () { - var out = []; - this._items.forEach(function (item) { - out.push(item.item); - }); - return out; - }; - Chips.prototype.hasItems = function () { - return this._items.length > 0; - }; - Chips.prototype.hasPlaceholder = function (value) { - if (isObject(value)) { - return value.value === PLACEHOLDER_PARENT_METADATA; - } - else { - return value === PLACEHOLDER_PARENT_METADATA; - } - }; - Chips.prototype.remove = function (chipsItem) { - var index = findIndex(this._items, { id: chipsItem.id }); - this._items.splice(index, 1); - this.chipsItems.next(this._items); - }; - Chips.prototype.update = function (id, item) { - var chipsItemTarget = this.getChipById(id); - var icons = this.getChipsIcons(item); - chipsItemTarget.updateItem(item); - chipsItemTarget.updateIcons(icons); - chipsItemTarget.unsetEditMode(); - this.chipsItems.next(this._items); - }; - Chips.prototype.updateOrder = function () { - this.chipsItems.next(this._items); - }; - Chips.prototype.getChipsIcons = function (item) { - var _this = this; - var icons = []; - if (typeof item === 'string' || item instanceof FormFieldMetadataValueObject || item instanceof AuthorityValue) { - return icons; - } - var defaultConfigIndex = findIndex(this.iconsConfig, { name: 'default' }); - var defaultConfig = (defaultConfigIndex !== -1) ? this.iconsConfig[defaultConfigIndex] : undefined; - var config; - var configIndex; - var value; - Object.keys(item) - .forEach(function (metadata) { - value = item[metadata]; - configIndex = findIndex(_this.iconsConfig, { name: metadata }); - config = (configIndex !== -1) ? _this.iconsConfig[configIndex] : defaultConfig; - if (hasValue(value) && isNotEmpty(config) && !_this.hasPlaceholder(value)) { - var icon = void 0; - var visibleWhenAuthorityEmpty = _this.displayObj !== metadata; - // Set icon - icon = { - metadata: metadata, - visibleWhenAuthorityEmpty: visibleWhenAuthorityEmpty, - style: config.style - }; - icons.push(icon); - } - }); - return icons; - }; - /** - * Sets initial items, used in edit mode - */ - Chips.prototype.setInitialItems = function (items) { - var _this = this; - this._items = []; - items.forEach(function (item) { - var icons = _this.getChipsIcons(item); - var chipsItem = new ChipsItem(item, _this.displayField, _this.displayObj, icons); - _this._items.push(chipsItem); - }); - this.chipsItems = new BehaviorSubject(this._items); - }; - return Chips; -}()); -export { Chips }; -//# sourceMappingURL=chips.model.js.map \ No newline at end of file diff --git a/src/app/shared/chips/models/chips.model.js.map b/src/app/shared/chips/models/chips.model.js.map deleted file mode 100644 index 6f3f445f54..0000000000 --- a/src/app/shared/chips/models/chips.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chips.model.js","sourceRoot":"","sources":["chips.model.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js b/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js deleted file mode 100644 index dd45cf5ba5..0000000000 --- a/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js +++ /dev/null @@ -1,105 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -import { Location } from '@angular/common'; -import { DynamicFormService } from '@ng-dynamic-forms/core'; -import { TranslateService } from '@ngx-translate/core'; -import { isNotEmpty } from '../../empty.util'; -import { ResourceType } from '../../../core/shared/resource-type'; -/** - * A form for creating and editing Communities or Collections - */ -var ComColFormComponent = /** @class */ (function () { - function ComColFormComponent(location, formService, translate) { - this.location = location; - this.formService = formService; - this.translate = translate; - /** - * @type {string} Key prefix used to generate form labels - */ - this.LABEL_KEY_PREFIX = '.form.'; - /** - * @type {string} Key prefix used to generate form error messages - */ - this.ERROR_KEY_PREFIX = '.form.errors.'; - /** - * Emits DSO when the form is submitted - * @type {EventEmitter} - */ - this.submitForm = new EventEmitter(); - } - ComColFormComponent.prototype.ngOnInit = function () { - var _this = this; - this.formModel.forEach(function (fieldModel) { - fieldModel.value = _this.dso.firstMetadataValue(fieldModel.name); - }); - this.formGroup = this.formService.createFormGroup(this.formModel); - this.updateFieldTranslations(); - this.translate.onLangChange - .subscribe(function () { - _this.updateFieldTranslations(); - }); - }; - /** - * Checks which new fields were added and sends the updated version of the DSO to the parent component - */ - ComColFormComponent.prototype.onSubmit = function () { - var formMetadata = new Object(); - this.formModel.forEach(function (fieldModel) { - var value = { - value: fieldModel.value, - language: null - }; - if (formMetadata.hasOwnProperty(fieldModel.name)) { - formMetadata[fieldModel.name].push(value); - } - else { - formMetadata[fieldModel.name] = [value]; - } - }); - var updatedDSO = Object.assign({}, this.dso, { - metadata: tslib_1.__assign({}, this.dso.metadata, formMetadata), - type: ResourceType.Community - }); - this.submitForm.emit(updatedDSO); - }; - /** - * Used the update translations of errors and labels on init and on language change - */ - ComColFormComponent.prototype.updateFieldTranslations = function () { - var _this = this; - this.formModel.forEach(function (fieldModel) { - fieldModel.label = _this.translate.instant(_this.type + _this.LABEL_KEY_PREFIX + fieldModel.id); - if (isNotEmpty(fieldModel.validators)) { - fieldModel.errorMessages = {}; - Object.keys(fieldModel.validators).forEach(function (key) { - fieldModel.errorMessages[key] = _this.translate.instant(_this.type + _this.ERROR_KEY_PREFIX + fieldModel.id + '.' + key); - }); - } - }); - }; - ComColFormComponent.prototype.onCancel = function () { - this.location.back(); - }; - var _a; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", typeof (_a = typeof T !== "undefined" && T) === "function" && _a || Object) - ], ComColFormComponent.prototype, "dso", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ComColFormComponent.prototype, "submitForm", void 0); - ComColFormComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-comcol-form', - styleUrls: ['./comcol-form.component.scss'], - templateUrl: './comcol-form.component.html' - }), - tslib_1.__metadata("design:paramtypes", [Location, - DynamicFormService, - TranslateService]) - ], ComColFormComponent); - return ComColFormComponent; -}()); -export { ComColFormComponent }; -//# sourceMappingURL=comcol-form.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js.map b/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js.map deleted file mode 100644 index ea7706e78c..0000000000 --- a/src/app/shared/comcol-forms/comcol-form/comcol-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"comcol-form.component.js","sourceRoot":"","sources":["comcol-form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js b/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js deleted file mode 100644 index 2bdc0bb419..0000000000 --- a/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js +++ /dev/null @@ -1,59 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { CommunityDataService } from '../../../core/data/community-data.service'; -import { RouteService } from '../../services/route.service'; -import { Router } from '@angular/router'; -import { isNotEmpty, isNotUndefined } from '../../empty.util'; -import { take } from 'rxjs/operators'; -import { getSucceededRemoteData } from '../../../core/shared/operators'; -import { DataService } from '../../../core/data/data.service'; -/** - * Component representing the create page for communities and collections - */ -var CreateComColPageComponent = /** @class */ (function () { - function CreateComColPageComponent(dsoDataService, parentDataService, routeService, router) { - this.dsoDataService = dsoDataService; - this.parentDataService = parentDataService; - this.routeService = routeService; - this.router = router; - } - CreateComColPageComponent.prototype.ngOnInit = function () { - var _this = this; - this.parentUUID$ = this.routeService.getQueryParameterValue('parent'); - this.parentUUID$.pipe(take(1)).subscribe(function (parentID) { - if (isNotEmpty(parentID)) { - _this.parentRD$ = _this.parentDataService.findById(parentID); - } - }); - }; - /** - * @param {TDomain} dso The updated version of the DSO - * Creates a new DSO based on the submitted user data and navigates to the new object's home page - */ - CreateComColPageComponent.prototype.onSubmit = function (dso) { - var _this = this; - this.parentUUID$.pipe(take(1)).subscribe(function (uuid) { - _this.dsoDataService.create(dso, uuid) - .pipe(getSucceededRemoteData()) - .subscribe(function (dsoRD) { - if (isNotUndefined(dsoRD)) { - var newUUID = dsoRD.payload.uuid; - _this.router.navigate([_this.frontendURL + newUUID]); - } - }); - }); - }; - CreateComColPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-create-comcol', - template: '' - }), - tslib_1.__metadata("design:paramtypes", [DataService, - CommunityDataService, - RouteService, - Router]) - ], CreateComColPageComponent); - return CreateComColPageComponent; -}()); -export { CreateComColPageComponent }; -//# sourceMappingURL=create-comcol-page.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js.map b/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js.map deleted file mode 100644 index 0b3f4c104d..0000000000 --- a/src/app/shared/comcol-forms/create-comcol-page/create-comcol-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"create-comcol-page.component.js","sourceRoot":"","sources":["create-comcol-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D;;GAEG;AAKH;IAgBE,mCACY,cAAoC,EACpC,iBAAuC,EACvC,YAA0B,EAC1B,MAAc;QAHd,mBAAc,GAAd,cAAc,CAAsB;QACpC,sBAAiB,GAAjB,iBAAiB,CAAsB;QACvC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,WAAM,GAAN,MAAM,CAAQ;IAG1B,CAAC;IAED,4CAAQ,GAAR;QAAA,iBAOC;QANC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,QAAgB;YACxD,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;gBACxB,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;aAC5D;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,4CAAQ,GAAR,UAAS,GAAY;QAArB,iBAWC;QAVC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,IAAY;YACpD,KAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC;iBAClC,IAAI,CAAC,sBAAsB,EAAE,CAAC;iBAC9B,SAAS,CAAC,UAAC,KAA0B;gBACpC,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE;oBACzB,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;oBACnC,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAI,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;iBACpD;YACH,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;IAjDU,yBAAyB;QAJrC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,QAAQ,EAAE,EAAE;SACb,CAAC;iDAkB4B,WAAW;YACR,oBAAoB;YACzB,YAAY;YAClB,MAAM;OApBf,yBAAyB,CAmDrC;IAAD,gCAAC;CAAA,AAnDD,IAmDC;SAnDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js b/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js deleted file mode 100644 index 96f340ee31..0000000000 --- a/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js +++ /dev/null @@ -1,63 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { first, map } from 'rxjs/operators'; -import { DataService } from '../../../core/data/data.service'; -import { NotificationsService } from '../../notifications/notifications.service'; -import { TranslateService } from '@ngx-translate/core'; -/** - * Component representing the delete page for communities and collections - */ -var DeleteComColPageComponent = /** @class */ (function () { - function DeleteComColPageComponent(dsoDataService, router, route, notifications, translate) { - this.dsoDataService = dsoDataService; - this.router = router; - this.route = route; - this.notifications = notifications; - this.translate = translate; - } - DeleteComColPageComponent.prototype.ngOnInit = function () { - this.dsoRD$ = this.route.data.pipe(first(), map(function (data) { return data.dso; })); - }; - /** - * @param {TDomain} dso The DSO to delete - * Deletes an existing DSO and redirects to the home page afterwards, showing a notification that states whether or not the deletion was successful - */ - DeleteComColPageComponent.prototype.onConfirm = function (dso) { - var _this = this; - this.dsoDataService.delete(dso) - .pipe(first()) - .subscribe(function (success) { - if (success) { - var successMessage = _this.translate.instant(dso.type + '.delete.notification.success'); - _this.notifications.success(successMessage); - } - else { - var errorMessage = _this.translate.instant(dso.type + '.delete.notification.fail'); - _this.notifications.error(errorMessage); - } - _this.router.navigate(['/']); - }); - }; - /** - * @param {TDomain} dso The DSO for which the delete action was canceled - * When a delete is canceled, the user is redirected to the DSO's edit page - */ - DeleteComColPageComponent.prototype.onCancel = function (dso) { - this.router.navigate([this.frontendURL + '/' + dso.uuid + '/edit']); - }; - DeleteComColPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-delete-comcol', - template: '' - }), - tslib_1.__metadata("design:paramtypes", [DataService, - Router, - ActivatedRoute, - NotificationsService, - TranslateService]) - ], DeleteComColPageComponent); - return DeleteComColPageComponent; -}()); -export { DeleteComColPageComponent }; -//# sourceMappingURL=delete-comcol-page.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js.map b/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js.map deleted file mode 100644 index 7d2e7a4af4..0000000000 --- a/src/app/shared/comcol-forms/delete-comcol-page/delete-comcol-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"delete-comcol-page.component.js","sourceRoot":"","sources":["delete-comcol-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;GAEG;AAKH;IAUE,mCACY,cAAoC,EACpC,MAAc,EACd,KAAqB,EACrB,aAAmC,EACnC,SAA2B;QAJ3B,mBAAc,GAAd,cAAc,CAAsB;QACpC,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAgB;QACrB,kBAAa,GAAb,aAAa,CAAsB;QACnC,cAAS,GAAT,SAAS,CAAkB;IAEvC,CAAC;IAED,4CAAQ,GAAR;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,GAAG,EAAR,CAAQ,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,6CAAS,GAAT,UAAU,GAAY;QAAtB,iBAaC;QAZC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC;aAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;aACb,SAAS,CAAC,UAAC,OAAgB;YAC1B,IAAI,OAAO,EAAE;gBACX,IAAM,cAAc,GAAG,KAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,8BAA8B,CAAC,CAAC;gBACzF,KAAI,CAAC,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;aAC3C;iBAAM;gBACL,IAAM,YAAY,GAAG,KAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,2BAA2B,CAAC,CAAC;gBACpF,KAAI,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;aACvC;YACD,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,4CAAQ,GAAR,UAAS,GAAY;QACnB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC;IACtE,CAAC;IAhDU,yBAAyB;QAJrC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,QAAQ,EAAE,EAAE;SACb,CAAC;iDAY4B,WAAW;YACnB,MAAM;YACP,cAAc;YACN,oBAAoB;YACxB,gBAAgB;OAf5B,yBAAyB,CAiDrC;IAAD,gCAAC;CAAA,AAjDD,IAiDC;SAjDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js b/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js deleted file mode 100644 index 88f5c4e7eb..0000000000 --- a/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js +++ /dev/null @@ -1,47 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { isNotUndefined } from '../../empty.util'; -import { first, map } from 'rxjs/operators'; -import { getSucceededRemoteData } from '../../../core/shared/operators'; -import { DataService } from '../../../core/data/data.service'; -/** - * Component representing the edit page for communities and collections - */ -var EditComColPageComponent = /** @class */ (function () { - function EditComColPageComponent(dsoDataService, router, route) { - this.dsoDataService = dsoDataService; - this.router = router; - this.route = route; - } - EditComColPageComponent.prototype.ngOnInit = function () { - this.dsoRD$ = this.route.data.pipe(first(), map(function (data) { return data.dso; })); - }; - /** - * @param {TDomain} dso The updated version of the DSO - * Updates an existing DSO based on the submitted user data and navigates to the edited object's home page - */ - EditComColPageComponent.prototype.onSubmit = function (dso) { - var _this = this; - this.dsoDataService.update(dso) - .pipe(getSucceededRemoteData()) - .subscribe(function (dsoRD) { - if (isNotUndefined(dsoRD)) { - var newUUID = dsoRD.payload.uuid; - _this.router.navigate([_this.frontendURL + newUUID]); - } - }); - }; - EditComColPageComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-edit-comcol', - template: '' - }), - tslib_1.__metadata("design:paramtypes", [DataService, - Router, - ActivatedRoute]) - ], EditComColPageComponent); - return EditComColPageComponent; -}()); -export { EditComColPageComponent }; -//# sourceMappingURL=edit-comcol-page.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js.map b/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js.map deleted file mode 100644 index fa2719e7c1..0000000000 --- a/src/app/shared/comcol-forms/edit-comcol-page/edit-comcol-page.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-comcol-page.component.js","sourceRoot":"","sources":["edit-comcol-page.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG9D;;GAEG;AAKH;IAUE,iCACY,cAAoC,EACpC,MAAc,EACd,KAAqB;QAFrB,mBAAc,GAAd,cAAc,CAAsB;QACpC,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAgB;IAEjC,CAAC;IAED,0CAAQ,GAAR;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,GAAG,EAAR,CAAQ,CAAC,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACH,0CAAQ,GAAR,UAAS,GAAY;QAArB,iBASC;QARC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC;aAC5B,IAAI,CAAC,sBAAsB,EAAE,CAAC;aAC9B,SAAS,CAAC,UAAC,KAA0B;YACpC,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE;gBACzB,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBACnC,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAI,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAlCU,uBAAuB;QAJnC,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ,EAAE,EAAE;SACb,CAAC;iDAY4B,WAAW;YACnB,MAAM;YACP,cAAc;OAbtB,uBAAuB,CAmCnC;IAAD,8BAAC;CAAA,AAnCD,IAmCC;SAnCY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js b/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js deleted file mode 100644 index 76b8cd3307..0000000000 --- a/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -/** - * A component to display the "Browse By" section of a Community or Collection page - * It expects the ID of the Community or Collection as input to be passed on as a scope - */ -var ComcolPageBrowseByComponent = /** @class */ (function () { - function ComcolPageBrowseByComponent() { - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ComcolPageBrowseByComponent.prototype, "id", void 0); - ComcolPageBrowseByComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-comcol-page-browse-by', - templateUrl: './comcol-page-browse-by.component.html', - }) - ], ComcolPageBrowseByComponent); - return ComcolPageBrowseByComponent; -}()); -export { ComcolPageBrowseByComponent }; -//# sourceMappingURL=comcol-page-browse-by.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js.map b/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js.map deleted file mode 100644 index cfcf881c1c..0000000000 --- a/src/app/shared/comcol-page-browse-by/comcol-page-browse-by.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"comcol-page-browse-by.component.js","sourceRoot":"","sources":["comcol-page-browse-by.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD;;;GAGG;AAKH;IAAA;IAKA,CAAC;IADU;QAAR,KAAK,EAAE;;2DAAY;IAJT,2BAA2B;QAJvC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,WAAW,EAAE,wCAAwC;SACtD,CAAC;OACW,2BAA2B,CAKvC;IAAD,kCAAC;CAAA,AALD,IAKC;SALY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/comcol-page-content/comcol-page-content.component.js b/src/app/shared/comcol-page-content/comcol-page-content.component.js deleted file mode 100644 index 319c6eac2a..0000000000 --- a/src/app/shared/comcol-page-content/comcol-page-content.component.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -/** - * This component renders any content inside of this component. - * If there is a title set it will render the title. - * If hasInnerHtml is true the content will be handled as html. - * To see how it is used see collection-page or community-page. - */ -var ComcolPageContentComponent = /** @class */ (function () { - function ComcolPageContentComponent() { - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ComcolPageContentComponent.prototype, "title", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ComcolPageContentComponent.prototype, "content", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Boolean) - ], ComcolPageContentComponent.prototype, "hasInnerHtml", void 0); - ComcolPageContentComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-comcol-page-content', - styleUrls: ['./comcol-page-content.component.scss'], - templateUrl: './comcol-page-content.component.html' - }) - ], ComcolPageContentComponent); - return ComcolPageContentComponent; -}()); -export { ComcolPageContentComponent }; -//# sourceMappingURL=comcol-page-content.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-page-content/comcol-page-content.component.js.map b/src/app/shared/comcol-page-content/comcol-page-content.component.js.map deleted file mode 100644 index bb6397de6c..0000000000 --- a/src/app/shared/comcol-page-content/comcol-page-content.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"comcol-page-content.component.js","sourceRoot":"","sources":["comcol-page-content.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;GAKG;AAMH;IAAA;IAWA,CAAC;IARU;QAAR,KAAK,EAAE;;6DAAe;IAGd;QAAR,KAAK,EAAE;;+DAAiB;IAGhB;QAAR,KAAK,EAAE;;oEAAuB;IATpB,0BAA0B;QALtC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;OACW,0BAA0B,CAWtC;IAAD,iCAAC;CAAA,AAXD,IAWC;SAXY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/comcol-page-header/comcol-page-header.component.js b/src/app/shared/comcol-page-header/comcol-page-header.component.js deleted file mode 100644 index 74246fdc8b..0000000000 --- a/src/app/shared/comcol-page-header/comcol-page-header.component.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -var ComcolPageHeaderComponent = /** @class */ (function () { - function ComcolPageHeaderComponent() { - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ComcolPageHeaderComponent.prototype, "name", void 0); - ComcolPageHeaderComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-comcol-page-header', - styleUrls: ['./comcol-page-header.component.scss'], - templateUrl: './comcol-page-header.component.html', - }) - ], ComcolPageHeaderComponent); - return ComcolPageHeaderComponent; -}()); -export { ComcolPageHeaderComponent }; -//# sourceMappingURL=comcol-page-header.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-page-header/comcol-page-header.component.js.map b/src/app/shared/comcol-page-header/comcol-page-header.component.js.map deleted file mode 100644 index 3e306abb66..0000000000 --- a/src/app/shared/comcol-page-header/comcol-page-header.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"comcol-page-header.component.js","sourceRoot":"","sources":["comcol-page-header.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAOjD;IAAA;IAEA,CAAC;IADU;QAAR,KAAK,EAAE;;2DAAc;IADX,yBAAyB;QALrC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,SAAS,EAAE,CAAC,qCAAqC,CAAC;YAClD,WAAW,EAAE,qCAAqC;SACnD,CAAC;OACW,yBAAyB,CAErC;IAAD,gCAAC;CAAA,AAFD,IAEC;SAFY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/comcol-page-logo/comcol-page-logo.component.js b/src/app/shared/comcol-page-logo/comcol-page-logo.component.js deleted file mode 100644 index ba9e925193..0000000000 --- a/src/app/shared/comcol-page-logo/comcol-page-logo.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Bitstream } from '../../core/shared/bitstream.model'; -var ComcolPageLogoComponent = /** @class */ (function () { - function ComcolPageLogoComponent() { - /** - * The default 'holder.js' image - */ - this.holderSource = 'data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2293%22%20height%3D%22120%22%20viewBox%3D%220%200%2093%20120%22%20preserveAspectRatio%3D%22none%22%3E%3C!--%0ASource%20URL%3A%20holder.js%2F93x120%3Ftext%3DNo%20Thumbnail%0ACreated%20with%20Holder.js%202.8.2.%0ALearn%20more%20at%20http%3A%2F%2Fholderjs.com%0A(c)%202012-2015%20Ivan%20Malopinsky%20-%20http%3A%2F%2Fimsky.co%0A--%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%3C!%5BCDATA%5B%23holder_1543e460b05%20text%20%7B%20fill%3A%23AAAAAA%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A10pt%20%7D%20%5D%5D%3E%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1543e460b05%22%3E%3Crect%20width%3D%2293%22%20height%3D%22120%22%20fill%3D%22%23EEEEEE%22%2F%3E%3Cg%3E%3Ctext%20x%3D%2235.6171875%22%20y%3D%2257%22%3ENo%3C%2Ftext%3E%3Ctext%20x%3D%2210.8125%22%20y%3D%2272%22%3EThumbnail%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E'; - } - ComcolPageLogoComponent.prototype.errorHandler = function (event) { - event.currentTarget.src = this.holderSource; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Bitstream) - ], ComcolPageLogoComponent.prototype, "logo", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ComcolPageLogoComponent.prototype, "alternateText", void 0); - ComcolPageLogoComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-comcol-page-logo', - styleUrls: ['./comcol-page-logo.component.scss'], - templateUrl: './comcol-page-logo.component.html', - }) - ], ComcolPageLogoComponent); - return ComcolPageLogoComponent; -}()); -export { ComcolPageLogoComponent }; -//# sourceMappingURL=comcol-page-logo.component.js.map \ No newline at end of file diff --git a/src/app/shared/comcol-page-logo/comcol-page-logo.component.js.map b/src/app/shared/comcol-page-logo/comcol-page-logo.component.js.map deleted file mode 100644 index 84c2ea48fa..0000000000 --- a/src/app/shared/comcol-page-logo/comcol-page-logo.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"comcol-page-logo.component.js","sourceRoot":"","sources":["comcol-page-logo.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAO9D;IALA;QAUE;;WAEG;QACH,iBAAY,GAAG,++BAA++B,CAAC;IAMjgC,CAAC;IAJC,8CAAY,GAAZ,UAAa,KAAK;QAChB,KAAK,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;IAC9C,CAAC;IAXQ;QAAR,KAAK,EAAE;0CAAO,SAAS;yDAAC;IAEhB;QAAR,KAAK,EAAE;;kEAAuB;IAHpB,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,mCAAmC,CAAC;YAChD,WAAW,EAAE,mCAAmC;SACjD,CAAC;OACW,uBAAuB,CAcnC;IAAD,8BAAC;CAAA,AAdD,IAcC;SAdY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/date.util.js b/src/app/shared/date.util.js deleted file mode 100644 index 1d22e3f7ee..0000000000 --- a/src/app/shared/date.util.js +++ /dev/null @@ -1,52 +0,0 @@ -import { isObject } from 'lodash'; -import * as moment from 'moment'; -/** - * Returns true if the passed value is a NgbDateStruct. - * - * @param value - * The object to check - * @return boolean - * true if the passed value is a NgbDateStruct, false otherwise - */ -export function isNgbDateStruct(value) { - return isObject(value) && value.hasOwnProperty('day') - && value.hasOwnProperty('month') && value.hasOwnProperty('year'); -} -/** - * Returns a date in simplified extended ISO format (YYYY-MM-DDTHH:mm:ssZ). - * The timezone is always zero UTC offset, as denoted by the suffix "Z" - * - * @param date - * The date to format - * @return string - * the formatted date - */ -export function dateToISOFormat(date) { - var dateObj = (date instanceof Date) ? date : ngbDateStructToDate(date); - var year = dateObj.getFullYear().toString(); - var month = (dateObj.getMonth() + 1).toString(); - var day = dateObj.getDate().toString(); - var hour = dateObj.getHours().toString(); - var min = dateObj.getMinutes().toString(); - var sec = dateObj.getSeconds().toString(); - year = (year.length === 1) ? '0' + year : year; - month = (month.length === 1) ? '0' + month : month; - day = (day.length === 1) ? '0' + day : day; - hour = (hour.length === 1) ? '0' + hour : hour; - min = (min.length === 1) ? '0' + min : min; - sec = (sec.length === 1) ? '0' + sec : sec; - var dateStr = "" + year + month + day + hour + min + sec; - return moment.utc(dateStr, 'YYYYMMDDhhmmss').format(); -} -/** - * Returns a Date object started from a NgbDateStruct object - * - * @param date - * The NgbDateStruct to convert - * @return Date - * the Date object - */ -export function ngbDateStructToDate(date) { - return new Date(date.year, (date.month - 1), date.day); -} -//# sourceMappingURL=date.util.js.map \ No newline at end of file diff --git a/src/app/shared/date.util.js.map b/src/app/shared/date.util.js.map deleted file mode 100644 index a60c703097..0000000000 --- a/src/app/shared/date.util.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"date.util.js","sourceRoot":"","sources":["date.util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC;;;;;;;GAOG;AACH,MAAM,0BAA0B,KAAa;IAC3C,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;WAChD,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,IAAK,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,0BAA0B,IAA0B;IACxD,IAAM,OAAO,GAAS,CAAC,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAEhF,IAAI,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC5C,IAAI,KAAK,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAChD,IAAI,GAAG,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;IACvC,IAAI,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;IACzC,IAAI,GAAG,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC1C,IAAI,GAAG,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC;IAE1C,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,KAAK,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IACnD,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,IAAM,OAAO,GAAG,KAAG,IAAI,GAAG,KAAK,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,GAAK,CAAC;IAC3D,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,MAAM,EAAE,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,8BAA8B,IAAmB;IACrD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AACzD,CAAC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/dso-selector/dso-selector.component.js b/src/app/shared/dso-selector/dso-selector/dso-selector.component.js deleted file mode 100644 index d2751b5c0d..0000000000 --- a/src/app/shared/dso-selector/dso-selector/dso-selector.component.js +++ /dev/null @@ -1,84 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output, QueryList, ViewChildren } from '@angular/core'; -import { FormControl } from '@angular/forms'; -import { debounceTime, startWith, switchMap } from 'rxjs/operators'; -import { SearchService } from '../../../+search-page/search-service/search.service'; -import { PaginatedSearchOptions } from '../../../+search-page/paginated-search-options.model'; -import { DSpaceObjectType } from '../../../core/shared/dspace-object-type.model'; -var DSOSelectorComponent = /** @class */ (function () { - function DSOSelectorComponent(searchService) { - this.searchService = searchService; - /** - * Emits the selected Object when a user selects it in the list - */ - this.onSelect = new EventEmitter(); - /** - * Input form control to query the list - */ - this.input = new FormControl(); - /** - * Default pagination for this feature - */ - this.defaultPagination = { id: 'dso-selector', currentPage: 1, pageSize: 5 }; - /** - * Time to wait before sending a search request to the server when a user types something - */ - this.debounceTime = 500; - } - /** - * Fills the listEntries$ variable with search results based on the input field's current value - * The search will always start with the initial currentDSOId value - */ - DSOSelectorComponent.prototype.ngOnInit = function () { - var _this = this; - this.input.setValue(this.currentDSOId); - this.listEntries$ = this.input.valueChanges - .pipe(debounceTime(this.debounceTime), startWith(this.currentDSOId), switchMap(function (query) { - return _this.searchService.search(new PaginatedSearchOptions({ - query: query, - dsoType: _this.type, - pagination: _this.defaultPagination - })); - })); - }; - /** - * Set focus on the first list element when there is only one result - */ - DSOSelectorComponent.prototype.selectSingleResult = function () { - if (this.listElements.length > 0) { - this.listElements.first.nativeElement.click(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], DSOSelectorComponent.prototype, "currentDSOId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], DSOSelectorComponent.prototype, "type", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DSOSelectorComponent.prototype, "onSelect", void 0); - tslib_1.__decorate([ - ViewChildren('listEntryElement'), - tslib_1.__metadata("design:type", QueryList) - ], DSOSelectorComponent.prototype, "listElements", void 0); - DSOSelectorComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dso-selector', - // styleUrls: ['./dso-selector.component.scss'], - templateUrl: './dso-selector.component.html' - }) - /** - * Component to render a list of DSO's of which one can be selected - * The user can search the list by using the input field - */ - , - tslib_1.__metadata("design:paramtypes", [SearchService]) - ], DSOSelectorComponent); - return DSOSelectorComponent; -}()); -export { DSOSelectorComponent }; -//# sourceMappingURL=dso-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/dso-selector/dso-selector.component.js.map b/src/app/shared/dso-selector/dso-selector/dso-selector.component.js.map deleted file mode 100644 index 28afdd82a7..0000000000 --- a/src/app/shared/dso-selector/dso-selector/dso-selector.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dso-selector.component.js","sourceRoot":"","sources":["dso-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EAET,YAAY,EACZ,KAAK,EAEL,MAAM,EACN,SAAS,EACT,YAAY,EACb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAgBjF;IA0CE,8BAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QA9BhD;;WAEG;QACO,aAAQ,GAA+B,IAAI,YAAY,EAAE,CAAC;QAEpE;;WAEG;QACI,UAAK,GAAgB,IAAI,WAAW,EAAE,CAAC;QAE9C;;WAEG;QACK,sBAAiB,GAAG,EAAE,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAS,CAAC;QAYvF;;WAEG;QACH,iBAAY,GAAG,GAAG,CAAC;IAGnB,CAAC;IAED;;;OAGG;IACH,uCAAQ,GAAR;QAAA,iBAiBC;QAhBC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY;aACxC,IAAI,CACH,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAC/B,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAC5B,SAAS,CAAC,UAAC,KAAK;YACZ,OAAO,KAAI,CAAC,aAAa,CAAC,MAAM,CAC9B,IAAI,sBAAsB,CAAC;gBACzB,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,KAAI,CAAC,IAAI;gBAClB,UAAU,EAAE,KAAI,CAAC,iBAAiB;aACnC,CAAC,CACH,CAAA;QACH,CAAC,CACF,CACF,CAAA;IACL,CAAC;IAED;;OAEG;IACH,iDAAkB,GAAlB;QACE,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;SAC/C;IACH,CAAC;IAtEQ;QAAR,KAAK,EAAE;;8DAAsB;IAKrB;QAAR,KAAK,EAAE;;sDAAwB;IAKtB;QAAT,MAAM,EAAE;0CAAW,YAAY;0DAAoC;IAoBlC;QAAjC,YAAY,CAAC,kBAAkB,CAAC;0CAAe,SAAS;8DAAa;IAnC3D,oBAAoB;QAVhC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,gDAAgD;YAChD,WAAW,EAAE,+BAA+B;SAC7C,CAAC;QAEF;;;WAGG;;iDA2CkC,aAAa;OA1CrC,oBAAoB,CA4EhC;IAAD,2BAAC;CAAA,AA5ED,IA4EC;SA5EY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js deleted file mode 100644 index 61f326cb9e..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js +++ /dev/null @@ -1,46 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; -import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; -import { COLLECTION_PARENT_PARAMETER, getCollectionCreatePath } from '../../../../+collection-page/collection-page-routing.module'; -import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; -/** - * Component to wrap a list of existing communities inside a modal - * Used to choose a community from to create a new collection in - */ -var CreateCollectionParentSelectorComponent = /** @class */ (function (_super) { - tslib_1.__extends(CreateCollectionParentSelectorComponent, _super); - function CreateCollectionParentSelectorComponent(activeModal, route, router) { - var _this = _super.call(this, activeModal, route) || this; - _this.activeModal = activeModal; - _this.route = route; - _this.router = router; - _this.objectType = DSpaceObjectType.COLLECTION; - _this.selectorType = DSpaceObjectType.COMMUNITY; - _this.action = SelectorActionType.CREATE; - return _this; - } - /** - * Navigate to the collection create page - */ - CreateCollectionParentSelectorComponent.prototype.navigate = function (dso) { - var _a; - var navigationExtras = { - queryParams: (_a = {}, - _a[COLLECTION_PARENT_PARAMETER] = dso.uuid, - _a) - }; - this.router.navigate([getCollectionCreatePath()], navigationExtras); - }; - CreateCollectionParentSelectorComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-create-collection-parent-selector', - templateUrl: '../dso-selector-modal-wrapper.component.html', - }), - tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) - ], CreateCollectionParentSelectorComponent); - return CreateCollectionParentSelectorComponent; -}(DSOSelectorModalWrapperComponent)); -export { CreateCollectionParentSelectorComponent }; -//# sourceMappingURL=create-collection-parent-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js.map deleted file mode 100644 index ef8120bf1a..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"create-collection-parent-selector.component.js","sourceRoot":"","sources":["create-collection-parent-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAoB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACxB,MAAM,6DAA6D,CAAC;AACrE,OAAO,EAAE,gCAAgC,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE/G;;;GAGG;AAMH;IAA6D,mEAAgC;IAK3F,iDAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC;QACzC,kBAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC;QAC1C,YAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;;IAInC,CAAC;IAED;;OAEG;IACH,0DAAQ,GAAR,UAAS,GAAiB;;QACxB,IAAM,gBAAgB,GAAqB;YACzC,WAAW;gBACT,GAAC,2BAA2B,IAAG,GAAG,CAAC,IAAI;mBACxC;SACF,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,uBAAuB,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACtE,CAAC;IAnBU,uCAAuC;QAJnD,SAAS,CAAC;YACT,QAAQ,EAAE,sCAAsC;YAChD,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,uCAAuC,CAoBnD;IAAD,8CAAC;CAAA,AApBD,CAA6D,gCAAgC,GAoB5F;SApBY,uCAAuC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js deleted file mode 100644 index 7fb734db6b..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js +++ /dev/null @@ -1,53 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; -import { hasValue } from '../../../empty.util'; -import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; -import { COMMUNITY_PARENT_PARAMETER, getCommunityCreatePath } from '../../../../+community-page/community-page-routing.module'; -import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; -/** - * Component to wrap a button - for top communities - - * and a list of parent communities - for sub communities - * inside a modal - * Used to create a new community - */ -var CreateCommunityParentSelectorComponent = /** @class */ (function (_super) { - tslib_1.__extends(CreateCommunityParentSelectorComponent, _super); - function CreateCommunityParentSelectorComponent(activeModal, route, router) { - var _this = _super.call(this, activeModal, route) || this; - _this.activeModal = activeModal; - _this.route = route; - _this.router = router; - _this.objectType = DSpaceObjectType.COMMUNITY; - _this.selectorType = DSpaceObjectType.COMMUNITY; - _this.action = SelectorActionType.CREATE; - return _this; - } - /** - * Navigate to the community create page - */ - CreateCommunityParentSelectorComponent.prototype.navigate = function (dso) { - var _a; - var navigationExtras = {}; - if (hasValue(dso)) { - navigationExtras = { - queryParams: (_a = {}, - _a[COMMUNITY_PARENT_PARAMETER] = dso.uuid, - _a) - }; - } - this.router.navigate([getCommunityCreatePath()], navigationExtras); - }; - CreateCommunityParentSelectorComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-create-community-parent-selector', - styleUrls: ['./create-community-parent-selector.component.scss'], - templateUrl: './create-community-parent-selector.component.html', - }), - tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) - ], CreateCommunityParentSelectorComponent); - return CreateCommunityParentSelectorComponent; -}(DSOSelectorModalWrapperComponent)); -export { CreateCommunityParentSelectorComponent }; -//# sourceMappingURL=create-community-parent-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js.map deleted file mode 100644 index 2a822302be..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"create-community-parent-selector.component.js","sourceRoot":"","sources":["create-community-parent-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAoB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACvB,MAAM,2DAA2D,CAAC;AACnE,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAEjD;;;;;GAKG;AAOH;IAA4D,kEAAgC;IAK1F,gDAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC;QACxC,kBAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC;QAC1C,YAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;;IAInC,CAAC;IAED;;OAEG;IACH,yDAAQ,GAAR,UAAS,GAAiB;;QACxB,IAAI,gBAAgB,GAAqB,EAAE,CAAC;QAC5C,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE;YACjB,gBAAgB,GAAG;gBACjB,WAAW;oBACT,GAAC,0BAA0B,IAAG,GAAG,CAAC,IAAI;uBACvC;aACF,CAAC;SACH;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,sBAAsB,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACrE,CAAC;IAtBU,sCAAsC;QALlD,SAAS,CAAC;YACT,QAAQ,EAAE,qCAAqC;YAC/C,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,WAAW,EAAE,mDAAmD;SACjE,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,sCAAsC,CAuBlD;IAAD,6CAAC;CAAA,AAvBD,CAA4D,gCAAgC,GAuB3F;SAvBY,sCAAsC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js deleted file mode 100644 index e46879ef7f..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; -import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; -import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; -/** - * Component to wrap a list of existing collections inside a modal - * Used to choose a collection from to create a new item in - */ -var CreateItemParentSelectorComponent = /** @class */ (function (_super) { - tslib_1.__extends(CreateItemParentSelectorComponent, _super); - function CreateItemParentSelectorComponent(activeModal, route, router) { - var _this = _super.call(this, activeModal, route) || this; - _this.activeModal = activeModal; - _this.route = route; - _this.router = router; - _this.objectType = DSpaceObjectType.ITEM; - _this.selectorType = DSpaceObjectType.COLLECTION; - _this.action = SelectorActionType.CREATE; - return _this; - } - /** - * Navigate to the item create page - */ - CreateItemParentSelectorComponent.prototype.navigate = function (dso) { - // There's no submit path per collection yet... - }; - CreateItemParentSelectorComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-create-item-parent-selector', - // styleUrls: ['./create-item-parent-selector.component.scss'], - templateUrl: '../dso-selector-modal-wrapper.component.html', - }), - tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) - ], CreateItemParentSelectorComponent); - return CreateItemParentSelectorComponent; -}(DSOSelectorModalWrapperComponent)); -export { CreateItemParentSelectorComponent }; -//# sourceMappingURL=create-item-parent-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js.map deleted file mode 100644 index 6fc6098720..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"create-item-parent-selector.component.js","sourceRoot":"","sources":["create-item-parent-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,gCAAgC,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE/G;;;GAGG;AAOH;IAAuD,6DAAgC;IAKrF,2CAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACnC,kBAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC;QAC3C,YAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC;;IAInC,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR,UAAS,GAAiB;QACzB,+CAA+C;IAChD,CAAC;IAdU,iCAAiC;QAL7C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,+DAA+D;YAC/D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,iCAAiC,CAe7C;IAAD,wCAAC;CAAA,AAfD,CAAuD,gCAAgC,GAetF;SAfY,iCAAiC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js b/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js deleted file mode 100644 index a33a35c459..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js +++ /dev/null @@ -1,52 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable, Input } from '@angular/core'; -import { ActivatedRoute } from '@angular/router'; -import { Observable } from 'rxjs'; -import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; -import { map } from 'rxjs/operators'; -export var SelectorActionType; -(function (SelectorActionType) { - SelectorActionType["CREATE"] = "create"; - SelectorActionType["EDIT"] = "edit"; -})(SelectorActionType || (SelectorActionType = {})); -/** - * Abstract base class that represents a wrapper for modal content used to select a DSpace Object - */ -var DSOSelectorModalWrapperComponent = /** @class */ (function () { - function DSOSelectorModalWrapperComponent(activeModal, route) { - this.activeModal = activeModal; - this.route = route; - } - /** - * Get de current page's DSO based on the selectorType - */ - DSOSelectorModalWrapperComponent.prototype.ngOnInit = function () { - var typeString = this.selectorType.toString().toLowerCase(); - this.dsoRD$ = this.route.root.firstChild.firstChild.data.pipe(map(function (data) { return data[typeString]; })); - }; - /** - * Method called when an object has been selected - * @param dso The selected DSpaceObject - */ - DSOSelectorModalWrapperComponent.prototype.selectObject = function (dso) { - this.close(); - this.navigate(dso); - }; - /** - * Close the modal - */ - DSOSelectorModalWrapperComponent.prototype.close = function () { - this.activeModal.close(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Observable) - ], DSOSelectorModalWrapperComponent.prototype, "dsoRD$", void 0); - DSOSelectorModalWrapperComponent = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute]) - ], DSOSelectorModalWrapperComponent); - return DSOSelectorModalWrapperComponent; -}()); -export { DSOSelectorModalWrapperComponent }; -//# sourceMappingURL=dso-selector-modal-wrapper.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js.map b/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js.map deleted file mode 100644 index cca46daeae..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/dso-selector-modal-wrapper.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dso-selector-modal-wrapper.component.js","sourceRoot":"","sources":["dso-selector-modal-wrapper.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAGrC,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,uCAAiB,CAAA;IACjB,mCAAa,CAAA;AACf,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED;;GAEG;AAGH;IAqBE,0CAAsB,WAA2B,EAAY,KAAqB;QAA5D,gBAAW,GAAX,WAAW,CAAgB;QAAY,UAAK,GAAL,KAAK,CAAgB;IAClF,CAAC;IAED;;OAEG;IACH,mDAAQ,GAAR;QACE,IAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;QAC9D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,UAAU,CAAC,EAAhB,CAAgB,CAAC,CAAC,CAAC;IACjG,CAAC;IAED;;;OAGG;IACH,uDAAY,GAAZ,UAAa,GAAiB;QAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAQD;;OAEG;IACH,gDAAK,GAAL;QACE,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAhDQ;QAAR,KAAK,EAAE;0CAAS,UAAU;oEAA2B;IAJlC,gCAAgC;QADrD,UAAU,EAAE;iDAsBwB,cAAc,EAAmB,cAAc;OArB9D,gCAAgC,CAqDrD;IAAD,uCAAC;CAAA,AArDD,IAqDC;SArDqB,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js deleted file mode 100644 index c9755f270b..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; -import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; -import { getCollectionEditPath } from '../../../../+collection-page/collection-page-routing.module'; -import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; -/** - * Component to wrap a list of existing collections inside a modal - * Used to choose a collection from to edit - */ -var EditCollectionSelectorComponent = /** @class */ (function (_super) { - tslib_1.__extends(EditCollectionSelectorComponent, _super); - function EditCollectionSelectorComponent(activeModal, route, router) { - var _this = _super.call(this, activeModal, route) || this; - _this.activeModal = activeModal; - _this.route = route; - _this.router = router; - _this.objectType = DSpaceObjectType.COLLECTION; - _this.selectorType = DSpaceObjectType.COLLECTION; - _this.action = SelectorActionType.EDIT; - return _this; - } - /** - * Navigate to the collection edit page - */ - EditCollectionSelectorComponent.prototype.navigate = function (dso) { - this.router.navigate([getCollectionEditPath(dso.uuid)]); - }; - EditCollectionSelectorComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-edit-collection-selector', - templateUrl: '../dso-selector-modal-wrapper.component.html', - }), - tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) - ], EditCollectionSelectorComponent); - return EditCollectionSelectorComponent; -}(DSOSelectorModalWrapperComponent)); -export { EditCollectionSelectorComponent }; -//# sourceMappingURL=edit-collection-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js.map deleted file mode 100644 index c08b556df3..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-collection-selector.component.js","sourceRoot":"","sources":["edit-collection-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AACpG,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAEjD;;;GAGG;AAMH;IAAqD,2DAAgC;IAKnF,yCAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC;QACzC,kBAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC;QAC3C,YAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC;;IAIjC,CAAC;IAED;;OAEG;IACH,kDAAQ,GAAR,UAAS,GAAiB;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;IAdU,+BAA+B;QAJ3C,SAAS,CAAC;YACT,QAAQ,EAAE,6BAA6B;YACvC,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,+BAA+B,CAe3C;IAAD,sCAAC;CAAA,AAfD,CAAqD,gCAAgC,GAepF;SAfY,+BAA+B"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js deleted file mode 100644 index 001f8ce81e..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; -import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; -import { getCommunityEditPath } from '../../../../+community-page/community-page-routing.module'; -import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; -/** - * Component to wrap a list of existing communities inside a modal - * Used to choose a community from to edit - */ -var EditCommunitySelectorComponent = /** @class */ (function (_super) { - tslib_1.__extends(EditCommunitySelectorComponent, _super); - function EditCommunitySelectorComponent(activeModal, route, router) { - var _this = _super.call(this, activeModal, route) || this; - _this.activeModal = activeModal; - _this.route = route; - _this.router = router; - _this.objectType = DSpaceObjectType.COMMUNITY; - _this.selectorType = DSpaceObjectType.COMMUNITY; - _this.action = SelectorActionType.EDIT; - return _this; - } - /** - * Navigate to the community edit page - */ - EditCommunitySelectorComponent.prototype.navigate = function (dso) { - this.router.navigate([getCommunityEditPath(dso.uuid)]); - }; - EditCommunitySelectorComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-edit-community-selector', - templateUrl: '../dso-selector-modal-wrapper.component.html', - }), - tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) - ], EditCommunitySelectorComponent); - return EditCommunitySelectorComponent; -}(DSOSelectorModalWrapperComponent)); -export { EditCommunitySelectorComponent }; -//# sourceMappingURL=edit-community-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js.map deleted file mode 100644 index 22f6db836b..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-community-selector.component.js","sourceRoot":"","sources":["edit-community-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2DAA2D,CAAC;AACjG,OAAO,EACL,gCAAgC,EAChC,kBAAkB,EACnB,MAAM,yCAAyC,CAAC;AAEjD;;;GAGG;AAOH;IAAoD,0DAAgC;IAKlF,wCAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC;QACxC,kBAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC;QAC1C,YAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC;;IAIjC,CAAC;IAED;;OAEG;IACH,iDAAQ,GAAR,UAAS,GAAiB;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAdU,8BAA8B;QAL1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAOmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,8BAA8B,CAe1C;IAAD,qCAAC;CAAA,AAfD,CAAoD,gCAAgC,GAenF;SAfY,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js b/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js deleted file mode 100644 index e0b70e49cd..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js +++ /dev/null @@ -1,40 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { DSpaceObjectType } from '../../../../core/shared/dspace-object-type.model'; -import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; -import { getItemEditPath } from '../../../../+item-page/item-page-routing.module'; -import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../dso-selector-modal-wrapper.component'; -/** - * Component to wrap a list of existing items inside a modal - * Used to choose an item from to edit - */ -var EditItemSelectorComponent = /** @class */ (function (_super) { - tslib_1.__extends(EditItemSelectorComponent, _super); - function EditItemSelectorComponent(activeModal, route, router) { - var _this = _super.call(this, activeModal, route) || this; - _this.activeModal = activeModal; - _this.route = route; - _this.router = router; - _this.objectType = DSpaceObjectType.ITEM; - _this.selectorType = DSpaceObjectType.ITEM; - _this.action = SelectorActionType.EDIT; - return _this; - } - /** - * Navigate to the item edit page - */ - EditItemSelectorComponent.prototype.navigate = function (dso) { - this.router.navigate([getItemEditPath(dso.uuid)]); - }; - EditItemSelectorComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-edit-item-selector', - templateUrl: '../dso-selector-modal-wrapper.component.html', - }), - tslib_1.__metadata("design:paramtypes", [NgbActiveModal, ActivatedRoute, Router]) - ], EditItemSelectorComponent); - return EditItemSelectorComponent; -}(DSOSelectorModalWrapperComponent)); -export { EditItemSelectorComponent }; -//# sourceMappingURL=edit-item-selector.component.js.map \ No newline at end of file diff --git a/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js.map b/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js.map deleted file mode 100644 index db6649773b..0000000000 --- a/src/app/shared/dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"edit-item-selector.component.js","sourceRoot":"","sources":["edit-item-selector.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,gCAAgC,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE/G;;;GAGG;AAMH;IAA+C,qDAAgC;IAK7E,mCAAsB,WAA2B,EAAY,KAAqB,EAAU,MAAc;QAA1G,YACE,kBAAM,WAAW,EAAE,KAAK,CAAC,SAC1B;QAFqB,iBAAW,GAAX,WAAW,CAAgB;QAAY,WAAK,GAAL,KAAK,CAAgB;QAAU,YAAM,GAAN,MAAM,CAAQ;QAJ1G,gBAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACnC,kBAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACrC,YAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC;;IAIjC,CAAC;IAED;;OAEG;IACH,4CAAQ,GAAR,UAAS,GAAiB;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAdU,yBAAyB;QAJrC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAMmC,cAAc,EAAmB,cAAc,EAAkB,MAAM;OAL/F,yBAAyB,CAerC;IAAD,gCAAC;CAAA,AAfD,CAA+C,gCAAgC,GAe9E;SAfY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/empty.util.js b/src/app/shared/empty.util.js deleted file mode 100644 index 36de3a2845..0000000000 --- a/src/app/shared/empty.util.js +++ /dev/null @@ -1,168 +0,0 @@ -import { filter, map } from 'rxjs/operators'; -/** - * Returns true if the passed value is null. - * isNull(); // false - * isNull(null); // true - * isNull(undefined); // false - * isNull(''); // false - * isNull({}); // false - * isNull([]); // false - * isNull(function() {}); // false - */ -export function isNull(obj) { - return obj === null; -} -/** - * Returns true if the passed value is not null. - * isNotNull(); // true - * isNotNull(null); // false - * isNotNull(undefined); // true - * isNotNull(''); // true - * isNotNull({}); // true - * isNotNull([]); // true - * isNotNull(function() {}); // true - */ -export function isNotNull(obj) { - return obj !== null; -} -/** - * Returns true if the passed value is undefined. - * isUndefined(); // true - * isUndefined(null); // false - * isUndefined(undefined); // true - * isUndefined(''); // false - * isUndefined({}); // false - * isUndefined([]); // false - * isUndefined(function() {}); // false - */ -export function isUndefined(obj) { - return obj === undefined; -} -/** - * Returns true if the passed value is not undefined. - * isNotUndefined(); // false - * isNotUndefined(null); // true - * isNotUndefined(undefined); // false - * isNotUndefined(''); // true - * isNotUndefined({}); // true - * isNotUndefined([]); // true - * isNotUndefined(function() {}); // true - */ -export function isNotUndefined(obj) { - return obj !== undefined; -} -/** - * Returns true if the passed value is null or undefined. - * hasNoValue(); // true - * hasNoValue(null); // true - * hasNoValue(undefined); // true - * hasNoValue(''); // false - * hasNoValue({}); // false - * hasNoValue([]); // false - * hasNoValue(function() {}); // false - */ -export function hasNoValue(obj) { - return isUndefined(obj) || isNull(obj); -} -/** - * Returns true if the passed value is not null or undefined. - * hasValue(); // false - * hasValue(null); // false - * hasValue(undefined); // false - * hasValue(''); // true - * hasValue({}); // true - * hasValue([]); // true - * hasValue(function() {}); // true - */ -export function hasValue(obj) { - return isNotUndefined(obj) && isNotNull(obj); -} -/** - * Filter items emitted by the source Observable by only emitting those for - * which hasValue is true - */ -export var hasValueOperator = function () { - return function (source) { - return source.pipe(filter(function (obj) { return hasValue(obj); })); - }; -}; -/** - * Verifies that a value is `null` or an empty string, empty array, - * or empty function. - * isEmpty(); // true - * isEmpty(null); // true - * isEmpty(undefined); // true - * isEmpty(''); // true - * isEmpty([]); // true - * isEmpty({}); // true - * isEmpty('Adam Hawkins'); // false - * isEmpty([0,1,2]); // false - * isEmpty('\n\t'); // false - * isEmpty(' '); // false - */ -export function isEmpty(obj) { - if (hasNoValue(obj)) { - return true; - } - if (typeof obj.size === 'number') { - return !obj.size; - } - var objectType = typeof obj; - if (objectType === 'object') { - var size = obj.size; - if (typeof size === 'number') { - return !size; - } - } - if (typeof obj.length === 'number' && objectType !== 'function') { - return !obj.length; - } - if (objectType === 'object') { - if (Object.keys(obj).length === 0) { - return true; - } - var length_1 = obj.length; - if (typeof length_1 === 'number') { - return !length_1; - } - } - return false; -} -/** - * Verifies that a value is not `null`, an empty string, empty array, - * or empty function. - * isNotEmpty(); // false - * isNotEmpty(null); // false - * isNotEmpty(undefined); // false - * isNotEmpty(''); // false - * isNotEmpty([]); // false - * isNotEmpty({}); // false - * isNotEmpty('Adam Hawkins'); // true - * isNotEmpty([0,1,2]); // true - * isNotEmpty('\n\t'); // true - * isNotEmpty(' '); // true - */ -export function isNotEmpty(obj) { - return !isEmpty(obj); -} -/** - * Filter items emitted by the source Observable by only emitting those for - * which isNotEmpty is true - */ -export var isNotEmptyOperator = function () { - return function (source) { - return source.pipe(filter(function (obj) { return isNotEmpty(obj); })); - }; -}; -/** - * Tests each value emitted by the source Observable, - * let's arrays pass through, turns other values in to - * empty arrays. Used to be able to chain array operators - * on something that may not have a value - */ -export var ensureArrayHasValue = function () { - return function (source) { - return source.pipe(map(function (arr) { return Array.isArray(arr) ? arr : []; })); - }; -}; -//# sourceMappingURL=empty.util.js.map \ No newline at end of file diff --git a/src/app/shared/empty.util.js.map b/src/app/shared/empty.util.js.map deleted file mode 100644 index c6ce45aee6..0000000000 --- a/src/app/shared/empty.util.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"empty.util.js","sourceRoot":"","sources":["empty.util.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/error/error.component.js b/src/app/shared/error/error.component.js deleted file mode 100644 index 3734773afb..0000000000 --- a/src/app/shared/error/error.component.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { TranslateService } from '@ngx-translate/core'; -var ErrorComponent = /** @class */ (function () { - function ErrorComponent(translate) { - this.translate = translate; - this.message = 'Error...'; - } - ErrorComponent.prototype.ngOnInit = function () { - var _this = this; - if (this.message === undefined) { - this.subscription = this.translate.get('error.default').subscribe(function (message) { - _this.message = message; - }); - } - }; - ErrorComponent.prototype.ngOnDestroy = function () { - if (this.subscription !== undefined) { - this.subscription.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ErrorComponent.prototype, "message", void 0); - ErrorComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-error', - styleUrls: ['./error.component.scss'], - templateUrl: './error.component.html' - }), - tslib_1.__metadata("design:paramtypes", [TranslateService]) - ], ErrorComponent); - return ErrorComponent; -}()); -export { ErrorComponent }; -//# sourceMappingURL=error.component.js.map \ No newline at end of file diff --git a/src/app/shared/error/error.component.js.map b/src/app/shared/error/error.component.js.map deleted file mode 100644 index 97f842e63a..0000000000 --- a/src/app/shared/error/error.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"error.component.js","sourceRoot":"","sources":["error.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AASvD;IAME,wBAAoB,SAA2B;QAA3B,cAAS,GAAT,SAAS,CAAkB;QAJtC,YAAO,GAAG,UAAU,CAAC;IAM9B,CAAC;IAED,iCAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,UAAC,OAAe;gBAChF,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACzB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,oCAAW,GAAX;QACE,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACjC;IACH,CAAC;IApBQ;QAAR,KAAK,EAAE;;mDAAsB;IAFnB,cAAc;QAL1B,SAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,CAAC,wBAAwB,CAAC;YACrC,WAAW,EAAE,wBAAwB;SACtC,CAAC;iDAO+B,gBAAgB;OANpC,cAAc,CAuB1B;IAAD,qBAAC;CAAA,AAvBD,IAuBC;SAvBY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js deleted file mode 100644 index c28292c919..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js +++ /dev/null @@ -1,202 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component, ComponentFactoryResolver, ContentChildren, EventEmitter, Input, Output, QueryList, ViewChild, ViewContainerRef } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { DYNAMIC_FORM_CONTROL_TYPE_ARRAY, DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX, DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP, DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER, DYNAMIC_FORM_CONTROL_TYPE_GROUP, DYNAMIC_FORM_CONTROL_TYPE_INPUT, DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP, DYNAMIC_FORM_CONTROL_TYPE_SELECT, DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA, DYNAMIC_FORM_CONTROL_TYPE_TIMEPICKER, DynamicFormControlContainerComponent, DynamicFormLayoutService, DynamicFormValidationService, DynamicTemplateDirective, } from '@ng-dynamic-forms/core'; -import { DynamicNGBootstrapCalendarComponent, DynamicNGBootstrapCheckboxComponent, DynamicNGBootstrapCheckboxGroupComponent, DynamicNGBootstrapInputComponent, DynamicNGBootstrapRadioGroupComponent, DynamicNGBootstrapSelectComponent, DynamicNGBootstrapTextAreaComponent, DynamicNGBootstrapTimePickerComponent } from '@ng-dynamic-forms/ui-ng-bootstrap'; -import { TranslateService } from '@ngx-translate/core'; -import { DYNAMIC_FORM_CONTROL_TYPE_TYPEAHEAD } from './models/typeahead/dynamic-typeahead.model'; -import { DYNAMIC_FORM_CONTROL_TYPE_SCROLLABLE_DROPDOWN } from './models/scrollable-dropdown/dynamic-scrollable-dropdown.model'; -import { DYNAMIC_FORM_CONTROL_TYPE_TAG } from './models/tag/dynamic-tag.model'; -import { DYNAMIC_FORM_CONTROL_TYPE_DSDATEPICKER } from './models/date-picker/date-picker.model'; -import { DYNAMIC_FORM_CONTROL_TYPE_LOOKUP } from './models/lookup/dynamic-lookup.model'; -import { DynamicListCheckboxGroupModel } from './models/list/dynamic-list-checkbox-group.model'; -import { DynamicListRadioGroupModel } from './models/list/dynamic-list-radio-group.model'; -import { isNotEmpty, isNotUndefined } from '../../../empty.util'; -import { DYNAMIC_FORM_CONTROL_TYPE_LOOKUP_NAME } from './models/lookup/dynamic-lookup-name.model'; -import { DsDynamicTagComponent } from './models/tag/dynamic-tag.component'; -import { DsDatePickerComponent } from './models/date-picker/date-picker.component'; -import { DsDynamicListComponent } from './models/list/dynamic-list.component'; -import { DsDynamicTypeaheadComponent } from './models/typeahead/dynamic-typeahead.component'; -import { DsDynamicScrollableDropdownComponent } from './models/scrollable-dropdown/dynamic-scrollable-dropdown.component'; -import { DsDynamicLookupComponent } from './models/lookup/dynamic-lookup.component'; -import { DsDynamicFormGroupComponent } from './models/form-group/dynamic-form-group.component'; -import { DsDynamicFormArrayComponent } from './models/array-group/dynamic-form-array.component'; -import { DsDynamicRelationGroupComponent } from './models/relation-group/dynamic-relation-group.components'; -import { DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP } from './models/relation-group/dynamic-relation-group.model'; -import { DsDatePickerInlineComponent } from './models/date-picker-inline/dynamic-date-picker-inline.component'; -export function dsDynamicFormControlMapFn(model) { - switch (model.type) { - case DYNAMIC_FORM_CONTROL_TYPE_ARRAY: - return DsDynamicFormArrayComponent; - case DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX: - return DynamicNGBootstrapCheckboxComponent; - case DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP: - return (model instanceof DynamicListCheckboxGroupModel) ? DsDynamicListComponent : DynamicNGBootstrapCheckboxGroupComponent; - case DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER: - var datepickerModel = model; - return datepickerModel.inline ? DynamicNGBootstrapCalendarComponent : DsDatePickerInlineComponent; - case DYNAMIC_FORM_CONTROL_TYPE_GROUP: - return DsDynamicFormGroupComponent; - case DYNAMIC_FORM_CONTROL_TYPE_INPUT: - return DynamicNGBootstrapInputComponent; - case DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP: - return (model instanceof DynamicListRadioGroupModel) ? DsDynamicListComponent : DynamicNGBootstrapRadioGroupComponent; - case DYNAMIC_FORM_CONTROL_TYPE_SELECT: - return DynamicNGBootstrapSelectComponent; - case DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA: - return DynamicNGBootstrapTextAreaComponent; - case DYNAMIC_FORM_CONTROL_TYPE_TIMEPICKER: - return DynamicNGBootstrapTimePickerComponent; - case DYNAMIC_FORM_CONTROL_TYPE_TYPEAHEAD: - return DsDynamicTypeaheadComponent; - case DYNAMIC_FORM_CONTROL_TYPE_SCROLLABLE_DROPDOWN: - return DsDynamicScrollableDropdownComponent; - case DYNAMIC_FORM_CONTROL_TYPE_TAG: - return DsDynamicTagComponent; - case DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP: - return DsDynamicRelationGroupComponent; - case DYNAMIC_FORM_CONTROL_TYPE_DSDATEPICKER: - return DsDatePickerComponent; - case DYNAMIC_FORM_CONTROL_TYPE_LOOKUP: - return DsDynamicLookupComponent; - case DYNAMIC_FORM_CONTROL_TYPE_LOOKUP_NAME: - return DsDynamicLookupComponent; - default: - return null; - } -} -var DsDynamicFormControlContainerComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicFormControlContainerComponent, _super); - function DsDynamicFormControlContainerComponent(componentFactoryResolver, layoutService, validationService, translateService) { - var _this = _super.call(this, componentFactoryResolver, layoutService, validationService) || this; - _this.componentFactoryResolver = componentFactoryResolver; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.translateService = translateService; - _this.asBootstrapFormGroup = true; - _this.bindId = true; - _this.context = null; - _this.hasErrorMessaging = false; - _this.layout = null; - /* tslint:disable:no-output-rename */ - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.customEvent = new EventEmitter(); - return _this; - } - Object.defineProperty(DsDynamicFormControlContainerComponent.prototype, "componentType", { - get: function () { - return this.layoutService.getCustomComponentType(this.model) || dsDynamicFormControlMapFn(this.model); - }, - enumerable: true, - configurable: true - }); - DsDynamicFormControlContainerComponent.prototype.ngOnChanges = function (changes) { - if (changes) { - _super.prototype.ngOnChanges.call(this, changes); - if (this.model && this.model.placeholder) { - this.model.placeholder = this.translateService.instant(this.model.placeholder); - } - } - }; - DsDynamicFormControlContainerComponent.prototype.ngDoCheck = function () { - if (isNotUndefined(this.showErrorMessagesPreviousStage) && this.showErrorMessagesPreviousStage !== this.showErrorMessages) { - this.showErrorMessagesPreviousStage = this.showErrorMessages; - this.forceShowErrorDetection(); - } - }; - DsDynamicFormControlContainerComponent.prototype.ngAfterViewInit = function () { - this.showErrorMessagesPreviousStage = this.showErrorMessages; - }; - /** - * Since Form Control Components created dynamically have 'OnPush' change detection strategy, - * changes are not propagated. So use this method to force an update - */ - DsDynamicFormControlContainerComponent.prototype.forceShowErrorDetection = function () { - if (this.showErrorMessages) { - this.destroyFormControlComponent(); - this.createFormControlComponent(); - } - }; - DsDynamicFormControlContainerComponent.prototype.onChangeLanguage = function (event) { - if (isNotEmpty(this.model.value)) { - this.onChange(event); - } - }; - tslib_1.__decorate([ - ContentChildren(DynamicTemplateDirective), - tslib_1.__metadata("design:type", QueryList) - ], DsDynamicFormControlContainerComponent.prototype, "contentTemplateList", void 0); - tslib_1.__decorate([ - Input('templates'), - tslib_1.__metadata("design:type", QueryList) - ], DsDynamicFormControlContainerComponent.prototype, "inputTemplateList", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], DsDynamicFormControlContainerComponent.prototype, "formId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormControlContainerComponent.prototype, "asBootstrapFormGroup", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormControlContainerComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormControlContainerComponent.prototype, "context", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicFormControlContainerComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormControlContainerComponent.prototype, "hasErrorMessaging", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormControlContainerComponent.prototype, "layout", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormControlContainerComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output('dfBlur'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormControlContainerComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output('dfChange'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormControlContainerComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output('dfFocus'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormControlContainerComponent.prototype, "focus", void 0); - tslib_1.__decorate([ - Output('ngbEvent'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormControlContainerComponent.prototype, "customEvent", void 0); - tslib_1.__decorate([ - ViewChild('componentViewContainer', { read: ViewContainerRef }), - tslib_1.__metadata("design:type", ViewContainerRef) - ], DsDynamicFormControlContainerComponent.prototype, "componentViewContainerRef", void 0); - DsDynamicFormControlContainerComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-form-control-container', - styleUrls: ['./ds-dynamic-form-control-container.component.scss'], - templateUrl: './ds-dynamic-form-control-container.component.html', - changeDetection: ChangeDetectionStrategy.Default - }), - tslib_1.__metadata("design:paramtypes", [ComponentFactoryResolver, - DynamicFormLayoutService, - DynamicFormValidationService, - TranslateService]) - ], DsDynamicFormControlContainerComponent); - return DsDynamicFormControlContainerComponent; -}(DynamicFormControlContainerComponent)); -export { DsDynamicFormControlContainerComponent }; -//# sourceMappingURL=ds-dynamic-form-control-container.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js.map deleted file mode 100644 index a7c74cfa18..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ds-dynamic-form-control-container.component.js","sourceRoot":"","sources":["ds-dynamic-form-control-container.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js deleted file mode 100644 index b1ec2001f7..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js +++ /dev/null @@ -1,71 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, ContentChildren, EventEmitter, Input, Output, QueryList, ViewChildren } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { DynamicFormComponent, DynamicFormLayoutService, DynamicTemplateDirective, } from '@ng-dynamic-forms/core'; -import { DsDynamicFormControlContainerComponent } from './ds-dynamic-form-control-container.component'; -import { FormBuilderService } from '../form-builder.service'; -var DsDynamicFormComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicFormComponent, _super); - function DsDynamicFormComponent(formService, layoutService) { - var _this = _super.call(this, formService, layoutService) || this; - _this.formService = formService; - _this.layoutService = layoutService; - _this.formLayout = null; - /* tslint:disable:no-output-rename */ - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.customEvent = new EventEmitter(); - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], DsDynamicFormComponent.prototype, "formId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicFormComponent.prototype, "formGroup", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], DsDynamicFormComponent.prototype, "formModel", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormComponent.prototype, "formLayout", void 0); - tslib_1.__decorate([ - Output('dfBlur'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output('dfChange'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output('dfFocus'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormComponent.prototype, "focus", void 0); - tslib_1.__decorate([ - Output('ngbEvent'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormComponent.prototype, "customEvent", void 0); - tslib_1.__decorate([ - ContentChildren(DynamicTemplateDirective), - tslib_1.__metadata("design:type", QueryList) - ], DsDynamicFormComponent.prototype, "templates", void 0); - tslib_1.__decorate([ - ViewChildren(DsDynamicFormControlContainerComponent), - tslib_1.__metadata("design:type", QueryList) - ], DsDynamicFormComponent.prototype, "components", void 0); - DsDynamicFormComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-form', - templateUrl: './ds-dynamic-form.component.html' - }), - tslib_1.__metadata("design:paramtypes", [FormBuilderService, DynamicFormLayoutService]) - ], DsDynamicFormComponent); - return DsDynamicFormComponent; -}(DynamicFormComponent)); -export { DsDynamicFormComponent }; -//# sourceMappingURL=ds-dynamic-form.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js.map deleted file mode 100644 index e2d1e7d8a7..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ds-dynamic-form.component.js","sourceRoot":"","sources":["ds-dynamic-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACjH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EACL,oBAAoB,EAKpB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,sCAAsC,EAAE,MAAM,+CAA+C,CAAC;AACvG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAM7D;IAA4C,kDAAoB;IAkB9D,gCAAsB,WAA+B,EAAY,aAAuC;QAAxG,YACE,kBAAM,WAAW,EAAE,aAAa,CAAC,SAClC;QAFqB,iBAAW,GAAX,WAAW,CAAoB;QAAY,mBAAa,GAAb,aAAa,CAA0B;QAb/F,gBAAU,GAAG,IAAyB,CAAC;QAEhD,qCAAqC;QACnB,UAAI,GAA0C,IAAI,YAAY,EAA2B,CAAC;QACxF,YAAM,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC7F,WAAK,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC1F,iBAAW,GAA0C,IAAI,YAAY,EAA2B,CAAC;;IASrH,CAAC;IAlBQ;QAAR,KAAK,EAAE;;0DAAgB;IACf;QAAR,KAAK,EAAE;0CAAY,SAAS;6DAAC;IACrB;QAAR,KAAK,EAAE;;6DAAsC;IACrC;QAAR,KAAK,EAAE;;8DAAwC;IAG9B;QAAjB,MAAM,CAAC,QAAQ,CAAC;0CAAO,YAAY;wDAAwE;IACxF;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAS,YAAY;0DAAwE;IAC7F;QAAlB,MAAM,CAAC,SAAS,CAAC;0CAAQ,YAAY;yDAAwE;IAC1F;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAc,YAAY;+DAAwE;IAG1E;QAA1C,eAAe,CAAC,wBAAwB,CAAC;0CAAY,SAAS;6DAA2B;IAEpC;QAArD,YAAY,CAAC,sCAAsC,CAAC;0CAAa,SAAS;8DAAuC;IAhBvG,sBAAsB;QAJlC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,kCAAkC;SAChD,CAAC;iDAmBmC,kBAAkB,EAA2B,wBAAwB;OAlB7F,sBAAsB,CAsBlC;IAAD,6BAAC;CAAA,AAtBD,CAA4C,oBAAoB,GAsB/D;SAtBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js deleted file mode 100644 index 1667e9808a..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js +++ /dev/null @@ -1,67 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output, QueryList } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { DynamicFormArrayComponent, DynamicFormArrayModel, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -var DsDynamicFormArrayComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicFormArrayComponent, _super); - /* tslint:enable:no-output-rename */ - function DsDynamicFormArrayComponent(layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.bindId = true; - /* tslint:disable:no-output-rename */ - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.customEvent = new EventEmitter(); - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormArrayComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicFormArrayComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormArrayComponent.prototype, "layout", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", DynamicFormArrayModel) - ], DsDynamicFormArrayComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", QueryList) - ], DsDynamicFormArrayComponent.prototype, "templates", void 0); - tslib_1.__decorate([ - Output('dfBlur'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormArrayComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output('dfChange'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormArrayComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output('dfFocus'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormArrayComponent.prototype, "focus", void 0); - tslib_1.__decorate([ - Output('ngbEvent'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormArrayComponent.prototype, "customEvent", void 0); - DsDynamicFormArrayComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-form-array', - templateUrl: './dynamic-form-array.component.html' - }), - tslib_1.__metadata("design:paramtypes", [DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDynamicFormArrayComponent); - return DsDynamicFormArrayComponent; -}(DynamicFormArrayComponent)); -export { DsDynamicFormArrayComponent }; -//# sourceMappingURL=dynamic-form-array.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js.map deleted file mode 100644 index 8e553fbae0..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-form-array.component.js","sourceRoot":"","sources":["dynamic-form-array.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EAGrB,wBAAwB,EACxB,4BAA4B,EAE7B,MAAM,wBAAwB,CAAC;AAMhC;IAAiD,uDAAyB;IAaxE,oCAAoC;IAEpC,qCAAsB,aAAuC,EACvC,iBAA+C;QADrE,YAGE,kBAAM,aAAa,EAAE,iBAAiB,CAAC,SACxC;QAJqB,mBAAa,GAAb,aAAa,CAA0B;QACvC,uBAAiB,GAAjB,iBAAiB,CAA8B;QAd5D,YAAM,GAAG,IAAI,CAAC;QAMvB,qCAAqC;QACnB,UAAI,GAA0C,IAAI,YAAY,EAA2B,CAAC;QACxF,YAAM,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC7F,WAAK,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC1F,iBAAW,GAAgD,IAAI,YAAY,EAAE,CAAC;;IAOlG,CAAC;IAjBQ;QAAR,KAAK,EAAE;;+DAAe;IACd;QAAR,KAAK,EAAE;0CAAQ,SAAS;8DAAC;IACjB;QAAR,KAAK,EAAE;;+DAA2B;IAC1B;QAAR,KAAK,EAAE;0CAAQ,qBAAqB;8DAAC;IAC7B;QAAR,KAAK,EAAE;0CAAY,SAAS;kEAAuC;IAGlD;QAAjB,MAAM,CAAC,QAAQ,CAAC;0CAAO,YAAY;6DAAwE;IACxF;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAS,YAAY;+DAAwE;IAC7F;QAAlB,MAAM,CAAC,SAAS,CAAC;0CAAQ,YAAY;8DAAwE;IAC1F;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAc,YAAY;oEAAqD;IAZvF,2BAA2B;QAJvC,SAAS,CAAC;YACP,QAAQ,EAAE,uBAAuB;YACjC,WAAW,EAAE,qCAAqC;SACrD,CAAC;iDAgBqC,wBAAwB;YACpB,4BAA4B;OAhB1D,2BAA2B,CAqBvC;IAAD,kCAAC;CAAA,AArBD,CAAiD,yBAAyB,GAqBzE;SArBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js deleted file mode 100644 index c2f9f1d92a..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js +++ /dev/null @@ -1,63 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { NgbDatepicker, NgbDatepickerConfig } from '@ng-bootstrap/ng-bootstrap'; -import { DynamicDatePickerModel, DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -var DsDatePickerInlineComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDatePickerInlineComponent, _super); - function DsDatePickerInlineComponent(layoutService, validationService, config) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.config = config; - _this.bindId = true; - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDatePickerInlineComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDatePickerInlineComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDatePickerInlineComponent.prototype, "layout", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", DynamicDatePickerModel) - ], DsDatePickerInlineComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDatePickerInlineComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDatePickerInlineComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDatePickerInlineComponent.prototype, "focus", void 0); - tslib_1.__decorate([ - ViewChild(NgbDatepicker), - tslib_1.__metadata("design:type", NgbDatepicker) - ], DsDatePickerInlineComponent.prototype, "ngbDatePicker", void 0); - DsDatePickerInlineComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-date-picker-inline', - templateUrl: './dynamic-date-picker-inline.component.html' - }), - tslib_1.__metadata("design:paramtypes", [DynamicFormLayoutService, - DynamicFormValidationService, - NgbDatepickerConfig]) - ], DsDatePickerInlineComponent); - return DsDatePickerInlineComponent; -}(DynamicFormControlComponent)); -export { DsDatePickerInlineComponent }; -//# sourceMappingURL=dynamic-date-picker-inline.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js.map deleted file mode 100644 index 918206c93e..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-date-picker-inline.component.js","sourceRoot":"","sources":["dynamic-date-picker-inline.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAE3B,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,wBAAwB,CAAC;AAMhC;IAAiD,uDAA2B;IAa1E,qCAAsB,aAAuC,EACvC,iBAA+C,EAClD,MAA2B;QAF9C,YAIE,kBAAM,aAAa,EAAE,iBAAiB,CAAC,SACxC;QALqB,mBAAa,GAAb,aAAa,CAA0B;QACvC,uBAAiB,GAAjB,iBAAiB,CAA8B;QAClD,YAAM,GAAN,MAAM,CAAqB;QAbrC,YAAM,GAAG,IAAI,CAAC;QAKb,UAAI,GAAsB,IAAI,YAAY,EAAE,CAAC;QAC7C,YAAM,GAAsB,IAAI,YAAY,EAAE,CAAC;QAC/C,WAAK,GAAsB,IAAI,YAAY,EAAE,CAAC;;IASxD,CAAC;IAhBQ;QAAR,KAAK,EAAE;;+DAAe;IACd;QAAR,KAAK,EAAE;0CAAQ,SAAS;8DAAC;IACjB;QAAR,KAAK,EAAE;;+DAA2B;IAC1B;QAAR,KAAK,EAAE;0CAAQ,sBAAsB;8DAAC;IAE7B;QAAT,MAAM,EAAE;0CAAO,YAAY;6DAA2B;IAC7C;QAAT,MAAM,EAAE;0CAAS,YAAY;+DAA2B;IAC/C;QAAT,MAAM,EAAE;0CAAQ,YAAY;8DAA2B;IAE9B;QAAzB,SAAS,CAAC,aAAa,CAAC;0CAAgB,aAAa;sEAAC;IAX5C,2BAA2B;QAJvC,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,WAAW,EAAE,6CAA6C;SAC3D,CAAC;iDAcqC,wBAAwB;YACpB,4BAA4B;YAC1C,mBAAmB;OAfnC,2BAA2B,CAmBvC;IAAD,kCAAC;CAAA,AAnBD,CAAiD,2BAA2B,GAmB3E;SAnBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js deleted file mode 100644 index e1a2bf8b40..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js +++ /dev/null @@ -1,191 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { DynamicDsDatePickerModel } from './date-picker.model'; -import { hasValue } from '../../../../../empty.util'; -import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -export var DS_DATE_PICKER_SEPARATOR = '-'; -var DsDatePickerComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDatePickerComponent, _super); - function DsDatePickerComponent(layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.bindId = true; - // @Input() - // minDate; - // @Input() - // maxDate; - _this.selected = new EventEmitter(); - _this.remove = new EventEmitter(); - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.minMonth = 1; - _this.maxMonth = 12; - _this.minDay = 1; - _this.maxDay = 31; - _this.yearPlaceholder = 'year'; - _this.monthPlaceholder = 'month'; - _this.dayPlaceholder = 'day'; - _this.disabledMonth = true; - _this.disabledDay = true; - return _this; - } - DsDatePickerComponent.prototype.ngOnInit = function () { - var now = new Date(); - this.initialYear = now.getFullYear(); - this.initialMonth = now.getMonth() + 1; - this.initialDay = now.getDate(); - if (this.model.value && this.model.value !== null) { - var values = this.model.value.toString().split(DS_DATE_PICKER_SEPARATOR); - if (values.length > 0) { - this.initialYear = parseInt(values[0], 10); - this.year = this.initialYear; - this.disabledMonth = false; - } - if (values.length > 1) { - this.initialMonth = parseInt(values[1], 10); - this.month = this.initialMonth; - this.disabledDay = false; - } - if (values.length > 2) { - this.initialDay = parseInt(values[2], 10); - this.day = this.initialDay; - } - } - this.maxYear = this.initialYear + 100; - }; - DsDatePickerComponent.prototype.onBlur = function (event) { - this.blur.emit(); - }; - DsDatePickerComponent.prototype.onChange = function (event) { - // update year-month-day - switch (event.field) { - case 'year': { - if (event.value !== null) { - this.year = event.value; - } - else { - this.year = undefined; - this.month = undefined; - this.day = undefined; - this.disabledMonth = true; - this.disabledDay = true; - } - break; - } - case 'month': { - if (event.value !== null) { - this.month = event.value; - } - else { - this.month = undefined; - this.day = undefined; - this.disabledDay = true; - } - break; - } - case 'day': { - if (event.value !== null) { - this.day = event.value; - } - else { - this.day = undefined; - } - break; - } - } - // set max for days by month/year - if (!this.disabledDay) { - var month = this.month ? this.month - 1 : 0; - var date = new Date(this.year, month, 1); - this.maxDay = this.getLastDay(date); - if (this.day > this.maxDay) { - this.day = this.maxDay; - } - } - // Manage disable - if (hasValue(this.year) && event.field === 'year') { - this.disabledMonth = false; - } - else if (hasValue(this.month) && event.field === 'month') { - this.disabledDay = false; - } - // update value - var value = null; - if (hasValue(this.year)) { - var yyyy = this.year.toString(); - while (yyyy.length < 4) { - yyyy = '0' + yyyy; - } - value = yyyy; - } - if (hasValue(this.month)) { - var mm = this.month.toString().length === 1 - ? '0' + this.month.toString() - : this.month.toString(); - value += DS_DATE_PICKER_SEPARATOR + mm; - } - if (hasValue(this.day)) { - var dd = this.day.toString().length === 1 - ? '0' + this.day.toString() - : this.day.toString(); - value += DS_DATE_PICKER_SEPARATOR + dd; - } - this.model.valueUpdates.next(value); - this.change.emit(value); - }; - DsDatePickerComponent.prototype.onFocus = function (event) { - this.focus.emit(event); - }; - DsDatePickerComponent.prototype.getLastDay = function (date) { - // Last Day of the same month (+1 month, -1 day) - date.setMonth(date.getMonth() + 1, 0); - return date.getDate(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDatePickerComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDatePickerComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", DynamicDsDatePickerModel) - ], DsDatePickerComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], DsDatePickerComponent.prototype, "selected", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], DsDatePickerComponent.prototype, "remove", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], DsDatePickerComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], DsDatePickerComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], DsDatePickerComponent.prototype, "focus", void 0); - DsDatePickerComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-date-picker', - styleUrls: ['./date-picker.component.scss'], - templateUrl: './date-picker.component.html', - }), - tslib_1.__metadata("design:paramtypes", [DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDatePickerComponent); - return DsDatePickerComponent; -}(DynamicFormControlComponent)); -export { DsDatePickerComponent }; -//# sourceMappingURL=date-picker.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js.map deleted file mode 100644 index ea9d6873d8..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"date-picker.component.js","sourceRoot":"","sources":["date-picker.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js deleted file mode 100644 index e545309337..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DynamicDateControlModel, serializable } from '@ng-dynamic-forms/core'; -export var DYNAMIC_FORM_CONTROL_TYPE_DSDATEPICKER = 'DATE'; -/** - * Dynamic Date Picker Model class - */ -var DynamicDsDatePickerModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicDsDatePickerModel, _super); - function DynamicDsDatePickerModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.type = DYNAMIC_FORM_CONTROL_TYPE_DSDATEPICKER; - _this.hasLanguages = false; - _this.malformedDate = false; - return _this; - } - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicDsDatePickerModel.prototype, "type", void 0); - return DynamicDsDatePickerModel; -}(DynamicDateControlModel)); -export { DynamicDsDatePickerModel }; -//# sourceMappingURL=date-picker.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js.map deleted file mode 100644 index 42d6bfcfd3..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"date-picker.model.js","sourceRoot":"","sources":["date-picker.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAIzG,MAAM,CAAC,IAAM,sCAAsC,GAAG,MAAM,CAAC;AAE7D;;GAEG;AACH;IAA8C,oDAAuB;IAMnE,kCAAY,MAAqC,EAAE,MAAiC;QAApF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAEtB;QARwB,UAAI,GAAW,sCAAsC,CAAC;QAG/E,kBAAY,GAAG,KAAK,CAAC;QAInB,KAAI,CAAC,aAAa,GAAG,KAAK,CAAC;;IAC7B,CAAC;IARe;QAAf,YAAY,EAAE;;0DAAgE;IAUjF,+BAAC;CAAA,AAXD,CAA8C,uBAAuB,GAWpE;SAXY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js deleted file mode 100644 index 0a8197a64b..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js +++ /dev/null @@ -1,67 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DynamicFormGroupModel, serializable } from '@ng-dynamic-forms/core'; -import { isNotEmpty } from '../../../../empty.util'; -import { FormFieldMetadataValueObject } from '../../models/form-field-metadata-value.model'; -export var CONCAT_GROUP_SUFFIX = '_CONCAT_GROUP'; -export var CONCAT_FIRST_INPUT_SUFFIX = '_CONCAT_FIRST_INPUT'; -export var CONCAT_SECOND_INPUT_SUFFIX = '_CONCAT_SECOND_INPUT'; -var DynamicConcatModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicConcatModel, _super); - function DynamicConcatModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.hasLanguages = false; - _this.isCustomGroup = true; - _this.separator = config.separator + ' '; - return _this; - } - Object.defineProperty(DynamicConcatModel.prototype, "value", { - get: function () { - var firstValue = this.get(0).value; - var secondValue = this.get(1).value; - if (isNotEmpty(firstValue) && isNotEmpty(secondValue)) { - return new FormFieldMetadataValueObject(firstValue + this.separator + secondValue); - } - else if (isNotEmpty(firstValue)) { - return new FormFieldMetadataValueObject(firstValue); - } - else { - return null; - } - }, - set: function (value) { - var values; - var tempValue; - if (typeof value === 'string') { - tempValue = value; - } - else { - tempValue = value.value; - } - if (tempValue.includes(this.separator)) { - values = tempValue.split(this.separator); - } - else { - values = [tempValue, null]; - } - if (values[0]) { - this.get(0).valueUpdates.next(values[0]); - } - if (values[1]) { - this.get(1).valueUpdates.next(values[1]); - } - }, - enumerable: true, - configurable: true - }); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicConcatModel.prototype, "separator", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Object) - ], DynamicConcatModel.prototype, "hasLanguages", void 0); - return DynamicConcatModel; -}(DynamicFormGroupModel)); -export { DynamicConcatModel }; -//# sourceMappingURL=ds-dynamic-concat.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js.map deleted file mode 100644 index 31af370487..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ds-dynamic-concat.model.js","sourceRoot":"","sources":["ds-dynamic-concat.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA4B,qBAAqB,EAA+B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACpI,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAE5F,MAAM,CAAC,IAAM,mBAAmB,GAAG,eAAe,CAAC;AACnD,MAAM,CAAC,IAAM,yBAAyB,GAAG,qBAAqB,CAAC;AAC/D,MAAM,CAAC,IAAM,0BAA0B,GAAG,sBAAsB,CAAC;AAMjE;IAAwC,8CAAqB;IAM3D,4BAAY,MAAgC,EAAE,MAAiC;QAA/E,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAGtB;QARe,kBAAY,GAAG,KAAK,CAAC;QACrC,mBAAa,GAAG,IAAI,CAAC;QAMnB,KAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC;;IAC1C,CAAC;IAED,sBAAI,qCAAK;aAAT;YACE,IAAM,UAAU,GAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,KAAK,CAAC;YAC9D,IAAM,WAAW,GAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,KAAK,CAAC;YAE/D,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE;gBACrD,OAAO,IAAI,4BAA4B,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,CAAC;aACpF;iBAAM,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;gBACjC,OAAO,IAAI,4BAA4B,CAAC,UAAU,CAAC,CAAC;aACrD;iBAAM;gBACL,OAAO,IAAI,CAAC;aACb;QACH,CAAC;aAED,UAAU,KAA4C;YACpD,IAAI,MAAM,CAAC;YACX,IAAI,SAAiB,CAAC;YAEtB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBAC7B,SAAS,GAAI,KAAK,CAAC;aACpB;iBAAM;gBACL,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;aACzB;YAED,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACtC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC1C;iBAAM;gBACL,MAAM,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;aAC5B;YAED,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;gBACZ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACnE;YACD,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;gBACZ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACnE;QACH,CAAC;;;OAxBA;IAtBe;QAAf,YAAY,EAAE;;yDAAmB;IAClB;QAAf,YAAY,EAAE;;4DAAsB;IA+CvC,yBAAC;CAAA,AAlDD,CAAwC,qBAAqB,GAkD5D;SAlDY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js deleted file mode 100644 index 27811034b3..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js +++ /dev/null @@ -1,95 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DynamicInputModel, serializable } from '@ng-dynamic-forms/core'; -import { Subject } from 'rxjs'; -import { AuthorityOptions } from '../../../../../core/integration/models/authority-options.model'; -import { hasValue } from '../../../../empty.util'; -import { FormFieldMetadataValueObject } from '../../models/form-field-metadata-value.model'; -var DsDynamicInputModel = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicInputModel, _super); - function DsDynamicInputModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.readOnly = config.readOnly; - _this.value = config.value; - _this.language = config.language; - if (!_this.language) { - // TypeAhead - if (config.value instanceof FormFieldMetadataValueObject) { - _this.language = config.value.language; - } - else if (Array.isArray(config.value)) { - // Tag of Authority - if (config.value[0].language) { - _this.language = config.value[0].language; - } - } - } - _this.languageCodes = config.languageCodes; - _this.languageUpdates = new Subject(); - _this.languageUpdates.subscribe(function (lang) { - _this.language = lang; - }); - _this.authorityOptions = config.authorityOptions; - return _this; - } - Object.defineProperty(DsDynamicInputModel.prototype, "hasAuthority", { - get: function () { - return this.authorityOptions && hasValue(this.authorityOptions.name); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DsDynamicInputModel.prototype, "hasLanguages", { - get: function () { - if (this.languageCodes && this.languageCodes.length > 1) { - return true; - } - else { - return false; - } - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DsDynamicInputModel.prototype, "language", { - get: function () { - return this._language; - }, - set: function (language) { - this._language = language; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DsDynamicInputModel.prototype, "languageCodes", { - get: function () { - return this._languageCodes; - }, - set: function (languageCodes) { - this._languageCodes = languageCodes; - if (!this.language || this.language === null || this.language === '') { - this.language = this.languageCodes ? this.languageCodes[0].code : null; - } - }, - enumerable: true, - configurable: true - }); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", AuthorityOptions) - ], DsDynamicInputModel.prototype, "authorityOptions", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Array) - ], DsDynamicInputModel.prototype, "_languageCodes", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DsDynamicInputModel.prototype, "_language", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Subject) - ], DsDynamicInputModel.prototype, "languageUpdates", void 0); - return DsDynamicInputModel; -}(DynamicInputModel)); -export { DsDynamicInputModel }; -//# sourceMappingURL=ds-dynamic-input.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js.map deleted file mode 100644 index 62eca7e177..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ds-dynamic-input.model.js","sourceRoot":"","sources":["ds-dynamic-input.model.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js deleted file mode 100644 index 04a397f3f0..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js +++ /dev/null @@ -1,82 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DynamicFormGroupModel, serializable } from '@ng-dynamic-forms/core'; -import { Subject } from 'rxjs'; -export var QUALDROP_GROUP_SUFFIX = '_QUALDROP_GROUP'; -export var QUALDROP_METADATA_SUFFIX = '_QUALDROP_METADATA'; -export var QUALDROP_VALUE_SUFFIX = '_QUALDROP_VALUE'; -var DynamicQualdropModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicQualdropModel, _super); - function DynamicQualdropModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.hasLanguages = false; - _this.isCustomGroup = true; - _this.readOnly = config.readOnly; - _this.language = config.language; - _this.languageCodes = config.languageCodes; - _this.languageUpdates = new Subject(); - _this.languageUpdates.subscribe(function (lang) { - _this.language = lang; - }); - return _this; - } - Object.defineProperty(DynamicQualdropModel.prototype, "value", { - get: function () { - return this.get(1).value; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DynamicQualdropModel.prototype, "qualdropId", { - get: function () { - return this.get(0).value.toString(); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DynamicQualdropModel.prototype, "language", { - get: function () { - return this._language; - }, - set: function (language) { - this._language = language; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DynamicQualdropModel.prototype, "languageCodes", { - get: function () { - return this._languageCodes; - }, - set: function (languageCodes) { - this._languageCodes = languageCodes; - if (!this.language || this.language === null || this.language === '') { - this.language = this.languageCodes ? this.languageCodes[0].code : null; - } - }, - enumerable: true, - configurable: true - }); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicQualdropModel.prototype, "_language", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Array) - ], DynamicQualdropModel.prototype, "_languageCodes", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Subject) - ], DynamicQualdropModel.prototype, "languageUpdates", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Object) - ], DynamicQualdropModel.prototype, "hasLanguages", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Boolean) - ], DynamicQualdropModel.prototype, "readOnly", void 0); - return DynamicQualdropModel; -}(DynamicFormGroupModel)); -export { DynamicQualdropModel }; -//# sourceMappingURL=ds-dynamic-qualdrop.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js.map deleted file mode 100644 index 6c6004c128..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ds-dynamic-qualdrop.model.js","sourceRoot":"","sources":["ds-dynamic-qualdrop.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA4B,qBAAqB,EAA2B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEhI,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,MAAM,CAAC,IAAM,qBAAqB,GAAG,iBAAiB,CAAC;AACvD,MAAM,CAAC,IAAM,wBAAwB,GAAG,oBAAoB,CAAC;AAC7D,MAAM,CAAC,IAAM,qBAAqB,GAAG,iBAAiB,CAAC;AAQvD;IAA0C,gDAAqB;IAQ7D,8BAAY,MAAoC,EAAE,MAAiC;QAAnF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAUtB;QAfe,kBAAY,GAAG,KAAK,CAAC;QAErC,mBAAa,GAAG,IAAI,CAAC;QAKnB,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QAE1C,KAAI,CAAC,eAAe,GAAG,IAAI,OAAO,EAAU,CAAC;QAC7C,KAAI,CAAC,eAAe,CAAC,SAAS,CAAC,UAAC,IAAY;YAC1C,KAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,CAAC,CAAC,CAAC;;IACL,CAAC;IAED,sBAAI,uCAAK;aAAT;YACE,OAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,KAAK,CAAC;QACpD,CAAC;;;OAAA;IAED,sBAAI,4CAAU;aAAd;YACE,OAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAyB,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC/D,CAAC;;;OAAA;IAED,sBAAI,0CAAQ;aAAZ;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aAED,UAAa,QAAgB;YAC3B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC5B,CAAC;;;OAJA;IAMD,sBAAI,+CAAa;aAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;aAED,UAAkB,aAA6B;YAC7C,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,EAAE,EAAE;gBACpE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;aACxE;QACH,CAAC;;;OAPA;IAtCe;QAAf,YAAY,EAAE;;2DAA2B;IAC1B;QAAf,YAAY,EAAE;;gEAAwC;IACvC;QAAf,YAAY,EAAE;0CAAkB,OAAO;iEAAS;IACjC;QAAf,YAAY,EAAE;;8DAAsB;IACrB;QAAf,YAAY,EAAE;;0DAAmB;IA2CpC,2BAAC;CAAA,AAhDD,CAA0C,qBAAqB,GAgD9D;SAhDY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js deleted file mode 100644 index 7f1b031146..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js +++ /dev/null @@ -1,19 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DynamicFormArrayModel, serializable } from '@ng-dynamic-forms/core'; -var DynamicRowArrayModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicRowArrayModel, _super); - function DynamicRowArrayModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.notRepeatable = false; - _this.isRowArray = true; - _this.notRepeatable = config.notRepeatable; - return _this; - } - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Object) - ], DynamicRowArrayModel.prototype, "notRepeatable", void 0); - return DynamicRowArrayModel; -}(DynamicFormArrayModel)); -export { DynamicRowArrayModel }; -//# sourceMappingURL=ds-dynamic-row-array-model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js.map deleted file mode 100644 index b5b1a40f2d..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ds-dynamic-row-array-model.js","sourceRoot":"","sources":["ds-dynamic-row-array-model.ts"],"names":[],"mappings":";AAAA,OAAO,EAEL,qBAAqB,EACrB,YAAY,EACb,MAAM,wBAAwB,CAAC;AAOhC;IAA0C,gDAAqB;IAI7D,8BAAY,MAAkC,EAAE,MAAiC;QAAjF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAEtB;QANe,mBAAa,GAAG,KAAK,CAAC;QACtC,gBAAU,GAAG,IAAI,CAAC;QAIhB,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;;IAC5C,CAAC;IANe;QAAf,YAAY,EAAE;;+DAAuB;IAQxC,2BAAC;CAAA,AATD,CAA0C,qBAAqB,GAS9D;SATY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js deleted file mode 100644 index 8faf7630e4..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js +++ /dev/null @@ -1,13 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DynamicFormGroupModel } from '@ng-dynamic-forms/core'; -var DynamicRowGroupModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicRowGroupModel, _super); - function DynamicRowGroupModel() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.isRowGroup = true; - return _this; - } - return DynamicRowGroupModel; -}(DynamicFormGroupModel)); -export { DynamicRowGroupModel }; -//# sourceMappingURL=ds-dynamic-row-group-model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js.map deleted file mode 100644 index 777982262e..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ds-dynamic-row-group-model.js","sourceRoot":"","sources":["ds-dynamic-row-group-model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;IAA0C,gDAAqB;IAA/D;QAAA,qEAEC;QADC,gBAAU,GAAG,IAAI,CAAC;;IACpB,CAAC;IAAD,2BAAC;AAAD,CAAC,AAFD,CAA0C,qBAAqB,GAE9D"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js deleted file mode 100644 index e450e49fa8..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA, serializable } from '@ng-dynamic-forms/core'; -import { DsDynamicInputModel } from './ds-dynamic-input.model'; -var DsDynamicTextAreaModel = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicTextAreaModel, _super); - function DsDynamicTextAreaModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.type = DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA; - _this.cols = config.cols; - _this.rows = config.rows; - _this.wrap = config.wrap; - return _this; - } - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Number) - ], DsDynamicTextAreaModel.prototype, "cols", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Number) - ], DsDynamicTextAreaModel.prototype, "rows", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DsDynamicTextAreaModel.prototype, "wrap", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicTextAreaModel.prototype, "type", void 0); - return DsDynamicTextAreaModel; -}(DsDynamicInputModel)); -export { DsDynamicTextAreaModel }; -//# sourceMappingURL=ds-dynamic-textarea.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js.map deleted file mode 100644 index 23c477fb13..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-textarea.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ds-dynamic-textarea.model.js","sourceRoot":"","sources":["ds-dynamic-textarea.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,kCAAkC,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACpH,OAAO,EAAE,mBAAmB,EAA6B,MAAM,0BAA0B,CAAC;AAQ1F;IAA4C,kDAAmB;IAM7D,gCAAY,MAAoC,EAAE,MAAiC;QAAnF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAKtB;QARe,UAAI,GAAG,kCAAkC,CAAC;QAKxD,KAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,KAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,KAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;;IAC1B,CAAC;IAXe;QAAf,YAAY,EAAE;;wDAAc;IACb;QAAf,YAAY,EAAE;;wDAAc;IACb;QAAf,YAAY,EAAE;;wDAAc;IACb;QAAf,YAAY,EAAE;;wDAA2C;IAU5D,6BAAC;CAAA,AAdD,CAA4C,mBAAmB,GAc9D;SAdY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js deleted file mode 100644 index 95c9163b73..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js +++ /dev/null @@ -1,68 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { DynamicFormControlComponent, DynamicFormGroupModel, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -var DsDynamicFormGroupComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicFormGroupComponent, _super); - /* tslint:enable:no-output-rename */ - function DsDynamicFormGroupComponent(layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.bindId = true; - /* tslint:disable:no-output-rename */ - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.customEvent = new EventEmitter(); - return _this; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormGroupComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicFormGroupComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormGroupComponent.prototype, "layout", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", DynamicFormGroupModel) - ], DsDynamicFormGroupComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicFormGroupComponent.prototype, "templates", void 0); - tslib_1.__decorate([ - Output('dfBlur'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormGroupComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output('dfChange'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormGroupComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output('dfFocus'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormGroupComponent.prototype, "focus", void 0); - tslib_1.__decorate([ - Output('ngbEvent'), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicFormGroupComponent.prototype, "customEvent", void 0); - DsDynamicFormGroupComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-form-group', - templateUrl: './dynamic-form-group.component.html', - changeDetection: ChangeDetectionStrategy.Default - }), - tslib_1.__metadata("design:paramtypes", [DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDynamicFormGroupComponent); - return DsDynamicFormGroupComponent; -}(DynamicFormControlComponent)); -export { DsDynamicFormGroupComponent }; -//# sourceMappingURL=dynamic-form-group.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js.map deleted file mode 100644 index 61f88fd799..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-form-group.component.js","sourceRoot":"","sources":["dynamic-form-group.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAa,MAAM,eAAe,CAAC;AAC3G,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EACL,2BAA2B,EAG3B,qBAAqB,EAErB,wBAAwB,EACxB,4BAA4B,EAE7B,MAAM,wBAAwB,CAAC;AAOhC;IAAiD,uDAA2B;IAa1E,oCAAoC;IAEpC,qCAAsB,aAAuC,EACvC,iBAA+C;QADrE,YAGE,kBAAM,aAAa,EAAE,iBAAiB,CAAC,SACxC;QAJqB,mBAAa,GAAb,aAAa,CAA0B;QACvC,uBAAiB,GAAjB,iBAAiB,CAA8B;QAd5D,YAAM,GAAG,IAAI,CAAC;QAMvB,qCAAqC;QACnB,UAAI,GAA0C,IAAI,YAAY,EAA2B,CAAC;QACxF,YAAM,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC7F,WAAK,GAA0C,IAAI,YAAY,EAA2B,CAAC;QAC1F,iBAAW,GAAgD,IAAI,YAAY,EAAE,CAAC;;IAOlG,CAAC;IAjBQ;QAAR,KAAK,EAAE;;+DAAe;IACd;QAAR,KAAK,EAAE;0CAAQ,SAAS;8DAAC;IACjB;QAAR,KAAK,EAAE;;+DAA2B;IAC1B;QAAR,KAAK,EAAE;0CAAQ,qBAAqB;8DAAC;IAC7B;QAAR,KAAK,EAAE;;kEAAyF;IAG/E;QAAjB,MAAM,CAAC,QAAQ,CAAC;0CAAO,YAAY;6DAAwE;IACxF;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAS,YAAY;+DAAwE;IAC7F;QAAlB,MAAM,CAAC,SAAS,CAAC;0CAAQ,YAAY;8DAAwE;IAC1F;QAAnB,MAAM,CAAC,UAAU,CAAC;0CAAc,YAAY;oEAAqD;IAZvF,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,WAAW,EAAE,qCAAqC;YAClD,eAAe,EAAE,uBAAuB,CAAC,OAAO;SACjD,CAAC;iDAgBqC,wBAAwB;YACpB,4BAA4B;OAhB1D,2BAA2B,CAqBvC;IAAD,kCAAC;CAAA,AArBD,CAAiD,2BAA2B,GAqB3E;SArBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js deleted file mode 100644 index 188d90de37..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js +++ /dev/null @@ -1,65 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Subject } from 'rxjs'; -import { DynamicCheckboxGroupModel, serializable } from '@ng-dynamic-forms/core'; -import { AuthorityOptions } from '../../../../../../core/integration/models/authority-options.model'; -import { hasValue } from '../../../../../empty.util'; -var DynamicListCheckboxGroupModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicListCheckboxGroupModel, _super); - function DynamicListCheckboxGroupModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.isListGroup = true; - _this.authorityOptions = config.authorityOptions; - _this.groupLength = config.groupLength || 5; - _this._value = []; - _this.repeatable = config.repeatable; - _this.valueUpdates = new Subject(); - _this.valueUpdates.subscribe(function (value) { return _this.value = value; }); - _this.valueUpdates.next(config.value); - return _this; - } - Object.defineProperty(DynamicListCheckboxGroupModel.prototype, "hasAuthority", { - get: function () { - return this.authorityOptions && hasValue(this.authorityOptions.name); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(DynamicListCheckboxGroupModel.prototype, "value", { - get: function () { - return this._value; - }, - set: function (value) { - if (value) { - if (Array.isArray(value)) { - this._value = value; - } - else { - // _value is non extendible so assign it a new array - var newValue = this.value.concat([value]); - this._value = newValue; - } - } - }, - enumerable: true, - configurable: true - }); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", AuthorityOptions) - ], DynamicListCheckboxGroupModel.prototype, "authorityOptions", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Boolean) - ], DynamicListCheckboxGroupModel.prototype, "repeatable", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Number) - ], DynamicListCheckboxGroupModel.prototype, "groupLength", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Array) - ], DynamicListCheckboxGroupModel.prototype, "_value", void 0); - return DynamicListCheckboxGroupModel; -}(DynamicCheckboxGroupModel)); -export { DynamicListCheckboxGroupModel }; -//# sourceMappingURL=dynamic-list-checkbox-group.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js.map deleted file mode 100644 index 8f644223b0..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-list-checkbox-group.model.js","sourceRoot":"","sources":["dynamic-list-checkbox-group.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EACL,yBAAyB,EAEzB,YAAY,EACb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mEAAmE,CAAC;AACrG,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AASrD;IAAmD,yDAAyB;IAS1E,uCAAY,MAA2C,EAAE,MAAiC;QAA1F,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAUtB;QAdD,iBAAW,GAAG,IAAI,CAAC;QAMjB,KAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC3C,KAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAEpC,KAAI,CAAC,YAAY,GAAG,IAAI,OAAO,EAAO,CAAC;QACvC,KAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAC,KAAwC,IAAK,OAAA,KAAI,CAAC,KAAK,GAAG,KAAK,EAAlB,CAAkB,CAAC,CAAC;QAC9F,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;IACvC,CAAC;IAED,sBAAI,uDAAY;aAAhB;YACE,OAAO,IAAI,CAAC,gBAAgB,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;;;OAAA;IAED,sBAAI,gDAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aAED,UAAU,KAAwC;YAChD,IAAI,KAAK,EAAE;gBACT,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;iBACrB;qBAAM;oBACL,oDAAoD;oBACpD,IAAM,QAAQ,GAAI,IAAI,CAAC,KAA0B,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAA;iBACvB;aACF;QACH,CAAC;;;OAZA;IA1Be;QAAf,YAAY,EAAE;0CAAmB,gBAAgB;2EAAC;IACnC;QAAf,YAAY,EAAE;;qEAAqB;IACpB;QAAf,YAAY,EAAE;;sEAAqB;IACpB;QAAf,YAAY,EAAE;;iEAA0B;IAoC3C,oCAAC;CAAA,AAzCD,CAAmD,yBAAyB,GAyC3E;SAzCY,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js deleted file mode 100644 index 0f1e97c1ea..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DynamicRadioGroupModel, serializable } from '@ng-dynamic-forms/core'; -import { AuthorityOptions } from '../../../../../../core/integration/models/authority-options.model'; -import { hasValue } from '../../../../../empty.util'; -var DynamicListRadioGroupModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicListRadioGroupModel, _super); - function DynamicListRadioGroupModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.isListGroup = true; - _this.authorityOptions = config.authorityOptions; - _this.groupLength = config.groupLength || 5; - _this.repeatable = config.repeatable; - _this.valueUpdates.next(config.value); - return _this; - } - Object.defineProperty(DynamicListRadioGroupModel.prototype, "hasAuthority", { - get: function () { - return this.authorityOptions && hasValue(this.authorityOptions.name); - }, - enumerable: true, - configurable: true - }); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", AuthorityOptions) - ], DynamicListRadioGroupModel.prototype, "authorityOptions", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Boolean) - ], DynamicListRadioGroupModel.prototype, "repeatable", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Number) - ], DynamicListRadioGroupModel.prototype, "groupLength", void 0); - return DynamicListRadioGroupModel; -}(DynamicRadioGroupModel)); -export { DynamicListRadioGroupModel }; -//# sourceMappingURL=dynamic-list-radio-group.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js.map deleted file mode 100644 index 885b1e54ca..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-list-radio-group.model.js","sourceRoot":"","sources":["dynamic-list-radio-group.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAEL,sBAAsB,EAEtB,YAAY,EACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mEAAmE,CAAC;AACrG,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AASrD;IAAgD,sDAA2B;IAOzE,oCAAY,MAA8B,EAAE,MAAiC;QAA7E,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAMtB;QATD,iBAAW,GAAG,IAAI,CAAC;QAKjB,KAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC3C,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;IACvC,CAAC;IAED,sBAAI,oDAAY;aAAhB;YACE,OAAO,IAAI,CAAC,gBAAgB,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;;;OAAA;IAhBe;QAAf,YAAY,EAAE;0CAAmB,gBAAgB;wEAAC;IACnC;QAAf,YAAY,EAAE;;kEAAqB;IACpB;QAAf,YAAY,EAAE;;mEAAqB;IAetC,iCAAC;CAAA,AAnBD,CAAgD,sBAAsB,GAmBrE;SAnBY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js deleted file mode 100644 index 9079b03574..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js +++ /dev/null @@ -1,146 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { findKey } from 'lodash'; -import { AuthorityService } from '../../../../../../core/integration/authority.service'; -import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; -import { hasValue, isNotEmpty } from '../../../../../empty.util'; -import { FormBuilderService } from '../../../form-builder.service'; -import { DynamicCheckboxModel, DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -var DsDynamicListComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicListComponent, _super); - function DsDynamicListComponent(authorityService, cdr, formBuilderService, layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.authorityService = authorityService; - _this.cdr = cdr; - _this.formBuilderService = formBuilderService; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.bindId = true; - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.items = []; - return _this; - } - DsDynamicListComponent.prototype.ngOnInit = function () { - if (this.hasAuthorityOptions()) { - // TODO Replace max elements 1000 with a paginated request when pagination bug is resolved - this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata, '', 1000, // Max elements - 1); // Current Page - this.setOptionsFromAuthority(); - } - }; - DsDynamicListComponent.prototype.onBlur = function (event) { - this.blur.emit(event); - }; - DsDynamicListComponent.prototype.onFocus = function (event) { - this.focus.emit(event); - }; - DsDynamicListComponent.prototype.onChange = function (event) { - var target = event.target; - if (this.model.repeatable) { - // Target tabindex coincide with the array index of the value into the authority list - var authorityValue_1 = this.optionsList[target.tabIndex]; - if (target.checked) { - this.model.valueUpdates.next(authorityValue_1); - } - else { - var newValue_1 = []; - this.model.value - .filter(function (item) { return item.value !== authorityValue_1.value; }) - .forEach(function (item) { return newValue_1.push(item); }); - this.model.valueUpdates.next(newValue_1); - } - } - else { - this.model.valueUpdates.next(this.optionsList[target.value]); - } - this.change.emit(event); - }; - DsDynamicListComponent.prototype.setOptionsFromAuthority = function () { - var _this = this; - if (this.model.authorityOptions.name && this.model.authorityOptions.name.length > 0) { - var listGroup_1 = this.group.controls[this.model.id]; - this.authorityService.getEntriesByName(this.searchOptions).subscribe(function (authorities) { - var groupCounter = 0; - var itemsPerGroup = 0; - var tempList = []; - _this.optionsList = authorities.payload; - // Make a list of available options (checkbox/radio) and split in groups of 'model.groupLength' - authorities.payload.forEach(function (option, key) { - var value = option.id || option.value; - var checked = isNotEmpty(findKey(_this.model.value, function (v) { return v.value === option.value; })); - var item = { - id: value, - label: option.display, - value: checked, - index: key - }; - if (_this.model.repeatable) { - _this.formBuilderService.addFormGroupControl(listGroup_1, _this.model, new DynamicCheckboxModel(item)); - } - else { - _this.model.options.push({ - label: item.label, - value: option - }); - } - tempList.push(item); - itemsPerGroup++; - _this.items[groupCounter] = tempList; - if (itemsPerGroup === _this.model.groupLength) { - groupCounter++; - itemsPerGroup = 0; - tempList = []; - } - }); - _this.cdr.markForCheck(); - }); - } - }; - DsDynamicListComponent.prototype.hasAuthorityOptions = function () { - return (hasValue(this.model.authorityOptions.scope) - && hasValue(this.model.authorityOptions.name) - && hasValue(this.model.authorityOptions.metadata)); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicListComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicListComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicListComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicListComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicListComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicListComponent.prototype, "focus", void 0); - DsDynamicListComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-list', - styleUrls: ['./dynamic-list.component.scss'], - templateUrl: './dynamic-list.component.html' - }), - tslib_1.__metadata("design:paramtypes", [AuthorityService, - ChangeDetectorRef, - FormBuilderService, - DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDynamicListComponent); - return DsDynamicListComponent; -}(DynamicFormControlComponent)); -export { DsDynamicListComponent }; -//# sourceMappingURL=dynamic-list.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js.map deleted file mode 100644 index 192083834a..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-list.component.js","sourceRoot":"","sources":["dynamic-list.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js deleted file mode 100644 index 4c1d443f66..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { serializable } from '@ng-dynamic-forms/core'; -import { DynamicLookupModel } from './dynamic-lookup.model'; -export var DYNAMIC_FORM_CONTROL_TYPE_LOOKUP_NAME = 'LOOKUP_NAME'; -var DynamicLookupNameModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicLookupNameModel, _super); - function DynamicLookupNameModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.type = DYNAMIC_FORM_CONTROL_TYPE_LOOKUP_NAME; - _this.separator = config.separator || ','; - _this.placeholder = config.firstPlaceholder || 'form.last-name'; - _this.secondPlaceholder = config.secondPlaceholder || 'form.first-name'; - return _this; - } - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicLookupNameModel.prototype, "separator", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicLookupNameModel.prototype, "secondPlaceholder", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicLookupNameModel.prototype, "type", void 0); - return DynamicLookupNameModel; -}(DynamicLookupModel)); -export { DynamicLookupNameModel }; -//# sourceMappingURL=dynamic-lookup-name.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js.map deleted file mode 100644 index 728d6e91a7..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-lookup-name.model.js","sourceRoot":"","sources":["dynamic-lookup-name.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAA4B,MAAM,wBAAwB,CAAC;AAEtF,MAAM,CAAC,IAAM,qCAAqC,GAAG,aAAa,CAAC;AAQnE;IAA4C,kDAAkB;IAM5D,gCAAY,MAAoC,EAAE,MAAiC;QAAnF,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAKtB;QATwB,UAAI,GAAW,qCAAqC,CAAC;QAM5E,KAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,GAAG,CAAC;QACzC,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC;QAC/D,KAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,iBAAiB,CAAC;;IACzE,CAAC;IAXe;QAAf,YAAY,EAAE;;6DAAmB;IAClB;QAAf,YAAY,EAAE;;qEAA2B;IAC1B;QAAf,YAAY,EAAE;;wDAA+D;IAUhF,6BAAC;CAAA,AAdD,CAA4C,kBAAkB,GAc7D;SAdY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js deleted file mode 100644 index f7422f200a..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js +++ /dev/null @@ -1,251 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { of as observableOf } from 'rxjs'; -import { catchError, distinctUntilChanged } from 'rxjs/operators'; -import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -import { AuthorityService } from '../../../../../../core/integration/authority.service'; -import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; -import { hasValue, isEmpty, isNotEmpty, isNull, isUndefined } from '../../../../../empty.util'; -import { IntegrationData } from '../../../../../../core/integration/integration-data'; -import { PageInfo } from '../../../../../../core/shared/page-info.model'; -import { FormFieldMetadataValueObject } from '../../../models/form-field-metadata-value.model'; -import { AuthorityValue } from '../../../../../../core/integration/models/authority.value'; -import { DynamicLookupNameModel } from './dynamic-lookup-name.model'; -var DsDynamicLookupComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicLookupComponent, _super); - function DsDynamicLookupComponent(authorityService, cdr, layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.authorityService = authorityService; - _this.cdr = cdr; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.bindId = true; - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.editMode = false; - _this.firstInputValue = ''; - _this.secondInputValue = ''; - _this.loading = false; - _this.subs = []; - _this.inputFormatter = function (x, y) { - return y === 1 ? _this.firstInputValue : _this.secondInputValue; - }; - return _this; - } - DsDynamicLookupComponent.prototype.ngOnInit = function () { - var _this = this; - this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata, '', this.model.maxOptions, 1); - this.setInputsValue(this.model.value); - this.subs.push(this.model.valueUpdates - .subscribe(function (value) { - if (isEmpty(value)) { - _this.resetFields(); - } - else if (!_this.editMode) { - _this.setInputsValue(_this.model.value); - } - })); - }; - DsDynamicLookupComponent.prototype.getCurrentValue = function () { - var result = ''; - if (!this.isLookupName()) { - result = this.firstInputValue; - } - else { - if (isNotEmpty(this.firstInputValue)) { - result = this.firstInputValue; - } - if (isNotEmpty(this.secondInputValue)) { - result = isEmpty(result) - ? this.secondInputValue - : this.firstInputValue + this.model.separator + ' ' + this.secondInputValue; - } - } - return result; - }; - DsDynamicLookupComponent.prototype.resetFields = function () { - this.firstInputValue = ''; - if (this.isLookupName()) { - this.secondInputValue = ''; - } - }; - DsDynamicLookupComponent.prototype.setInputsValue = function (value) { - if (hasValue(value)) { - var displayValue = value; - if (value instanceof FormFieldMetadataValueObject || value instanceof AuthorityValue) { - displayValue = value.display; - } - if (hasValue(displayValue)) { - if (this.isLookupName()) { - var values = displayValue.split(this.model.separator); - this.firstInputValue = (values[0] || '').trim(); - this.secondInputValue = (values[1] || '').trim(); - } - else { - this.firstInputValue = displayValue || ''; - } - } - } - }; - DsDynamicLookupComponent.prototype.formatItemForInput = function (item, field) { - if (isUndefined(item) || isNull(item)) { - return ''; - } - return (typeof item === 'string') ? item : this.inputFormatter(item, field); - }; - DsDynamicLookupComponent.prototype.hasAuthorityValue = function () { - return hasValue(this.model.value) - && this.model.value.hasAuthority(); - }; - DsDynamicLookupComponent.prototype.hasEmptyValue = function () { - return isNotEmpty(this.getCurrentValue()); - }; - DsDynamicLookupComponent.prototype.clearFields = function () { - // Clear inputs whether there is no results and authority is closed - if (this.model.authorityOptions.closed) { - this.resetFields(); - } - }; - DsDynamicLookupComponent.prototype.isEditDisabled = function () { - return !this.hasAuthorityValue(); - }; - DsDynamicLookupComponent.prototype.isInputDisabled = function () { - return (this.model.authorityOptions.closed && this.hasAuthorityValue() && !this.editMode); - }; - DsDynamicLookupComponent.prototype.isLookupName = function () { - return (this.model instanceof DynamicLookupNameModel); - }; - DsDynamicLookupComponent.prototype.isSearchDisabled = function () { - return isEmpty(this.firstInputValue); - }; - DsDynamicLookupComponent.prototype.onBlurEvent = function (event) { - this.blur.emit(event); - }; - DsDynamicLookupComponent.prototype.onFocusEvent = function (event) { - this.focus.emit(event); - }; - DsDynamicLookupComponent.prototype.onInput = function (event) { - if (!this.model.authorityOptions.closed) { - if (isNotEmpty(this.getCurrentValue())) { - var currentValue = new FormFieldMetadataValueObject(this.getCurrentValue()); - if (!this.editMode) { - this.onSelect(currentValue); - } - } - else { - this.remove(); - } - } - }; - DsDynamicLookupComponent.prototype.onScroll = function () { - if (!this.loading && this.pageInfo.currentPage <= this.pageInfo.totalPages) { - this.searchOptions.currentPage++; - this.search(); - } - }; - DsDynamicLookupComponent.prototype.onSelect = function (event) { - this.group.markAsDirty(); - this.model.valueUpdates.next(event); - this.setInputsValue(event); - this.change.emit(event); - this.optionsList = null; - this.pageInfo = null; - }; - DsDynamicLookupComponent.prototype.openChange = function (isOpened) { - if (!isOpened) { - if (this.model.authorityOptions.closed && !this.hasAuthorityValue()) { - this.setInputsValue(''); - } - } - }; - DsDynamicLookupComponent.prototype.remove = function () { - this.group.markAsPristine(); - this.model.valueUpdates.next(null); - this.change.emit(null); - }; - DsDynamicLookupComponent.prototype.saveChanges = function () { - if (isNotEmpty(this.getCurrentValue())) { - var newValue = Object.assign(new AuthorityValue(), this.model.value, { - display: this.getCurrentValue(), - value: this.getCurrentValue() - }); - this.onSelect(newValue); - } - else { - this.remove(); - } - this.switchEditMode(); - }; - DsDynamicLookupComponent.prototype.search = function () { - var _this = this; - this.optionsList = null; - this.pageInfo = null; - // Query - this.searchOptions.query = this.getCurrentValue(); - this.loading = true; - this.subs.push(this.authorityService.getEntriesByName(this.searchOptions).pipe(catchError(function () { - var emptyResult = new IntegrationData(new PageInfo(), []); - return observableOf(emptyResult); - }), distinctUntilChanged()) - .subscribe(function (object) { - _this.optionsList = object.payload; - _this.pageInfo = object.pageInfo; - _this.loading = false; - _this.cdr.detectChanges(); - })); - }; - DsDynamicLookupComponent.prototype.switchEditMode = function () { - this.editMode = !this.editMode; - }; - DsDynamicLookupComponent.prototype.whenClickOnConfidenceNotAccepted = function (sdRef, confidence) { - if (!this.model.readOnly) { - sdRef.open(); - this.search(); - } - }; - DsDynamicLookupComponent.prototype.ngOnDestroy = function () { - this.subs - .filter(function (sub) { return hasValue(sub); }) - .forEach(function (sub) { return sub.unsubscribe(); }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicLookupComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicLookupComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicLookupComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicLookupComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicLookupComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicLookupComponent.prototype, "focus", void 0); - DsDynamicLookupComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-lookup', - styleUrls: ['./dynamic-lookup.component.scss'], - templateUrl: './dynamic-lookup.component.html' - }), - tslib_1.__metadata("design:paramtypes", [AuthorityService, - ChangeDetectorRef, - DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDynamicLookupComponent); - return DsDynamicLookupComponent; -}(DynamicFormControlComponent)); -export { DsDynamicLookupComponent }; -//# sourceMappingURL=dynamic-lookup.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js.map deleted file mode 100644 index 13d1f1d24b..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-lookup.component.js","sourceRoot":"","sources":["dynamic-lookup.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js deleted file mode 100644 index 3107853d13..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { AUTOCOMPLETE_OFF, serializable } from '@ng-dynamic-forms/core'; -import { DsDynamicInputModel } from '../ds-dynamic-input.model'; -export var DYNAMIC_FORM_CONTROL_TYPE_LOOKUP = 'LOOKUP'; -var DynamicLookupModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicLookupModel, _super); - function DynamicLookupModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.type = DYNAMIC_FORM_CONTROL_TYPE_LOOKUP; - _this.autoComplete = AUTOCOMPLETE_OFF; - _this.maxOptions = config.maxOptions || 10; - _this.valueUpdates.next(config.value); - return _this; - } - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Number) - ], DynamicLookupModel.prototype, "maxOptions", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicLookupModel.prototype, "type", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Object) - ], DynamicLookupModel.prototype, "value", void 0); - return DynamicLookupModel; -}(DsDynamicInputModel)); -export { DynamicLookupModel }; -//# sourceMappingURL=dynamic-lookup.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js.map deleted file mode 100644 index 2321f0a4e1..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-lookup.model.js","sourceRoot":"","sources":["dynamic-lookup.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAE3F,MAAM,CAAC,IAAM,gCAAgC,GAAG,QAAQ,CAAC;AAOzD;IAAwC,8CAAmB;IAMzD,4BAAY,MAAgC,EAAE,MAAiC;QAA/E,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAMtB;QAXwB,UAAI,GAAW,gCAAgC,CAAC;QAOvE,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrC,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAE1C,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;IACvC,CAAC;IAZe;QAAf,YAAY,EAAE;;0DAAoB;IACnB;QAAf,YAAY,EAAE;;oDAA0D;IACzD;QAAf,YAAY,EAAE;;qDAAY;IAW7B,yBAAC;CAAA,AAfD,CAAwC,mBAAmB,GAe1D;SAfY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js deleted file mode 100644 index a039cf82e4..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js +++ /dev/null @@ -1,282 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Inject, Input, Output, ViewChild } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { combineLatest, of as observableOf } from 'rxjs'; -import { filter, flatMap, map, mergeMap, scan } from 'rxjs/operators'; -import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -import { isEqual, isObject } from 'lodash'; -import { DynamicRelationGroupModel, PLACEHOLDER_PARENT_METADATA } from './dynamic-relation-group.model'; -import { FormBuilderService } from '../../../form-builder.service'; -import { FormService } from '../../../../form.service'; -import { FormComponent } from '../../../../form.component'; -import { Chips } from '../../../../../chips/models/chips.model'; -import { hasValue, isEmpty, isNotEmpty, isNotNull } from '../../../../../empty.util'; -import { shrinkInOut } from '../../../../../animations/shrink'; -import { GLOBAL_CONFIG } from '../../../../../../../config'; -import { hasOnlyEmptyProperties } from '../../../../../object.util'; -import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; -import { AuthorityService } from '../../../../../../core/integration/authority.service'; -import { FormFieldMetadataValueObject } from '../../../models/form-field-metadata-value.model'; -var DsDynamicRelationGroupComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicRelationGroupComponent, _super); - function DsDynamicRelationGroupComponent(EnvConfig, authorityService, formBuilderService, formService, cdr, layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.EnvConfig = EnvConfig; - _this.authorityService = authorityService; - _this.formBuilderService = formBuilderService; - _this.formService = formService; - _this.cdr = cdr; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.formCollapsed = observableOf(false); - _this.editMode = false; - _this.subs = []; - return _this; - } - DsDynamicRelationGroupComponent.prototype.ngOnInit = function () { - var _this = this; - var config = { rows: this.model.formConfiguration }; - if (!this.model.isEmpty()) { - this.formCollapsed = observableOf(true); - } - this.model.valueUpdates.subscribe(function (value) { - if ((isNotEmpty(value) && !(value.length === 1 && hasOnlyEmptyProperties(value[0])))) { - _this.collapseForm(); - } - else { - _this.expandForm(); - } - }); - this.formId = this.formService.getUniqueId(this.model.id); - this.formModel = this.formBuilderService.modelFromConfiguration(config, this.model.scopeUUID, {}, this.model.submissionScope, this.model.readOnly); - this.initChipsFromModelValue(); - }; - DsDynamicRelationGroupComponent.prototype.isMandatoryFieldEmpty = function () { - var _this = this; - var res = true; - this.formModel.forEach(function (row) { - var modelRow = row; - modelRow.group.forEach(function (model) { - if (model.name === _this.model.mandatoryField) { - res = model.value == null; - return; - } - }); - }); - return res; - }; - DsDynamicRelationGroupComponent.prototype.onBlur = function (event) { - this.blur.emit(); - }; - DsDynamicRelationGroupComponent.prototype.onChipSelected = function (event) { - var _this = this; - this.expandForm(); - this.selectedChipItem = this.chips.getChipByIndex(event); - this.formModel.forEach(function (row) { - var modelRow = row; - modelRow.group.forEach(function (model) { - var value = (_this.selectedChipItem.item[model.name] === PLACEHOLDER_PARENT_METADATA - || _this.selectedChipItem.item[model.name].value === PLACEHOLDER_PARENT_METADATA) - ? null - : _this.selectedChipItem.item[model.name]; - if (isNotNull(value)) { - model.valueUpdates.next(_this.formBuilderService.isInputModel(model) ? value.value : value); - } - }); - }); - this.editMode = true; - }; - DsDynamicRelationGroupComponent.prototype.onFocus = function (event) { - this.focus.emit(event); - }; - DsDynamicRelationGroupComponent.prototype.collapseForm = function () { - this.formCollapsed = observableOf(true); - this.clear(); - }; - DsDynamicRelationGroupComponent.prototype.expandForm = function () { - this.formCollapsed = observableOf(false); - }; - DsDynamicRelationGroupComponent.prototype.clear = function () { - if (this.editMode) { - this.selectedChipItem.editMode = false; - this.selectedChipItem = null; - this.editMode = false; - } - this.resetForm(); - if (!this.model.isEmpty()) { - this.formCollapsed = observableOf(true); - } - }; - DsDynamicRelationGroupComponent.prototype.save = function () { - if (this.editMode) { - this.modifyChip(); - } - else { - this.addToChips(); - } - }; - DsDynamicRelationGroupComponent.prototype.delete = function () { - this.chips.remove(this.selectedChipItem); - this.clear(); - }; - DsDynamicRelationGroupComponent.prototype.addToChips = function () { - if (!this.formRef.formGroup.valid) { - this.formService.validateAllFormFields(this.formRef.formGroup); - return; - } - // Item to add - if (!this.isMandatoryFieldEmpty()) { - var item = this.buildChipItem(); - this.chips.add(item); - this.resetForm(); - } - }; - DsDynamicRelationGroupComponent.prototype.modifyChip = function () { - if (!this.formRef.formGroup.valid) { - this.formService.validateAllFormFields(this.formRef.formGroup); - return; - } - if (!this.isMandatoryFieldEmpty()) { - var item = this.buildChipItem(); - this.chips.update(this.selectedChipItem.id, item); - this.resetForm(); - this.cdr.detectChanges(); - } - }; - DsDynamicRelationGroupComponent.prototype.buildChipItem = function () { - var item = Object.create({}); - this.formModel.forEach(function (row) { - var modelRow = row; - modelRow.group.forEach(function (control) { - item[control.name] = control.value || PLACEHOLDER_PARENT_METADATA; - }); - }); - return item; - }; - DsDynamicRelationGroupComponent.prototype.initChipsFromModelValue = function () { - var _this = this; - var initChipsValue$; - if (this.model.isEmpty()) { - this.initChips([]); - } - else { - initChipsValue$ = observableOf(this.model.value); - // If authority - this.subs.push(initChipsValue$.pipe(flatMap(function (valueModel) { - var returnList = []; - valueModel.forEach(function (valueObj) { - var returnObj = Object.keys(valueObj).map(function (fieldName) { - var return$; - if (isObject(valueObj[fieldName]) && valueObj[fieldName].hasAuthority() && isNotEmpty(valueObj[fieldName].authority)) { - var fieldId = fieldName.replace(/\./g, '_'); - var model = _this.formBuilderService.findById(fieldId, _this.formModel); - var searchOptions = new IntegrationSearchOptions(model.authorityOptions.scope, model.authorityOptions.name, model.authorityOptions.metadata, valueObj[fieldName].authority, model.maxOptions, 1); - return$ = _this.authorityService.getEntryByValue(searchOptions).pipe(map(function (result) { return Object.assign(new FormFieldMetadataValueObject(), valueObj[fieldName], { - otherInformation: result.payload[0].otherInformation - }); })); - } - else { - return$ = observableOf(valueObj[fieldName]); - } - return return$.pipe(map(function (entry) { - var _a; - return (_a = {}, _a[fieldName] = entry, _a); - })); - }); - returnList.push(combineLatest(returnObj)); - }); - return returnList; - }), mergeMap(function (valueListObj, index) { - return valueListObj.pipe(map(function (valueObj) { return ({ - index: index, value: valueObj.reduce(function (acc, value) { return Object.assign({}, acc, value); }) - }); })); - }), scan(function (acc, valueObj) { - if (acc.length === 0) { - acc.push(valueObj.value); - } - else { - acc.splice(valueObj.index, 0, valueObj.value); - } - return acc; - }, []), filter(function (modelValues) { return _this.model.value.length === modelValues.length; })).subscribe(function (modelValue) { - _this.model.valueUpdates.next(modelValue); - _this.initChips(modelValue); - _this.cdr.markForCheck(); - })); - } - }; - DsDynamicRelationGroupComponent.prototype.initChips = function (initChipsValue) { - var _this = this; - this.chips = new Chips(initChipsValue, 'value', this.model.mandatoryField, this.EnvConfig.submission.icons.metadata); - this.subs.push(this.chips.chipsItems - .subscribe(function () { - var items = _this.chips.getChipsItems(); - // Does not emit change if model value is equal to the current value - if (!isEqual(items, _this.model.value)) { - if (!(isEmpty(items) && _this.model.isEmpty())) { - _this.model.valueUpdates.next(items); - _this.change.emit(); - } - } - })); - }; - DsDynamicRelationGroupComponent.prototype.resetForm = function () { - if (this.formRef) { - this.formService.resetForm(this.formRef.formGroup, this.formModel, this.formId); - } - }; - DsDynamicRelationGroupComponent.prototype.ngOnDestroy = function () { - this.subs - .filter(function (sub) { return hasValue(sub); }) - .forEach(function (sub) { return sub.unsubscribe(); }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], DsDynamicRelationGroupComponent.prototype, "formId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicRelationGroupComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", DynamicRelationGroupModel) - ], DsDynamicRelationGroupComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicRelationGroupComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicRelationGroupComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicRelationGroupComponent.prototype, "focus", void 0); - tslib_1.__decorate([ - ViewChild('formRef'), - tslib_1.__metadata("design:type", FormComponent) - ], DsDynamicRelationGroupComponent.prototype, "formRef", void 0); - DsDynamicRelationGroupComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-relation-group', - styleUrls: ['./dynamic-relation-group.component.scss'], - templateUrl: './dynamic-relation-group.component.html', - animations: [shrinkInOut] - }), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, AuthorityService, - FormBuilderService, - FormService, - ChangeDetectorRef, - DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDynamicRelationGroupComponent); - return DsDynamicRelationGroupComponent; -}(DynamicFormControlComponent)); -export { DsDynamicRelationGroupComponent }; -//# sourceMappingURL=dynamic-relation-group.components.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js.map deleted file mode 100644 index 6cc36a1d47..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-relation-group.components.js","sourceRoot":"","sources":["dynamic-relation-group.components.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js deleted file mode 100644 index 6a25e2c6aa..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js +++ /dev/null @@ -1,84 +0,0 @@ -import * as tslib_1 from "tslib"; -import { serializable } from '@ng-dynamic-forms/core'; -import { DsDynamicInputModel } from '../ds-dynamic-input.model'; -import { isEmpty, isNull } from '../../../../../empty.util'; -export var DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP = 'RELATION'; -export var PLACEHOLDER_PARENT_METADATA = '#PLACEHOLDER_PARENT_METADATA_VALUE#'; -/** - * Dynamic Group Model class - */ -var DynamicRelationGroupModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicRelationGroupModel, _super); - function DynamicRelationGroupModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.type = DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP; - _this.formConfiguration = config.formConfiguration; - _this.mandatoryField = config.mandatoryField; - _this.relationFields = config.relationFields; - _this.scopeUUID = config.scopeUUID; - _this.submissionScope = config.submissionScope; - var value = config.value || []; - _this.valueUpdates.next(value); - return _this; - } - Object.defineProperty(DynamicRelationGroupModel.prototype, "value", { - get: function () { - return this._value; - }, - set: function (value) { - this._value = (isEmpty(value)) ? null : value; - }, - enumerable: true, - configurable: true - }); - DynamicRelationGroupModel.prototype.isEmpty = function () { - var value = this.getGroupValue(); - return (value.length === 1 && isNull(value[0][this.mandatoryField])); - }; - DynamicRelationGroupModel.prototype.getGroupValue = function () { - if (isEmpty(this._value)) { - // If items is empty, last element has been removed - // so emit an empty value that allows to dispatch - // a remove JSON PATCH operation - var emptyItem_1 = Object.create({}); - emptyItem_1[this.mandatoryField] = null; - this.relationFields - .forEach(function (field) { - emptyItem_1[field] = null; - }); - return [emptyItem_1]; - } - return this._value; - }; - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Array) - ], DynamicRelationGroupModel.prototype, "formConfiguration", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicRelationGroupModel.prototype, "mandatoryField", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Array) - ], DynamicRelationGroupModel.prototype, "relationFields", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicRelationGroupModel.prototype, "scopeUUID", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicRelationGroupModel.prototype, "submissionScope", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Array) - ], DynamicRelationGroupModel.prototype, "_value", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicRelationGroupModel.prototype, "type", void 0); - return DynamicRelationGroupModel; -}(DsDynamicInputModel)); -export { DynamicRelationGroupModel }; -//# sourceMappingURL=dynamic-relation-group.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js.map deleted file mode 100644 index 5055917fbf..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-relation-group.model.js","sourceRoot":"","sources":["dynamic-relation-group.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAE5D,MAAM,CAAC,IAAM,wCAAwC,GAAG,UAAU,CAAC;AACnE,MAAM,CAAC,IAAM,2BAA2B,GAAG,qCAAqC,CAAC;AAajF;;GAEG;AACH;IAA+C,qDAAmB;IAShE,mCAAY,MAAuC,EAAE,MAAiC;QAAtF,YACE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAStB;QAZwB,UAAI,GAAW,wCAAwC,CAAC;QAK/E,KAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAClD,KAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAC5C,KAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAC5C,KAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,KAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAC9C,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;IAChC,CAAC;IAED,sBAAI,4CAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAA;QACpB,CAAC;aAED,UAAU,KAAK;YACb,IAAI,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAChD,CAAC;;;OAJA;IAMD,2CAAO,GAAP;QACE,IAAM,KAAK,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,iDAAa,GAAb;QACE,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,mDAAmD;YACnD,iDAAiD;YACjD,gCAAgC;YAChC,IAAM,WAAS,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACpC,WAAS,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;YACtC,IAAI,CAAC,cAAc;iBAChB,OAAO,CAAC,UAAC,KAAK;gBACb,WAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YAC1B,CAAC,CAAC,CAAC;YACL,OAAO,CAAC,WAAS,CAAC,CAAC;SACpB;QACD,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IA/Ce;QAAf,YAAY,EAAE;;wEAAmC;IAClC;QAAf,YAAY,EAAE;;qEAAwB;IACvB;QAAf,YAAY,EAAE;;qEAA0B;IACzB;QAAf,YAAY,EAAE;;gEAAmB;IAClB;QAAf,YAAY,EAAE;;sEAAyB;IACxB;QAAf,YAAY,EAAE;;6DAAe;IACd;QAAf,YAAY,EAAE;;2DAAkE;IA0CnF,gCAAC;CAAA,AAjDD,CAA+C,mBAAmB,GAiDjE;SAjDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js deleted file mode 100644 index dcc1690dca..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js +++ /dev/null @@ -1,143 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { of as observableOf } from 'rxjs'; -import { catchError, first, tap } from 'rxjs/operators'; -import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -import { DynamicScrollableDropdownModel } from './dynamic-scrollable-dropdown.model'; -import { PageInfo } from '../../../../../../core/shared/page-info.model'; -import { isNull, isUndefined } from '../../../../../empty.util'; -import { AuthorityService } from '../../../../../../core/integration/authority.service'; -import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; -import { IntegrationData } from '../../../../../../core/integration/integration-data'; -var DsDynamicScrollableDropdownComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicScrollableDropdownComponent, _super); - function DsDynamicScrollableDropdownComponent(authorityService, cdr, layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.authorityService = authorityService; - _this.cdr = cdr; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.bindId = true; - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.loading = false; - _this.inputFormatter = function (x) { return x.display || x.value; }; - return _this; - } - DsDynamicScrollableDropdownComponent.prototype.ngOnInit = function () { - var _this = this; - this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata, '', this.model.maxOptions, 1); - this.authorityService.getEntriesByName(this.searchOptions).pipe(catchError(function () { - var emptyResult = new IntegrationData(new PageInfo(), []); - return observableOf(emptyResult); - }), first()) - .subscribe(function (object) { - _this.optionsList = object.payload; - if (_this.model.value) { - _this.setCurrentValue(_this.model.value); - } - _this.pageInfo = object.pageInfo; - _this.cdr.detectChanges(); - }); - }; - DsDynamicScrollableDropdownComponent.prototype.openDropdown = function (sdRef) { - if (!this.model.readOnly) { - sdRef.open(); - } - }; - DsDynamicScrollableDropdownComponent.prototype.onScroll = function () { - var _this = this; - if (!this.loading && this.pageInfo.currentPage <= this.pageInfo.totalPages) { - this.loading = true; - this.searchOptions.currentPage++; - this.authorityService.getEntriesByName(this.searchOptions).pipe(catchError(function () { - var emptyResult = new IntegrationData(new PageInfo(), []); - return observableOf(emptyResult); - }), tap(function () { return _this.loading = false; })) - .subscribe(function (object) { - _this.optionsList = _this.optionsList.concat(object.payload); - _this.pageInfo = object.pageInfo; - _this.cdr.detectChanges(); - }); - } - }; - DsDynamicScrollableDropdownComponent.prototype.onBlur = function (event) { - this.blur.emit(event); - }; - DsDynamicScrollableDropdownComponent.prototype.onFocus = function (event) { - this.focus.emit(event); - }; - DsDynamicScrollableDropdownComponent.prototype.onSelect = function (event) { - this.group.markAsDirty(); - this.model.valueUpdates.next(event); - this.change.emit(event); - this.setCurrentValue(event); - }; - DsDynamicScrollableDropdownComponent.prototype.onToggle = function (sdRef) { - if (sdRef.isOpen()) { - this.focus.emit(event); - } - else { - this.blur.emit(event); - } - }; - DsDynamicScrollableDropdownComponent.prototype.setCurrentValue = function (value) { - var result; - if (isUndefined(value) || isNull(value)) { - result = ''; - } - else if (typeof value === 'string') { - result = value; - } - else { - for (var _i = 0, _a = this.optionsList; _i < _a.length; _i++) { - var item = _a[_i]; - if (value.value === item.value) { - result = this.inputFormatter(item); - break; - } - } - } - this.currentValue = observableOf(result); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicScrollableDropdownComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicScrollableDropdownComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", DynamicScrollableDropdownModel) - ], DsDynamicScrollableDropdownComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicScrollableDropdownComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicScrollableDropdownComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicScrollableDropdownComponent.prototype, "focus", void 0); - DsDynamicScrollableDropdownComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-scrollable-dropdown', - styleUrls: ['./dynamic-scrollable-dropdown.component.scss'], - templateUrl: './dynamic-scrollable-dropdown.component.html' - }), - tslib_1.__metadata("design:paramtypes", [AuthorityService, - ChangeDetectorRef, - DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDynamicScrollableDropdownComponent); - return DsDynamicScrollableDropdownComponent; -}(DynamicFormControlComponent)); -export { DsDynamicScrollableDropdownComponent }; -//# sourceMappingURL=dynamic-scrollable-dropdown.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js.map deleted file mode 100644 index 6ea73aafda..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-scrollable-dropdown.component.js","sourceRoot":"","sources":["dynamic-scrollable-dropdown.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js deleted file mode 100644 index 410f1c56b4..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { AUTOCOMPLETE_OFF, serializable } from '@ng-dynamic-forms/core'; -import { DsDynamicInputModel } from '../ds-dynamic-input.model'; -export var DYNAMIC_FORM_CONTROL_TYPE_SCROLLABLE_DROPDOWN = 'SCROLLABLE_DROPDOWN'; -var DynamicScrollableDropdownModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicScrollableDropdownModel, _super); - function DynamicScrollableDropdownModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.type = DYNAMIC_FORM_CONTROL_TYPE_SCROLLABLE_DROPDOWN; - _this.autoComplete = AUTOCOMPLETE_OFF; - _this.authorityOptions = config.authorityOptions; - _this.maxOptions = config.maxOptions || 10; - return _this; - } - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Number) - ], DynamicScrollableDropdownModel.prototype, "maxOptions", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicScrollableDropdownModel.prototype, "type", void 0); - return DynamicScrollableDropdownModel; -}(DsDynamicInputModel)); -export { DynamicScrollableDropdownModel }; -//# sourceMappingURL=dynamic-scrollable-dropdown.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js.map deleted file mode 100644 index 1cefa8999e..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-scrollable-dropdown.model.js","sourceRoot":"","sources":["dynamic-scrollable-dropdown.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAG3F,MAAM,CAAC,IAAM,6CAA6C,GAAG,qBAAqB,CAAC;AAQnF;IAAoD,0DAAmB;IAKrE,wCAAY,MAA4C,EAAE,MAAiC;QAA3F,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAKtB;QATwB,UAAI,GAAW,6CAA6C,CAAC;QAMpF,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrC,KAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,KAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;;IAC5C,CAAC;IAVe;QAAf,YAAY,EAAE;;sEAAoB;IACnB;QAAf,YAAY,EAAE;;gEAAuE;IAWxF,qCAAC;CAAA,AAdD,CAAoD,mBAAmB,GActE;SAdY,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js deleted file mode 100644 index 334a6a8860..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js +++ /dev/null @@ -1,188 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Inject, Input, Output, ViewChild } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -import { of as observableOf, Observable } from 'rxjs'; -import { catchError, debounceTime, distinctUntilChanged, tap, switchMap, map, merge } from 'rxjs/operators'; -import { NgbTypeahead } from '@ng-bootstrap/ng-bootstrap'; -import { isEqual } from 'lodash'; -import { AuthorityService } from '../../../../../../core/integration/authority.service'; -import { DynamicTagModel } from './dynamic-tag.model'; -import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; -import { Chips } from '../../../../../chips/models/chips.model'; -import { hasValue, isNotEmpty } from '../../../../../empty.util'; -import { GLOBAL_CONFIG } from '../../../../../../../config'; -var DsDynamicTagComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicTagComponent, _super); - function DsDynamicTagComponent(EnvConfig, authorityService, cdr, layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.EnvConfig = EnvConfig; - _this.authorityService = authorityService; - _this.cdr = cdr; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.bindId = true; - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.searching = false; - _this.searchFailed = false; - _this.hideSearchingWhenUnsubscribed = new Observable(function () { return function () { return _this.changeSearchingStatus(false); }; }); - _this.formatter = function (x) { return x.display; }; - _this.search = function (text$) { - return text$.pipe(debounceTime(300), distinctUntilChanged(), tap(function () { return _this.changeSearchingStatus(true); }), switchMap(function (term) { - if (term === '' || term.length < _this.model.minChars) { - return observableOf({ list: [] }); - } - else { - _this.searchOptions.query = term; - return _this.authorityService.getEntriesByName(_this.searchOptions).pipe(map(function (authorities) { - // @TODO Pagination for authority is not working, to refactor when it will be fixed - return { - list: authorities.payload, - pageInfo: authorities.pageInfo - }; - }), tap(function () { return _this.searchFailed = false; }), catchError(function () { - _this.searchFailed = true; - return observableOf({ list: [] }); - })); - } - }), map(function (results) { return results.list; }), tap(function () { return _this.changeSearchingStatus(false); }), merge(_this.hideSearchingWhenUnsubscribed)); - }; - return _this; - } - DsDynamicTagComponent.prototype.ngOnInit = function () { - var _this = this; - this.hasAuthority = this.model.authorityOptions && hasValue(this.model.authorityOptions.name); - if (this.hasAuthority) { - this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata); - } - this.chips = new Chips(this.model.value, 'display', null, this.EnvConfig.submission.icons.metadata); - this.chips.chipsItems - .subscribe(function (subItems) { - var items = _this.chips.getChipsItems(); - // Does not emit change if model value is equal to the current value - if (!isEqual(items, _this.model.value)) { - _this.model.valueUpdates.next(items); - _this.change.emit(event); - } - }); - }; - DsDynamicTagComponent.prototype.changeSearchingStatus = function (status) { - this.searching = status; - this.cdr.detectChanges(); - }; - DsDynamicTagComponent.prototype.onInput = function (event) { - if (event.data) { - this.group.markAsDirty(); - } - this.cdr.detectChanges(); - }; - DsDynamicTagComponent.prototype.onBlur = function (event) { - if (isNotEmpty(this.currentValue) && !this.instance.isPopupOpen()) { - this.addTagsToChips(); - } - this.blur.emit(event); - }; - DsDynamicTagComponent.prototype.onFocus = function (event) { - this.focus.emit(event); - }; - DsDynamicTagComponent.prototype.onSelectItem = function (event) { - var _this = this; - this.chips.add(event.item); - // this.group.controls[this.model.id].setValue(this.model.value); - this.updateModel(event); - setTimeout(function () { - // Reset the input text after x ms, mandatory or the formatter overwrite it - _this.currentValue = null; - _this.cdr.detectChanges(); - }, 50); - }; - DsDynamicTagComponent.prototype.updateModel = function (event) { - this.model.valueUpdates.next(this.chips.getChipsItems()); - this.change.emit(event); - }; - DsDynamicTagComponent.prototype.onKeyUp = function (event) { - if (event.keyCode === 13 || event.keyCode === 188) { - event.preventDefault(); - // Key: Enter or ',' or ';' - this.addTagsToChips(); - event.stopPropagation(); - } - }; - DsDynamicTagComponent.prototype.preventEventsPropagation = function (event) { - event.stopPropagation(); - if (event.keyCode === 13) { - event.preventDefault(); - } - }; - DsDynamicTagComponent.prototype.addTagsToChips = function () { - var _this = this; - if (hasValue(this.currentValue) && (!this.hasAuthority || !this.model.authorityOptions.closed)) { - var res = []; - res = this.currentValue.split(','); - var res1_1 = []; - res.forEach(function (item) { - item.split(';').forEach(function (i) { - res1_1.push(i); - }); - }); - res1_1.forEach(function (c) { - c = c.trim(); - if (c.length > 0) { - _this.chips.add(c); - } - }); - // this.currentValue = ''; - setTimeout(function () { - // Reset the input text after x ms, mandatory or the formatter overwrite it - _this.currentValue = null; - _this.cdr.detectChanges(); - }, 50); - this.updateModel(event); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicTagComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicTagComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", DynamicTagModel) - ], DsDynamicTagComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicTagComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicTagComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicTagComponent.prototype, "focus", void 0); - tslib_1.__decorate([ - ViewChild('instance'), - tslib_1.__metadata("design:type", NgbTypeahead) - ], DsDynamicTagComponent.prototype, "instance", void 0); - DsDynamicTagComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-tag', - styleUrls: ['./dynamic-tag.component.scss'], - templateUrl: './dynamic-tag.component.html' - }), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, AuthorityService, - ChangeDetectorRef, - DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDynamicTagComponent); - return DsDynamicTagComponent; -}(DynamicFormControlComponent)); -export { DsDynamicTagComponent }; -//# sourceMappingURL=dynamic-tag.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js.map deleted file mode 100644 index 25270e634a..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-tag.component.js","sourceRoot":"","sources":["dynamic-tag.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js deleted file mode 100644 index 3a22414e4f..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tslib_1 from "tslib"; -import { AUTOCOMPLETE_OFF, serializable } from '@ng-dynamic-forms/core'; -import { DsDynamicInputModel } from '../ds-dynamic-input.model'; -export var DYNAMIC_FORM_CONTROL_TYPE_TAG = 'TAG'; -var DynamicTagModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicTagModel, _super); - function DynamicTagModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.type = DYNAMIC_FORM_CONTROL_TYPE_TAG; - _this.autoComplete = AUTOCOMPLETE_OFF; - _this.minChars = config.minChars || 3; - var value = config.value || []; - _this.valueUpdates.next(value); - return _this; - } - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Number) - ], DynamicTagModel.prototype, "minChars", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Array) - ], DynamicTagModel.prototype, "value", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicTagModel.prototype, "type", void 0); - return DynamicTagModel; -}(DsDynamicInputModel)); -export { DynamicTagModel }; -//# sourceMappingURL=dynamic-tag.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js.map deleted file mode 100644 index fe7928678d..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-tag.model.js","sourceRoot":"","sources":["dynamic-tag.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAG3F,MAAM,CAAC,IAAM,6BAA6B,GAAG,KAAK,CAAC;AAOnD;IAAqC,2CAAmB;IAMtD,yBAAY,MAA6B,EAAE,MAAiC;QAA5E,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAMtB;QAVwB,UAAI,GAAW,6BAA6B,CAAC;QAMpE,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrC,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;QACrC,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;;IAC/B,CAAC;IAZe;QAAf,YAAY,EAAE;;qDAAkB;IACjB;QAAf,YAAY,EAAE;;kDAAc;IACb;QAAf,YAAY,EAAE;;iDAAuD;IAYxE,sBAAC;CAAA,AAhBD,CAAqC,mBAAmB,GAgBvD;SAhBY,eAAe"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js deleted file mode 100644 index 8d4df0ab2b..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js +++ /dev/null @@ -1,138 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { DynamicFormControlComponent, DynamicFormLayoutService, DynamicFormValidationService } from '@ng-dynamic-forms/core'; -import { catchError, debounceTime, distinctUntilChanged, filter, map, merge, switchMap, tap } from 'rxjs/operators'; -import { Observable, of as observableOf, Subject } from 'rxjs'; -import { AuthorityService } from '../../../../../../core/integration/authority.service'; -import { DynamicTypeaheadModel } from './dynamic-typeahead.model'; -import { IntegrationSearchOptions } from '../../../../../../core/integration/models/integration-options.model'; -import { isEmpty, isNotEmpty } from '../../../../../empty.util'; -import { FormFieldMetadataValueObject } from '../../../models/form-field-metadata-value.model'; -var DsDynamicTypeaheadComponent = /** @class */ (function (_super) { - tslib_1.__extends(DsDynamicTypeaheadComponent, _super); - function DsDynamicTypeaheadComponent(authorityService, cdr, layoutService, validationService) { - var _this = _super.call(this, layoutService, validationService) || this; - _this.authorityService = authorityService; - _this.cdr = cdr; - _this.layoutService = layoutService; - _this.validationService = validationService; - _this.bindId = true; - _this.blur = new EventEmitter(); - _this.change = new EventEmitter(); - _this.focus = new EventEmitter(); - _this.searching = false; - _this.searchFailed = false; - _this.hideSearchingWhenUnsubscribed$ = new Observable(function () { return function () { return _this.changeSearchingStatus(false); }; }); - _this.click$ = new Subject(); - _this.formatter = function (x) { - return (typeof x === 'object') ? x.display : x; - }; - _this.search = function (text$) { - return text$.pipe(merge(_this.click$), debounceTime(300), distinctUntilChanged(), tap(function () { return _this.changeSearchingStatus(true); }), switchMap(function (term) { - if (term === '' || term.length < _this.model.minChars) { - return observableOf({ list: [] }); - } - else { - _this.searchOptions.query = term; - return _this.authorityService.getEntriesByName(_this.searchOptions).pipe(map(function (authorities) { - // @TODO Pagination for authority is not working, to refactor when it will be fixed - return { - list: authorities.payload, - pageInfo: authorities.pageInfo - }; - }), tap(function () { return _this.searchFailed = false; }), catchError(function () { - _this.searchFailed = true; - return observableOf({ list: [] }); - })); - } - }), map(function (results) { return results.list; }), tap(function () { return _this.changeSearchingStatus(false); }), merge(_this.hideSearchingWhenUnsubscribed$)); - }; - return _this; - } - DsDynamicTypeaheadComponent.prototype.ngOnInit = function () { - var _this = this; - this.currentValue = this.model.value; - this.searchOptions = new IntegrationSearchOptions(this.model.authorityOptions.scope, this.model.authorityOptions.name, this.model.authorityOptions.metadata); - this.group.get(this.model.id).valueChanges.pipe(filter(function (value) { return _this.currentValue !== value; })) - .subscribe(function (value) { - _this.currentValue = value; - }); - }; - DsDynamicTypeaheadComponent.prototype.changeSearchingStatus = function (status) { - this.searching = status; - this.cdr.detectChanges(); - }; - DsDynamicTypeaheadComponent.prototype.onInput = function (event) { - if (!this.model.authorityOptions.closed && isNotEmpty(event.target.value)) { - this.inputValue = new FormFieldMetadataValueObject(event.target.value); - this.model.valueUpdates.next(this.inputValue); - } - }; - DsDynamicTypeaheadComponent.prototype.onBlur = function (event) { - if (!this.model.authorityOptions.closed && isNotEmpty(this.inputValue)) { - this.change.emit(this.inputValue); - this.inputValue = null; - } - this.blur.emit(event); - }; - DsDynamicTypeaheadComponent.prototype.onChange = function (event) { - event.stopPropagation(); - if (isEmpty(this.currentValue)) { - this.model.valueUpdates.next(null); - this.change.emit(null); - } - }; - DsDynamicTypeaheadComponent.prototype.onFocus = function (event) { - this.focus.emit(event); - }; - DsDynamicTypeaheadComponent.prototype.onSelectItem = function (event) { - this.inputValue = null; - this.currentValue = event.item; - this.model.valueUpdates.next(event.item); - this.change.emit(event.item); - }; - DsDynamicTypeaheadComponent.prototype.whenClickOnConfidenceNotAccepted = function (confidence) { - if (!this.model.readOnly) { - this.click$.next(this.formatter(this.currentValue)); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DsDynamicTypeaheadComponent.prototype, "bindId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], DsDynamicTypeaheadComponent.prototype, "group", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", DynamicTypeaheadModel) - ], DsDynamicTypeaheadComponent.prototype, "model", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicTypeaheadComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicTypeaheadComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], DsDynamicTypeaheadComponent.prototype, "focus", void 0); - DsDynamicTypeaheadComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-dynamic-typeahead', - styleUrls: ['./dynamic-typeahead.component.scss'], - templateUrl: './dynamic-typeahead.component.html' - }), - tslib_1.__metadata("design:paramtypes", [AuthorityService, - ChangeDetectorRef, - DynamicFormLayoutService, - DynamicFormValidationService]) - ], DsDynamicTypeaheadComponent); - return DsDynamicTypeaheadComponent; -}(DynamicFormControlComponent)); -export { DsDynamicTypeaheadComponent }; -//# sourceMappingURL=dynamic-typeahead.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js.map deleted file mode 100644 index 5204b6ced2..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-typeahead.component.js","sourceRoot":"","sources":["dynamic-typeahead.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js deleted file mode 100644 index d30197cde3..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { AUTOCOMPLETE_OFF, serializable } from '@ng-dynamic-forms/core'; -import { DsDynamicInputModel } from '../ds-dynamic-input.model'; -export var DYNAMIC_FORM_CONTROL_TYPE_TYPEAHEAD = 'TYPEAHEAD'; -var DynamicTypeaheadModel = /** @class */ (function (_super) { - tslib_1.__extends(DynamicTypeaheadModel, _super); - function DynamicTypeaheadModel(config, layout) { - var _this = _super.call(this, config, layout) || this; - _this.type = DYNAMIC_FORM_CONTROL_TYPE_TYPEAHEAD; - _this.autoComplete = AUTOCOMPLETE_OFF; - _this.minChars = config.minChars || 3; - return _this; - } - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", Number) - ], DynamicTypeaheadModel.prototype, "minChars", void 0); - tslib_1.__decorate([ - serializable(), - tslib_1.__metadata("design:type", String) - ], DynamicTypeaheadModel.prototype, "type", void 0); - return DynamicTypeaheadModel; -}(DsDynamicInputModel)); -export { DynamicTypeaheadModel }; -//# sourceMappingURL=dynamic-typeahead.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js.map b/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js.map deleted file mode 100644 index 3fe4e6e562..0000000000 --- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dynamic-typeahead.model.js","sourceRoot":"","sources":["dynamic-typeahead.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAA4B,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,2BAA2B,CAAC;AAE3F,MAAM,CAAC,IAAM,mCAAmC,GAAG,WAAW,CAAC;AAO/D;IAA2C,iDAAmB;IAK5D,+BAAY,MAAqC,EAAE,MAAiC;QAApF,YAEE,kBAAM,MAAM,EAAE,MAAM,CAAC,SAItB;QARwB,UAAI,GAAW,mCAAmC,CAAC;QAM1E,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrC,KAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC;;IACvC,CAAC;IATe;QAAf,YAAY,EAAE;;2DAAkB;IACjB;QAAf,YAAY,EAAE;;uDAA6D;IAU9E,4BAAC;CAAA,AAbD,CAA2C,mBAAmB,GAa7D;SAbY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/form-builder.service.js b/src/app/shared/form/builder/form-builder.service.js deleted file mode 100644 index e2b831b729..0000000000 --- a/src/app/shared/form/builder/form-builder.service.js +++ /dev/null @@ -1,256 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { DYNAMIC_FORM_CONTROL_TYPE_ARRAY, DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP, DYNAMIC_FORM_CONTROL_TYPE_GROUP, DYNAMIC_FORM_CONTROL_TYPE_INPUT, DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP, DynamicFormService, JSONUtils, } from '@ng-dynamic-forms/core'; -import { isObject, isString, mergeWith } from 'lodash'; -import { hasValue, isEmpty, isNotEmpty, isNotNull, isNotUndefined, isNull } from '../../empty.util'; -import { DYNAMIC_FORM_CONTROL_TYPE_TAG } from './ds-dynamic-form-ui/models/tag/dynamic-tag.model'; -import { RowParser } from './parsers/row-parser'; -import { DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP } from './ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; -import { FormFieldMetadataValueObject } from './models/form-field-metadata-value.model'; -import { isNgbDateStruct } from '../../date.util'; -var FormBuilderService = /** @class */ (function (_super) { - tslib_1.__extends(FormBuilderService, _super); - function FormBuilderService() { - return _super !== null && _super.apply(this, arguments) || this; - } - FormBuilderService.prototype.findById = function (id, groupModel, arrayIndex) { - var _this = this; - if (arrayIndex === void 0) { arrayIndex = null; } - var result = null; - var findByIdFn = function (findId, findGroupModel, findArrayIndex) { - for (var _i = 0, findGroupModel_1 = findGroupModel; _i < findGroupModel_1.length; _i++) { - var controlModel = findGroupModel_1[_i]; - if (controlModel.id === findId) { - if (_this.isArrayGroup(controlModel) && isNotNull(findArrayIndex)) { - result = controlModel.get(findArrayIndex); - } - else { - result = controlModel; - } - break; - } - if (_this.isGroup(controlModel)) { - findByIdFn(findId, controlModel.group, findArrayIndex); - } - if (_this.isArrayGroup(controlModel) - && (isNull(findArrayIndex) || controlModel.size > (findArrayIndex))) { - var index = (isNull(findArrayIndex)) ? 0 : findArrayIndex; - findByIdFn(findId, controlModel.get(index).group, index); - } - } - }; - findByIdFn(id, groupModel, arrayIndex); - return result; - }; - FormBuilderService.prototype.clearAllModelsValue = function (groupModel) { - var _this = this; - var iterateControlModels = function (findGroupModel) { - for (var _i = 0, findGroupModel_2 = findGroupModel; _i < findGroupModel_2.length; _i++) { - var controlModel = findGroupModel_2[_i]; - if (_this.isGroup(controlModel)) { - iterateControlModels(controlModel.group); - continue; - } - if (_this.isArrayGroup(controlModel)) { - iterateControlModels(controlModel.groupFactory()); - continue; - } - if (controlModel.hasOwnProperty('valueUpdates')) { - controlModel.valueUpdates.next(undefined); - } - } - }; - iterateControlModels(groupModel); - }; - FormBuilderService.prototype.getValueFromModel = function (groupModel) { - var _this = this; - var result = Object.create({}); - var customizer = function (objValue, srcValue) { - if (Array.isArray(objValue)) { - return objValue.concat(srcValue); - } - }; - var normalizeValue = function (controlModel, controlValue, controlModelIndex) { - var controlLanguage = controlModel.hasLanguages ? controlModel.language : null; - if (isString(controlValue)) { - return new FormFieldMetadataValueObject(controlValue, controlLanguage, null, null, controlModelIndex); - } - else if (isObject(controlValue)) { - var authority = controlValue.authority || controlValue.id || null; - var place = controlModelIndex || controlValue.place; - if (isNgbDateStruct(controlValue)) { - return new FormFieldMetadataValueObject(controlValue, controlLanguage, authority, controlValue, place); - } - else { - return new FormFieldMetadataValueObject(controlValue.value, controlLanguage, authority, controlValue.display, place, controlValue.confidence); - } - } - }; - var iterateControlModels = function (findGroupModel, controlModelIndex) { - if (controlModelIndex === void 0) { controlModelIndex = 0; } - var iterateResult = Object.create({}); - var _loop_1 = function (controlModel) { - if (_this.isRowGroup(controlModel) && !_this.isCustomOrListGroup(controlModel)) { - iterateResult = mergeWith(iterateResult, iterateControlModels(controlModel.group), customizer); - return "continue"; - } - if (_this.isGroup(controlModel) && !_this.isCustomOrListGroup(controlModel)) { - iterateResult[controlModel.name] = iterateControlModels(controlModel.group); - return "continue"; - } - if (_this.isRowArrayGroup(controlModel)) { - for (var _i = 0, _a = controlModel.groups; _i < _a.length; _i++) { - var arrayItemModel = _a[_i]; - iterateResult = mergeWith(iterateResult, iterateControlModels(arrayItemModel.group, arrayItemModel.index), customizer); - } - return "continue"; - } - if (_this.isArrayGroup(controlModel)) { - iterateResult[controlModel.name] = []; - for (var _b = 0, _c = controlModel.groups; _b < _c.length; _b++) { - var arrayItemModel = _c[_b]; - iterateResult[controlModel.name].push(iterateControlModels(arrayItemModel.group, arrayItemModel.index)); - } - return "continue"; - } - var controlId = void 0; - // Get the field's name - if (_this.isQualdropGroup(controlModel)) { - // If is instance of DynamicQualdropModel take the qualdrop id as field's name - controlId = controlModel.qualdropId; - } - else { - controlId = controlModel.name; - } - if (_this.isRelationGroup(controlModel)) { - var values = controlModel.getGroupValue(); - values.forEach(function (groupValue, groupIndex) { - var newGroupValue = Object.create({}); - Object.keys(groupValue) - .forEach(function (key) { - var normValue = normalizeValue(controlModel, groupValue[key], groupIndex); - if (isNotEmpty(normValue) && normValue.hasValue()) { - if (iterateResult.hasOwnProperty(key)) { - iterateResult[key].push(normValue); - } - else { - iterateResult[key] = [normValue]; - } - } - }); - }); - } - else if (isNotUndefined(controlModel.value) && isNotEmpty(controlModel.value)) { - var controlArrayValue_1 = []; - // Normalize control value as an array of FormFieldMetadataValueObject - var values = Array.isArray(controlModel.value) ? controlModel.value : [controlModel.value]; - values.forEach(function (controlValue) { - controlArrayValue_1.push(normalizeValue(controlModel, controlValue, controlModelIndex)); - }); - if (controlId && iterateResult.hasOwnProperty(controlId) && isNotNull(iterateResult[controlId])) { - iterateResult[controlId] = iterateResult[controlId].concat(controlArrayValue_1); - } - else { - iterateResult[controlId] = isNotEmpty(controlArrayValue_1) ? controlArrayValue_1 : null; - } - } - }; - // Iterate over all group's controls - for (var _i = 0, findGroupModel_3 = findGroupModel; _i < findGroupModel_3.length; _i++) { - var controlModel = findGroupModel_3[_i]; - _loop_1(controlModel); - } - return iterateResult; - }; - result = iterateControlModels(groupModel); - return result; - }; - FormBuilderService.prototype.modelFromConfiguration = function (json, scopeUUID, initFormValues, submissionScope, readOnly) { - if (initFormValues === void 0) { initFormValues = {}; } - if (readOnly === void 0) { readOnly = false; } - var rows = []; - var rawData = typeof json === 'string' ? JSON.parse(json, JSONUtils.parseReviver) : json; - if (rawData.rows && !isEmpty(rawData.rows)) { - rawData.rows.forEach(function (currentRow) { - var rowParsed = new RowParser(currentRow, scopeUUID, initFormValues, submissionScope, readOnly).parse(); - if (isNotNull(rowParsed)) { - if (Array.isArray(rowParsed)) { - rows = rows.concat(rowParsed); - } - else { - rows.push(rowParsed); - } - } - }); - } - return rows; - }; - FormBuilderService.prototype.isModelInCustomGroup = function (model) { - return this.isCustomGroup(model.parent); - }; - FormBuilderService.prototype.hasArrayGroupValue = function (model) { - return model && (this.isListGroup(model) || model.type === DYNAMIC_FORM_CONTROL_TYPE_TAG); - }; - FormBuilderService.prototype.hasMappedGroupValue = function (model) { - return (this.isQualdropGroup(model.parent) - || this.isRelationGroup(model.parent)); - }; - FormBuilderService.prototype.isGroup = function (model) { - return model && (model.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP || model.type === DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP); - }; - FormBuilderService.prototype.isQualdropGroup = function (model) { - return (model && model.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP && hasValue(model.qualdropId)); - }; - FormBuilderService.prototype.isCustomGroup = function (model) { - return model && (model.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP && model.isCustomGroup === true); - }; - FormBuilderService.prototype.isRowGroup = function (model) { - return model && (model.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP && model.isRowGroup === true); - }; - FormBuilderService.prototype.isCustomOrListGroup = function (model) { - return model && - (this.isCustomGroup(model) - || this.isListGroup(model)); - }; - FormBuilderService.prototype.isListGroup = function (model) { - return model && - ((model.type === DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP && model.isListGroup === true) - || (model.type === DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP && model.isListGroup === true)); - }; - FormBuilderService.prototype.isRelationGroup = function (model) { - return model && model.type === DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP; - }; - FormBuilderService.prototype.isRowArrayGroup = function (model) { - return model.type === DYNAMIC_FORM_CONTROL_TYPE_ARRAY && model.isRowArray === true; - }; - FormBuilderService.prototype.isArrayGroup = function (model) { - return model.type === DYNAMIC_FORM_CONTROL_TYPE_ARRAY; - }; - FormBuilderService.prototype.isInputModel = function (model) { - return model.type === DYNAMIC_FORM_CONTROL_TYPE_INPUT; - }; - FormBuilderService.prototype.getFormControlById = function (id, formGroup, groupModel, index) { - if (index === void 0) { index = 0; } - var fieldModel = this.findById(id, groupModel, index); - return isNotEmpty(fieldModel) ? formGroup.get(this.getPath(fieldModel)) : null; - }; - FormBuilderService.prototype.getId = function (model) { - var tempModel; - if (this.isArrayGroup(model)) { - return model.index.toString(); - } - else if (this.isModelInCustomGroup(model)) { - tempModel = model.parent; - } - else { - tempModel = model; - } - return (tempModel.id !== tempModel.name) ? tempModel.name : tempModel.id; - }; - FormBuilderService = tslib_1.__decorate([ - Injectable() - ], FormBuilderService); - return FormBuilderService; -}(DynamicFormService)); -export { FormBuilderService }; -//# sourceMappingURL=form-builder.service.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/form-builder.service.js.map b/src/app/shared/form/builder/form-builder.service.js.map deleted file mode 100644 index 7af33e3ea8..0000000000 --- a/src/app/shared/form/builder/form-builder.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form-builder.service.js","sourceRoot":"","sources":["form-builder.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-language-value.model.js b/src/app/shared/form/builder/models/form-field-language-value.model.js deleted file mode 100644 index 656b17b100..0000000000 --- a/src/app/shared/form/builder/models/form-field-language-value.model.js +++ /dev/null @@ -1,9 +0,0 @@ -var FormFieldLanguageValueObject = /** @class */ (function () { - function FormFieldLanguageValueObject(value, language) { - this.value = value; - this.language = language; - } - return FormFieldLanguageValueObject; -}()); -export { FormFieldLanguageValueObject }; -//# sourceMappingURL=form-field-language-value.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-language-value.model.js.map b/src/app/shared/form/builder/models/form-field-language-value.model.js.map deleted file mode 100644 index eb3f43b6b9..0000000000 --- a/src/app/shared/form/builder/models/form-field-language-value.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form-field-language-value.model.js","sourceRoot":"","sources":["form-field-language-value.model.ts"],"names":[],"mappings":"AAAA;IAIE,sCAAY,KAAa,EAAE,QAAgB;QACzC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IACH,mCAAC;AAAD,CAAC,AARD,IAQC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-metadata-value.model.js b/src/app/shared/form/builder/models/form-field-metadata-value.model.js deleted file mode 100644 index 9bb2c30162..0000000000 --- a/src/app/shared/form/builder/models/form-field-metadata-value.model.js +++ /dev/null @@ -1,49 +0,0 @@ -import { isEmpty, isNotEmpty, isNotNull } from '../../../empty.util'; -import { ConfidenceType } from '../../../../core/integration/models/confidence-type'; -import { PLACEHOLDER_PARENT_METADATA } from '../ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; -var FormFieldMetadataValueObject = /** @class */ (function () { - function FormFieldMetadataValueObject(value, language, authority, display, place, confidence, otherInformation, metadata) { - if (value === void 0) { value = null; } - if (language === void 0) { language = null; } - if (authority === void 0) { authority = null; } - if (display === void 0) { display = null; } - if (place === void 0) { place = 0; } - if (confidence === void 0) { confidence = null; } - if (otherInformation === void 0) { otherInformation = null; } - if (metadata === void 0) { metadata = null; } - this.value = isNotNull(value) ? ((typeof value === 'string') ? value.trim() : value) : null; - this.language = language; - this.authority = authority; - this.display = display || value; - this.confidence = confidence; - if (authority != null && isEmpty(confidence)) { - this.confidence = ConfidenceType.CF_ACCEPTED; - } - else if (isNotEmpty(confidence)) { - this.confidence = confidence; - } - else { - this.confidence = ConfidenceType.CF_UNSET; - } - this.place = place; - if (isNotEmpty(metadata)) { - this.metadata = metadata; - } - this.otherInformation = otherInformation; - } - FormFieldMetadataValueObject.prototype.hasAuthority = function () { - return isNotEmpty(this.authority); - }; - FormFieldMetadataValueObject.prototype.hasValue = function () { - return isNotEmpty(this.value); - }; - FormFieldMetadataValueObject.prototype.hasOtherInformation = function () { - return isNotEmpty(this.otherInformation); - }; - FormFieldMetadataValueObject.prototype.hasPlaceholder = function () { - return this.hasValue() && this.value === PLACEHOLDER_PARENT_METADATA; - }; - return FormFieldMetadataValueObject; -}()); -export { FormFieldMetadataValueObject }; -//# sourceMappingURL=form-field-metadata-value.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-metadata-value.model.js.map b/src/app/shared/form/builder/models/form-field-metadata-value.model.js.map deleted file mode 100644 index 66e2488629..0000000000 --- a/src/app/shared/form/builder/models/form-field-metadata-value.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form-field-metadata-value.model.js","sourceRoot":"","sources":["form-field-metadata-value.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,2BAA2B,EAAE,MAAM,0EAA0E,CAAC;AAOvH;IAYE,sCAAY,KAAiB,EACjB,QAAoB,EACpB,SAAwB,EACxB,OAAsB,EACtB,KAAiB,EACjB,UAAyB,EACzB,gBAA4B,EAC5B,QAAuB;QAPvB,sBAAA,EAAA,YAAiB;QACjB,yBAAA,EAAA,eAAoB;QACpB,0BAAA,EAAA,gBAAwB;QACxB,wBAAA,EAAA,cAAsB;QACtB,sBAAA,EAAA,SAAiB;QACjB,2BAAA,EAAA,iBAAyB;QACzB,iCAAA,EAAA,uBAA4B;QAC5B,yBAAA,EAAA,eAAuB;QACjC,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5F,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,KAAK,CAAC;QAEhC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;YAC5C,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,WAAW,CAAC;SAC9C;aAAM,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;YACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC;SAC3C;QAED,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;YACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC1B;QAED,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED,mDAAY,GAAZ;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,+CAAQ,GAAR;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,0DAAmB,GAAnB;QACE,OAAO,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC;IAED,qDAAc,GAAd;QACE,OAAO,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,2BAA2B,CAAC;IACvE,CAAC;IACH,mCAAC;AAAD,CAAC,AAzDD,IAyDC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-previous-value-object.js b/src/app/shared/form/builder/models/form-field-previous-value-object.js deleted file mode 100644 index 60721ae1c3..0000000000 --- a/src/app/shared/form/builder/models/form-field-previous-value-object.js +++ /dev/null @@ -1,39 +0,0 @@ -import { isEqual } from 'lodash'; -var FormFieldPreviousValueObject = /** @class */ (function () { - function FormFieldPreviousValueObject(path, value) { - if (path === void 0) { path = null; } - if (value === void 0) { value = null; } - this._path = path; - this._value = value; - } - Object.defineProperty(FormFieldPreviousValueObject.prototype, "path", { - get: function () { - return this._path; - }, - set: function (path) { - this._path = path; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(FormFieldPreviousValueObject.prototype, "value", { - get: function () { - return this._value; - }, - set: function (value) { - this._value = value; - }, - enumerable: true, - configurable: true - }); - FormFieldPreviousValueObject.prototype.delete = function () { - this._value = null; - this._path = null; - }; - FormFieldPreviousValueObject.prototype.isPathEqual = function (path) { - return this._path && isEqual(this._path, path); - }; - return FormFieldPreviousValueObject; -}()); -export { FormFieldPreviousValueObject }; -//# sourceMappingURL=form-field-previous-value-object.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field-previous-value-object.js.map b/src/app/shared/form/builder/models/form-field-previous-value-object.js.map deleted file mode 100644 index 0921d50355..0000000000 --- a/src/app/shared/form/builder/models/form-field-previous-value-object.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form-field-previous-value-object.js","sourceRoot":"","sources":["form-field-previous-value-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC;IAKE,sCAAY,IAAkB,EAAE,KAAiB;QAArC,qBAAA,EAAA,WAAkB;QAAE,sBAAA,EAAA,YAAiB;QAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,sBAAI,8CAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aAED,UAAS,IAAW;YAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,CAAC;;;OAJA;IAMD,sBAAI,+CAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aAED,UAAU,KAAU;YAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;;;OAJA;IAMM,6CAAM,GAAb;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAEM,kDAAW,GAAlB,UAAmB,IAAI;QACrB,OAAO,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IACH,mCAAC;AAAD,CAAC,AAlCD,IAkCC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field.model.js b/src/app/shared/form/builder/models/form-field.model.js deleted file mode 100644 index 55f7a7b4fb..0000000000 --- a/src/app/shared/form/builder/models/form-field.model.js +++ /dev/null @@ -1,57 +0,0 @@ -import * as tslib_1 from "tslib"; -import { autoserialize } from 'cerialize'; -var FormFieldModel = /** @class */ (function () { - function FormFieldModel() { - } - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], FormFieldModel.prototype, "hints", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], FormFieldModel.prototype, "label", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Array) - ], FormFieldModel.prototype, "languageCodes", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], FormFieldModel.prototype, "mandatoryMessage", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], FormFieldModel.prototype, "mandatory", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Boolean) - ], FormFieldModel.prototype, "repeatable", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], FormFieldModel.prototype, "input", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Array) - ], FormFieldModel.prototype, "selectableMetadata", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Array) - ], FormFieldModel.prototype, "rows", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], FormFieldModel.prototype, "scope", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", String) - ], FormFieldModel.prototype, "style", void 0); - tslib_1.__decorate([ - autoserialize, - tslib_1.__metadata("design:type", Object) - ], FormFieldModel.prototype, "value", void 0); - return FormFieldModel; -}()); -export { FormFieldModel }; -//# sourceMappingURL=form-field.model.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/models/form-field.model.js.map b/src/app/shared/form/builder/models/form-field.model.js.map deleted file mode 100644 index dfd52a63e5..0000000000 --- a/src/app/shared/form/builder/models/form-field.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form-field.model.js","sourceRoot":"","sources":["form-field.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAK1C;IAAA;IAwCA,CAAC;IArCC;QADC,aAAa;;iDACA;IAGd;QADC,aAAa;;iDACA;IAGd;QADC,aAAa;;yDACgB;IAG9B;QADC,aAAa;;4DACW;IAGzB;QADC,aAAa;;qDACI;IAGlB;QADC,aAAa;;sDACM;IAGpB;QADC,aAAa;;iDAIZ;IAGF;QADC,aAAa;;8DACqC;IAGnD;QADC,aAAa;;gDACO;IAGrB;QADC,aAAa;;iDACA;IAGd;QADC,aAAa;;iDACA;IAGd;QADC,aAAa;;iDACH;IACb,qBAAC;CAAA,AAxCD,IAwCC;SAxCY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/concat-field-parser.js b/src/app/shared/form/builder/parsers/concat-field-parser.js deleted file mode 100644 index baaee1a473..0000000000 --- a/src/app/shared/form/builder/parsers/concat-field-parser.js +++ /dev/null @@ -1,73 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { DynamicInputModel } from '@ng-dynamic-forms/core'; -import { CONCAT_FIRST_INPUT_SUFFIX, CONCAT_GROUP_SUFFIX, CONCAT_SECOND_INPUT_SUFFIX, DynamicConcatModel } from '../ds-dynamic-form-ui/models/ds-dynamic-concat.model'; -import { isNotEmpty } from '../../../empty.util'; -var ConcatFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(ConcatFieldParser, _super); - function ConcatFieldParser(configData, initFormValues, parserOptions, separator, firstPlaceholder, secondPlaceholder) { - if (firstPlaceholder === void 0) { firstPlaceholder = null; } - if (secondPlaceholder === void 0) { secondPlaceholder = null; } - var _this = _super.call(this, configData, initFormValues, parserOptions) || this; - _this.configData = configData; - _this.initFormValues = initFormValues; - _this.parserOptions = parserOptions; - _this.separator = separator; - _this.firstPlaceholder = firstPlaceholder; - _this.secondPlaceholder = secondPlaceholder; - _this.separator = separator; - _this.firstPlaceholder = firstPlaceholder; - _this.secondPlaceholder = secondPlaceholder; - return _this; - } - ConcatFieldParser.prototype.modelFactory = function (fieldValue, label) { - var clsGroup; - var clsInput; - var id = this.configData.selectableMetadata[0].metadata; - clsInput = { - grid: { - host: 'col-sm-6' - } - }; - var groupId = id.replace(/\./g, '_') + CONCAT_GROUP_SUFFIX; - var concatGroup = this.initModel(groupId, false, false); - concatGroup.group = []; - concatGroup.separator = this.separator; - var input1ModelConfig = this.initModel(id + CONCAT_FIRST_INPUT_SUFFIX, label, false, false); - var input2ModelConfig = this.initModel(id + CONCAT_SECOND_INPUT_SUFFIX, label, true, false); - if (this.configData.mandatory) { - input1ModelConfig.required = true; - } - if (isNotEmpty(this.firstPlaceholder)) { - input1ModelConfig.placeholder = this.firstPlaceholder; - } - if (isNotEmpty(this.secondPlaceholder)) { - input2ModelConfig.placeholder = this.secondPlaceholder; - } - // Split placeholder if is like 'placeholder1/placeholder2' - var placeholder = this.configData.label.split('/'); - if (placeholder.length === 2) { - input1ModelConfig.placeholder = placeholder[0]; - input2ModelConfig.placeholder = placeholder[1]; - } - var model1 = new DynamicInputModel(input1ModelConfig, clsInput); - var model2 = new DynamicInputModel(input2ModelConfig, clsInput); - concatGroup.group.push(model1); - concatGroup.group.push(model2); - clsGroup = { - element: { - control: 'form-row', - } - }; - var concatModel = new DynamicConcatModel(concatGroup, clsGroup); - concatModel.name = this.getFieldId(); - // Init values - if (isNotEmpty(fieldValue)) { - concatModel.value = fieldValue; - } - return concatModel; - }; - return ConcatFieldParser; -}(FieldParser)); -export { ConcatFieldParser }; -//# sourceMappingURL=concat-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/concat-field-parser.js.map b/src/app/shared/form/builder/parsers/concat-field-parser.js.map deleted file mode 100644 index 3f98ac35a8..0000000000 --- a/src/app/shared/form/builder/parsers/concat-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"concat-field-parser.js","sourceRoot":"","sources":["concat-field-parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/date-field-parser.js b/src/app/shared/form/builder/parsers/date-field-parser.js deleted file mode 100644 index a2129acdc1..0000000000 --- a/src/app/shared/form/builder/parsers/date-field-parser.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { DynamicDsDatePickerModel } from '../ds-dynamic-form-ui/models/date-picker/date-picker.model'; -import { isNotEmpty } from '../../../empty.util'; -import { DS_DATE_PICKER_SEPARATOR } from '../ds-dynamic-form-ui/models/date-picker/date-picker.component'; -var DateFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(DateFieldParser, _super); - function DateFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - DateFieldParser.prototype.modelFactory = function (fieldValue, label) { - var malformedDate = false; - var inputDateModelConfig = this.initModel(null, label); - inputDateModelConfig.toggleIcon = 'fas fa-calendar'; - this.setValues(inputDateModelConfig, fieldValue); - // Init Data and validity check - if (isNotEmpty(inputDateModelConfig.value)) { - var value = inputDateModelConfig.value.toString(); - if (value.length >= 4) { - var valuesArray = value.split(DS_DATE_PICKER_SEPARATOR); - if (valuesArray.length < 4) { - for (var i = 0; i < valuesArray.length; i++) { - var len = i === 0 ? 4 : 2; - if (valuesArray[i].length !== len) { - malformedDate = true; - } - } - } - } - } - var dateModel = new DynamicDsDatePickerModel(inputDateModelConfig); - dateModel.malformedDate = malformedDate; - return dateModel; - }; - return DateFieldParser; -}(FieldParser)); -export { DateFieldParser }; -//# sourceMappingURL=date-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/date-field-parser.js.map b/src/app/shared/form/builder/parsers/date-field-parser.js.map deleted file mode 100644 index 6a2320fdbe..0000000000 --- a/src/app/shared/form/builder/parsers/date-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"date-field-parser.js","sourceRoot":"","sources":["date-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gEAAgE,CAAC;AAG1G;IAAqC,2CAAW;IAAhD;;IA4BA,CAAC;IA1BQ,sCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAM,oBAAoB,GAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEvF,oBAAoB,CAAC,UAAU,GAAG,iBAAiB,CAAC;QACpD,IAAI,CAAC,SAAS,CAAC,oBAA2B,EAAE,UAAU,CAAC,CAAC;QACxD,+BAA+B;QAC/B,IAAI,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE;YAC1C,IAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;gBACrB,IAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBAC1D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC3C,IAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC5B,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE;4BACjC,aAAa,GAAG,IAAI,CAAC;yBACtB;qBACF;iBACF;aACF;SAEF;QACD,IAAM,SAAS,GAAG,IAAI,wBAAwB,CAAC,oBAAoB,CAAC,CAAC;QACrE,SAAS,CAAC,aAAa,GAAG,aAAa,CAAC;QACxC,OAAO,SAAS,CAAC;IACnB,CAAC;IACH,sBAAC;AAAD,CAAC,AA5BD,CAAqC,WAAW,GA4B/C"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/dropdown-field-parser.js b/src/app/shared/form/builder/parsers/dropdown-field-parser.js deleted file mode 100644 index 4656b8dd58..0000000000 --- a/src/app/shared/form/builder/parsers/dropdown-field-parser.js +++ /dev/null @@ -1,36 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { DynamicScrollableDropdownModel } from '../ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.model'; -import { isNotEmpty } from '../../../empty.util'; -var DropdownFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(DropdownFieldParser, _super); - function DropdownFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - DropdownFieldParser.prototype.modelFactory = function (fieldValue, label) { - var dropdownModelConfig = this.initModel(null, label); - var layout; - if (isNotEmpty(this.configData.selectableMetadata[0].authority)) { - this.setAuthorityOptions(dropdownModelConfig, this.parserOptions.authorityUuid); - if (isNotEmpty(fieldValue)) { - dropdownModelConfig.value = fieldValue; - } - layout = { - element: { - control: 'col' - }, - grid: { - host: 'col' - } - }; - var dropdownModel = new DynamicScrollableDropdownModel(dropdownModelConfig, layout); - return dropdownModel; - } - else { - throw Error("Authority name is not available. Please checks form configuration file."); - } - }; - return DropdownFieldParser; -}(FieldParser)); -export { DropdownFieldParser }; -//# sourceMappingURL=dropdown-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/dropdown-field-parser.js.map b/src/app/shared/form/builder/parsers/dropdown-field-parser.js.map deleted file mode 100644 index d10061ed10..0000000000 --- a/src/app/shared/form/builder/parsers/dropdown-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dropdown-field-parser.js","sourceRoot":"","sources":["dropdown-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EACL,8BAA8B,EAE/B,MAAM,oFAAoF,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD;IAAyC,+CAAW;IAApD;;IAyBA,CAAC;IAvBQ,0CAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAM,mBAAmB,GAAyC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9F,IAAI,MAAgC,CAAC;QAErC,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;YAC/D,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YAChF,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;gBAC1B,mBAAmB,CAAC,KAAK,GAAG,UAAU,CAAC;aACxC;YACD,MAAM,GAAG;gBACP,OAAO,EAAE;oBACP,OAAO,EAAE,KAAK;iBACf;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,KAAK;iBACZ;aACF,CAAC;YACF,IAAM,aAAa,GAAG,IAAI,8BAA8B,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;YACtF,OAAO,aAAa,CAAC;SACtB;aAAM;YACL,MAAO,KAAK,CAAC,yEAAyE,CAAC,CAAC;SACzF;IACH,CAAC;IACH,0BAAC;AAAD,CAAC,AAzBD,CAAyC,WAAW,GAyBnD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/field-parser.js b/src/app/shared/form/builder/parsers/field-parser.js deleted file mode 100644 index 45547f8f0d..0000000000 --- a/src/app/shared/form/builder/parsers/field-parser.js +++ /dev/null @@ -1,276 +0,0 @@ -import { hasValue, isNotEmpty, isNotNull, isNotUndefined } from '../../../empty.util'; -import { uniqueId } from 'lodash'; -import { FormFieldMetadataValueObject } from '../models/form-field-metadata-value.model'; -import { DynamicRowArrayModel } from '../ds-dynamic-form-ui/models/ds-dynamic-row-array-model'; -import { setLayout } from './parser.utils'; -import { AuthorityOptions } from '../../../../core/integration/models/authority-options.model'; -var FieldParser = /** @class */ (function () { - function FieldParser(configData, initFormValues, parserOptions) { - this.configData = configData; - this.initFormValues = initFormValues; - this.parserOptions = parserOptions; - } - FieldParser.prototype.parse = function () { - var _this = this; - if (((this.getInitValueCount() > 1 && !this.configData.repeatable) || (this.configData.repeatable)) - && (this.configData.input.type !== 'list') - && (this.configData.input.type !== 'tag') - && (this.configData.input.type !== 'group')) { - var arrayCounter_1 = 0; - var fieldArrayCounter_1 = 0; - var config = { - id: uniqueId() + '_array', - label: this.configData.label, - initialCount: this.getInitArrayIndex(), - notRepeatable: !this.configData.repeatable, - groupFactory: function () { - var model; - if ((arrayCounter_1 === 0)) { - model = _this.modelFactory(); - arrayCounter_1++; - } - else { - var fieldArrayOfValueLenght = _this.getInitValueCount(arrayCounter_1 - 1); - var fieldValue = null; - if (fieldArrayOfValueLenght > 0) { - fieldValue = _this.getInitFieldValue(arrayCounter_1 - 1, fieldArrayCounter_1++); - if (fieldArrayCounter_1 === fieldArrayOfValueLenght) { - fieldArrayCounter_1 = 0; - arrayCounter_1++; - } - } - model = _this.modelFactory(fieldValue, false); - } - setLayout(model, 'element', 'host', 'col'); - if (model.hasLanguages) { - setLayout(model, 'grid', 'control', 'col'); - } - return [model]; - } - }; - var layout = { - grid: { - group: 'form-row' - } - }; - return new DynamicRowArrayModel(config, layout); - } - else { - var model = this.modelFactory(this.getInitFieldValue()); - if (model.hasLanguages) { - setLayout(model, 'grid', 'control', 'col'); - } - return model; - } - }; - FieldParser.prototype.getInitValueCount = function (index, fieldId) { - var _this = this; - if (index === void 0) { index = 0; } - var fieldIds = fieldId || this.getAllFieldIds(); - if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length === 1 && this.initFormValues.hasOwnProperty(fieldIds[0])) { - return this.initFormValues[fieldIds[0]].length; - } - else if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length > 1) { - var values_1 = []; - fieldIds.forEach(function (id) { - if (_this.initFormValues.hasOwnProperty(id)) { - values_1.push(_this.initFormValues[id].length); - } - }); - return values_1[index]; - } - else { - return 0; - } - }; - FieldParser.prototype.getInitGroupValues = function () { - var fieldIds = this.getAllFieldIds(); - if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length === 1 && this.initFormValues.hasOwnProperty(fieldIds[0])) { - return this.initFormValues[fieldIds[0]]; - } - }; - FieldParser.prototype.getInitFieldValues = function (fieldId) { - if (isNotEmpty(this.initFormValues) && isNotNull(fieldId) && this.initFormValues.hasOwnProperty(fieldId)) { - return this.initFormValues[fieldId]; - } - }; - FieldParser.prototype.getInitFieldValue = function (outerIndex, innerIndex, fieldId) { - var _this = this; - if (outerIndex === void 0) { outerIndex = 0; } - if (innerIndex === void 0) { innerIndex = 0; } - var fieldIds = fieldId || this.getAllFieldIds(); - if (isNotEmpty(this.initFormValues) - && isNotNull(fieldIds) - && fieldIds.length === 1 - && this.initFormValues.hasOwnProperty(fieldIds[outerIndex]) - && this.initFormValues[fieldIds[outerIndex]].length > innerIndex) { - return this.initFormValues[fieldIds[outerIndex]][innerIndex]; - } - else if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length > 1) { - var values_2 = []; - fieldIds.forEach(function (id) { - if (_this.initFormValues.hasOwnProperty(id)) { - var valueObj = Object.assign(new FormFieldMetadataValueObject(), _this.initFormValues[id][innerIndex]); - valueObj.metadata = id; - // valueObj.value = this.initFormValues[id][innerIndex]; - values_2.push(valueObj); - } - }); - return values_2[outerIndex]; - } - else { - return null; - } - }; - FieldParser.prototype.getInitArrayIndex = function () { - var _this = this; - var fieldIds = this.getAllFieldIds(); - if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length === 1 && this.initFormValues.hasOwnProperty(fieldIds)) { - return this.initFormValues[fieldIds].length; - } - else if (isNotEmpty(this.initFormValues) && isNotNull(fieldIds) && fieldIds.length > 1) { - var counter_1 = 0; - fieldIds.forEach(function (id) { - if (_this.initFormValues.hasOwnProperty(id)) { - counter_1 = counter_1 + _this.initFormValues[id].length; - } - }); - return (counter_1 === 0) ? 1 : counter_1; - } - else { - return 1; - } - }; - FieldParser.prototype.getFieldId = function () { - var ids = this.getAllFieldIds(); - return isNotNull(ids) ? ids[0] : null; - }; - FieldParser.prototype.getAllFieldIds = function () { - if (Array.isArray(this.configData.selectableMetadata)) { - if (this.configData.selectableMetadata.length === 1) { - return [this.configData.selectableMetadata[0].metadata]; - } - else { - var ids_1 = []; - this.configData.selectableMetadata.forEach(function (entry) { return ids_1.push(entry.metadata); }); - return ids_1; - } - } - else { - return null; - } - }; - FieldParser.prototype.initModel = function (id, label, labelEmpty, setErrors) { - if (label === void 0) { label = true; } - if (labelEmpty === void 0) { labelEmpty = false; } - if (setErrors === void 0) { setErrors = true; } - var controlModel = Object.create(null); - // Sets input ID - this.fieldId = id ? id : this.getFieldId(); - // Sets input name (with the original field's id value) - controlModel.name = this.fieldId; - // input ID doesn't allow dots, so replace them - controlModel.id = (this.fieldId).replace(/\./g, '_'); - // Set read only option - controlModel.readOnly = this.parserOptions.readOnly; - controlModel.disabled = this.parserOptions.readOnly; - // Set label - this.setLabel(controlModel, label, labelEmpty); - controlModel.placeholder = this.configData.label; - if (this.configData.mandatory && setErrors) { - this.markAsRequired(controlModel); - } - if (this.hasRegex()) { - this.addPatternValidator(controlModel); - } - // Available Languages - if (this.configData.languageCodes && this.configData.languageCodes.length > 0) { - controlModel.languageCodes = this.configData.languageCodes; - } - /* (controlModel as DsDynamicInputModel).languageCodes = [{ - display: 'English', - code: 'en_US' - }, - { - display: 'Italian', - code: 'it_IT' - }];*/ - return controlModel; - }; - FieldParser.prototype.hasRegex = function () { - return hasValue(this.configData.input.regex); - }; - FieldParser.prototype.addPatternValidator = function (controlModel) { - var regex = new RegExp(this.configData.input.regex); - controlModel.validators = Object.assign({}, controlModel.validators, { pattern: regex }); - controlModel.errorMessages = Object.assign({}, controlModel.errorMessages, { pattern: 'error.validation.pattern' }); - }; - FieldParser.prototype.markAsRequired = function (controlModel) { - controlModel.required = true; - controlModel.validators = Object.assign({}, controlModel.validators, { required: null }); - controlModel.errorMessages = Object.assign({}, controlModel.errorMessages, { required: this.configData.mandatoryMessage }); - }; - FieldParser.prototype.setLabel = function (controlModel, label, labelEmpty) { - if (label === void 0) { label = true; } - if (labelEmpty === void 0) { labelEmpty = false; } - if (label) { - controlModel.label = (labelEmpty) ? ' ' : this.configData.label; - } - }; - FieldParser.prototype.setOptions = function (controlModel) { - // Checks if field has multiple values and sets options available - if (isNotUndefined(this.configData.selectableMetadata) && this.configData.selectableMetadata.length > 1) { - controlModel.options = []; - this.configData.selectableMetadata.forEach(function (option, key) { - if (key === 0) { - controlModel.value = option.metadata; - } - controlModel.options.push({ label: option.label, value: option.metadata }); - }); - } - }; - FieldParser.prototype.setAuthorityOptions = function (controlModel, authorityUuid) { - if (isNotEmpty(this.configData.selectableMetadata[0].authority)) { - controlModel.authorityOptions = new AuthorityOptions(this.configData.selectableMetadata[0].authority, this.configData.selectableMetadata[0].metadata, authorityUuid, this.configData.selectableMetadata[0].closed); - } - }; - FieldParser.prototype.setValues = function (modelConfig, fieldValue, forceValueAsObj, groupModel) { - if (forceValueAsObj === void 0) { forceValueAsObj = false; } - if (isNotEmpty(fieldValue)) { - if (groupModel) { - // Array, values is an array - modelConfig.value = this.getInitGroupValues(); - if (Array.isArray(modelConfig.value) && modelConfig.value.length > 0 && modelConfig.value[0].language) { - // Array Item has language, ex. AuthorityModel - modelConfig.language = modelConfig.value[0].language; - } - return; - } - if (typeof fieldValue === 'object') { - modelConfig.language = fieldValue.language; - if (forceValueAsObj) { - modelConfig.value = fieldValue; - } - else { - modelConfig.value = fieldValue.value; - } - } - else { - if (forceValueAsObj) { - // If value isn't an instance of FormFieldMetadataValueObject instantiate it - modelConfig.value = new FormFieldMetadataValueObject(fieldValue); - } - else { - if (typeof fieldValue === 'string') { - // Case only string - modelConfig.value = fieldValue; - } - } - } - } - return modelConfig; - }; - return FieldParser; -}()); -export { FieldParser }; -//# sourceMappingURL=field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/field-parser.js.map b/src/app/shared/form/builder/parsers/field-parser.js.map deleted file mode 100644 index d0f0f51727..0000000000 --- a/src/app/shared/form/builder/parsers/field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"field-parser.js","sourceRoot":"","sources":["field-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGtF,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EACL,oBAAoB,EAErB,MAAM,yDAAyD,CAAC;AAGjE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,6DAA6D,CAAC;AAG/F;IAIE,qBAAsB,UAA0B,EAAY,cAAc,EAAY,aAA4B;QAA5F,eAAU,GAAV,UAAU,CAAgB;QAAY,mBAAc,GAAd,cAAc,CAAA;QAAY,kBAAa,GAAb,aAAa,CAAe;IAClH,CAAC;IAIM,2BAAK,GAAZ;QAAA,iBAsDC;QArDC,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;eAC9F,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;eACvC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;eACtC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,EAC3C;YACA,IAAI,cAAY,GAAG,CAAC,CAAC;YACrB,IAAI,mBAAiB,GAAG,CAAC,CAAC;YAE1B,IAAM,MAAM,GAAG;gBACb,EAAE,EAAE,QAAQ,EAAE,GAAG,QAAQ;gBACzB,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK;gBAC5B,YAAY,EAAE,IAAI,CAAC,iBAAiB,EAAE;gBACtC,aAAa,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU;gBAC1C,YAAY,EAAE;oBACZ,IAAI,KAAK,CAAC;oBACV,IAAI,CAAC,cAAY,KAAK,CAAC,CAAC,EAAE;wBACxB,KAAK,GAAG,KAAI,CAAC,YAAY,EAAE,CAAC;wBAC5B,cAAY,EAAE,CAAC;qBAChB;yBAAM;wBACL,IAAM,uBAAuB,GAAG,KAAI,CAAC,iBAAiB,CAAC,cAAY,GAAG,CAAC,CAAC,CAAC;wBACzE,IAAI,UAAU,GAAG,IAAI,CAAC;wBACtB,IAAI,uBAAuB,GAAG,CAAC,EAAE;4BAC/B,UAAU,GAAG,KAAI,CAAC,iBAAiB,CAAC,cAAY,GAAG,CAAC,EAAE,mBAAiB,EAAE,CAAC,CAAC;4BAC3E,IAAI,mBAAiB,KAAK,uBAAuB,EAAE;gCACjD,mBAAiB,GAAG,CAAC,CAAC;gCACtB,cAAY,EAAE,CAAC;6BAChB;yBACF;wBACD,KAAK,GAAG,KAAI,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;qBAC9C;oBACD,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;oBAC3C,IAAI,KAAK,CAAC,YAAY,EAAE;wBACtB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;qBAC5C;oBACD,OAAO,CAAC,KAAK,CAAC,CAAC;gBACjB,CAAC;aAC4B,CAAC;YAEhC,IAAM,MAAM,GAA6B;gBACvC,IAAI,EAAE;oBACJ,KAAK,EAAE,UAAU;iBAClB;aACF,CAAC;YAEF,OAAO,IAAI,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SAEjD;aAAM;YACL,IAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAC1D,IAAI,KAAK,CAAC,YAAY,EAAE;gBACtB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;aAC5C;YACD,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAES,uCAAiB,GAA3B,UAA4B,KAAS,EAAE,OAAQ;QAA/C,iBAeC;QAf2B,sBAAA,EAAA,SAAS;QACnC,IAAM,QAAQ,GAAG,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QAClD,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YACtI,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;SAChD;aAAM,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACxF,IAAM,QAAM,GAAG,EAAE,CAAC;YAClB,QAAQ,CAAC,OAAO,CAAC,UAAC,EAAE;gBAClB,IAAI,KAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE;oBAC1C,QAAM,CAAC,IAAI,CAAC,KAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;iBAC7C;YACH,CAAC,CAAC,CAAC;YACH,OAAO,QAAM,CAAC,KAAK,CAAC,CAAC;SACtB;aAAM;YACL,OAAO,CAAC,CAAC;SACV;IACH,CAAC;IAES,wCAAkB,GAA5B;QACE,IAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACvC,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;YACtI,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;SACzC;IACH,CAAC;IAES,wCAAkB,GAA5B,UAA6B,OAAO;QAClC,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;YACxG,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC;IAES,uCAAiB,GAA3B,UAA4B,UAAc,EAAE,UAAc,EAAE,OAAQ;QAApE,iBAsBC;QAtB2B,2BAAA,EAAA,cAAc;QAAE,2BAAA,EAAA,cAAc;QACxD,IAAM,QAAQ,GAAG,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QAClD,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC;eAC9B,SAAS,CAAC,QAAQ,CAAC;eACnB,QAAQ,CAAC,MAAM,KAAK,CAAC;eACrB,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;eACxD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,GAAG,UAAU,EAAE;YAClE,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;SAC9D;aAAM,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACxF,IAAM,QAAM,GAAmC,EAAE,CAAC;YAClD,QAAQ,CAAC,OAAO,CAAC,UAAC,EAAE;gBAClB,IAAI,KAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE;oBAC1C,IAAM,QAAQ,GAAiC,MAAM,CAAC,MAAM,CAAC,IAAI,4BAA4B,EAAE,EAAE,KAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;oBACtI,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC;oBACvB,wDAAwD;oBACxD,QAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACvB;YACH,CAAC,CAAC,CAAC;YACH,OAAO,QAAM,CAAC,UAAU,CAAC,CAAC;SAC3B;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAES,uCAAiB,GAA3B;QAAA,iBAeC;QAdC,IAAM,QAAQ,GAAQ,IAAI,CAAC,cAAc,EAAE,CAAC;QAC5C,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;YACnI,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;SAC7C;aAAM,IAAI,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACxF,IAAI,SAAO,GAAG,CAAC,CAAC;YAChB,QAAQ,CAAC,OAAO,CAAC,UAAC,EAAE;gBAClB,IAAI,KAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE;oBAC1C,SAAO,GAAG,SAAO,GAAG,KAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;iBACpD;YACH,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,SAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAO,CAAC;SACtC;aAAM;YACL,OAAO,CAAC,CAAC;SACV;IACH,CAAC;IAES,gCAAU,GAApB;QACE,IAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAES,oCAAc,GAAxB;QACE,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE;YACrD,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;aACzD;iBAAM;gBACL,IAAM,KAAG,GAAG,EAAE,CAAC;gBACf,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAC,KAAK,IAAK,OAAA,KAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAxB,CAAwB,CAAC,CAAC;gBAChF,OAAO,KAAG,CAAC;aACZ;SACF;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAES,+BAAS,GAAnB,UAAoB,EAAW,EAAE,KAAY,EAAE,UAAkB,EAAE,SAAgB;QAAlD,sBAAA,EAAA,YAAY;QAAE,2BAAA,EAAA,kBAAkB;QAAE,0BAAA,EAAA,gBAAgB;QAEjF,IAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEzC,gBAAgB;QAChB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAE3C,uDAAuD;QACvD,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;QAEjC,+CAA+C;QAC/C,YAAY,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAErD,uBAAuB;QACvB,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;QACpD,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;QAEpD,YAAY;QACZ,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QAE/C,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAEjD,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,IAAI,SAAS,EAAE;YAC1C,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;SACnC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;YACnB,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;SACxC;QAED,sBAAsB;QACtB,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5E,YAAoC,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;SACrF;QACL;;;;;;;mBAOW;QAEP,OAAO,YAAY,CAAC;IACtB,CAAC;IAES,8BAAQ,GAAlB;QACE,OAAO,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAES,yCAAmB,GAA7B,UAA8B,YAAY;QACxC,IAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtD,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,UAAU,EAAE,EAAC,OAAO,EAAE,KAAK,EAAC,CAAC,CAAC;QACvF,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CACxC,EAAE,EACF,YAAY,CAAC,aAAa,EAC1B,EAAC,OAAO,EAAE,0BAA0B,EAAC,CAAC,CAAC;IAE3C,CAAC;IAES,oCAAc,GAAxB,UAAyB,YAAY;QACnC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC7B,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,UAAU,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QACvF,YAAY,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CACxC,EAAE,EACF,YAAY,CAAC,aAAa,EAC1B,EAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAC,CAAC,CAAC;IAClD,CAAC;IAES,8BAAQ,GAAlB,UAAmB,YAAY,EAAE,KAAY,EAAE,UAAkB;QAAhC,sBAAA,EAAA,YAAY;QAAE,2BAAA,EAAA,kBAAkB;QAC/D,IAAI,KAAK,EAAE;YACT,YAAY,CAAC,KAAK,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;SACtE;IACH,CAAC;IAES,gCAAU,GAApB,UAAqB,YAAY;QAC/B,iEAAiE;QACjE,IAAI,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YACvG,YAAY,CAAC,OAAO,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAC,MAAM,EAAE,GAAG;gBACrD,IAAI,GAAG,KAAK,CAAC,EAAE;oBACb,YAAY,CAAC,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC;iBACtC;gBACD,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAC,CAAC,CAAC;YAC3E,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAEM,yCAAmB,GAA1B,UAA2B,YAAY,EAAE,aAAa;QACpD,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;YAC/D,YAAY,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAClD,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,EAC/C,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAC9C,aAAa,EACb,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,MAAM,CAC7C,CAAA;SACF;IACH,CAAC;IAEM,+BAAS,GAAhB,UAAiB,WAAsC,EAAE,UAAe,EAAE,eAAgC,EAAE,UAAoB;QAAtD,gCAAA,EAAA,uBAAgC;QACxG,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;YAC1B,IAAI,UAAU,EAAE;gBACd,4BAA4B;gBAC5B,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;oBACrG,8CAA8C;oBAC9C,WAAW,CAAC,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;iBACtD;gBACD,OAAO;aACR;YAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;gBAClC,WAAW,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;gBAC3C,IAAI,eAAe,EAAE;oBACnB,WAAW,CAAC,KAAK,GAAG,UAAU,CAAC;iBAChC;qBAAM;oBACL,WAAW,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;iBACtC;aACF;iBAAM;gBACL,IAAI,eAAe,EAAE;oBACnB,4EAA4E;oBAC5E,WAAW,CAAC,KAAK,GAAG,IAAI,4BAA4B,CAAC,UAAU,CAAC,CAAC;iBAClE;qBAAM;oBACL,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;wBAClC,mBAAmB;wBACnB,WAAW,CAAC,KAAK,GAAG,UAAU,CAAC;qBAChC;iBACF;aACF;SACF;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEH,kBAAC;AAAD,CAAC,AAjSD,IAiSC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/list-field-parser.js b/src/app/shared/form/builder/parsers/list-field-parser.js deleted file mode 100644 index 7a37316ad5..0000000000 --- a/src/app/shared/form/builder/parsers/list-field-parser.js +++ /dev/null @@ -1,45 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { isNotEmpty } from '../../../empty.util'; -import { FormFieldMetadataValueObject } from '../models/form-field-metadata-value.model'; -import { DynamicListCheckboxGroupModel } from '../ds-dynamic-form-ui/models/list/dynamic-list-checkbox-group.model'; -import { DynamicListRadioGroupModel } from '../ds-dynamic-form-ui/models/list/dynamic-list-radio-group.model'; -var ListFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(ListFieldParser, _super); - function ListFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - ListFieldParser.prototype.modelFactory = function (fieldValue, label) { - var listModelConfig = this.initModel(null, label); - listModelConfig.repeatable = this.configData.repeatable; - if (this.configData.selectableMetadata[0].authority - && this.configData.selectableMetadata[0].authority.length > 0) { - if (isNotEmpty(this.getInitGroupValues())) { - listModelConfig.value = []; - this.getInitGroupValues().forEach(function (value) { - if (value instanceof FormFieldMetadataValueObject) { - listModelConfig.value.push(value); - } - else { - var valueObj = new FormFieldMetadataValueObject(value); - listModelConfig.value.push(valueObj); - } - }); - } - this.setAuthorityOptions(listModelConfig, this.parserOptions.authorityUuid); - } - var listModel; - if (listModelConfig.repeatable) { - listModelConfig.group = []; - listModel = new DynamicListCheckboxGroupModel(listModelConfig); - } - else { - listModelConfig.options = []; - listModel = new DynamicListRadioGroupModel(listModelConfig); - } - return listModel; - }; - return ListFieldParser; -}(FieldParser)); -export { ListFieldParser }; -//# sourceMappingURL=list-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/list-field-parser.js.map b/src/app/shared/form/builder/parsers/list-field-parser.js.map deleted file mode 100644 index 429e04c9f3..0000000000 --- a/src/app/shared/form/builder/parsers/list-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"list-field-parser.js","sourceRoot":"","sources":["list-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,6BAA6B,EAAE,MAAM,qEAAqE,CAAC;AACpH,OAAO,EAAE,0BAA0B,EAAE,MAAM,kEAAkE,CAAC;AAE9G;IAAqC,2CAAW;IAAhD;;IAoCA,CAAC;IAjCQ,sCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpD,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAExD,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS;eAC9C,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAE/D,IAAI,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE;gBACzC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,UAAC,KAAU;oBAC3C,IAAI,KAAK,YAAY,4BAA4B,EAAE;wBACjD,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;qBACnC;yBAAM;wBACL,IAAM,QAAQ,GAAG,IAAI,4BAA4B,CAAC,KAAK,CAAC,CAAC;wBACzD,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBACtC;gBACH,CAAC,CAAC,CAAC;aACJ;YACD,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;SAC7E;QAED,IAAI,SAAS,CAAC;QACd,IAAI,eAAe,CAAC,UAAU,EAAE;YAC9B,eAAe,CAAC,KAAK,GAAG,EAAE,CAAC;YAC3B,SAAS,GAAG,IAAI,6BAA6B,CAAC,eAAe,CAAC,CAAC;SAChE;aAAM;YACL,eAAe,CAAC,OAAO,GAAG,EAAE,CAAC;YAC7B,SAAS,GAAG,IAAI,0BAA0B,CAAC,eAAe,CAAC,CAAC;SAC7D;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEH,sBAAC;AAAD,CAAC,AApCD,CAAqC,WAAW,GAoC/C"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/lookup-field-parser.js b/src/app/shared/form/builder/parsers/lookup-field-parser.js deleted file mode 100644 index 6bb2c29779..0000000000 --- a/src/app/shared/form/builder/parsers/lookup-field-parser.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { DynamicLookupModel } from '../ds-dynamic-form-ui/models/lookup/dynamic-lookup.model'; -var LookupFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(LookupFieldParser, _super); - function LookupFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - LookupFieldParser.prototype.modelFactory = function (fieldValue, label) { - if (this.configData.selectableMetadata[0].authority) { - var lookupModelConfig = this.initModel(null, label); - this.setAuthorityOptions(lookupModelConfig, this.parserOptions.authorityUuid); - this.setValues(lookupModelConfig, fieldValue, true); - return new DynamicLookupModel(lookupModelConfig); - } - }; - return LookupFieldParser; -}(FieldParser)); -export { LookupFieldParser }; -//# sourceMappingURL=lookup-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/lookup-field-parser.js.map b/src/app/shared/form/builder/parsers/lookup-field-parser.js.map deleted file mode 100644 index 75ac9c0c66..0000000000 --- a/src/app/shared/form/builder/parsers/lookup-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"lookup-field-parser.js","sourceRoot":"","sources":["lookup-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAA4B,MAAM,0DAA0D,CAAC;AAGxH;IAAuC,6CAAW;IAAlD;;IAcA,CAAC;IAZQ,wCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;YACnD,IAAM,iBAAiB,GAA6B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEhF,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YAE9E,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YAEpD,OAAO,IAAI,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;SAElD;IACH,CAAC;IACH,wBAAC;AAAD,CAAC,AAdD,CAAuC,WAAW,GAcjD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/lookup-name-field-parser.js b/src/app/shared/form/builder/parsers/lookup-name-field-parser.js deleted file mode 100644 index 4006f73cc7..0000000000 --- a/src/app/shared/form/builder/parsers/lookup-name-field-parser.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { DynamicLookupNameModel } from '../ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model'; -var LookupNameFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(LookupNameFieldParser, _super); - function LookupNameFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - LookupNameFieldParser.prototype.modelFactory = function (fieldValue, label) { - if (this.configData.selectableMetadata[0].authority) { - var lookupModelConfig = this.initModel(null, label); - this.setAuthorityOptions(lookupModelConfig, this.parserOptions.authorityUuid); - this.setValues(lookupModelConfig, fieldValue, true); - return new DynamicLookupNameModel(lookupModelConfig); - } - }; - return LookupNameFieldParser; -}(FieldParser)); -export { LookupNameFieldParser }; -//# sourceMappingURL=lookup-name-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/lookup-name-field-parser.js.map b/src/app/shared/form/builder/parsers/lookup-name-field-parser.js.map deleted file mode 100644 index 9b353db1c7..0000000000 --- a/src/app/shared/form/builder/parsers/lookup-name-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"lookup-name-field-parser.js","sourceRoot":"","sources":["lookup-name-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,sBAAsB,EAEvB,MAAM,+DAA+D,CAAC;AAGvE;IAA2C,iDAAW;IAAtD;;IAcA,CAAC;IAZQ,4CAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;YACnD,IAAM,iBAAiB,GAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEpF,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YAE9E,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YAEpD,OAAO,IAAI,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;SACtD;IACH,CAAC;IAEH,4BAAC;AAAD,CAAC,AAdD,CAA2C,WAAW,GAcrD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/name-field-parser.js b/src/app/shared/form/builder/parsers/name-field-parser.js deleted file mode 100644 index c0939765cc..0000000000 --- a/src/app/shared/form/builder/parsers/name-field-parser.js +++ /dev/null @@ -1,15 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ConcatFieldParser } from './concat-field-parser'; -var NameFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(NameFieldParser, _super); - function NameFieldParser(configData, initFormValues, parserOptions) { - var _this = _super.call(this, configData, initFormValues, parserOptions, ',', 'form.last-name', 'form.first-name') || this; - _this.configData = configData; - _this.initFormValues = initFormValues; - _this.parserOptions = parserOptions; - return _this; - } - return NameFieldParser; -}(ConcatFieldParser)); -export { NameFieldParser }; -//# sourceMappingURL=name-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/name-field-parser.js.map b/src/app/shared/form/builder/parsers/name-field-parser.js.map deleted file mode 100644 index 29d7e602fc..0000000000 --- a/src/app/shared/form/builder/parsers/name-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"name-field-parser.js","sourceRoot":"","sources":["name-field-parser.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D;IAAqC,2CAAiB;IAEpD,yBAAsB,UAA0B,EAAY,cAAc,EAAY,aAA4B;QAAlH,YACE,kBAAM,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,SAC3F;QAFqB,gBAAU,GAAV,UAAU,CAAgB;QAAY,oBAAc,GAAd,cAAc,CAAA;QAAY,mBAAa,GAAb,aAAa,CAAe;;IAElH,CAAC;IACH,sBAAC;AAAD,CAAC,AALD,CAAqC,iBAAiB,GAKrD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/onebox-field-parser.js b/src/app/shared/form/builder/parsers/onebox-field-parser.js deleted file mode 100644 index 07a6fefb00..0000000000 --- a/src/app/shared/form/builder/parsers/onebox-field-parser.js +++ /dev/null @@ -1,72 +0,0 @@ -import * as tslib_1 from "tslib"; -import { DynamicSelectModel } from '@ng-dynamic-forms/core'; -import { FieldParser } from './field-parser'; -import { DynamicQualdropModel, QUALDROP_GROUP_SUFFIX, QUALDROP_METADATA_SUFFIX, QUALDROP_VALUE_SUFFIX } from '../ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model'; -import { isNotEmpty } from '../../../empty.util'; -import { DsDynamicInputModel } from '../ds-dynamic-form-ui/models/ds-dynamic-input.model'; -import { DynamicTypeaheadModel } from '../ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.model'; -var OneboxFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(OneboxFieldParser, _super); - function OneboxFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - OneboxFieldParser.prototype.modelFactory = function (fieldValue, label) { - if (this.configData.selectableMetadata.length > 1) { - // Case Qualdrop Model - var clsGroup = { - element: { - control: 'form-row', - } - }; - var clsSelect = { - element: { - control: 'ds-form-input-addon custom-select', - }, - grid: { - host: 'col-sm-4 pr-0' - } - }; - var clsInput = { - element: { - control: 'ds-form-input-value', - }, - grid: { - host: 'col-sm-8 pl-0' - } - }; - var newId = this.configData.selectableMetadata[0].metadata - .split('.') - .slice(0, this.configData.selectableMetadata[0].metadata.split('.').length - 1) - .join('.'); - var inputSelectGroup = Object.create(null); - inputSelectGroup.id = newId.replace(/\./g, '_') + QUALDROP_GROUP_SUFFIX; - inputSelectGroup.group = []; - inputSelectGroup.legend = this.configData.label; - var selectModelConfig = this.initModel(newId + QUALDROP_METADATA_SUFFIX, label); - this.setOptions(selectModelConfig); - if (isNotEmpty(fieldValue)) { - selectModelConfig.value = fieldValue.metadata; - } - inputSelectGroup.group.push(new DynamicSelectModel(selectModelConfig, clsSelect)); - var inputModelConfig = this.initModel(newId + QUALDROP_VALUE_SUFFIX, label, true); - this.setValues(inputModelConfig, fieldValue); - inputSelectGroup.readOnly = selectModelConfig.disabled && inputModelConfig.readOnly; - inputSelectGroup.group.push(new DsDynamicInputModel(inputModelConfig, clsInput)); - return new DynamicQualdropModel(inputSelectGroup, clsGroup); - } - else if (this.configData.selectableMetadata[0].authority) { - var typeaheadModelConfig = this.initModel(null, label); - this.setAuthorityOptions(typeaheadModelConfig, this.parserOptions.authorityUuid); - this.setValues(typeaheadModelConfig, fieldValue, true); - return new DynamicTypeaheadModel(typeaheadModelConfig); - } - else { - var inputModelConfig = this.initModel(null, label); - this.setValues(inputModelConfig, fieldValue); - return new DsDynamicInputModel(inputModelConfig); - } - }; - return OneboxFieldParser; -}(FieldParser)); -export { OneboxFieldParser }; -//# sourceMappingURL=onebox-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/onebox-field-parser.js.map b/src/app/shared/form/builder/parsers/onebox-field-parser.js.map deleted file mode 100644 index a80a68ebff..0000000000 --- a/src/app/shared/form/builder/parsers/onebox-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"onebox-field-parser.js","sourceRoot":"","sources":["onebox-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAA4B,MAAM,wBAAwB,CAAC;AAEtF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAEL,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,wDAAwD,CAAC;AAEhE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAA6B,MAAM,qDAAqD,CAAC;AACrH,OAAO,EAEL,qBAAqB,EACtB,MAAM,gEAAgE,CAAC;AAExE;IAAuC,6CAAW;IAAlD;;IAkEA,CAAC;IAhEQ,wCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YACjD,sBAAsB;YACtB,IAAM,QAAQ,GAAG;gBACf,OAAO,EAAE;oBACP,OAAO,EAAE,UAAU;iBACpB;aACF,CAAC;YAEF,IAAM,SAAS,GAAG;gBAChB,OAAO,EAAE;oBACP,OAAO,EAAE,mCAAmC;iBAC7C;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,eAAe;iBACtB;aACF,CAAC;YAEF,IAAM,QAAQ,GAAG;gBACf,OAAO,EAAE;oBACP,OAAO,EAAE,qBAAqB;iBAC/B;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,eAAe;iBACtB;aACF,CAAC;YAEF,IAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ;iBACzD,KAAK,CAAC,GAAG,CAAC;iBACV,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;iBAC9E,IAAI,CAAC,GAAG,CAAC,CAAC;YAEb,IAAM,gBAAgB,GAAiC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3E,gBAAgB,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,qBAAqB,CAAC;YACxE,gBAAgB,CAAC,KAAK,GAAG,EAAE,CAAC;YAC5B,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAEhD,IAAM,iBAAiB,GAAkC,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,wBAAwB,EAAE,KAAK,CAAC,CAAC;YACjH,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;YACnC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;gBAC1B,iBAAiB,CAAC,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC;aAC/C;YACD,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC;YAElF,IAAM,gBAAgB,GAA8B,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,qBAAqB,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAC/G,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAE7C,gBAAgB,CAAC,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,IAAI,gBAAgB,CAAC,QAAQ,CAAC;YACpF,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC;YAEjF,OAAO,IAAI,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;SAC7D;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;YAC1D,IAAM,oBAAoB,GAAkC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACxF,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;YACjF,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YAEvD,OAAO,IAAI,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;SACxD;aAAM;YACL,IAAM,gBAAgB,GAA8B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAChF,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAE7C,OAAO,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;SAClD;IACH,CAAC;IACH,wBAAC;AAAD,CAAC,AAlED,CAAuC,WAAW,GAkEjD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-factory.js b/src/app/shared/form/builder/parsers/parser-factory.js deleted file mode 100644 index 8a243b8d80..0000000000 --- a/src/app/shared/form/builder/parsers/parser-factory.js +++ /dev/null @@ -1,59 +0,0 @@ -import { ParserType } from './parser-type'; -import { DateFieldParser } from './date-field-parser'; -import { DropdownFieldParser } from './dropdown-field-parser'; -import { RelationGroupFieldParser } from './relation-group-field-parser'; -import { ListFieldParser } from './list-field-parser'; -import { LookupFieldParser } from './lookup-field-parser'; -import { LookupNameFieldParser } from './lookup-name-field-parser'; -import { OneboxFieldParser } from './onebox-field-parser'; -import { NameFieldParser } from './name-field-parser'; -import { SeriesFieldParser } from './series-field-parser'; -import { TagFieldParser } from './tag-field-parser'; -import { TextareaFieldParser } from './textarea-field-parser'; -var ParserFactory = /** @class */ (function () { - function ParserFactory() { - } - ParserFactory.getConstructor = function (type) { - switch (type) { - case ParserType.Date: { - return DateFieldParser; - } - case ParserType.Dropdown: { - return DropdownFieldParser; - } - case ParserType.RelationGroup: { - return RelationGroupFieldParser; - } - case ParserType.List: { - return ListFieldParser; - } - case ParserType.Lookup: { - return LookupFieldParser; - } - case ParserType.LookupName: { - return LookupNameFieldParser; - } - case ParserType.Onebox: { - return OneboxFieldParser; - } - case ParserType.Name: { - return NameFieldParser; - } - case ParserType.Series: { - return SeriesFieldParser; - } - case ParserType.Tag: { - return TagFieldParser; - } - case ParserType.Textarea: { - return TextareaFieldParser; - } - default: { - return undefined; - } - } - }; - return ParserFactory; -}()); -export { ParserFactory }; -//# sourceMappingURL=parser-factory.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-factory.js.map b/src/app/shared/form/builder/parsers/parser-factory.js.map deleted file mode 100644 index 74652805ac..0000000000 --- a/src/app/shared/form/builder/parsers/parser-factory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parser-factory.js","sourceRoot":"","sources":["parser-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D;IAAA;IA0CA,CAAC;IAzCe,4BAAc,GAA5B,UAA6B,IAAgB;QAC3C,QAAQ,IAAI,EAAE;YACZ,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpB,OAAO,eAAe,CAAA;aACvB;YACD,KAAK,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACxB,OAAO,mBAAmB,CAAA;aAC3B;YACD,KAAK,UAAU,CAAC,aAAa,CAAC,CAAC;gBAC7B,OAAO,wBAAwB,CAAA;aAChC;YACD,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpB,OAAO,eAAe,CAAA;aACvB;YACD,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;gBACtB,OAAO,iBAAiB,CAAA;aACzB;YACD,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC1B,OAAO,qBAAqB,CAAA;aAC7B;YACD,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;gBACtB,OAAO,iBAAiB,CAAA;aACzB;YACD,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpB,OAAO,eAAe,CAAA;aACvB;YACD,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC;gBACtB,OAAO,iBAAiB,CAAA;aACzB;YACD,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC;gBACnB,OAAO,cAAc,CAAA;aACtB;YACD,KAAK,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACxB,OAAO,mBAAmB,CAAA;aAC3B;YAED,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,oBAAC;AAAD,CAAC,AA1CD,IA0CC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-options.js b/src/app/shared/form/builder/parsers/parser-options.js deleted file mode 100644 index 5c14668214..0000000000 --- a/src/app/shared/form/builder/parsers/parser-options.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=parser-options.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-options.js.map b/src/app/shared/form/builder/parsers/parser-options.js.map deleted file mode 100644 index 7835ce30a8..0000000000 --- a/src/app/shared/form/builder/parsers/parser-options.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parser-options.js","sourceRoot":"","sources":["parser-options.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-type.js b/src/app/shared/form/builder/parsers/parser-type.js deleted file mode 100644 index ac4701a070..0000000000 --- a/src/app/shared/form/builder/parsers/parser-type.js +++ /dev/null @@ -1,15 +0,0 @@ -export var ParserType; -(function (ParserType) { - ParserType["Date"] = "date"; - ParserType["Dropdown"] = "dropdown"; - ParserType["RelationGroup"] = "group"; - ParserType["List"] = "list"; - ParserType["Lookup"] = "lookup"; - ParserType["LookupName"] = "lookup-name"; - ParserType["Onebox"] = "onebox"; - ParserType["Name"] = "name"; - ParserType["Series"] = "series"; - ParserType["Tag"] = "tag"; - ParserType["Textarea"] = "textarea"; -})(ParserType || (ParserType = {})); -//# sourceMappingURL=parser-type.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser-type.js.map b/src/app/shared/form/builder/parsers/parser-type.js.map deleted file mode 100644 index f3a9eb625e..0000000000 --- a/src/app/shared/form/builder/parsers/parser-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parser-type.js","sourceRoot":"","sources":["parser-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,UAYX;AAZD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,mCAAqB,CAAA;IACrB,qCAAuB,CAAA;IACvB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,wCAA0B,CAAA;IAC1B,+BAAiB,CAAA;IACjB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,yBAAW,CAAA;IACX,mCAAqB,CAAA;AACvB,CAAC,EAZW,UAAU,KAAV,UAAU,QAYrB"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser.utils.js b/src/app/shared/form/builder/parsers/parser.utils.js deleted file mode 100644 index 9709020bfa..0000000000 --- a/src/app/shared/form/builder/parsers/parser.utils.js +++ /dev/null @@ -1,19 +0,0 @@ -import { isNull, isUndefined } from '../../../empty.util'; -export function setLayout(model, controlLayout, controlLayoutConfig, style) { - if (isNull(model.layout)) { - model.layout = {}; - model.layout[controlLayout] = {}; - model.layout[controlLayout][controlLayoutConfig] = style; - } - else if (isUndefined(model.layout[controlLayout])) { - model.layout[controlLayout] = {}; - model.layout[controlLayout][controlLayoutConfig] = style; - } - else if (isUndefined(model.layout[controlLayout][controlLayoutConfig])) { - model.layout[controlLayout][controlLayoutConfig] = style; - } - else { - model.layout[controlLayout][controlLayoutConfig] = model.layout[controlLayout][controlLayoutConfig].concat(" " + style); - } -} -//# sourceMappingURL=parser.utils.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/parser.utils.js.map b/src/app/shared/form/builder/parsers/parser.utils.js.map deleted file mode 100644 index 6bc744beff..0000000000 --- a/src/app/shared/form/builder/parsers/parser.utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parser.utils.js","sourceRoot":"","sources":["parser.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAG1D,MAAM,oBAAoB,KAAU,EAAE,aAAqB,EAAE,mBAA2B,EAAE,KAAa;IACrG,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;QACxB,KAAK,CAAC,MAAM,GAAG,EAA8B,CAAC;QAC9C,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAoC,CAAC;QACnE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC;KAC1D;SAAM,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE;QACnD,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAoC,CAAC;QACnE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC;KAC1D;SAAM,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,CAAC,EAAE;QACxE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC;KAC1D;SAAM;QACL,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,MAAI,KAAO,CAAC,CAAC;KACzH;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/relation-group-field-parser.js b/src/app/shared/form/builder/parsers/relation-group-field-parser.js deleted file mode 100644 index 578857343f..0000000000 --- a/src/app/shared/form/builder/parsers/relation-group-field-parser.js +++ /dev/null @@ -1,60 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { isNotEmpty } from '../../../empty.util'; -import { DynamicRelationGroupModel, PLACEHOLDER_PARENT_METADATA } from '../ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; -var RelationGroupFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(RelationGroupFieldParser, _super); - function RelationGroupFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - RelationGroupFieldParser.prototype.modelFactory = function (fieldValue, label) { - var _this = this; - var modelConfiguration = this.initModel(null, label); - modelConfiguration.scopeUUID = this.parserOptions.authorityUuid; - modelConfiguration.submissionScope = this.parserOptions.submissionScope; - if (this.configData && this.configData.rows && this.configData.rows.length > 0) { - modelConfiguration.formConfiguration = this.configData.rows; - modelConfiguration.relationFields = []; - this.configData.rows.forEach(function (row) { - row.fields.forEach(function (field) { - if (field.selectableMetadata[0].metadata === _this.configData.selectableMetadata[0].metadata) { - if (!field.mandatory) { - // throw new Error(`Configuration not valid: Main field ${this.configData.selectableMetadata[0].metadata} may be mandatory`); - } - modelConfiguration.mandatoryField = _this.configData.selectableMetadata[0].metadata; - } - else { - modelConfiguration.relationFields.push(field.selectableMetadata[0].metadata); - } - }); - }); - } - else { - throw new Error("Configuration not valid: " + modelConfiguration.name); - } - if (isNotEmpty(this.getInitGroupValues())) { - modelConfiguration.value = []; - var mandatoryFieldEntries = this.getInitFieldValues(modelConfiguration.mandatoryField); - mandatoryFieldEntries.forEach(function (entry, index) { - var item = Object.create(null); - var listFields = [modelConfiguration.mandatoryField].concat(modelConfiguration.relationFields); - listFields.forEach(function (fieldId) { - var value = _this.getInitFieldValue(0, index, [fieldId]); - item[fieldId] = isNotEmpty(value) ? value : PLACEHOLDER_PARENT_METADATA; - }); - modelConfiguration.value.push(item); - }); - } - var cls = { - element: { - container: 'mb-3' - } - }; - var model = new DynamicRelationGroupModel(modelConfiguration, cls); - model.name = this.getFieldId(); - return model; - }; - return RelationGroupFieldParser; -}(FieldParser)); -export { RelationGroupFieldParser }; -//# sourceMappingURL=relation-group-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/relation-group-field-parser.js.map b/src/app/shared/form/builder/parsers/relation-group-field-parser.js.map deleted file mode 100644 index 6782b02ba2..0000000000 --- a/src/app/shared/form/builder/parsers/relation-group-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"relation-group-field-parser.js","sourceRoot":"","sources":["relation-group-field-parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/row-parser.js b/src/app/shared/form/builder/parsers/row-parser.js deleted file mode 100644 index ff6d6f2035..0000000000 --- a/src/app/shared/form/builder/parsers/row-parser.js +++ /dev/null @@ -1,108 +0,0 @@ -import { DYNAMIC_FORM_CONTROL_TYPE_ARRAY } from '@ng-dynamic-forms/core'; -import { uniqueId } from 'lodash'; -import { IntegrationSearchOptions } from '../../../../core/integration/models/integration-options.model'; -import { DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP } from '../ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; -import { DynamicRowGroupModel } from '../ds-dynamic-form-ui/models/ds-dynamic-row-group-model'; -import { isEmpty } from '../../../empty.util'; -import { setLayout } from './parser.utils'; -import { ParserFactory } from './parser-factory'; -export var ROW_ID_PREFIX = 'df-row-group-config-'; -var RowParser = /** @class */ (function () { - function RowParser(rowData, scopeUUID, initFormValues, submissionScope, readOnly) { - this.rowData = rowData; - this.scopeUUID = scopeUUID; - this.initFormValues = initFormValues; - this.submissionScope = submissionScope; - this.readOnly = readOnly; - this.authorityOptions = new IntegrationSearchOptions(scopeUUID); - } - RowParser.prototype.parse = function () { - var _this = this; - var fieldModel = null; - var parsedResult = null; - var config = { - id: uniqueId(ROW_ID_PREFIX), - group: [], - }; - var scopedFields = this.filterScopedFields(this.rowData.fields); - var layoutDefaultGridClass = ' col-sm-' + Math.trunc(12 / scopedFields.length); - var layoutClass = ' d-flex flex-column justify-content-start'; - var parserOptions = { - readOnly: this.readOnly, - submissionScope: this.submissionScope, - authorityUuid: this.authorityOptions.uuid - }; - // Iterate over row's fields - scopedFields.forEach(function (fieldData) { - var layoutFieldClass = (fieldData.style || layoutDefaultGridClass) + layoutClass; - var parserCo = ParserFactory.getConstructor(fieldData.input.type); - if (parserCo) { - fieldModel = new parserCo(fieldData, _this.initFormValues, parserOptions).parse(); - } - else { - throw new Error("unknown form control model type \"" + fieldData.input.type + "\" defined for Input field with label \"" + fieldData.label + "\"."); - } - if (fieldModel) { - if (fieldModel.type === DYNAMIC_FORM_CONTROL_TYPE_ARRAY || fieldModel.type === DYNAMIC_FORM_CONTROL_TYPE_RELATION_GROUP) { - if (_this.rowData.fields.length > 1) { - setLayout(fieldModel, 'grid', 'host', layoutFieldClass); - config.group.push(fieldModel); - // if (isEmpty(parsedResult)) { - // parsedResult = []; - // } - // parsedResult.push(fieldModel); - } - else { - parsedResult = fieldModel; - } - return; - } - else { - if (Array.isArray(fieldModel)) { - fieldModel.forEach(function (model) { - parsedResult = model; - return; - }); - } - else { - setLayout(fieldModel, 'grid', 'host', layoutFieldClass); - config.group.push(fieldModel); - } - } - fieldModel = null; - } - }); - if (config && !isEmpty(config.group)) { - var clsGroup = { - element: { - control: 'form-row', - } - }; - var groupModel = new DynamicRowGroupModel(config, clsGroup); - if (Array.isArray(parsedResult)) { - parsedResult.push(groupModel); - } - else { - parsedResult = groupModel; - } - } - return parsedResult; - }; - RowParser.prototype.checksFieldScope = function (fieldScope) { - return (isEmpty(fieldScope) || isEmpty(this.submissionScope) || fieldScope === this.submissionScope); - }; - RowParser.prototype.filterScopedFields = function (fields) { - var _this = this; - var filteredFields = []; - fields.forEach(function (field) { - // Whether field scope doesn't match the submission scope, skip it - if (_this.checksFieldScope(field.scope)) { - filteredFields.push(field); - } - }); - return filteredFields; - }; - return RowParser; -}()); -export { RowParser }; -//# sourceMappingURL=row-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/row-parser.js.map b/src/app/shared/form/builder/parsers/row-parser.js.map deleted file mode 100644 index e5b6c30411..0000000000 --- a/src/app/shared/form/builder/parsers/row-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"row-parser.js","sourceRoot":"","sources":["row-parser.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/series-field-parser.js b/src/app/shared/form/builder/parsers/series-field-parser.js deleted file mode 100644 index 4a3bf9c635..0000000000 --- a/src/app/shared/form/builder/parsers/series-field-parser.js +++ /dev/null @@ -1,15 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ConcatFieldParser } from './concat-field-parser'; -var SeriesFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(SeriesFieldParser, _super); - function SeriesFieldParser(configData, initFormValues, parserOptions) { - var _this = _super.call(this, configData, initFormValues, parserOptions, ';') || this; - _this.configData = configData; - _this.initFormValues = initFormValues; - _this.parserOptions = parserOptions; - return _this; - } - return SeriesFieldParser; -}(ConcatFieldParser)); -export { SeriesFieldParser }; -//# sourceMappingURL=series-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/series-field-parser.js.map b/src/app/shared/form/builder/parsers/series-field-parser.js.map deleted file mode 100644 index 16338e0c57..0000000000 --- a/src/app/shared/form/builder/parsers/series-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"series-field-parser.js","sourceRoot":"","sources":["series-field-parser.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D;IAAuC,6CAAiB;IAEtD,2BAAsB,UAA0B,EAAY,cAAc,EAAY,aAA4B;QAAlH,YACE,kBAAM,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,CAAC,SACtD;QAFqB,gBAAU,GAAV,UAAU,CAAgB;QAAY,oBAAc,GAAd,cAAc,CAAA;QAAY,mBAAa,GAAb,aAAa,CAAe;;IAElH,CAAC;IACH,wBAAC;AAAD,CAAC,AALD,CAAuC,iBAAiB,GAKvD"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/tag-field-parser.js b/src/app/shared/form/builder/parsers/tag-field-parser.js deleted file mode 100644 index bb07e41a81..0000000000 --- a/src/app/shared/form/builder/parsers/tag-field-parser.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { DynamicTagModel } from '../ds-dynamic-form-ui/models/tag/dynamic-tag.model'; -var TagFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(TagFieldParser, _super); - function TagFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - TagFieldParser.prototype.modelFactory = function (fieldValue, label) { - var tagModelConfig = this.initModel(null, label); - if (this.configData.selectableMetadata[0].authority - && this.configData.selectableMetadata[0].authority.length > 0) { - this.setAuthorityOptions(tagModelConfig, this.parserOptions.authorityUuid); - } - this.setValues(tagModelConfig, fieldValue, null, true); - var tagModel = new DynamicTagModel(tagModelConfig); - return tagModel; - }; - return TagFieldParser; -}(FieldParser)); -export { TagFieldParser }; -//# sourceMappingURL=tag-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/tag-field-parser.js.map b/src/app/shared/form/builder/parsers/tag-field-parser.js.map deleted file mode 100644 index 7aaf79cf79..0000000000 --- a/src/app/shared/form/builder/parsers/tag-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"tag-field-parser.js","sourceRoot":"","sources":["tag-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAyB,MAAM,oDAAoD,CAAC;AAE5G;IAAoC,0CAAW;IAA/C;;IAgBA,CAAC;IAdQ,qCAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAM,cAAc,GAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS;eAC9C,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/D,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;SAC5E;QAED,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAEvD,IAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,cAAc,CAAC,CAAC;QAErD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEH,qBAAC;AAAD,CAAC,AAhBD,CAAoC,WAAW,GAgB9C"} \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/textarea-field-parser.js b/src/app/shared/form/builder/parsers/textarea-field-parser.js deleted file mode 100644 index efd8e5a56a..0000000000 --- a/src/app/shared/form/builder/parsers/textarea-field-parser.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { FieldParser } from './field-parser'; -import { DsDynamicTextAreaModel } from '../ds-dynamic-form-ui/models/ds-dynamic-textarea.model'; -var TextareaFieldParser = /** @class */ (function (_super) { - tslib_1.__extends(TextareaFieldParser, _super); - function TextareaFieldParser() { - return _super !== null && _super.apply(this, arguments) || this; - } - TextareaFieldParser.prototype.modelFactory = function (fieldValue, label) { - var textAreaModelConfig = this.initModel(null, label); - var layout; - layout = { - element: { - label: 'col-form-label' - } - }; - textAreaModelConfig.rows = 10; - this.setValues(textAreaModelConfig, fieldValue); - var textAreaModel = new DsDynamicTextAreaModel(textAreaModelConfig, layout); - return textAreaModel; - }; - return TextareaFieldParser; -}(FieldParser)); -export { TextareaFieldParser }; -//# sourceMappingURL=textarea-field-parser.js.map \ No newline at end of file diff --git a/src/app/shared/form/builder/parsers/textarea-field-parser.js.map b/src/app/shared/form/builder/parsers/textarea-field-parser.js.map deleted file mode 100644 index b99c32763f..0000000000 --- a/src/app/shared/form/builder/parsers/textarea-field-parser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"textarea-field-parser.js","sourceRoot":"","sources":["textarea-field-parser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EACL,sBAAsB,EAEvB,MAAM,wDAAwD,CAAC;AAEhE;IAAyC,+CAAW;IAApD;;IAmBA,CAAC;IAjBQ,0CAAY,GAAnB,UAAoB,UAA+C,EAAE,KAAe;QAClF,IAAM,mBAAmB,GAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAEtF,IAAI,MAAgC,CAAC;QAErC,MAAM,GAAG;YACP,OAAO,EAAE;gBACP,KAAK,EAAE,gBAAgB;aACxB;SACF,CAAC;QAEF,mBAAmB,CAAC,IAAI,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;QAChD,IAAM,aAAa,GAAG,IAAI,sBAAsB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;QAE9E,OAAO,aAAa,CAAC;IACvB,CAAC;IACH,0BAAC;AAAD,CAAC,AAnBD,CAAyC,WAAW,GAmBnD"} \ No newline at end of file diff --git a/src/app/shared/form/form.actions.js b/src/app/shared/form/form.actions.js deleted file mode 100644 index be2fd2eab1..0000000000 --- a/src/app/shared/form/form.actions.js +++ /dev/null @@ -1,108 +0,0 @@ -import { type } from '../ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var FormActionTypes = { - FORM_INIT: type('dspace/form/FORM_INIT'), - FORM_CHANGE: type('dspace/form/FORM_CHANGE'), - FORM_REMOVE: type('dspace/form/FORM_REMOVE'), - FORM_STATUS_CHANGE: type('dspace/form/FORM_STATUS_CHANGE'), - FORM_ADD_ERROR: type('dspace/form/FORM_ADD_ERROR'), - FORM_REMOVE_ERROR: type('dspace/form/FORM_REMOVE_ERROR'), - FORM_CLEAR_ERRORS: type('dspace/form/FORM_CLEAR_ERRORS'), -}; -/* tslint:disable:max-classes-per-file */ -var FormInitAction = /** @class */ (function () { - /** - * Create a new FormInitAction - * - * @param formId - * the Form's ID - * @param formData - * the FormGroup Object - * @param valid - * the Form validation status - */ - function FormInitAction(formId, formData, valid) { - this.type = FormActionTypes.FORM_INIT; - this.payload = { formId: formId, formData: formData, valid: valid }; - } - return FormInitAction; -}()); -export { FormInitAction }; -var FormChangeAction = /** @class */ (function () { - /** - * Create a new FormInitAction - * - * @param formId - * the Form's ID - * @param formData - * the FormGroup Object - */ - function FormChangeAction(formId, formData) { - this.type = FormActionTypes.FORM_CHANGE; - this.payload = { formId: formId, formData: formData }; - } - return FormChangeAction; -}()); -export { FormChangeAction }; -var FormRemoveAction = /** @class */ (function () { - /** - * Create a new FormRemoveAction - * - * @param formId - * the Form's ID - */ - function FormRemoveAction(formId) { - this.type = FormActionTypes.FORM_REMOVE; - this.payload = { formId: formId }; - } - return FormRemoveAction; -}()); -export { FormRemoveAction }; -var FormStatusChangeAction = /** @class */ (function () { - /** - * Create a new FormInitAction - * - * @param formId - * the Form's ID - * @param valid - * the Form validation status - */ - function FormStatusChangeAction(formId, valid) { - this.type = FormActionTypes.FORM_STATUS_CHANGE; - this.payload = { formId: formId, valid: valid }; - } - return FormStatusChangeAction; -}()); -export { FormStatusChangeAction }; -var FormAddError = /** @class */ (function () { - function FormAddError(formId, fieldId, fieldIndex, errorMessage) { - this.type = FormActionTypes.FORM_ADD_ERROR; - this.payload = { formId: formId, fieldId: fieldId, fieldIndex: fieldIndex, errorMessage: errorMessage }; - } - return FormAddError; -}()); -export { FormAddError }; -var FormRemoveErrorAction = /** @class */ (function () { - function FormRemoveErrorAction(formId, fieldId, fieldIndex) { - this.type = FormActionTypes.FORM_REMOVE_ERROR; - this.payload = { formId: formId, fieldId: fieldId, fieldIndex: fieldIndex }; - } - return FormRemoveErrorAction; -}()); -export { FormRemoveErrorAction }; -var FormClearErrorsAction = /** @class */ (function () { - function FormClearErrorsAction(formId) { - this.type = FormActionTypes.FORM_CLEAR_ERRORS; - this.payload = { formId: formId }; - } - return FormClearErrorsAction; -}()); -export { FormClearErrorsAction }; -//# sourceMappingURL=form.actions.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.actions.js.map b/src/app/shared/form/form.actions.js.map deleted file mode 100644 index d5d03508f6..0000000000 --- a/src/app/shared/form/form.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form.actions.js","sourceRoot":"","sources":["form.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,eAAe,GAAG;IAC7B,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC;IACxC,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC;IAC5C,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC;IAC5C,kBAAkB,EAAE,IAAI,CAAC,gCAAgC,CAAC;IAC1D,cAAc,EAAE,IAAI,CAAC,4BAA4B,CAAC;IAClD,iBAAiB,EAAE,IAAI,CAAC,+BAA+B,CAAC;IACxD,iBAAiB,EAAE,IAAI,CAAC,+BAA+B,CAAC;CACzD,CAAC;AAEF,yCAAyC;AACzC;IAQE;;;;;;;;;OASG;IACH,wBAAY,MAAc,EAAE,QAAa,EAAE,KAAc;QAjBzD,SAAI,GAAG,eAAe,CAAC,SAAS,CAAC;QAkB/B,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAC,CAAC;IAC3C,CAAC;IACH,qBAAC;AAAD,CAAC,AArBD,IAqBC;;AAED;IAOE;;;;;;;OAOG;IACH,0BAAY,MAAc,EAAE,QAAa;QAdzC,SAAI,GAAG,eAAe,CAAC,WAAW,CAAC;QAejC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,QAAQ,UAAA,EAAC,CAAC;IACpC,CAAC;IACH,uBAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED;IAME;;;;;OAKG;IACH,0BAAY,MAAc;QAX1B,SAAI,GAAG,eAAe,CAAC,WAAW,CAAC;QAYjC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAC,CAAC;IAC1B,CAAC;IACH,uBAAC;AAAD,CAAC,AAfD,IAeC;;AAED;IAOE;;;;;;;OAOG;IACH,gCAAY,MAAc,EAAE,KAAc;QAd1C,SAAI,GAAG,eAAe,CAAC,kBAAkB,CAAC;QAexC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,KAAK,OAAA,EAAC,CAAC;IACjC,CAAC;IACH,6BAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED;IASE,sBAAY,MAAc,EAAE,OAAe,EAAE,UAAkB,EAAE,YAAoB;QARrF,SAAI,GAAG,eAAe,CAAC,cAAc,CAAC;QASpC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,OAAO,SAAA,EAAE,UAAU,YAAA,EAAE,YAAY,cAAA,EAAC,CAAC;IAC7D,CAAC;IACH,mBAAC;AAAD,CAAC,AAZD,IAYC;;AAED;IAQE,+BAAY,MAAc,EAAE,OAAe,EAAE,UAAkB;QAP/D,SAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC;QAQvC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAE,OAAO,SAAA,EAAE,UAAU,YAAA,EAAC,CAAC;IAC/C,CAAC;IACH,4BAAC;AAAD,CAAC,AAXD,IAWC;;AAED;IAME,+BAAY,MAAc;QAL1B,SAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC;QAMvC,IAAI,CAAC,OAAO,GAAG,EAAC,MAAM,QAAA,EAAC,CAAC;IAC1B,CAAC;IACH,4BAAC;AAAD,CAAC,AATD,IASC"} \ No newline at end of file diff --git a/src/app/shared/form/form.component.js b/src/app/shared/form/form.component.js deleted file mode 100644 index 3e0017be2a..0000000000 --- a/src/app/shared/form/form.component.js +++ /dev/null @@ -1,320 +0,0 @@ -import * as tslib_1 from "tslib"; -import { distinctUntilChanged, filter, map } from 'rxjs/operators'; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormGroup } from '@angular/forms'; -import { findIndex } from 'lodash'; -import { FormBuilderService } from './builder/form-builder.service'; -import { hasValue, isNotEmpty, isNotNull, isNull } from '../empty.util'; -import { FormService } from './form.service'; -/** - * The default form component. - */ -var FormComponent = /** @class */ (function () { - function FormComponent(formService, changeDetectorRef, formBuilderService) { - this.formService = formService; - this.changeDetectorRef = changeDetectorRef; - this.formBuilderService = formBuilderService; - this.formErrors = []; - /** - * A boolean that indicate if to display form's submit and cancel buttons - */ - this.displaySubmit = true; - /** - * A boolean that indicate if to emit a form change event - */ - this.emitChange = true; - this.formLayout = null; - /* tslint:disable:no-output-rename */ - this.blur = new EventEmitter(); - this.change = new EventEmitter(); - this.focus = new EventEmitter(); - /* tslint:enable:no-output-rename */ - this.addArrayItem = new EventEmitter(); - this.removeArrayItem = new EventEmitter(); - /** - * An event fired when form is valid and submitted . - * Event's payload equals to the form content. - */ - this.cancel = new EventEmitter(); - /** - * An event fired when form is valid and submitted . - * Event's payload equals to the form content. - */ - this.submitForm = new EventEmitter(); - /** - * An object of FormGroup type - */ - // public formGroup: FormGroup; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subs = []; - } - /** - * Method provided by Angular. Invoked after the view has been initialized. - */ - /*ngAfterViewChecked(): void { - this.subs.push(this.formGroup.valueChanges - .filter((formGroup) => this.formGroup.dirty) - .subscribe(() => { - // Dispatch a FormChangeAction if the user has changed the value in the UI - this.store.dispatch(new FormChangeAction(this.formId, this.formGroup.value)); - this.formGroup.markAsPristine(); - })); - }*/ - FormComponent.prototype.getFormGroup = function () { - if (!!this.parentFormModel) { - return this.formGroup.parent; - } - return this.formGroup; - }; - FormComponent.prototype.getFormGroupValue = function () { - return this.getFormGroup().value; - }; - FormComponent.prototype.getFormGroupValidStatus = function () { - return this.getFormGroup().valid; - }; - /** - * Method provided by Angular. Invoked after the constructor - */ - FormComponent.prototype.ngOnInit = function () { - var _this = this; - if (!this.formGroup) { - this.formGroup = this.formBuilderService.createFormGroup(this.formModel); - } - else { - this.formModel.forEach(function (model) { - if (_this.parentFormModel) { - _this.formBuilderService.addFormGroupControl(_this.formGroup, _this.parentFormModel, model); - } - }); - } - this.formService.initForm(this.formId, this.formModel, this.getFormGroupValidStatus()); - // TODO: take a look to the following method: - // this.keepSync(); - this.formValid = this.getFormGroupValidStatus(); - this.subs.push(this.formGroup.statusChanges.pipe(filter(function (currentStatus) { return _this.formValid !== _this.getFormGroupValidStatus(); })) - .subscribe(function (currentStatus) { - _this.formService.setStatusChanged(_this.formId, _this.getFormGroupValidStatus()); - _this.formValid = _this.getFormGroupValidStatus(); - })); - this.subs.push(this.formService.getForm(this.formId).pipe(filter(function (formState) { return !!formState && (isNotEmpty(formState.errors) || isNotEmpty(_this.formErrors)); }), map(function (formState) { return formState.errors; }), distinctUntilChanged()) - // .delay(100) // this terrible delay is here to prevent the detection change error - .subscribe(function (errors) { - var _a = _this, formGroup = _a.formGroup, formModel = _a.formModel; - errors - .filter(function (error) { return findIndex(_this.formErrors, { - fieldId: error.fieldId, - fieldIndex: error.fieldIndex - }) === -1; }) - .forEach(function (error) { - var fieldId = error.fieldId; - var fieldIndex = error.fieldIndex; - var field; - if (!!_this.parentFormModel) { - field = _this.formBuilderService.getFormControlById(fieldId, formGroup.parent, formModel, fieldIndex); - } - else { - field = _this.formBuilderService.getFormControlById(fieldId, formGroup, formModel, fieldIndex); - } - if (field) { - var model = _this.formBuilderService.findById(fieldId, formModel); - _this.formService.addErrorToField(field, model, error.message); - // this.formService.validateAllFormFields(formGroup); - _this.changeDetectorRef.detectChanges(); - } - }); - _this.formErrors - .filter(function (error) { return findIndex(errors, { - fieldId: error.fieldId, - fieldIndex: error.fieldIndex - }) === -1; }) - .forEach(function (error) { - var fieldId = error.fieldId; - var fieldIndex = error.fieldIndex; - var field; - if (!!_this.parentFormModel) { - field = _this.formBuilderService.getFormControlById(fieldId, formGroup.parent, formModel, fieldIndex); - } - else { - field = _this.formBuilderService.getFormControlById(fieldId, formGroup, formModel, fieldIndex); - } - if (field) { - var model = _this.formBuilderService.findById(fieldId, formModel); - _this.formService.removeErrorFromField(field, model, error.message); - } - }); - _this.formErrors = errors; - _this.changeDetectorRef.detectChanges(); - })); - }; - /** - * Method provided by Angular. Invoked when the instance is destroyed - */ - FormComponent.prototype.ngOnDestroy = function () { - this.subs - .filter(function (sub) { return hasValue(sub); }) - .forEach(function (sub) { return sub.unsubscribe(); }); - this.formService.removeForm(this.formId); - }; - /** - * Method to check if the form status is valid or not - */ - FormComponent.prototype.isValid = function () { - return this.formService.isValid(this.formId); - }; - /** - * Method to keep synchronized form controls values with form state - */ - FormComponent.prototype.keepSync = function () { - var _this = this; - this.subs.push(this.formService.getFormData(this.formId) - .subscribe(function (stateFormData) { - if (!Object.is(stateFormData, _this.formGroup.value) && _this.formGroup) { - _this.formGroup.setValue(stateFormData); - } - })); - }; - FormComponent.prototype.onBlur = function (event) { - this.blur.emit(event); - }; - FormComponent.prototype.onFocus = function (event) { - this.focus.emit(event); - }; - FormComponent.prototype.onChange = function (event) { - this.formService.changeForm(this.formId, this.formModel); - this.formGroup.markAsPristine(); - if (this.emitChange) { - this.change.emit(event); - } - var control = event.control; - var fieldIndex = (event.context && event.context.index) ? event.context.index : 0; - if (control.valid) { - this.formService.removeError(this.formId, event.model.id, fieldIndex); - } - }; - /** - * Method called on submit. - * Emit a new submit Event whether the form is valid, mark fields with error otherwise - */ - FormComponent.prototype.onSubmit = function () { - if (this.getFormGroupValidStatus()) { - this.submitForm.emit(this.formService.getFormData(this.formId)); - } - else { - this.formService.validateAllFormFields(this.formGroup); - } - }; - /** - * Method to reset form fields - */ - FormComponent.prototype.reset = function () { - this.formGroup.reset(); - this.cancel.emit(); - }; - FormComponent.prototype.isItemReadOnly = function (arrayContext, index) { - var context = arrayContext.groups[index]; - var model = context.group[0]; - return model.readOnly; - }; - FormComponent.prototype.removeItem = function ($event, arrayContext, index) { - var formArrayControl = this.formGroup.get(this.formBuilderService.getPath(arrayContext)); - this.removeArrayItem.emit(this.getEvent($event, arrayContext, index, 'remove')); - this.formBuilderService.removeFormArrayGroup(index, formArrayControl, arrayContext); - this.formService.changeForm(this.formId, this.formModel); - }; - FormComponent.prototype.insertItem = function ($event, arrayContext, index) { - var formArrayControl = this.formGroup.get(this.formBuilderService.getPath(arrayContext)); - this.formBuilderService.insertFormArrayGroup(index, formArrayControl, arrayContext); - this.addArrayItem.emit(this.getEvent($event, arrayContext, index, 'add')); - this.formService.changeForm(this.formId, this.formModel); - }; - FormComponent.prototype.getEvent = function ($event, arrayContext, index, type) { - var context = arrayContext.groups[index]; - var itemGroupModel = context.context; - var group = this.formGroup.get(itemGroupModel.id); - if (isNull(group)) { - for (var _i = 0, _a = Object.keys(this.formGroup.controls); _i < _a.length; _i++) { - var key = _a[_i]; - group = this.formGroup.controls[key].get(itemGroupModel.id); - if (isNotNull(group)) { - break; - } - } - } - var model = context.group[0]; - var control = group.controls[index]; - return { $event: $event, context: context, control: control, group: group, model: model, type: type }; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], FormComponent.prototype, "displaySubmit", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], FormComponent.prototype, "emitChange", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], FormComponent.prototype, "formId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], FormComponent.prototype, "formModel", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], FormComponent.prototype, "parentFormModel", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", FormGroup) - ], FormComponent.prototype, "formGroup", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], FormComponent.prototype, "formLayout", void 0); - tslib_1.__decorate([ - Output('dfBlur'), - tslib_1.__metadata("design:type", EventEmitter) - ], FormComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output('dfChange'), - tslib_1.__metadata("design:type", EventEmitter) - ], FormComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output('dfFocus'), - tslib_1.__metadata("design:type", EventEmitter) - ], FormComponent.prototype, "focus", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], FormComponent.prototype, "addArrayItem", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], FormComponent.prototype, "removeArrayItem", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], FormComponent.prototype, "cancel", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], FormComponent.prototype, "submitForm", void 0); - FormComponent = tslib_1.__decorate([ - Component({ - exportAs: 'formComponent', - selector: 'ds-form', - styleUrls: ['form.component.scss'], - templateUrl: 'form.component.html' - }), - tslib_1.__metadata("design:paramtypes", [FormService, - ChangeDetectorRef, - FormBuilderService]) - ], FormComponent); - return FormComponent; -}()); -export { FormComponent }; -//# sourceMappingURL=form.component.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.component.js.map b/src/app/shared/form/form.component.js.map deleted file mode 100644 index 1731cf57b7..0000000000 --- a/src/app/shared/form/form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form.component.js","sourceRoot":"","sources":["form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/form.effects.js b/src/app/shared/form/form.effects.js deleted file mode 100644 index a6451788b8..0000000000 --- a/src/app/shared/form/form.effects.js +++ /dev/null @@ -1,15 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Actions } from '@ngrx/effects'; -var FormEffects = /** @class */ (function () { - function FormEffects(actions$) { - this.actions$ = actions$; - } - FormEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions]) - ], FormEffects); - return FormEffects; -}()); -export { FormEffects }; -//# sourceMappingURL=form.effects.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.effects.js.map b/src/app/shared/form/form.effects.js.map deleted file mode 100644 index 7836d15c6b..0000000000 --- a/src/app/shared/form/form.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form.effects.js","sourceRoot":"","sources":["form.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAU,MAAM,eAAe,CAAC;AAGhD;IAEE,qBAAoB,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;IAErC,CAAC;IAJU,WAAW;QADvB,UAAU,EAAE;iDAGmB,OAAO;OAF1B,WAAW,CAMvB;IAAD,kBAAC;CAAA,AAND,IAMC;SANY,WAAW"} \ No newline at end of file diff --git a/src/app/shared/form/form.reducer.js b/src/app/shared/form/form.reducer.js deleted file mode 100644 index 2fd09dbb3e..0000000000 --- a/src/app/shared/form/form.reducer.js +++ /dev/null @@ -1,181 +0,0 @@ -import { FormActionTypes } from './form.actions'; -import { hasValue } from '../empty.util'; -import { isEqual, uniqWith } from 'lodash'; -var initialState = Object.create(null); -export function formReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case FormActionTypes.FORM_INIT: { - return initForm(state, action); - } - case FormActionTypes.FORM_CHANGE: { - return changeDataForm(state, action); - } - case FormActionTypes.FORM_REMOVE: { - return removeForm(state, action); - } - case FormActionTypes.FORM_STATUS_CHANGE: { - return changeStatusForm(state, action); - } - case FormActionTypes.FORM_ADD_ERROR: { - return addFormErrors(state, action); - } - case FormActionTypes.FORM_REMOVE_ERROR: { - return removeFormError(state, action); - } - case FormActionTypes.FORM_CLEAR_ERRORS: { - return clearsFormErrors(state, action); - } - default: { - return state; - } - } -} -function addFormErrors(state, action) { - var _a; - var formId = action.payload.formId; - if (hasValue(state[formId])) { - var error = { - fieldId: action.payload.fieldId, - fieldIndex: action.payload.fieldIndex, - message: action.payload.errorMessage - }; - return Object.assign({}, state, (_a = {}, - _a[formId] = { - data: state[formId].data, - valid: state[formId].valid, - errors: state[formId].errors ? uniqWith(state[formId].errors.concat(error), isEqual) : [].concat(error), - }, - _a)); - } - else { - return state; - } -} -function removeFormError(state, action) { - var formId = action.payload.formId; - var fieldId = action.payload.fieldId; - var fieldIndex = action.payload.fieldIndex; - if (hasValue(state[formId])) { - var errors = state[formId].errors.filter(function (error) { return error.fieldId !== fieldId || error.fieldIndex !== fieldIndex; }); - var newState = Object.assign({}, state); - newState[formId] = Object.assign({}, state[formId], { errors: errors }); - return newState; - } - else { - return state; - } -} -function clearsFormErrors(state, action) { - var formId = action.payload.formId; - if (hasValue(state[formId])) { - var errors = []; - var newState = Object.assign({}, state); - newState[formId] = Object.assign({}, state[formId], { errors: errors }); - return newState; - } - else { - return state; - } -} -/** - * Init form state. - * - * @param state - * the current state - * @param action - * an FormInitAction - * @return FormState - * the new state, with the form initialized. - */ -function initForm(state, action) { - var _a; - var formState = { - data: action.payload.formData, - valid: action.payload.valid, - errors: [] - }; - if (!hasValue(state[action.payload.formId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.formId] = formState, - _a)); - } - else { - var newState = Object.assign({}, state); - newState[action.payload.formId] = Object.assign({}, newState[action.payload.formId], formState); - return newState; - } -} -/** - * Set form data. - * - * @param state - * the current state - * @param action - * an FormChangeAction - * @return FormState - * the new state, with the data changed. - */ -function changeDataForm(state, action) { - if (hasValue(state[action.payload.formId])) { - var newState = Object.assign({}, state); - newState[action.payload.formId] = Object.assign({}, newState[action.payload.formId], { - data: action.payload.formData, - valid: state[action.payload.formId].valid - }); - return newState; - } - else { - return state; - } -} -/** - * Set form status. - * - * @param state - * the current state - * @param action - * an FormStatusChangeAction - * @return FormState - * the new state, with the status changed. - */ -function changeStatusForm(state, action) { - var _a; - if (!hasValue(state[action.payload.formId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.formId] = { - data: state[action.payload.formId].data, - valid: action.payload.valid - }, - _a)); - } - else { - var newState = Object.assign({}, state); - newState[action.payload.formId] = Object.assign({}, newState[action.payload.formId], { - data: state[action.payload.formId].data, - valid: action.payload.valid - }); - return newState; - } -} -/** - * Remove form state. - * - * @param state - * the current state - * @param action - * an FormRemoveAction - * @return FormState - * the new state, with the form initialized. - */ -function removeForm(state, action) { - if (hasValue(state[action.payload.formId])) { - var newState = Object.assign({}, state); - delete newState[action.payload.formId]; - return newState; - } - else { - return state; - } -} -//# sourceMappingURL=form.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.reducer.js.map b/src/app/shared/form/form.reducer.js.map deleted file mode 100644 index 39fc68d8d2..0000000000 --- a/src/app/shared/form/form.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form.reducer.js","sourceRoot":"","sources":["form.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/form.service.js b/src/app/shared/form/form.service.js deleted file mode 100644 index 79238ce7fd..0000000000 --- a/src/app/shared/form/form.service.js +++ /dev/null @@ -1,135 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map, distinctUntilChanged, filter } from 'rxjs/operators'; -import { Inject, Injectable } from '@angular/core'; -import { FormArray, FormControl, FormGroup } from '@angular/forms'; -import { select, Store } from '@ngrx/store'; -import { formObjectFromIdSelector } from './selectors'; -import { FormBuilderService } from './builder/form-builder.service'; -import { isEmpty, isNotUndefined } from '../empty.util'; -import { uniqueId } from 'lodash'; -import { FormChangeAction, FormInitAction, FormRemoveAction, FormRemoveErrorAction, FormStatusChangeAction } from './form.actions'; -import { GLOBAL_CONFIG } from '../../../config'; -var FormService = /** @class */ (function () { - function FormService(config, formBuilderService, store) { - this.config = config; - this.formBuilderService = formBuilderService; - this.store = store; - } - /** - * Method to retrieve form's status from state - */ - FormService.prototype.isValid = function (formId) { - return this.store.pipe(select(formObjectFromIdSelector(formId)), filter(function (state) { return isNotUndefined(state); }), map(function (state) { return state.valid; }), distinctUntilChanged()); - }; - /** - * Method to retrieve form's data from state - */ - FormService.prototype.getFormData = function (formId) { - return this.store.pipe(select(formObjectFromIdSelector(formId)), filter(function (state) { return isNotUndefined(state); }), map(function (state) { return state.data; }), distinctUntilChanged()); - }; - /** - * Method to retrieve form's errors from state - */ - FormService.prototype.getFormErrors = function (formId) { - return this.store.pipe(select(formObjectFromIdSelector(formId)), filter(function (state) { return isNotUndefined(state); }), map(function (state) { return state.errors; }), distinctUntilChanged()); - }; - /** - * Method to retrieve form's data from state - */ - FormService.prototype.isFormInitialized = function (formId) { - return this.store.pipe(select(formObjectFromIdSelector(formId)), distinctUntilChanged(), map(function (state) { return isNotUndefined(state); })); - }; - FormService.prototype.getUniqueId = function (formId) { - return uniqueId() + '_' + formId; - }; - /** - * Method to validate form's fields - */ - FormService.prototype.validateAllFormFields = function (formGroup) { - var _this = this; - Object.keys(formGroup.controls).forEach(function (field) { - var control = formGroup.get(field); - if (control instanceof FormControl) { - control.markAsTouched({ onlySelf: true }); - control.markAsDirty({ onlySelf: true }); - } - else if (control instanceof FormGroup || control instanceof FormArray) { - _this.validateAllFormFields(control); - } - }); - }; - FormService.prototype.addErrorToField = function (field, model, message) { - var error = {}; // create the error object - var errorKey = this.getValidatorNameFromMap(message); - var errorMsg = message; - // if form control model has no errorMessages object, create it - if (!model.errorMessages) { - model.errorMessages = {}; - } - // check if error code is already present in the set of model's validators - if (isEmpty(model.errorMessages[errorKey])) { - // put the error message in the form control model - model.errorMessages[errorKey] = message; - } - else { - // Use correct error messages from the model - errorMsg = model.errorMessages[errorKey]; - } - if (!field.hasError(errorKey)) { - error[errorKey] = true; - // add the error in the form control - field.setErrors(error); - } - field.markAsTouched(); - }; - FormService.prototype.removeErrorFromField = function (field, model, messageKey) { - var error = {}; - var errorKey = this.getValidatorNameFromMap(messageKey); - if (field.hasError(errorKey)) { - error[errorKey] = null; - field.setErrors(error); - } - field.markAsUntouched(); - }; - FormService.prototype.resetForm = function (formGroup, groupModel, formId) { - this.formBuilderService.clearAllModelsValue(groupModel); - formGroup.reset(); - this.store.dispatch(new FormChangeAction(formId, formGroup.value)); - }; - FormService.prototype.getValidatorNameFromMap = function (validator) { - if (validator.includes('.')) { - var splitArray = validator.split('.'); - if (splitArray && splitArray.length > 0) { - validator = this.getValidatorNameFromMap(splitArray[splitArray.length - 1]); - } - } - return (this.config.form.validatorMap.hasOwnProperty(validator)) ? this.config.form.validatorMap[validator] : validator; - }; - FormService.prototype.initForm = function (formId, model, valid) { - this.store.dispatch(new FormInitAction(formId, this.formBuilderService.getValueFromModel(model), valid)); - }; - FormService.prototype.setStatusChanged = function (formId, valid) { - this.store.dispatch(new FormStatusChangeAction(formId, valid)); - }; - FormService.prototype.getForm = function (formId) { - return this.store.pipe(select(formObjectFromIdSelector(formId))); - }; - FormService.prototype.removeForm = function (formId) { - this.store.dispatch(new FormRemoveAction(formId)); - }; - FormService.prototype.changeForm = function (formId, model) { - this.store.dispatch(new FormChangeAction(formId, this.formBuilderService.getValueFromModel(model))); - }; - FormService.prototype.removeError = function (formId, eventModelId, fieldIndex) { - this.store.dispatch(new FormRemoveErrorAction(formId, eventModelId, fieldIndex)); - }; - FormService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, FormBuilderService, - Store]) - ], FormService); - return FormService; -}()); -export { FormService }; -//# sourceMappingURL=form.service.js.map \ No newline at end of file diff --git a/src/app/shared/form/form.service.js.map b/src/app/shared/form/form.service.js.map deleted file mode 100644 index dac99427c3..0000000000 --- a/src/app/shared/form/form.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form.service.js","sourceRoot":"","sources":["form.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/form/selectors.js b/src/app/shared/form/selectors.js deleted file mode 100644 index e883320ea8..0000000000 --- a/src/app/shared/form/selectors.js +++ /dev/null @@ -1,6 +0,0 @@ -import { createSelector } from '@ngrx/store'; -export var formStateSelector = function (state) { return state.forms; }; -export function formObjectFromIdSelector(formId) { - return createSelector(formStateSelector, function (forms) { return forms[formId]; }); -} -//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/shared/form/selectors.js.map b/src/app/shared/form/selectors.js.map deleted file mode 100644 index 94208b4c4c..0000000000 --- a/src/app/shared/form/selectors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAoB,MAAM,aAAa,CAAC;AAK/D,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,KAAK,EAAX,CAAW,CAAC;AAElE,MAAM,mCAAmC,MAAc;IACrD,OAAO,cAAc,CAAC,iBAAiB,EAAE,UAAC,KAAgB,IAAK,OAAA,KAAK,CAAC,MAAM,CAAC,EAAb,CAAa,CAAC,CAAC;AAChF,CAAC"} \ No newline at end of file diff --git a/src/app/shared/history/history.actions.js b/src/app/shared/history/history.actions.js deleted file mode 100644 index 7458ae1f94..0000000000 --- a/src/app/shared/history/history.actions.js +++ /dev/null @@ -1,15 +0,0 @@ -import { type } from '../ngrx/type'; -export var HistoryActionTypes = { - ADD_TO_HISTORY: type('dspace/history/ADD_TO_HISTORY'), - GET_HISTORY: type('dspace/history/GET_HISTORY') -}; -/* tslint:disable:max-classes-per-file */ -var AddUrlToHistoryAction = /** @class */ (function () { - function AddUrlToHistoryAction(url) { - this.type = HistoryActionTypes.ADD_TO_HISTORY; - this.payload = { url: url }; - } - return AddUrlToHistoryAction; -}()); -export { AddUrlToHistoryAction }; -//# sourceMappingURL=history.actions.js.map \ No newline at end of file diff --git a/src/app/shared/history/history.actions.js.map b/src/app/shared/history/history.actions.js.map deleted file mode 100644 index 14685e8a25..0000000000 --- a/src/app/shared/history/history.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"history.actions.js","sourceRoot":"","sources":["history.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,MAAM,CAAC,IAAM,kBAAkB,GAAG;IAChC,cAAc,EAAE,IAAI,CAAC,+BAA+B,CAAC;IACrD,WAAW,EAAE,IAAI,CAAC,4BAA4B,CAAC;CAChD,CAAC;AAEF,yCAAyC;AAEzC;IAME,+BAAY,GAAW;QALvB,SAAI,GAAG,kBAAkB,CAAC,cAAc,CAAC;QAMvC,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,KAAA,EAAE,CAAA;IACxB,CAAC;IACH,4BAAC;AAAD,CAAC,AATD,IASC"} \ No newline at end of file diff --git a/src/app/shared/history/history.reducer.js b/src/app/shared/history/history.reducer.js deleted file mode 100644 index f2874b22e0..0000000000 --- a/src/app/shared/history/history.reducer.js +++ /dev/null @@ -1,17 +0,0 @@ -import { HistoryActionTypes } from './history.actions'; -/** - * The initial state. - */ -var initialState = []; -export function historyReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case HistoryActionTypes.ADD_TO_HISTORY: { - return state.concat([action.payload.url]); - } - default: { - return state; - } - } -} -//# sourceMappingURL=history.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/history/history.reducer.js.map b/src/app/shared/history/history.reducer.js.map deleted file mode 100644 index 22c021e453..0000000000 --- a/src/app/shared/history/history.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"history.reducer.js","sourceRoot":"","sources":["history.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwC,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAS7F;;GAEG;AACH,IAAM,YAAY,GAAiB,EAAE,CAAC;AAEtC,MAAM,yBAAyB,KAAoB,EAAE,MAAqB;IAA3C,sBAAA,EAAA,oBAAoB;IACjD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,kBAAkB,CAAC,cAAc,CAAC,CAAC;YACtC,OAAW,KAAK,SAAG,MAAgC,CAAC,OAAO,CAAC,GAAG,GAAE;SAClE;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/history/selectors.js b/src/app/shared/history/selectors.js deleted file mode 100644 index 7dc14f1f21..0000000000 --- a/src/app/shared/history/selectors.js +++ /dev/null @@ -1,2 +0,0 @@ -export var historySelector = function (state) { return state.history; }; -//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/shared/history/selectors.js.map b/src/app/shared/history/selectors.js.map deleted file mode 100644 index 3956ddac81..0000000000 --- a/src/app/shared/history/selectors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,eAAe,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,OAAO,EAAb,CAAa,CAAC"} \ No newline at end of file diff --git a/src/app/shared/host-window.actions.js b/src/app/shared/host-window.actions.js deleted file mode 100644 index 528c07beab..0000000000 --- a/src/app/shared/host-window.actions.js +++ /dev/null @@ -1,13 +0,0 @@ -import { type } from './ngrx/type'; -export var HostWindowActionTypes = { - RESIZE: type('dspace/host-window/RESIZE') -}; -var HostWindowResizeAction = /** @class */ (function () { - function HostWindowResizeAction(width, height) { - this.type = HostWindowActionTypes.RESIZE; - this.payload = { width: width, height: height }; - } - return HostWindowResizeAction; -}()); -export { HostWindowResizeAction }; -//# sourceMappingURL=host-window.actions.js.map \ No newline at end of file diff --git a/src/app/shared/host-window.actions.js.map b/src/app/shared/host-window.actions.js.map deleted file mode 100644 index 8002acca50..0000000000 --- a/src/app/shared/host-window.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"host-window.actions.js","sourceRoot":"","sources":["host-window.actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,MAAM,CAAC,IAAM,qBAAqB,GAAG;IACnC,MAAM,EAAE,IAAI,CAAC,2BAA2B,CAAC;CAC1C,CAAC;AAEF;IAOE,gCAAY,KAAa,EAAE,MAAc;QANzC,SAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC;QAOlC,IAAI,CAAC,OAAO,GAAG,EAAE,KAAK,OAAA,EAAE,MAAM,QAAA,EAAE,CAAA;IAClC,CAAC;IACH,6BAAC;AAAD,CAAC,AAVD,IAUC"} \ No newline at end of file diff --git a/src/app/shared/host-window.reducer.js b/src/app/shared/host-window.reducer.js deleted file mode 100644 index befcc6156d..0000000000 --- a/src/app/shared/host-window.reducer.js +++ /dev/null @@ -1,17 +0,0 @@ -import { HostWindowActionTypes } from './host-window.actions'; -var initialState = { - width: null, - height: null -}; -export function hostWindowReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case HostWindowActionTypes.RESIZE: { - return Object.assign({}, state, action.payload); - } - default: { - return state; - } - } -} -//# sourceMappingURL=host-window.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/host-window.reducer.js.map b/src/app/shared/host-window.reducer.js.map deleted file mode 100644 index d58d4bf2c8..0000000000 --- a/src/app/shared/host-window.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"host-window.reducer.js","sourceRoot":"","sources":["host-window.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAOhF,IAAM,YAAY,GAAoB;IACpC,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;CACb,CAAC;AAEF,MAAM,4BAA4B,KAAoB,EAAE,MAAwB;IAA9C,sBAAA,EAAA,oBAAoB;IACpD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,qBAAqB,CAAC,MAAM,CAAC,CAAC;YACjC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;SACjD;QAED,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/host-window.service.js b/src/app/shared/host-window.service.js deleted file mode 100644 index 9e8f935b28..0000000000 --- a/src/app/shared/host-window.service.js +++ /dev/null @@ -1,89 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest } from 'rxjs'; -import { filter, distinctUntilChanged, map } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { createSelector, select, Store } from '@ngrx/store'; -import { hasValue } from './empty.util'; -import { CSSVariableService } from './sass-helper/sass-helper.service'; -export var WidthCategory; -(function (WidthCategory) { - WidthCategory[WidthCategory["XS"] = 0] = "XS"; - WidthCategory[WidthCategory["SM"] = 1] = "SM"; - WidthCategory[WidthCategory["MD"] = 2] = "MD"; - WidthCategory[WidthCategory["LG"] = 3] = "LG"; - WidthCategory[WidthCategory["XL"] = 4] = "XL"; -})(WidthCategory || (WidthCategory = {})); -var hostWindowStateSelector = function (state) { return state.hostWindow; }; -var widthSelector = createSelector(hostWindowStateSelector, function (hostWindow) { return hostWindow.width; }); -var HostWindowService = /** @class */ (function () { - function HostWindowService(store, variableService) { - var _this = this; - this.store = store; - this.variableService = variableService; - this.breakPoints = {}; - /* See _exposed_variables.scss */ - variableService.getAllVariables() - .subscribe(function (variables) { - _this.breakPoints.XL_MIN = parseInt(variables.xlMin, 10); - _this.breakPoints.LG_MIN = parseInt(variables.lgMin, 10); - _this.breakPoints.MD_MIN = parseInt(variables.mdMin, 10); - _this.breakPoints.SM_MIN = parseInt(variables.smMin, 10); - }); - } - HostWindowService.prototype.getWidthObs = function () { - return this.store.pipe(select(widthSelector), filter(function (width) { return hasValue(width); })); - }; - Object.defineProperty(HostWindowService.prototype, "widthCategory", { - get: function () { - var _this = this; - return this.getWidthObs().pipe(map(function (width) { - if (width < _this.breakPoints.SM_MIN) { - return WidthCategory.XS; - } - else if (width >= _this.breakPoints.SM_MIN && width < _this.breakPoints.MD_MIN) { - return WidthCategory.SM; - } - else if (width >= _this.breakPoints.MD_MIN && width < _this.breakPoints.LG_MIN) { - return WidthCategory.MD; - } - else if (width >= _this.breakPoints.LG_MIN && width < _this.breakPoints.XL_MIN) { - return WidthCategory.LG; - } - else { - return WidthCategory.XL; - } - }), distinctUntilChanged()); - }, - enumerable: true, - configurable: true - }); - HostWindowService.prototype.isXs = function () { - return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.XS; }), distinctUntilChanged()); - }; - HostWindowService.prototype.isSm = function () { - return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.SM; }), distinctUntilChanged()); - }; - HostWindowService.prototype.isMd = function () { - return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.MD; }), distinctUntilChanged()); - }; - HostWindowService.prototype.isLg = function () { - return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.LG; }), distinctUntilChanged()); - }; - HostWindowService.prototype.isXl = function () { - return this.widthCategory.pipe(map(function (widthCat) { return widthCat === WidthCategory.XL; }), distinctUntilChanged()); - }; - HostWindowService.prototype.isXsOrSm = function () { - return observableCombineLatest(this.isXs(), this.isSm()).pipe(map(function (_a) { - var isXs = _a[0], isSm = _a[1]; - return isXs || isSm; - }), distinctUntilChanged()); - }; - HostWindowService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store, - CSSVariableService]) - ], HostWindowService); - return HostWindowService; -}()); -export { HostWindowService }; -//# sourceMappingURL=host-window.service.js.map \ No newline at end of file diff --git a/src/app/shared/host-window.service.js.map b/src/app/shared/host-window.service.js.map deleted file mode 100644 index 7d1fc9e91a..0000000000 --- a/src/app/shared/host-window.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"host-window.service.js","sourceRoot":"","sources":["host-window.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/input-suggestions/input-suggestions.component.js b/src/app/shared/input-suggestions/input-suggestions.component.js deleted file mode 100644 index 6f5e95d720..0000000000 --- a/src/app/shared/input-suggestions/input-suggestions.component.js +++ /dev/null @@ -1,255 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, ElementRef, EventEmitter, forwardRef, Input, Output, QueryList, ViewChild, ViewChildren } from '@angular/core'; -import { BehaviorSubject } from 'rxjs'; -import { hasValue, isNotEmpty } from '../empty.util'; -import { NG_VALUE_ACCESSOR } from '@angular/forms'; -var InputSuggestionsComponent = /** @class */ (function () { - function InputSuggestionsComponent() { - /** - * The suggestions that should be shown - */ - this.suggestions = []; - /** - * The time waited to detect if any other input will follow before requesting the suggestions - */ - this.debounceTime = 500; - /** - * Placeholder attribute for the input field - */ - this.placeholder = ''; - /** - * Whether or not the current input is valid - */ - this.valid = true; - /** - * Output for when the form is submitted - */ - this.submitSuggestion = new EventEmitter(); - /** - * Output for when a suggestion is clicked - */ - this.clickSuggestion = new EventEmitter(); - /** - * Output for when something is typed in the input field - */ - this.typeSuggestion = new EventEmitter(); - /** - * Output for when new suggestions should be requested - */ - this.findSuggestions = new EventEmitter(); - /** - * Emits true when the list of suggestions should be shown - */ - this.show = new BehaviorSubject(false); - /** - * Index of the currently selected suggestion - */ - this.selectedIndex = -1; - /** - * True when the dropdown should not reopen - */ - this.blockReopen = false; - /** Fields needed to add ngModel */ - this.disabled = false; - this.propagateChange = function (_) { - /* Empty implementation */ - }; - this.propagateTouch = function (_) { - /* Empty implementation */ - }; - /* END - Method's needed to add ngModel to a component */ - } - InputSuggestionsComponent_1 = InputSuggestionsComponent; - /** - * When any of the inputs change, check if we should still show the suggestions - */ - InputSuggestionsComponent.prototype.ngOnChanges = function (changes) { - if (hasValue(changes.suggestions)) { - this.show.next(isNotEmpty(changes.suggestions.currentValue) && !changes.suggestions.firstChange); - } - }; - /** - * Move the focus on one of the suggestions up to the previous suggestion - * When no suggestion is currently in focus OR the first suggestion is in focus: shift to the last suggestion - */ - InputSuggestionsComponent.prototype.shiftFocusUp = function (event) { - event.preventDefault(); - if (this.selectedIndex > 0) { - this.selectedIndex--; - this.selectedIndex = (this.selectedIndex + this.resultViews.length) % this.resultViews.length; // Prevent negative modulo outcome - } - else { - this.selectedIndex = this.resultViews.length - 1; - } - this.changeFocus(); - }; - /** - * Move the focus on one of the suggestions up to the next suggestion - * When no suggestion is currently in focus OR the last suggestion is in focus: shift to the first suggestion - */ - InputSuggestionsComponent.prototype.shiftFocusDown = function (event) { - event.preventDefault(); - if (this.selectedIndex >= 0) { - this.selectedIndex++; - this.selectedIndex %= this.resultViews.length; - } - else { - this.selectedIndex = 0; - } - this.changeFocus(); - }; - /** - * Perform the change of focus to the current selectedIndex - */ - InputSuggestionsComponent.prototype.changeFocus = function () { - if (this.resultViews.length > 0) { - this.resultViews.toArray()[this.selectedIndex].nativeElement.focus(); - } - }; - /** - * When any key is pressed (except for the Enter button) the query input should move to the input field - * @param {KeyboardEvent} event The keyboard event - */ - InputSuggestionsComponent.prototype.onKeydown = function (event) { - if (event.key !== 'Enter') { - this.queryInput.nativeElement.focus(); - } - }; - /** - * Changes the show variable so the suggestion dropdown closes - */ - InputSuggestionsComponent.prototype.close = function () { - this.show.next(false); - }; - /** - * For usage of the isNotEmpty function in the template - */ - InputSuggestionsComponent.prototype.isNotEmpty = function (data) { - return isNotEmpty(data); - }; - /** - * Make sure that if a suggestion is clicked, the suggestions dropdown closes, does not reopen and the focus moves to the input field - */ - InputSuggestionsComponent.prototype.onClickSuggestion = function (data) { - this.value = data; - this.clickSuggestion.emit(data); - this.close(); - this.blockReopen = true; - this.queryInput.nativeElement.focus(); - return false; - }; - /** - * Finds new suggestions when necessary - * @param data The query value to emit - */ - InputSuggestionsComponent.prototype.find = function (data) { - if (!this.blockReopen) { - this.findSuggestions.emit(data); - this.typeSuggestion.emit(data); - } - this.blockReopen = false; - }; - InputSuggestionsComponent.prototype.onSubmit = function (data) { - this.value = data; - this.submitSuggestion.emit(data); - }; - /* START - Method's needed to add ngModel (ControlValueAccessor) to a component */ - InputSuggestionsComponent.prototype.registerOnChange = function (fn) { - this.propagateChange = fn; - }; - InputSuggestionsComponent.prototype.registerOnTouched = function (fn) { - this.propagateTouch = fn; - }; - InputSuggestionsComponent.prototype.setDisabledState = function (isDisabled) { - this.disabled = isDisabled; - }; - InputSuggestionsComponent.prototype.writeValue = function (value) { - this.value = value; - }; - Object.defineProperty(InputSuggestionsComponent.prototype, "value", { - get: function () { - return this._value; - }, - set: function (val) { - this._value = val; - this.propagateChange(this._value); - }, - enumerable: true, - configurable: true - }); - var InputSuggestionsComponent_1; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], InputSuggestionsComponent.prototype, "suggestions", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "debounceTime", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "placeholder", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "action", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "name", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "valid", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "submitSuggestion", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "clickSuggestion", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "typeSuggestion", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "findSuggestions", void 0); - tslib_1.__decorate([ - ViewChild('inputField'), - tslib_1.__metadata("design:type", ElementRef) - ], InputSuggestionsComponent.prototype, "queryInput", void 0); - tslib_1.__decorate([ - ViewChildren('suggestion'), - tslib_1.__metadata("design:type", QueryList) - ], InputSuggestionsComponent.prototype, "resultViews", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], InputSuggestionsComponent.prototype, "disabled", void 0); - InputSuggestionsComponent = InputSuggestionsComponent_1 = tslib_1.__decorate([ - Component({ - selector: 'ds-input-suggestions', - styleUrls: ['./input-suggestions.component.scss'], - templateUrl: './input-suggestions.component.html', - providers: [ - { - provide: NG_VALUE_ACCESSOR, - // Usage of forwardRef necessary https://github.com/angular/angular.io/issues/1151 - // tslint:disable-next-line:no-forward-ref - useExisting: forwardRef(function () { return InputSuggestionsComponent_1; }), - multi: true - } - ] - }) - /** - * Component representing a form with a autocomplete functionality - */ - ], InputSuggestionsComponent); - return InputSuggestionsComponent; -}()); -export { InputSuggestionsComponent }; -//# sourceMappingURL=input-suggestions.component.js.map \ No newline at end of file diff --git a/src/app/shared/input-suggestions/input-suggestions.component.js.map b/src/app/shared/input-suggestions/input-suggestions.component.js.map deleted file mode 100644 index 2a6f8351c7..0000000000 --- a/src/app/shared/input-suggestions/input-suggestions.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"input-suggestions.component.js","sourceRoot":"","sources":["input-suggestions.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/input-suggestions/input-suggestions.model.js b/src/app/shared/input-suggestions/input-suggestions.model.js deleted file mode 100644 index 064373be13..0000000000 --- a/src/app/shared/input-suggestions/input-suggestions.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=input-suggestions.model.js.map \ No newline at end of file diff --git a/src/app/shared/input-suggestions/input-suggestions.model.js.map b/src/app/shared/input-suggestions/input-suggestions.model.js.map deleted file mode 100644 index f70e778309..0000000000 --- a/src/app/shared/input-suggestions/input-suggestions.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"input-suggestions.model.js","sourceRoot":"","sources":["input-suggestions.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/items/item-type-decorator.js b/src/app/shared/items/item-type-decorator.js deleted file mode 100644 index 22a3ede845..0000000000 --- a/src/app/shared/items/item-type-decorator.js +++ /dev/null @@ -1,62 +0,0 @@ -import { hasNoValue, hasValue } from '../empty.util'; -import { MetadataRepresentationType } from '../../core/shared/metadata-representation/metadata-representation.model'; -export var ItemViewMode; -(function (ItemViewMode) { - ItemViewMode["Element"] = "element"; - ItemViewMode["Full"] = "full"; - ItemViewMode["Metadata"] = "metadata"; -})(ItemViewMode || (ItemViewMode = {})); -export var DEFAULT_ITEM_TYPE = 'Default'; -export var DEFAULT_VIEW_MODE = ItemViewMode.Element; -export var NO_REPRESENTATION_TYPE = MetadataRepresentationType.None; -export var DEFAULT_REPRESENTATION_TYPE = MetadataRepresentationType.PlainText; -var map = new Map(); -/** - * Decorator used for rendering simple item pages by type and viewMode (and optionally a representationType) - * @param type - * @param viewMode - * @param representationType - */ -export function rendersItemType(type, viewMode, representationType) { - return function decorator(component) { - if (hasNoValue(map.get(viewMode))) { - map.set(viewMode, new Map()); - } - if (hasNoValue(map.get(viewMode).get(type))) { - map.get(viewMode).set(type, new Map()); - } - if (hasNoValue(representationType)) { - representationType = NO_REPRESENTATION_TYPE; - } - if (hasValue(map.get(viewMode).get(type).get(representationType))) { - throw new Error("There can't be more than one component to render Metadata of type \"" + type + "\" in view mode \"" + viewMode + "\" with representation type \"" + representationType + "\""); - } - map.get(viewMode).get(type).set(representationType, component); - }; -} -/** - * Get the component used for rendering an item by type and viewMode (and optionally a representationType) - * @param type - * @param viewMode - * @param representationType - */ -export function getComponentByItemType(type, viewMode, representationType) { - if (hasNoValue(representationType)) { - representationType = NO_REPRESENTATION_TYPE; - } - if (hasNoValue(map.get(viewMode))) { - viewMode = DEFAULT_VIEW_MODE; - } - if (hasNoValue(map.get(viewMode).get(type))) { - type = DEFAULT_ITEM_TYPE; - } - var representationComponent = map.get(viewMode).get(type).get(representationType); - if (hasNoValue(representationComponent)) { - representationComponent = map.get(viewMode).get(type).get(DEFAULT_REPRESENTATION_TYPE); - } - if (hasNoValue(representationComponent)) { - representationComponent = map.get(viewMode).get(type).get(NO_REPRESENTATION_TYPE); - } - return representationComponent; -} -//# sourceMappingURL=item-type-decorator.js.map \ No newline at end of file diff --git a/src/app/shared/items/item-type-decorator.js.map b/src/app/shared/items/item-type-decorator.js.map deleted file mode 100644 index 7f674e0c34..0000000000 --- a/src/app/shared/items/item-type-decorator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-type-decorator.js","sourceRoot":"","sources":["item-type-decorator.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/items/switcher/item-type-switcher.component.js b/src/app/shared/items/switcher/item-type-switcher.component.js deleted file mode 100644 index 78345f7c37..0000000000 --- a/src/app/shared/items/switcher/item-type-switcher.component.js +++ /dev/null @@ -1,60 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, InjectionToken, Injector, Input } from '@angular/core'; -import { hasValue } from '../../empty.util'; -import { getComponentByItemType } from '../item-type-decorator'; -export var ITEM = new InjectionToken('item'); -var ItemTypeSwitcherComponent = /** @class */ (function () { - function ItemTypeSwitcherComponent(injector) { - this.injector = injector; - } - ItemTypeSwitcherComponent.prototype.ngOnInit = function () { - var _this = this; - this.objectInjector = Injector.create({ - providers: [{ provide: ITEM, useFactory: function () { return _this.object; }, deps: [] }], - parent: this.injector - }); - }; - /** - * Fetch the component depending on the item's relationship type - * @returns {string} - */ - ItemTypeSwitcherComponent.prototype.getComponent = function () { - if (hasValue(this.object.representationType)) { - var metadataRepresentation = this.object; - return getComponentByItemType(metadataRepresentation.itemType, this.viewMode, metadataRepresentation.representationType); - } - var item; - if (hasValue(this.object.indexableObject)) { - var searchResult = this.object; - item = searchResult.indexableObject; - } - else { - item = this.object; - } - var type = item.firstMetadataValue('relationship.type'); - return getComponentByItemType(type, this.viewMode); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ItemTypeSwitcherComponent.prototype, "object", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ItemTypeSwitcherComponent.prototype, "viewMode", void 0); - ItemTypeSwitcherComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-type-switcher', - styleUrls: ['./item-type-switcher.component.scss'], - templateUrl: './item-type-switcher.component.html' - }) - /** - * Component for determining what component to use depending on the item's relationship type (relationship.type) - */ - , - tslib_1.__metadata("design:paramtypes", [Injector]) - ], ItemTypeSwitcherComponent); - return ItemTypeSwitcherComponent; -}()); -export { ItemTypeSwitcherComponent }; -//# sourceMappingURL=item-type-switcher.component.js.map \ No newline at end of file diff --git a/src/app/shared/items/switcher/item-type-switcher.component.js.map b/src/app/shared/items/switcher/item-type-switcher.component.js.map deleted file mode 100644 index 37c973e36a..0000000000 --- a/src/app/shared/items/switcher/item-type-switcher.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-type-switcher.component.js","sourceRoot":"","sources":["item-type-switcher.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGnF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAGhE,MAAM,CAAC,IAAM,IAAI,GAA2B,IAAI,cAAc,CAAS,MAAM,CAAC,CAAC;AAU/E;IAgBE,mCAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtC,CAAC;IAED,4CAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,cAAM,OAAA,KAAI,CAAC,MAAM,EAAX,CAAW,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC;YACtE,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IAEL,CAAC;IAED;;;OAGG;IACH,gDAAY,GAAZ;QACE,IAAI,QAAQ,CAAE,IAAI,CAAC,MAAc,CAAC,kBAAkB,CAAC,EAAE;YACrD,IAAM,sBAAsB,GAAG,IAAI,CAAC,MAAgC,CAAC;YACrE,OAAO,sBAAsB,CAAC,sBAAsB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;SAC1H;QAED,IAAI,IAAU,CAAC;QACf,IAAI,QAAQ,CAAE,IAAI,CAAC,MAAc,CAAC,eAAe,CAAC,EAAE;YAClD,IAAM,YAAY,GAAG,IAAI,CAAC,MAA0B,CAAC;YACrD,IAAI,GAAG,YAAY,CAAC,eAAe,CAAC;SACrC;aAAM;YACL,IAAI,GAAG,IAAI,CAAC,MAAc,CAAC;SAC5B;QAED,IAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;QAC1D,OAAO,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IA3CQ;QAAR,KAAK,EAAE;;6DAA4D;IAK3D;QAAR,KAAK,EAAE;;+DAAkB;IATf,yBAAyB;QARrC,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,SAAS,EAAE,CAAC,qCAAqC,CAAC;YAClD,WAAW,EAAE,qCAAqC;SACnD,CAAC;QACF;;WAEG;;iDAiB6B,QAAQ;OAhB3B,yBAAyB,CAgDrC;IAAD,gCAAC;CAAA,AAhDD,IAgDC;SAhDY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/lang-switch/lang-switch.component.js b/src/app/shared/lang-switch/lang-switch.component.js deleted file mode 100644 index cc3576585e..0000000000 --- a/src/app/shared/lang-switch/lang-switch.component.js +++ /dev/null @@ -1,44 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { GLOBAL_CONFIG } from '../../../config'; -import { TranslateService } from '@ngx-translate/core'; -var LangSwitchComponent = /** @class */ (function () { - function LangSwitchComponent(config, translate) { - this.config = config; - this.translate = translate; - } - LangSwitchComponent.prototype.ngOnInit = function () { - this.activeLangs = this.config.languages.filter(function (MyLangConfig) { return MyLangConfig.active === true; }); - this.moreThanOneLanguage = (this.activeLangs.length > 1); - }; - /** - * Returns the label for the current language - */ - LangSwitchComponent.prototype.currentLangLabel = function () { - var _this = this; - return this.activeLangs.find(function (MyLangConfig) { return MyLangConfig.code === _this.translate.currentLang; }).label; - }; - /** - * Returns the label for a specific language code - */ - LangSwitchComponent.prototype.langLabel = function (langcode) { - return this.activeLangs.find(function (MyLangConfig) { return MyLangConfig.code === langcode; }).label; - }; - LangSwitchComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-lang-switch', - styleUrls: ['lang-switch.component.scss'], - templateUrl: 'lang-switch.component.html', - }) - /** - * Component representing a switch for changing the interface language throughout the application - * If only one language is active, the component will disappear as there are no languages to switch to. - */ - , - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, TranslateService]) - ], LangSwitchComponent); - return LangSwitchComponent; -}()); -export { LangSwitchComponent }; -//# sourceMappingURL=lang-switch.component.js.map \ No newline at end of file diff --git a/src/app/shared/lang-switch/lang-switch.component.js.map b/src/app/shared/lang-switch/lang-switch.component.js.map deleted file mode 100644 index c6d0bac160..0000000000 --- a/src/app/shared/lang-switch/lang-switch.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"lang-switch.component.js","sourceRoot":"","sources":["lang-switch.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,SAAS,EAAE,MAAM,EAAS,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,aAAa,EAAgB,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAarD;IAQE,6BACgC,MAAoB,EAC3C,SAA2B;QADJ,WAAM,GAAN,MAAM,CAAc;QAC3C,cAAS,GAAT,SAAS,CAAkB;IAEpC,CAAC;IAED,sCAAQ,GAAR;QACE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,MAAM,KAAK,IAAI,EAA5B,CAA4B,CAAC,CAAC;QAChG,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,8CAAgB,GAAhB;QAAA,iBAEC;QADC,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,IAAI,KAAK,KAAI,CAAC,SAAS,CAAC,WAAW,EAAhD,CAAgD,CAAC,CAAC,KAAK,CAAC;IACzG,CAAC;IAED;;OAEG;IACH,uCAAS,GAAT,UAAU,QAAgB;QACxB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,IAAI,KAAK,QAAQ,EAA9B,CAA8B,CAAC,CAAC,KAAK,CAAC;IACvF,CAAC;IA/BU,mBAAmB;QAV/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;SAC1C,CAAC;QAEF;;;WAGG;;QAUE,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACJ,gBAAgB;OAVzB,mBAAmB,CAiC/B;IAAD,0BAAC;CAAA,AAjCD,IAiCC;SAjCY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/loading/loading.component.js b/src/app/shared/loading/loading.component.js deleted file mode 100644 index 9f72d4cb01..0000000000 --- a/src/app/shared/loading/loading.component.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { TranslateService } from '@ngx-translate/core'; -import { hasValue } from '../empty.util'; -var LoadingComponent = /** @class */ (function () { - function LoadingComponent(translate) { - this.translate = translate; - this.showMessage = true; - } - LoadingComponent.prototype.ngOnInit = function () { - var _this = this; - if (this.message === undefined) { - this.subscription = this.translate.get('loading.default').subscribe(function (message) { - _this.message = message; - }); - } - }; - LoadingComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.subscription)) { - this.subscription.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], LoadingComponent.prototype, "message", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], LoadingComponent.prototype, "showMessage", void 0); - LoadingComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-loading', - styleUrls: ['./loading.component.scss'], - templateUrl: './loading.component.html' - }), - tslib_1.__metadata("design:paramtypes", [TranslateService]) - ], LoadingComponent); - return LoadingComponent; -}()); -export { LoadingComponent }; -//# sourceMappingURL=loading.component.js.map \ No newline at end of file diff --git a/src/app/shared/loading/loading.component.js.map b/src/app/shared/loading/loading.component.js.map deleted file mode 100644 index f4aa2dcb59..0000000000 --- a/src/app/shared/loading/loading.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"loading.component.js","sourceRoot":"","sources":["loading.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzC;IAOE,0BAAoB,SAA2B;QAA3B,cAAS,GAAT,SAAS,CAAkB;QAJtC,gBAAW,GAAG,IAAI,CAAC;IAM5B,CAAC;IAED,mCAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,UAAC,OAAe;gBAClF,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YACzB,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;IAED,sCAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC/B,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACjC;IACH,CAAC;IArBQ;QAAR,KAAK,EAAE;;qDAAiB;IAChB;QAAR,KAAK,EAAE;;yDAAoB;IAHjB,gBAAgB;QAL5B,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,WAAW,EAAE,0BAA0B;SACxC,CAAC;iDAQ+B,gBAAgB;OAPpC,gBAAgB,CAyB5B;IAAD,uBAAC;CAAA,AAzBD,IAyBC;SAzBY,gBAAgB"} \ No newline at end of file diff --git a/src/app/shared/log-in/log-in.component.js b/src/app/shared/log-in/log-in.component.js deleted file mode 100644 index c1140b5967..0000000000 --- a/src/app/shared/log-in/log-in.component.js +++ /dev/null @@ -1,129 +0,0 @@ -import * as tslib_1 from "tslib"; -import { filter, map, takeWhile } from 'rxjs/operators'; -import { Component } from '@angular/core'; -import { FormBuilder, Validators } from '@angular/forms'; -import { select, Store } from '@ngrx/store'; -import { AuthenticateAction, ResetAuthenticationMessagesAction } from '../../core/auth/auth.actions'; -import { getAuthenticationError, getAuthenticationInfo, isAuthenticated, isAuthenticationLoading, } from '../../core/auth/selectors'; -import { isNotEmpty } from '../empty.util'; -import { fadeOut } from '../animations/fade'; -import { AuthService } from '../../core/auth/auth.service'; -/** - * /users/sign-in - * @class LogInComponent - */ -var LogInComponent = /** @class */ (function () { - /** - * @constructor - * @param {AuthService} authService - * @param {FormBuilder} formBuilder - * @param {Store} store - */ - function LogInComponent(authService, formBuilder, store) { - this.authService = authService; - this.formBuilder = formBuilder; - this.store = store; - /** - * Has authentication error. - * @type {boolean} - */ - this.hasError = false; - /** - * Has authentication message. - * @type {boolean} - */ - this.hasMessage = false; - /** - * Component state. - * @type {boolean} - */ - this.alive = true; - } - /** - * Lifecycle hook that is called after data-bound properties of a directive are initialized. - * @method ngOnInit - */ - LogInComponent.prototype.ngOnInit = function () { - var _this = this; - // set isAuthenticated - this.isAuthenticated = this.store.pipe(select(isAuthenticated)); - // set formGroup - this.form = this.formBuilder.group({ - email: ['', Validators.required], - password: ['', Validators.required] - }); - // set error - this.error = this.store.pipe(select(getAuthenticationError), map(function (error) { - _this.hasError = (isNotEmpty(error)); - return error; - })); - // set error - this.message = this.store.pipe(select(getAuthenticationInfo), map(function (message) { - _this.hasMessage = (isNotEmpty(message)); - return message; - })); - // set loading - this.loading = this.store.pipe(select(isAuthenticationLoading)); - // subscribe to success - this.store.pipe(select(isAuthenticated), takeWhile(function () { return _this.alive; }), filter(function (authenticated) { return authenticated; })) - .subscribe(function () { - _this.authService.redirectToPreviousUrl(); - }); - }; - /** - * Lifecycle hook that is called when a directive, pipe or service is destroyed. - * @method ngOnDestroy - */ - LogInComponent.prototype.ngOnDestroy = function () { - this.alive = false; - }; - /** - * Reset error or message. - */ - LogInComponent.prototype.resetErrorOrMessage = function () { - if (this.hasError || this.hasMessage) { - this.store.dispatch(new ResetAuthenticationMessagesAction()); - this.hasError = false; - this.hasMessage = false; - } - }; - /** - * To the registration page. - * @method register - */ - LogInComponent.prototype.register = function () { - // TODO enable after registration process is done - // this.router.navigate(['/register']); - }; - /** - * Submit the authentication form. - * @method submit - */ - LogInComponent.prototype.submit = function () { - this.resetErrorOrMessage(); - // get email and password values - var email = this.form.get('email').value; - var password = this.form.get('password').value; - // trim values - email.trim(); - password.trim(); - // dispatch AuthenticationAction - this.store.dispatch(new AuthenticateAction(email, password)); - // clear form - this.form.reset(); - }; - LogInComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-log-in', - templateUrl: './log-in.component.html', - styleUrls: ['./log-in.component.scss'], - animations: [fadeOut] - }), - tslib_1.__metadata("design:paramtypes", [AuthService, - FormBuilder, - Store]) - ], LogInComponent); - return LogInComponent; -}()); -export { LogInComponent }; -//# sourceMappingURL=log-in.component.js.map \ No newline at end of file diff --git a/src/app/shared/log-in/log-in.component.js.map b/src/app/shared/log-in/log-in.component.js.map deleted file mode 100644 index 292c21cf2d..0000000000 --- a/src/app/shared/log-in/log-in.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"log-in.component.js","sourceRoot":"","sources":["log-in.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/log-out/log-out.component.js b/src/app/shared/log-out/log-out.component.js deleted file mode 100644 index 1df625e1b2..0000000000 --- a/src/app/shared/log-out/log-out.component.js +++ /dev/null @@ -1,47 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { Router } from '@angular/router'; -import { select, Store } from '@ngrx/store'; -import { LogOutAction } from '../../core/auth/auth.actions'; -import { getLogOutError, } from '../../core/auth/selectors'; -import { fadeOut } from '../animations/fade'; -var LogOutComponent = /** @class */ (function () { - /** - * @constructor - * @param {Store} store - * @param {Router} router - */ - function LogOutComponent(router, store) { - this.router = router; - this.store = store; - } - /** - * Lifecycle hook that is called after data-bound properties of a directive are initialized. - */ - LogOutComponent.prototype.ngOnInit = function () { - // set error - this.error = this.store.pipe(select(getLogOutError)); - }; - /** - * Go to the home page. - */ - LogOutComponent.prototype.home = function () { - this.router.navigate(['/home']); - }; - LogOutComponent.prototype.logOut = function () { - this.store.dispatch(new LogOutAction()); - }; - LogOutComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-log-out', - templateUrl: './log-out.component.html', - styleUrls: ['./log-out.component.scss'], - animations: [fadeOut] - }), - tslib_1.__metadata("design:paramtypes", [Router, - Store]) - ], LogOutComponent); - return LogOutComponent; -}()); -export { LogOutComponent }; -//# sourceMappingURL=log-out.component.js.map \ No newline at end of file diff --git a/src/app/shared/log-out/log-out.component.js.map b/src/app/shared/log-out/log-out.component.js.map deleted file mode 100644 index f359683f89..0000000000 --- a/src/app/shared/log-out/log-out.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"log-out.component.js","sourceRoot":"","sources":["log-out.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,cAAc,GAAG,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAQ7C;IAOE;;;;OAIG;IACH,yBAAoB,MAAc,EACd,KAAsB;QADtB,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAiB;IAC1C,CAAC;IAED;;OAEG;IACH,kCAAQ,GAAR;QACE,YAAY;QACZ,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,8BAAI,GAAX;QACE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAClC,CAAC;IAEM,gCAAM,GAAb;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;IAC1C,CAAC;IAjCU,eAAe;QAN3B,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,WAAW,EAAE,0BAA0B;YACvC,SAAS,EAAE,CAAC,0BAA0B,CAAC;YACvC,UAAU,EAAE,CAAC,OAAO,CAAC;SACtB,CAAC;iDAa4B,MAAM;YACP,KAAK;OAbrB,eAAe,CAmC3B;IAAD,sBAAC;CAAA,AAnCD,IAmCC;SAnCY,eAAe"} \ No newline at end of file diff --git a/src/app/shared/menu/initial-menus-state.js b/src/app/shared/menu/initial-menus-state.js deleted file mode 100644 index a1df50135d..0000000000 --- a/src/app/shared/menu/initial-menus-state.js +++ /dev/null @@ -1,42 +0,0 @@ -var _a; -/** - * Availavle Menu IDs - */ -export var MenuID; -(function (MenuID) { - MenuID["ADMIN"] = "admin-sidebar"; - MenuID["PUBLIC"] = "public"; -})(MenuID || (MenuID = {})); -/** - * List of possible MenuItemTypes - */ -export var MenuItemType; -(function (MenuItemType) { - MenuItemType[MenuItemType["TEXT"] = 0] = "TEXT"; - MenuItemType[MenuItemType["LINK"] = 1] = "LINK"; - MenuItemType[MenuItemType["ALTMETRIC"] = 2] = "ALTMETRIC"; - MenuItemType[MenuItemType["SEARCH"] = 3] = "SEARCH"; - MenuItemType[MenuItemType["ONCLICK"] = 4] = "ONCLICK"; -})(MenuItemType || (MenuItemType = {})); -/** - * The initial state of the menus - */ -export var initialMenusState = (_a = {}, - _a[MenuID.ADMIN] = { - id: MenuID.ADMIN, - collapsed: true, - previewCollapsed: true, - visible: false, - sections: {}, - sectionToSubsectionIndex: {} - }, - _a[MenuID.PUBLIC] = { - id: MenuID.PUBLIC, - collapsed: true, - previewCollapsed: true, - visible: true, - sections: {}, - sectionToSubsectionIndex: {} - }, - _a); -//# sourceMappingURL=initial-menus-state.js.map \ No newline at end of file diff --git a/src/app/shared/menu/initial-menus-state.js.map b/src/app/shared/menu/initial-menus-state.js.map deleted file mode 100644 index 8489a45d64..0000000000 --- a/src/app/shared/menu/initial-menus-state.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"initial-menus-state.js","sourceRoot":"","sources":["initial-menus-state.ts"],"names":[],"mappings":";AAEA;;GAEG;AACH,MAAM,CAAN,IAAY,MAGX;AAHD,WAAY,MAAM;IAChB,iCAAuB,CAAA;IACvB,2BAAiB,CAAA;AACnB,CAAC,EAHW,MAAM,KAAN,MAAM,QAGjB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,YAEX;AAFD,WAAY,YAAY;IACtB,+CAAI,CAAA;IAAE,+CAAI,CAAA;IAAE,yDAAS,CAAA;IAAE,mDAAM,CAAA;IAAE,qDAAO,CAAA;AACxC,CAAC,EAFW,YAAY,KAAZ,YAAY,QAEvB;AAED;;GAEG;AACH,MAAM,CAAC,IAAM,iBAAiB;IAC5B,GAAC,MAAM,CAAC,KAAK,IACX;QACE,EAAE,EAAE,MAAM,CAAC,KAAK;QAChB,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,IAAI;QACtB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,EAAE;QACZ,wBAAwB,EAAE,EAAE;KAC7B;IACH,GAAC,MAAM,CAAC,MAAM,IACZ;QACE,EAAE,EAAE,MAAM,CAAC,MAAM;QACjB,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,IAAI;QACtB,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,EAAE;QACZ,wBAAwB,EAAE,EAAE;KAC7B;OACJ,CAAC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item.decorator.js b/src/app/shared/menu/menu-item.decorator.js deleted file mode 100644 index 3e6584ced7..0000000000 --- a/src/app/shared/menu/menu-item.decorator.js +++ /dev/null @@ -1,23 +0,0 @@ -var menuMenuItemComponentMap = new Map(); -/** - * Decorator function to link a MenuItemType to a Component - * @param {MenuItemType} type The MenuItemType of the MenuSection's model - * @returns {(sectionComponent: GenericContructor) => void} - */ -export function rendersMenuItemForType(type) { - return function decorator(sectionComponent) { - if (!sectionComponent) { - return; - } - menuMenuItemComponentMap.set(type, sectionComponent); - }; -} -/** - * Retrieves the Component matching a given MenuItemType - * @param {MenuItemType} type The given MenuItemType - * @returns {GenericConstructor} The constructor of the Component that matches the MenuItemType - */ -export function getComponentForMenuItemType(type) { - return menuMenuItemComponentMap.get(type); -} -//# sourceMappingURL=menu-item.decorator.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item.decorator.js.map b/src/app/shared/menu/menu-item.decorator.js.map deleted file mode 100644 index 7b8722a87b..0000000000 --- a/src/app/shared/menu/menu-item.decorator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu-item.decorator.js","sourceRoot":"","sources":["menu-item.decorator.ts"],"names":[],"mappings":"AAEA,IAAM,wBAAwB,GAAG,IAAI,GAAG,EAAE,CAAC;AAE3C;;;;GAIG;AACH,MAAM,iCAAiC,IAAkB;IACvD,OAAO,mBAAmB,gBAAqB;QAC7C,IAAI,CAAC,gBAAgB,EAAE;YACrB,OAAO;SACR;QACD,wBAAwB,CAAC,GAAG,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACvD,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,sCAAsC,IAAkB;IAC5D,OAAO,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/link-menu-item.component.js b/src/app/shared/menu/menu-item/link-menu-item.component.js deleted file mode 100644 index 3f5af87f61..0000000000 --- a/src/app/shared/menu/menu-item/link-menu-item.component.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { LinkMenuItemModel } from './models/link.model'; -import { MenuItemType } from '../initial-menus-state'; -import { rendersMenuItemForType } from '../menu-item.decorator'; -import { GLOBAL_CONFIG } from '../../../../config'; -import { isNotEmpty } from '../../empty.util'; -/** - * Component that renders a menu section of type LINK - */ -var LinkMenuItemComponent = /** @class */ (function () { - function LinkMenuItemComponent(item, EnvConfig) { - this.EnvConfig = EnvConfig; - this.item = item; - } - LinkMenuItemComponent.prototype.ngOnInit = function () { - this.hasLink = isNotEmpty(this.item.link); - }; - LinkMenuItemComponent.prototype.getRouterLink = function () { - if (this.hasLink) { - return this.EnvConfig.ui.nameSpace + this.item.link; - } - return undefined; - }; - LinkMenuItemComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-link-menu-item', - templateUrl: './link-menu-item.component.html' - }), - rendersMenuItemForType(MenuItemType.LINK), - tslib_1.__param(0, Inject('itemModelProvider')), tslib_1.__param(1, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [LinkMenuItemModel, Object]) - ], LinkMenuItemComponent); - return LinkMenuItemComponent; -}()); -export { LinkMenuItemComponent }; -//# sourceMappingURL=link-menu-item.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/link-menu-item.component.js.map b/src/app/shared/menu/menu-item/link-menu-item.component.js.map deleted file mode 100644 index 4c12ee42e4..0000000000 --- a/src/app/shared/menu/menu-item/link-menu-item.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"link-menu-item.component.js","sourceRoot":"","sources":["link-menu-item.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAiB,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAgB,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AAMH;IAGE,+BAAyC,IAAuB,EAAiC,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;QACtH,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,wCAAQ,GAAR;QACE,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,6CAAa,GAAb;QACE,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;SACrD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAhBU,qBAAqB;QALjC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACD,sBAAsB,CAAC,YAAY,CAAC,IAAI,CAAC;QAI3B,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA,EAA2B,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;iDAAzC,iBAAiB;OAHrD,qBAAqB,CAkBjC;IAAD,4BAAC;CAAA,AAlBD,IAkBC;SAlBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/altmetric.model.js b/src/app/shared/menu/menu-item/models/altmetric.model.js deleted file mode 100644 index 1cac0f5573..0000000000 --- a/src/app/shared/menu/menu-item/models/altmetric.model.js +++ /dev/null @@ -1,12 +0,0 @@ -import { MenuItemType } from '../../initial-menus-state'; -/** - * Model representing an Altmetric Menu Section - */ -var AltmetricMenuItemModel = /** @class */ (function () { - function AltmetricMenuItemModel() { - this.type = MenuItemType.ALTMETRIC; - } - return AltmetricMenuItemModel; -}()); -export { AltmetricMenuItemModel }; -//# sourceMappingURL=altmetric.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/altmetric.model.js.map b/src/app/shared/menu/menu-item/models/altmetric.model.js.map deleted file mode 100644 index 73415c2848..0000000000 --- a/src/app/shared/menu/menu-item/models/altmetric.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"altmetric.model.js","sourceRoot":"","sources":["altmetric.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,SAAS,CAAC;IAEhC,CAAC;IAAD,6BAAC;AAAD,CAAC,AAHD,IAGC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/link.model.js b/src/app/shared/menu/menu-item/models/link.model.js deleted file mode 100644 index 5e9c7e136e..0000000000 --- a/src/app/shared/menu/menu-item/models/link.model.js +++ /dev/null @@ -1,12 +0,0 @@ -import { MenuItemType } from '../../initial-menus-state'; -/** - * Model representing an Link Menu Section - */ -var LinkMenuItemModel = /** @class */ (function () { - function LinkMenuItemModel() { - this.type = MenuItemType.LINK; - } - return LinkMenuItemModel; -}()); -export { LinkMenuItemModel }; -//# sourceMappingURL=link.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/link.model.js.map b/src/app/shared/menu/menu-item/models/link.model.js.map deleted file mode 100644 index 636a9341bd..0000000000 --- a/src/app/shared/menu/menu-item/models/link.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"link.model.js","sourceRoot":"","sources":["link.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,IAAI,CAAC;IAG3B,CAAC;IAAD,wBAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/menu-item.model.js b/src/app/shared/menu/menu-item/models/menu-item.model.js deleted file mode 100644 index 89b0604ff6..0000000000 --- a/src/app/shared/menu/menu-item/models/menu-item.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=menu-item.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/menu-item.model.js.map b/src/app/shared/menu/menu-item/models/menu-item.model.js.map deleted file mode 100644 index 8da54788a1..0000000000 --- a/src/app/shared/menu/menu-item/models/menu-item.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu-item.model.js","sourceRoot":"","sources":["menu-item.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/onclick.model.js b/src/app/shared/menu/menu-item/models/onclick.model.js deleted file mode 100644 index d10d394350..0000000000 --- a/src/app/shared/menu/menu-item/models/onclick.model.js +++ /dev/null @@ -1,12 +0,0 @@ -import { MenuItemType } from '../../initial-menus-state'; -/** - * Model representing an OnClick Menu Section - */ -var OnClickMenuItemModel = /** @class */ (function () { - function OnClickMenuItemModel() { - this.type = MenuItemType.ONCLICK; - } - return OnClickMenuItemModel; -}()); -export { OnClickMenuItemModel }; -//# sourceMappingURL=onclick.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/onclick.model.js.map b/src/app/shared/menu/menu-item/models/onclick.model.js.map deleted file mode 100644 index 59a643d0fb..0000000000 --- a/src/app/shared/menu/menu-item/models/onclick.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"onclick.model.js","sourceRoot":"","sources":["onclick.model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,OAAO,CAAC;IAG9B,CAAC;IAAD,2BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/search.model.js b/src/app/shared/menu/menu-item/models/search.model.js deleted file mode 100644 index d44f7691dc..0000000000 --- a/src/app/shared/menu/menu-item/models/search.model.js +++ /dev/null @@ -1,12 +0,0 @@ -import { MenuItemType } from '../../initial-menus-state'; -/** - * Model representing an Search Bar Menu Section - */ -var SearchMenuItemModel = /** @class */ (function () { - function SearchMenuItemModel() { - this.type = MenuItemType.SEARCH; - } - return SearchMenuItemModel; -}()); -export { SearchMenuItemModel }; -//# sourceMappingURL=search.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/search.model.js.map b/src/app/shared/menu/menu-item/models/search.model.js.map deleted file mode 100644 index e6e39f74d4..0000000000 --- a/src/app/shared/menu/menu-item/models/search.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search.model.js","sourceRoot":"","sources":["search.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,MAAM,CAAC;IAG7B,CAAC;IAAD,0BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/text.model.js b/src/app/shared/menu/menu-item/models/text.model.js deleted file mode 100644 index 1eb4302f75..0000000000 --- a/src/app/shared/menu/menu-item/models/text.model.js +++ /dev/null @@ -1,12 +0,0 @@ -import { MenuItemType } from '../../initial-menus-state'; -/** - * Model representing an Text Menu Section - */ -var TextMenuItemModel = /** @class */ (function () { - function TextMenuItemModel() { - this.type = MenuItemType.TEXT; - } - return TextMenuItemModel; -}()); -export { TextMenuItemModel }; -//# sourceMappingURL=text.model.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/models/text.model.js.map b/src/app/shared/menu/menu-item/models/text.model.js.map deleted file mode 100644 index 48869ed6bf..0000000000 --- a/src/app/shared/menu/menu-item/models/text.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"text.model.js","sourceRoot":"","sources":["text.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD;;GAEG;AACH;IAAA;QACE,SAAI,GAAG,YAAY,CAAC,IAAI,CAAC;IAE3B,CAAC;IAAD,wBAAC;AAAD,CAAC,AAHD,IAGC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/onclick-menu-item.component.js b/src/app/shared/menu/menu-item/onclick-menu-item.component.js deleted file mode 100644 index 18540a54f5..0000000000 --- a/src/app/shared/menu/menu-item/onclick-menu-item.component.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { MenuItemType } from '../initial-menus-state'; -import { rendersMenuItemForType } from '../menu-item.decorator'; -import { OnClickMenuItemModel } from './models/onclick.model'; -/** - * Component that renders a menu section of type ONCLICK - */ -var OnClickMenuItemComponent = /** @class */ (function () { - function OnClickMenuItemComponent(item) { - this.item = item; - } - OnClickMenuItemComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-onclick-menu-item', - styleUrls: ['./onclick-menu-item.component.scss'], - templateUrl: './onclick-menu-item.component.html' - }), - rendersMenuItemForType(MenuItemType.ONCLICK), - tslib_1.__param(0, Inject('itemModelProvider')), - tslib_1.__metadata("design:paramtypes", [OnClickMenuItemModel]) - ], OnClickMenuItemComponent); - return OnClickMenuItemComponent; -}()); -export { OnClickMenuItemComponent }; -//# sourceMappingURL=onclick-menu-item.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/onclick-menu-item.component.js.map b/src/app/shared/menu/menu-item/onclick-menu-item.component.js.map deleted file mode 100644 index ea5c67a88f..0000000000 --- a/src/app/shared/menu/menu-item/onclick-menu-item.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"onclick-menu-item.component.js","sourceRoot":"","sources":["onclick-menu-item.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;GAEG;AAOH;IAEE,kCAAyC,IAA0B;QACjE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAJU,wBAAwB;QANpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;QACD,sBAAsB,CAAC,YAAY,CAAC,OAAO,CAAC;QAG9B,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA;iDAAO,oBAAoB;OAFxD,wBAAwB,CAKpC;IAAD,+BAAC;CAAA,AALD,IAKC;SALY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/text-menu-item.component.js b/src/app/shared/menu/menu-item/text-menu-item.component.js deleted file mode 100644 index c685907d6d..0000000000 --- a/src/app/shared/menu/menu-item/text-menu-item.component.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { TextMenuItemModel } from './models/text.model'; -import { MenuItemType } from '../initial-menus-state'; -import { rendersMenuItemForType } from '../menu-item.decorator'; -/** - * Component that renders a menu section of type TEXT - */ -var TextMenuItemComponent = /** @class */ (function () { - function TextMenuItemComponent(item) { - this.item = item; - } - TextMenuItemComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-text-menu-item', - templateUrl: './text-menu-item.component.html', - }), - rendersMenuItemForType(MenuItemType.TEXT), - tslib_1.__param(0, Inject('itemModelProvider')), - tslib_1.__metadata("design:paramtypes", [TextMenuItemModel]) - ], TextMenuItemComponent); - return TextMenuItemComponent; -}()); -export { TextMenuItemComponent }; -//# sourceMappingURL=text-menu-item.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-item/text-menu-item.component.js.map b/src/app/shared/menu/menu-item/text-menu-item.component.js.map deleted file mode 100644 index cc2e7848db..0000000000 --- a/src/app/shared/menu/menu-item/text-menu-item.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"text-menu-item.component.js","sourceRoot":"","sources":["text-menu-item.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAS,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE;;GAEG;AAMH;IAEE,+BAAyC,IAAuB;QAC9D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAJU,qBAAqB;QALjC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACD,sBAAsB,CAAC,YAAY,CAAC,IAAI,CAAC;QAG3B,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA;iDAAO,iBAAiB;OAFrD,qBAAqB,CAKjC;IAAD,4BAAC;CAAA,AALD,IAKC;SALY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-section.decorator.js b/src/app/shared/menu/menu-section.decorator.js deleted file mode 100644 index 72121ea7ba..0000000000 --- a/src/app/shared/menu/menu-section.decorator.js +++ /dev/null @@ -1,28 +0,0 @@ -var menuComponentMap = new Map(); -/** - * Decorator function to render a MenuSection for a menu - * @param {MenuID} menuID The ID of the Menu in which the section is rendered - * @param {boolean} expandable True when the section should be expandable, false when if should not - * @returns {(menuSectionWrapperComponent: GenericConstructor) => void} - */ -export function rendersSectionForMenu(menuID, expandable) { - return function decorator(menuSectionWrapperComponent) { - if (!menuSectionWrapperComponent) { - return; - } - if (!menuComponentMap.get(menuID)) { - menuComponentMap.set(menuID, new Map()); - } - menuComponentMap.get(menuID).set(expandable, menuSectionWrapperComponent); - }; -} -/** - * Retrieves the component matching the given MenuID and whether or not it should be expandable - * @param {MenuID} menuID The ID of the Menu in which the section is rendered - * @param {boolean} expandable True when the section should be expandable, false when if should not - * @returns {GenericConstructor} The constructor of the matching Component - */ -export function getComponentForMenu(menuID, expandable) { - return menuComponentMap.get(menuID).get(expandable); -} -//# sourceMappingURL=menu-section.decorator.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-section.decorator.js.map b/src/app/shared/menu/menu-section.decorator.js.map deleted file mode 100644 index 136adbee5a..0000000000 --- a/src/app/shared/menu/menu-section.decorator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu-section.decorator.js","sourceRoot":"","sources":["menu-section.decorator.ts"],"names":[],"mappings":"AAEA,IAAM,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,gCAAgC,MAAc,EAAE,UAAmB;IACvE,OAAO,mBAAmB,2BAAgC;QACxD,IAAI,CAAC,2BAA2B,EAAE;YAChC,OAAO;SACR;QACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YACjC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;SACzC;QACD,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAC;IAC5E,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,8BAA8B,MAAc,EAAE,UAAmB;IACrE,OAAO,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AACtD,CAAC"} \ No newline at end of file diff --git a/src/app/shared/menu/menu-section/menu-section.component.js b/src/app/shared/menu/menu-section/menu-section.component.js deleted file mode 100644 index ddfeae5ca7..0000000000 --- a/src/app/shared/menu/menu-section/menu-section.component.js +++ /dev/null @@ -1,107 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector } from '@angular/core'; -import { MenuService } from '../menu.service'; -import { MenuSection } from '../menu.reducer'; -import { getComponentForMenuItemType } from '../menu-item.decorator'; -import { hasNoValue } from '../../empty.util'; -import { distinctUntilChanged } from 'rxjs/operators'; -/** - * A basic implementation of a menu section's component - */ -var MenuSectionComponent = /** @class */ (function () { - function MenuSectionComponent(section, menuService, injector) { - this.section = section; - this.menuService = menuService; - this.injector = injector; - /** - * List of Injectors for each dynamically rendered menu item of this section - */ - this.itemInjectors = new Map(); - /** - * List of child Components for each dynamically rendered menu item of this section - */ - this.itemComponents = new Map(); - } - /** - * Set initial values for instance variables - */ - MenuSectionComponent.prototype.ngOnInit = function () { - this.active = this.menuService.isSectionActive(this.menuID, this.section.id).pipe(distinctUntilChanged()); - this.initializeInjectorData(); - }; - /** - * Activate this section if it's currently inactive, deactivate it when it's currently active - * @param {Event} event The user event that triggered this method - */ - MenuSectionComponent.prototype.toggleSection = function (event) { - event.preventDefault(); - this.menuService.toggleActiveSection(this.menuID, this.section.id); - }; - /** - * Activate this section - * @param {Event} event The user event that triggered this method - */ - MenuSectionComponent.prototype.activateSection = function (event) { - event.preventDefault(); - this.menuService.activateSection(this.menuID, this.section.id); - }; - /** - * Deactivate this section - * @param {Event} event The user event that triggered this method - */ - MenuSectionComponent.prototype.deactivateSection = function (event) { - event.preventDefault(); - this.menuService.deactivateSection(this.menuID, this.section.id); - }; - /** - * Method for initializing all injectors and component constructors for the menu items in this section - */ - MenuSectionComponent.prototype.initializeInjectorData = function () { - var _this = this; - this.itemInjectors.set(this.section.id, this.getItemModelInjector(this.section.model)); - this.itemComponents.set(this.section.id, this.getMenuItemComponent(this.section.model)); - this.subSections = this.menuService.getSubSectionsByParentID(this.menuID, this.section.id); - this.subSections.subscribe(function (sections) { - sections.forEach(function (section) { - _this.itemInjectors.set(section.id, _this.getItemModelInjector(section.model)); - _this.itemComponents.set(section.id, _this.getMenuItemComponent(section.model)); - }); - }); - }; - /** - * Retrieve the component for a given MenuItemModel object - * @param {MenuItemModel} itemModel The given MenuItemModel - * @returns {GenericConstructor} Emits the constructor of the Component that should be used to render this menu item model - */ - MenuSectionComponent.prototype.getMenuItemComponent = function (itemModel) { - if (hasNoValue(itemModel)) { - itemModel = this.section.model; - } - var type = itemModel.type; - return getComponentForMenuItemType(type); - }; - /** - * Retrieve the Injector for a given MenuItemModel object - * @param {MenuItemModel} itemModel The given MenuItemModel - * @returns {Injector} The Injector that injects the data for this menu item into the item's component - */ - MenuSectionComponent.prototype.getItemModelInjector = function (itemModel) { - if (hasNoValue(itemModel)) { - itemModel = this.section.model; - } - return Injector.create({ - providers: [{ provide: 'itemModelProvider', useFactory: function () { return (itemModel); }, deps: [] }], - parent: this.injector - }); - }; - MenuSectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-menu-section', - template: '' - }), - tslib_1.__metadata("design:paramtypes", [MenuSection, MenuService, Injector]) - ], MenuSectionComponent); - return MenuSectionComponent; -}()); -export { MenuSectionComponent }; -//# sourceMappingURL=menu-section.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu-section/menu-section.component.js.map b/src/app/shared/menu/menu-section/menu-section.component.js.map deleted file mode 100644 index b3058584da..0000000000 --- a/src/app/shared/menu/menu-section/menu-section.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu-section.component.js","sourceRoot":"","sources":["menu-section.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.actions.js b/src/app/shared/menu/menu.actions.js deleted file mode 100644 index f8995ca1a8..0000000000 --- a/src/app/shared/menu/menu.actions.js +++ /dev/null @@ -1,211 +0,0 @@ -import * as tslib_1 from "tslib"; -import { type } from '../ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var MenuActionTypes = { - COLLAPSE_MENU: type('dspace/menu/COLLAPSE_MENU'), - TOGGLE_MENU: type('dspace/menu/TOGGLE_MENU'), - EXPAND_MENU: type('dspace/menu/EXPAND_MENU'), - SHOW_MENU: type('dspace/menu/SHOW_MENU'), - HIDE_MENU: type('dspace/menu/HIDE_MENU'), - COLLAPSE_MENU_PREVIEW: type('dspace/menu/COLLAPSE_MENU_PREVIEW'), - EXPAND_MENU_PREVIEW: type('dspace/menu/EXPAND_MENU_PREVIEW'), - ADD_SECTION: type('dspace/menu-section/ADD_SECTION'), - REMOVE_SECTION: type('dspace/menu-section/REMOVE_SECTION'), - SHOW_SECTION: type('dspace/menu-section/SHOW_SECTION'), - HIDE_SECTION: type('dspace/menu-section/HIDE_SECTION'), - ACTIVATE_SECTION: type('dspace/menu-section/ACTIVATE_SECTION'), - DEACTIVATE_SECTION: type('dspace/menu-section/DEACTIVATE_SECTION'), - TOGGLE_ACTIVE_SECTION: type('dspace/menu-section/TOGGLE_ACTIVE_SECTION'), -}; -/* tslint:disable:max-classes-per-file */ -// MENU STATE ACTIONS -/** - * Action used to collapse a single menu - */ -var CollapseMenuAction = /** @class */ (function () { - function CollapseMenuAction(menuID) { - this.type = MenuActionTypes.COLLAPSE_MENU; - this.menuID = menuID; - } - return CollapseMenuAction; -}()); -export { CollapseMenuAction }; -/** - * Action used to expand a single menu - */ -var ExpandMenuAction = /** @class */ (function () { - function ExpandMenuAction(menuID) { - this.type = MenuActionTypes.EXPAND_MENU; - this.menuID = menuID; - } - return ExpandMenuAction; -}()); -export { ExpandMenuAction }; -/** - * Action used to collapse a single menu when it's expanded and expanded it when it's collapse - */ -var ToggleMenuAction = /** @class */ (function () { - function ToggleMenuAction(menuID) { - this.type = MenuActionTypes.TOGGLE_MENU; - this.menuID = menuID; - } - return ToggleMenuAction; -}()); -export { ToggleMenuAction }; -/** - * Action used to show a single menu - */ -var ShowMenuAction = /** @class */ (function () { - function ShowMenuAction(menuID) { - this.type = MenuActionTypes.SHOW_MENU; - this.menuID = menuID; - } - return ShowMenuAction; -}()); -export { ShowMenuAction }; -/** - * Action used to hide a single menu - */ -var HideMenuAction = /** @class */ (function () { - function HideMenuAction(menuID) { - this.type = MenuActionTypes.HIDE_MENU; - this.menuID = menuID; - } - return HideMenuAction; -}()); -export { HideMenuAction }; -/** - * Action used to collapse a single menu's preview - */ -var CollapseMenuPreviewAction = /** @class */ (function () { - function CollapseMenuPreviewAction(menuID) { - this.type = MenuActionTypes.COLLAPSE_MENU_PREVIEW; - this.menuID = menuID; - } - return CollapseMenuPreviewAction; -}()); -export { CollapseMenuPreviewAction }; -/** - * Action used to expand a single menu's preview - */ -var ExpandMenuPreviewAction = /** @class */ (function () { - function ExpandMenuPreviewAction(menuID) { - this.type = MenuActionTypes.EXPAND_MENU_PREVIEW; - this.menuID = menuID; - } - return ExpandMenuPreviewAction; -}()); -export { ExpandMenuPreviewAction }; -// MENU SECTION ACTIONS -/** - * Action used to perform state changes for a section of a certain menu - */ -var MenuSectionAction = /** @class */ (function () { - function MenuSectionAction(menuID, id) { - this.menuID = menuID; - this.id = id; - } - return MenuSectionAction; -}()); -export { MenuSectionAction }; -/** - * Action used to add a section to a certain menu - */ -var AddMenuSectionAction = /** @class */ (function (_super) { - tslib_1.__extends(AddMenuSectionAction, _super); - function AddMenuSectionAction(menuID, section) { - var _this = _super.call(this, menuID, section.id) || this; - _this.type = MenuActionTypes.ADD_SECTION; - _this.section = section; - return _this; - } - return AddMenuSectionAction; -}(MenuSectionAction)); -export { AddMenuSectionAction }; -/** - * Action used to remove a section from a certain menu - */ -var RemoveMenuSectionAction = /** @class */ (function (_super) { - tslib_1.__extends(RemoveMenuSectionAction, _super); - function RemoveMenuSectionAction(menuID, id) { - var _this = _super.call(this, menuID, id) || this; - _this.type = MenuActionTypes.REMOVE_SECTION; - return _this; - } - return RemoveMenuSectionAction; -}(MenuSectionAction)); -export { RemoveMenuSectionAction }; -/** - * Action used to hide a section of a certain menu - */ -var HideMenuSectionAction = /** @class */ (function (_super) { - tslib_1.__extends(HideMenuSectionAction, _super); - function HideMenuSectionAction(menuID, id) { - var _this = _super.call(this, menuID, id) || this; - _this.type = MenuActionTypes.HIDE_SECTION; - return _this; - } - return HideMenuSectionAction; -}(MenuSectionAction)); -export { HideMenuSectionAction }; -/** - * Action used to show a section of a certain menu - */ -var ShowMenuSectionAction = /** @class */ (function (_super) { - tslib_1.__extends(ShowMenuSectionAction, _super); - function ShowMenuSectionAction(menuID, id) { - var _this = _super.call(this, menuID, id) || this; - _this.type = MenuActionTypes.SHOW_SECTION; - return _this; - } - return ShowMenuSectionAction; -}(MenuSectionAction)); -export { ShowMenuSectionAction }; -/** - * Action used to make a section of a certain menu active - */ -var ActivateMenuSectionAction = /** @class */ (function (_super) { - tslib_1.__extends(ActivateMenuSectionAction, _super); - function ActivateMenuSectionAction(menuID, id) { - var _this = _super.call(this, menuID, id) || this; - _this.type = MenuActionTypes.ACTIVATE_SECTION; - return _this; - } - return ActivateMenuSectionAction; -}(MenuSectionAction)); -export { ActivateMenuSectionAction }; -/** - * Action used to make a section of a certain menu inactive - */ -var DeactivateMenuSectionAction = /** @class */ (function (_super) { - tslib_1.__extends(DeactivateMenuSectionAction, _super); - function DeactivateMenuSectionAction(menuID, id) { - var _this = _super.call(this, menuID, id) || this; - _this.type = MenuActionTypes.DEACTIVATE_SECTION; - return _this; - } - return DeactivateMenuSectionAction; -}(MenuSectionAction)); -export { DeactivateMenuSectionAction }; -/** - * Action used to make an active section of a certain menu inactive or an inactive section of a certain menu active - */ -var ToggleActiveMenuSectionAction = /** @class */ (function (_super) { - tslib_1.__extends(ToggleActiveMenuSectionAction, _super); - function ToggleActiveMenuSectionAction(menuID, id) { - var _this = _super.call(this, menuID, id) || this; - _this.type = MenuActionTypes.TOGGLE_ACTIVE_SECTION; - return _this; - } - return ToggleActiveMenuSectionAction; -}(MenuSectionAction)); -export { ToggleActiveMenuSectionAction }; -/* tslint:enable:max-classes-per-file */ -//# sourceMappingURL=menu.actions.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.actions.js.map b/src/app/shared/menu/menu.actions.js.map deleted file mode 100644 index a035b03cbe..0000000000 --- a/src/app/shared/menu/menu.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu.actions.js","sourceRoot":"","sources":["menu.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.component.js b/src/app/shared/menu/menu.component.js deleted file mode 100644 index 72ce74e22a..0000000000 --- a/src/app/shared/menu/menu.component.js +++ /dev/null @@ -1,125 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector } from '@angular/core'; -import { MenuService } from '../../shared/menu/menu.service'; -import { first, map } from 'rxjs/operators'; -import { hasValue } from '../empty.util'; -import { getComponentForMenu } from './menu-section.decorator'; -/** - * A basic implementation of a MenuComponent - */ -var MenuComponent = /** @class */ (function () { - function MenuComponent(menuService, injector) { - this.menuService = menuService; - this.injector = injector; - /** - * List of Injectors for each dynamically rendered menu section - */ - this.sectionInjectors = new Map(); - /** - * List of child Components for each dynamically rendered menu section - */ - this.sectionComponents = new Map(); - } - /** - * Sets all instance variables to their initial values - */ - MenuComponent.prototype.ngOnInit = function () { - var _this = this; - this.menuCollapsed = this.menuService.isMenuCollapsed(this.menuID); - this.menuPreviewCollapsed = this.menuService.isMenuPreviewCollapsed(this.menuID); - this.menuVisible = this.menuService.isMenuVisible(this.menuID); - this.sections = this.menuService.getMenuTopSections(this.menuID).pipe(first()); - this.sections.subscribe(function (sections) { - sections.forEach(function (section) { - _this.sectionInjectors.set(section.id, _this.getSectionDataInjector(section)); - _this.getSectionComponent(section).pipe(first()).subscribe(function (constr) { return _this.sectionComponents.set(section.id, constr); }); - }); - }); - }; - /** - * Collapse this menu when it's currently expanded, expand it when its currently collapsed - * @param {Event} event The user event that triggered this method - */ - MenuComponent.prototype.toggle = function (event) { - event.preventDefault(); - this.menuService.toggleMenu(this.menuID); - }; - /** - * Expand this menu - * @param {Event} event The user event that triggered this method - */ - MenuComponent.prototype.expand = function (event) { - event.preventDefault(); - this.menuService.expandMenu(this.menuID); - }; - /** - * Collapse this menu - * @param {Event} event The user event that triggered this method - */ - MenuComponent.prototype.collapse = function (event) { - event.preventDefault(); - this.menuService.collapseMenu(this.menuID); - }; - /** - * Expand this menu's preview - * @param {Event} event The user event that triggered this method - */ - MenuComponent.prototype.expandPreview = function (event) { - var _this = this; - event.preventDefault(); - this.previewToggleDebounce(function () { return _this.menuService.expandMenuPreview(_this.menuID); }, 100); - }; - /** - * Collapse this menu's preview - * @param {Event} event The user event that triggered this method - */ - MenuComponent.prototype.collapsePreview = function (event) { - var _this = this; - event.preventDefault(); - this.previewToggleDebounce(function () { return _this.menuService.collapseMenuPreview(_this.menuID); }, 400); - }; - /** - * delay the handler function by the given amount of time - * - * @param {Function} handler The function to delay - * @param {number} ms The amount of ms to delay the handler function by - */ - MenuComponent.prototype.previewToggleDebounce = function (handler, ms) { - if (hasValue(this.previewTimer)) { - clearTimeout(this.previewTimer); - } - this.previewTimer = setTimeout(handler, ms); - }; - /** - * Retrieve the component for a given MenuSection object - * @param {MenuSection} section The given MenuSection - * @returns {Observable>} Emits the constructor of the Component that should be used to render this object - */ - MenuComponent.prototype.getSectionComponent = function (section) { - var _this = this; - return this.menuService.hasSubSections(this.menuID, section.id).pipe(map(function (expandable) { - return getComponentForMenu(_this.menuID, expandable); - })); - }; - /** - * Retrieve the Injector for a given MenuSection object - * @param {MenuSection} section The given MenuSection - * @returns {Injector} The Injector that injects the data for this menu section into the section's component - */ - MenuComponent.prototype.getSectionDataInjector = function (section) { - return Injector.create({ - providers: [{ provide: 'sectionDataProvider', useFactory: function () { return (section); }, deps: [] }], - parent: this.injector - }); - }; - MenuComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-menu', - template: '' - }), - tslib_1.__metadata("design:paramtypes", [MenuService, Injector]) - ], MenuComponent); - return MenuComponent; -}()); -export { MenuComponent }; -//# sourceMappingURL=menu.component.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.component.js.map b/src/app/shared/menu/menu.component.js.map deleted file mode 100644 index 2624327dcc..0000000000 --- a/src/app/shared/menu/menu.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu.component.js","sourceRoot":"","sources":["menu.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAA2B,SAAS,EAAE,QAAQ,EAAU,MAAM,eAAe,CAAC;AAErF,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAG7D,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D;;GAEG;AAKH;IA8CE,uBAAsB,WAAwB,EAAY,QAAkB;QAAtD,gBAAW,GAAX,WAAW,CAAa;QAAY,aAAQ,GAAR,QAAQ,CAAU;QApB5E;;WAEG;QACH,qBAAgB,GAA0B,IAAI,GAAG,EAAoB,CAAC;QAEtE;;WAEG;QACH,sBAAiB,GAA0D,IAAI,GAAG,EAAoD,CAAC;IAavI,CAAC;IAED;;OAEG;IACH,gCAAQ,GAAR;QAAA,iBAWC;QAVC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/E,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAC,QAAuB;YAC9C,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAoB;gBACpC,KAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC5E,KAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,UAAC,MAAM,IAAK,OAAA,KAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,EAA9C,CAA8C,CAAC,CAAC;YACxH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACH,8BAAM,GAAN,UAAO,KAAY;QACjB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,8BAAM,GAAN,UAAO,KAAY;QACjB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,gCAAQ,GAAR,UAAS,KAAY;QACnB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,qCAAa,GAAb,UAAc,KAAY;QAA1B,iBAGC;QAFC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,qBAAqB,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAI,CAAC,MAAM,CAAC,EAA/C,CAA+C,EAAE,GAAG,CAAC,CAAC;IACzF,CAAC;IAED;;;OAGG;IACH,uCAAe,GAAf,UAAgB,KAAY;QAA5B,iBAGC;QAFC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,qBAAqB,CAAC,cAAM,OAAA,KAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,KAAI,CAAC,MAAM,CAAC,EAAjD,CAAiD,EAAE,GAAG,CAAC,CAAC;IAC3F,CAAC;IAED;;;;;OAKG;IACK,6CAAqB,GAA7B,UAA8B,OAAmB,EAAE,EAAU;QAC3D,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC/B,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SACjC;QACD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACK,2CAAmB,GAA3B,UAA4B,OAAoB;QAAhD,iBAOC;QANC,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAClE,GAAG,CAAC,UAAC,UAAmB;YACpB,OAAO,mBAAmB,CAAC,KAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACtD,CAAC,CACF,CACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,8CAAsB,GAA9B,UAA+B,OAAoB;QACjD,OAAO,QAAQ,CAAC,MAAM,CAAC;YACrB,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,OAAO,CAAC,EAAT,CAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACtF,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IACL,CAAC;IAnJU,aAAa;QAJzB,SAAS,CAAC;YACT,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,EAAE;SACb,CAAC;iDA+CmC,WAAW,EAAsB,QAAQ;OA9CjE,aAAa,CAoJzB;IAAD,oBAAC;CAAA,AApJD,IAoJC;SApJY,aAAa"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.module.js b/src/app/shared/menu/menu.module.js deleted file mode 100644 index eb759260c3..0000000000 --- a/src/app/shared/menu/menu.module.js +++ /dev/null @@ -1,50 +0,0 @@ -import * as tslib_1 from "tslib"; -import { MenuSectionComponent } from './menu-section/menu-section.component'; -import { MenuComponent } from './menu.component'; -import { NgModule } from '@angular/core'; -import { TranslateModule } from '@ngx-translate/core'; -import { RouterModule } from '@angular/router'; -import { LinkMenuItemComponent } from './menu-item/link-menu-item.component'; -import { TextMenuItemComponent } from './menu-item/text-menu-item.component'; -import { OnClickMenuItemComponent } from './menu-item/onclick-menu-item.component'; -import { CommonModule } from '@angular/common'; -var COMPONENTS = [ - MenuSectionComponent, - MenuComponent, - LinkMenuItemComponent, - TextMenuItemComponent, - OnClickMenuItemComponent -]; -var ENTRY_COMPONENTS = [ - LinkMenuItemComponent, - TextMenuItemComponent, - OnClickMenuItemComponent -]; -var MODULES = [ - TranslateModule, - RouterModule, - CommonModule -]; -var PROVIDERS = []; -var MenuModule = /** @class */ (function () { - /** - * This module handles all components, providers and modules that are needed for the menu - */ - function MenuModule() { - } - MenuModule = tslib_1.__decorate([ - NgModule({ - imports: MODULES.slice(), - declarations: COMPONENTS.concat(ENTRY_COMPONENTS), - providers: PROVIDERS.slice(), - exports: COMPONENTS.concat(MODULES), - entryComponents: ENTRY_COMPONENTS.slice() - }) - /** - * This module handles all components, providers and modules that are needed for the menu - */ - ], MenuModule); - return MenuModule; -}()); -export { MenuModule }; -//# sourceMappingURL=menu.module.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.module.js.map b/src/app/shared/menu/menu.module.js.map deleted file mode 100644 index c6f79a40d6..0000000000 --- a/src/app/shared/menu/menu.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu.module.js","sourceRoot":"","sources":["menu.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,IAAM,UAAU,GAAG;IACjB,oBAAoB;IACpB,aAAa;IACb,qBAAqB;IACrB,qBAAqB;IACrB,wBAAwB;CACzB,CAAC;AAEF,IAAM,gBAAgB,GAAG;IACvB,qBAAqB;IACrB,qBAAqB;IACrB,wBAAwB;CACzB,CAAC;AAEF,IAAM,OAAO,GAAG;IACd,eAAe;IACf,YAAY;IACZ,YAAY;CACb,CAAC;AACF,IAAM,SAAS,GAAG,EAEjB,CAAC;AAyBF;IAHA;;OAEG;IACH;IAEA,CAAC;IAFY,UAAU;QAvBtB,QAAQ,CAAC;YACR,OAAO,EACF,OAAO,QACX;YACD,YAAY,EACP,UAAU,QACV,gBAAgB,CACpB;YACD,SAAS,EACJ,SAAS,QACb;YACD,OAAO,EACF,UAAU,QACV,OAAO,CACX;YACD,eAAe,EACV,gBAAgB,QACpB;SACF,CAAC;QAEF;;WAEG;OACU,UAAU,CAEtB;IAAD,iBAAC;CAAA,AAFD,IAEC;SAFY,UAAU"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.reducer.js b/src/app/shared/menu/menu.reducer.js deleted file mode 100644 index 52424558c9..0000000000 --- a/src/app/shared/menu/menu.reducer.js +++ /dev/null @@ -1,242 +0,0 @@ -import { MenuActionTypes } from './menu.actions'; -import { initialMenusState } from './initial-menus-state'; -import { hasValue } from '../empty.util'; -/** - * Represents the state of a single menu section in the store - */ -var MenuSection = /** @class */ (function () { - function MenuSection() { - } - return MenuSection; -}()); -export { MenuSection }; -/** - * Reducer that handles MenuActions to update the MenusState - * @param {MenusState} state The initial MenusState - * @param {MenuAction} action The Action to be performed on the state - * @returns {MenusState} The new, reducer MenusState - */ -export function menusReducer(state, action) { - if (state === void 0) { state = initialMenusState; } - var _a, _b, _c, _d, _e, _f, _g; - var menuState = state[action.menuID]; - switch (action.type) { - case MenuActionTypes.COLLAPSE_MENU: { - var newMenuState = Object.assign({}, menuState, { collapsed: true }); - return Object.assign({}, state, (_a = {}, _a[action.menuID] = newMenuState, _a)); - } - case MenuActionTypes.EXPAND_MENU: { - var newMenuState = Object.assign({}, menuState, { collapsed: false }); - return Object.assign({}, state, (_b = {}, _b[action.menuID] = newMenuState, _b)); - } - case MenuActionTypes.COLLAPSE_MENU_PREVIEW: { - var newMenuState = Object.assign({}, menuState, { previewCollapsed: true }); - return Object.assign({}, state, (_c = {}, _c[action.menuID] = newMenuState, _c)); - } - case MenuActionTypes.EXPAND_MENU_PREVIEW: { - var newMenuState = Object.assign({}, menuState, { previewCollapsed: false }); - return Object.assign({}, state, (_d = {}, _d[action.menuID] = newMenuState, _d)); - } - case MenuActionTypes.TOGGLE_MENU: { - var newMenuState = Object.assign({}, menuState, { collapsed: !menuState.collapsed }); - return Object.assign({}, state, (_e = {}, _e[action.menuID] = newMenuState, _e)); - } - case MenuActionTypes.SHOW_MENU: { - var newMenuState = Object.assign({}, menuState, { visible: true }); - return Object.assign({}, state, (_f = {}, _f[action.menuID] = newMenuState, _f)); - } - case MenuActionTypes.HIDE_MENU: { - var newMenuState = Object.assign({}, menuState, { visible: false }); - return Object.assign({}, state, (_g = {}, _g[action.menuID] = newMenuState, _g)); - } - case MenuActionTypes.ADD_SECTION: { - return addSection(state, action); - } - case MenuActionTypes.REMOVE_SECTION: { - return removeSection(state, action); - } - case MenuActionTypes.ACTIVATE_SECTION: { - return activateSection(state, action); - } - case MenuActionTypes.DEACTIVATE_SECTION: { - return deactivateSection(state, action); - } - case MenuActionTypes.TOGGLE_ACTIVE_SECTION: { - return toggleActiveSection(state, action); - } - case MenuActionTypes.HIDE_SECTION: { - return hideSection(state, action); - } - case MenuActionTypes.SHOW_SECTION: { - return showSection(state, action); - } - default: { - return state; - } - } -} -/** - * Add a section the a certain menu - * @param {MenusState} state The initial state - * @param {AddMenuSectionAction} action Action containing the new section and the menu's ID - * @returns {MenusState} The new reduced state - */ -function addSection(state, action) { - // let newState = addToIndex(state, action.section, action.menuID); - var newState = putSectionState(state, action, action.section); - return reorderSections(newState, action); -} -/** - * Reorder all sections based on their index field - * @param {MenusState} state The initial state - * @param {MenuSectionAction} action Action containing the menu ID of the menu that is to be reordered - * @returns {MenusState} The new reduced state - */ -function reorderSections(state, action) { - var _a; - var menuState = state[action.menuID]; - var newSectionState = {}; - var newSectionIndexState = {}; - Object.values(menuState.sections).sort(function (sectionA, sectionB) { - var indexA = sectionA.index || 0; - var indexB = sectionB.index || 0; - return indexA - indexB; - }).forEach(function (section) { - newSectionState[section.id] = section; - if (hasValue(section.parentID)) { - var parentIndex = hasValue(newSectionIndexState[section.parentID]) ? newSectionIndexState[section.parentID] : []; - newSectionIndexState[section.parentID] = parentIndex.concat([section.id]); - } - }); - var newMenuState = Object.assign({}, menuState, { - sections: newSectionState, - sectionToSubsectionIndex: newSectionIndexState - }); - return Object.assign({}, state, (_a = {}, _a[action.menuID] = newMenuState, _a)); -} -/** - * Remove a section from a certain menu - * @param {MenusState} state The initial state - * @param {RemoveMenuSectionAction} action Action containing the section ID and menu ID of the section that should be removed - * @returns {MenusState} The new reduced state - */ -function removeSection(state, action) { - var _a; - var menuState = state[action.menuID]; - var id = action.id; - var newState = removeFromIndex(state, menuState.sections[action.id], action.menuID); - var newMenuState = Object.assign({}, newState[action.menuID]); - delete newMenuState.sections[id]; - return Object.assign({}, newState, (_a = {}, _a[action.menuID] = newMenuState, _a)); -} -/** - * Remove a section from the index of a certain menu - * @param {MenusState} state The initial state - * @param {MenuSection} action The MenuSection of which the ID should be removed from the index - * @param {MenuID} action The Menu ID to which the section belonged - * @returns {MenusState} The new reduced state - */ -function removeFromIndex(state, section, menuID) { - var _a, _b; - var sectionID = section.id; - var parentID = section.parentID; - if (hasValue(parentID)) { - var menuState = state[menuID]; - var index = menuState.sectionToSubsectionIndex; - var parentIndex = hasValue(index[parentID]) ? index[parentID] : []; - var newIndex = Object.assign({}, index, (_a = {}, _a[parentID] = parentIndex.filter(function (id) { return id !== sectionID; }), _a)); - var newMenuState = Object.assign({}, menuState, { sectionToSubsectionIndex: newIndex }); - return Object.assign({}, state, (_b = {}, _b[menuID] = newMenuState, _b)); - } - return state; -} -/** - * Hide a certain section - * @param {MenusState} state The initial state - * @param {HideMenuSectionAction} action Action containing data to identify the section to be updated - * @returns {MenusState} The new reduced state - */ -function hideSection(state, action) { - return updateSectionState(state, action, { visible: false }); -} -/** - * Show a certain section - * @param {MenusState} state The initial state - * @param {ShowMenuSectionAction} action Action containing data to identify the section to be updated - * @returns {MenusState} The new reduced state - */ -function showSection(state, action) { - return updateSectionState(state, action, { visible: true }); -} -/** - * Deactivate a certain section - * @param {MenusState} state The initial state - * @param {DeactivateMenuSectionAction} action Action containing data to identify the section to be updated - * @returns {MenusState} The new reduced state - */ -function deactivateSection(state, action) { - var sectionState = state[action.menuID].sections[action.id]; - if (hasValue(sectionState)) { - return updateSectionState(state, action, { active: false }); - } -} -/** - * Activate a certain section - * @param {MenusState} state The initial state - * @param {DeactivateMenuSectionAction} action Action containing data to identify the section to be updated - * @returns {MenusState} The new reduced state - */ -function activateSection(state, action) { - var sectionState = state[action.menuID].sections[action.id]; - if (hasValue(sectionState)) { - return updateSectionState(state, action, { active: true }); - } -} -/** - * Deactivate a certain section when it's currently active, activate a certain section when it's currently inactive - * @param {MenusState} state The initial state - * @param {DeactivateMenuSectionAction} action Action containing data to identify the section to be updated - * @returns {MenusState} The new reduced state - */ -function toggleActiveSection(state, action) { - var sectionState = state[action.menuID].sections[action.id]; - if (hasValue(sectionState)) { - return updateSectionState(state, action, { active: !sectionState.active }); - } - return state; -} -/** - * Add or replace a section in the state - * @param {MenusState} state The initial state - * @param {MenuAction} action The action which contains the menu ID of the menu of which the state is to be updated - * @param {MenuSection} section The section that will be added or replaced in the state - * @returns {MenusState} The new reduced state - */ -function putSectionState(state, action, section) { - var _a, _b; - var menuState = state[action.menuID]; - var newSections = Object.assign({}, menuState.sections, (_a = {}, - _a[section.id] = section, - _a)); - var newMenuState = Object.assign({}, menuState, { - sections: newSections - }); - return Object.assign({}, state, (_b = {}, _b[action.menuID] = newMenuState, _b)); -} -/** - * Update a section - * @param {MenusState} state The initial state - * @param {MenuSectionAction} action The action containing the menu ID and section ID - * @param {any} update A partial section that represents the part that should be updated in an existing section - * @returns {MenusState} The new reduced state - */ -function updateSectionState(state, action, update) { - var menuState = state[action.menuID]; - var sectionState = menuState.sections[action.id]; - if (hasValue(sectionState)) { - var newTopSection = Object.assign({}, sectionState, update); - return putSectionState(state, action, newTopSection); - } - return state; -} -//# sourceMappingURL=menu.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.reducer.js.map b/src/app/shared/menu/menu.reducer.js.map deleted file mode 100644 index 39429faa19..0000000000 --- a/src/app/shared/menu/menu.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu.reducer.js","sourceRoot":"","sources":["menu.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/menu/menu.service.js b/src/app/shared/menu/menu.service.js deleted file mode 100644 index d8cc4f52ed..0000000000 --- a/src/app/shared/menu/menu.service.js +++ /dev/null @@ -1,217 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { select, Store } from '@ngrx/store'; -import { keySelector } from '../../app.reducer'; -import { map, switchMap } from 'rxjs/operators'; -import { ActivateMenuSectionAction, AddMenuSectionAction, CollapseMenuAction, CollapseMenuPreviewAction, DeactivateMenuSectionAction, ExpandMenuAction, ExpandMenuPreviewAction, HideMenuAction, RemoveMenuSectionAction, ShowMenuAction, ToggleActiveMenuSectionAction, ToggleMenuAction, } from './menu.actions'; -import { hasNoValue, isNotEmpty } from '../empty.util'; -import { combineLatest as observableCombineLatest } from 'rxjs'; -var menusStateSelector = function (state) { return state.menus; }; -var menuByIDSelector = function (menuID) { - return keySelector(menuID, menusStateSelector); -}; -var menuSectionStateSelector = function (state) { return state.sections; }; -var menuSectionByIDSelector = function (id) { - return keySelector(id, menuSectionStateSelector); -}; -var menuSectionIndexStateSelector = function (state) { return state.sectionToSubsectionIndex; }; -var getSubSectionsFromSectionSelector = function (id) { - return keySelector(id, menuSectionIndexStateSelector); -}; -var MenuService = /** @class */ (function () { - function MenuService(store) { - this.store = store; - } - /** - * Retrieve a menu's state by its ID - * @param {MenuID} id ID of the requested Menu - * @returns {Observable} Observable that emits the current state of the requested Menu - */ - MenuService.prototype.getMenu = function (id) { - return this.store.pipe(select(menuByIDSelector(id))); - }; - /** - * Retrieve all top level sections of a certain menu - * @param {MenuID} menuID ID of the Menu - * @param {boolean} mustBeVisible True if you only want to request visible sections, false if you want to request all top level sections - * @returns {Observable} Observable that emits a list of MenuSections that are top sections of the given menu - */ - MenuService.prototype.getMenuTopSections = function (menuID, mustBeVisible) { - if (mustBeVisible === void 0) { mustBeVisible = true; } - return this.store.pipe(select(menuByIDSelector(menuID)), select(menuSectionStateSelector), map(function (sections) { - return Object.values(sections) - .filter(function (section) { return hasNoValue(section.parentID); }) - .filter(function (section) { return !mustBeVisible || section.visible; }); - })); - }; - /** - * Retrieve all sub level sections of a certain top section in a given menu - * @param {MenuID} menuID The ID of the menu - * @param {string} parentID The ID of the parent section - * @param {boolean} mustBeVisible True if you only want to request visible sections, false if you want to request all sections - * @returns {Observable} Observable that emits a list of MenuSections that are sub sections of the given menu and parent section - */ - MenuService.prototype.getSubSectionsByParentID = function (menuID, parentID, mustBeVisible) { - var _this = this; - if (mustBeVisible === void 0) { mustBeVisible = true; } - return this.store.pipe(select(menuByIDSelector(menuID)), select(getSubSectionsFromSectionSelector(parentID)), map(function (ids) { return isNotEmpty(ids) ? ids : []; }), switchMap(function (ids) { - return observableCombineLatest(ids.map(function (id) { return _this.getMenuSection(menuID, id); })); - }), map(function (sections) { return sections.filter(function (section) { return !mustBeVisible || section.visible; }); })); - }; - /** - * Check if the a menu's top level section has subsections - * @param {MenuID} menuID The ID of the Menu - * @param {string} parentID The ID of the top level parent section - * @returns {Observable} Observable that emits true when the given parent section has sub sections, false if the given parent section does not have any sub sections - */ - MenuService.prototype.hasSubSections = function (menuID, parentID) { - return this.store.pipe(select(menuByIDSelector(menuID)), select(getSubSectionsFromSectionSelector(parentID)), map(function (ids) { return isNotEmpty(ids); })); - }; - /** - * Retrieve a specific menu section by its menu ID and section ID - * @param {MenuID} menuID The ID of the menu the section resides in - * @param {string} sectionId The ID of the requested section - * @returns {Observable} Observable that emits the found MenuSection - */ - MenuService.prototype.getMenuSection = function (menuID, sectionId) { - return this.store.pipe(select(menuByIDSelector(menuID)), select(menuSectionByIDSelector(sectionId))); - }; - /** - * Add a new section to the store - * @param {MenuID} menuID The menu to which the new section is to be added - * @param {MenuSection} section The section to be added - */ - MenuService.prototype.addSection = function (menuID, section) { - this.store.dispatch(new AddMenuSectionAction(menuID, section)); - }; - /** - * Remove a section from the store - * @param {MenuID} menuID The menu from which the section is to be removed - * @param {string} sectionID The ID of the section that should be removed - */ - MenuService.prototype.removeSection = function (menuID, sectionID) { - this.store.dispatch(new RemoveMenuSectionAction(menuID, sectionID)); - }; - /** - * Check if a given menu is collapsed - * @param {MenuID} menuID The ID of the menu that is to be checked - * @returns {Observable} Emits true if the given menu is collapsed, emits falls when it's expanded - */ - MenuService.prototype.isMenuCollapsed = function (menuID) { - return this.getMenu(menuID).pipe(map(function (state) { return state.collapsed; })); - }; - /** - * Check if a given menu's preview is collapsed - * @param {MenuID} menuID The ID of the menu that is to be checked - * @returns {Observable} Emits true if the given menu's preview is collapsed, emits falls when it's expanded - */ - MenuService.prototype.isMenuPreviewCollapsed = function (menuID) { - return this.getMenu(menuID).pipe(map(function (state) { return state.previewCollapsed; })); - }; - /** - * Check if a given menu is visible - * @param {MenuID} menuID The ID of the menu that is to be checked - * @returns {Observable} Emits true if the given menu is visible, emits falls when it's hidden - */ - MenuService.prototype.isMenuVisible = function (menuID) { - return this.getMenu(menuID).pipe(map(function (state) { return state.visible; })); - }; - /** - * Expands a given menu - * @param {MenuID} menuID The ID of the menu - */ - MenuService.prototype.expandMenu = function (menuID) { - this.store.dispatch(new ExpandMenuAction(menuID)); - }; - /** - * Collapses a given menu - * @param {MenuID} menuID The ID of the menu - */ - MenuService.prototype.collapseMenu = function (menuID) { - this.store.dispatch(new CollapseMenuAction(menuID)); - }; - /** - * Expands a given menu's preview - * @param {MenuID} menuID The ID of the menu - */ - MenuService.prototype.expandMenuPreview = function (menuID) { - this.store.dispatch(new ExpandMenuPreviewAction(menuID)); - }; - /** - * Collapses a given menu's preview - * @param {MenuID} menuID The ID of the menu - */ - MenuService.prototype.collapseMenuPreview = function (menuID) { - this.store.dispatch(new CollapseMenuPreviewAction(menuID)); - }; - /** - * Collapse a given menu when it's currently expanded or expand it when it's currently collapsed - * @param {MenuID} menuID The ID of the menu - */ - MenuService.prototype.toggleMenu = function (menuID) { - this.store.dispatch(new ToggleMenuAction(menuID)); - }; - /** - * Show a given menu - * @param {MenuID} menuID The ID of the menu - */ - MenuService.prototype.showMenu = function (menuID) { - this.store.dispatch(new ShowMenuAction(menuID)); - }; - /** - * Hide a given menu - * @param {MenuID} menuID The ID of the menu - */ - MenuService.prototype.hideMenu = function (menuID) { - this.store.dispatch(new HideMenuAction(menuID)); - }; - /** - * Activate a given menu section when it's currently inactive or deactivate it when it's currently active - * @param {MenuID} menuID The ID of the menu - * @param {string} id The ID of the section - */ - MenuService.prototype.toggleActiveSection = function (menuID, id) { - this.store.dispatch(new ToggleActiveMenuSectionAction(menuID, id)); - }; - /** - * Activate a given menu section - * @param {MenuID} menuID The ID of the menu - * @param {string} id The ID of the section - */ - MenuService.prototype.activateSection = function (menuID, id) { - this.store.dispatch(new ActivateMenuSectionAction(menuID, id)); - }; - /** - * Deactivate a given menu section - * @param {MenuID} menuID The ID of the menu - * @param {string} id The ID of the section - */ - MenuService.prototype.deactivateSection = function (menuID, id) { - this.store.dispatch(new DeactivateMenuSectionAction(menuID, id)); - }; - /** - * Check whether a given section is currently active or not - * @param {MenuID} menuID The ID of the Menu the section resides in - * @param {string} id The ID of the menu section to check - * @returns {Observable} Emits true when the given section is currently active, false when the given section is currently inactive - */ - MenuService.prototype.isSectionActive = function (menuID, id) { - return this.getMenuSection(menuID, id).pipe(map(function (section) { return section.active; })); - }; - /** - * Check whether a given section is currently visible or not - * @param {MenuID} menuID The ID of the Menu the section resides in - * @param {string} id The ID of the menu section to check - * @returns {Observable} Emits true when the given section is currently visible, false when the given section is currently hidden - */ - MenuService.prototype.isSectionVisible = function (menuID, id) { - return this.getMenuSection(menuID, id).pipe(map(function (section) { return section.visible; })); - }; - MenuService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store]) - ], MenuService); - return MenuService; -}()); -export { MenuService }; -//# sourceMappingURL=menu.service.js.map \ No newline at end of file diff --git a/src/app/shared/menu/menu.service.js.map b/src/app/shared/menu/menu.service.js.map deleted file mode 100644 index 71167a6b77..0000000000 --- a/src/app/shared/menu/menu.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu.service.js","sourceRoot":"","sources":["menu.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-action.js b/src/app/shared/mocks/mock-action.js deleted file mode 100644 index eb52581277..0000000000 --- a/src/app/shared/mocks/mock-action.js +++ /dev/null @@ -1,8 +0,0 @@ -var MockAction = /** @class */ (function () { - function MockAction() { - this.type = null; - } - return MockAction; -}()); -export { MockAction }; -//# sourceMappingURL=mock-action.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-action.js.map b/src/app/shared/mocks/mock-action.js.map deleted file mode 100644 index def2870f4d..0000000000 --- a/src/app/shared/mocks/mock-action.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-action.js","sourceRoot":"","sources":["mock-action.ts"],"names":[],"mappings":"AAEA;IAAA;QACE,SAAI,GAAG,IAAI,CAAC;IAEd,CAAC;IAAD,iBAAC;AAAD,CAAC,AAHD,IAGC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-active-router.js b/src/app/shared/mocks/mock-active-router.js deleted file mode 100644 index 6ec4d22b63..0000000000 --- a/src/app/shared/mocks/mock-active-router.js +++ /dev/null @@ -1,36 +0,0 @@ -import { BehaviorSubject } from 'rxjs'; -var MockActivatedRoute = /** @class */ (function () { - function MockActivatedRoute(params) { - // ActivatedRoute.params is Observable - this.subject = new BehaviorSubject(this.testParams); - this.params = this.subject.asObservable(); - this.queryParams = this.subject.asObservable(); - if (params) { - this.testParams = params; - } - else { - this.testParams = {}; - } - } - Object.defineProperty(MockActivatedRoute.prototype, "testParams", { - // Test parameters - get: function () { return this._testParams; }, - set: function (params) { - this._testParams = params; - this.subject.next(params); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(MockActivatedRoute.prototype, "snapshot", { - // ActivatedRoute.snapshot.params - get: function () { - return { params: this.testParams, queryParams: this.testParams }; - }, - enumerable: true, - configurable: true - }); - return MockActivatedRoute; -}()); -export { MockActivatedRoute }; -//# sourceMappingURL=mock-active-router.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-active-router.js.map b/src/app/shared/mocks/mock-active-router.js.map deleted file mode 100644 index dcade68f39..0000000000 --- a/src/app/shared/mocks/mock-active-router.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-active-router.js","sourceRoot":"","sources":["mock-active-router.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEvC;IAUE,4BAAY,MAAe;QAN3B,sCAAsC;QAC9B,YAAO,GAA0B,IAAI,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE9E,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACrC,gBAAW,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAGxC,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;SACtB;IACH,CAAC;IAGD,sBAAI,0CAAU;QADd,kBAAkB;aAClB,cAAmB,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;aAC7C,UAAe,MAAU;YACvB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;;;OAJ4C;IAO7C,sBAAI,wCAAQ;QADZ,iCAAiC;aACjC;YACE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QACnE,CAAC;;;OAAA;IACH,yBAAC;AAAD,CAAC,AA7BD,IA6BC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-admin-guard.service.js b/src/app/shared/mocks/mock-admin-guard.service.js deleted file mode 100644 index ac9b4e8e2e..0000000000 --- a/src/app/shared/mocks/mock-admin-guard.service.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { hasValue } from '../empty.util'; -var MockAdminGuard = /** @class */ (function () { - function MockAdminGuard() { - } - MockAdminGuard.prototype.canActivate = function (route, state) { - // if being run in browser, enforce 'isAdmin' requirement - if (typeof window === 'object' && hasValue(window.localStorage)) { - if (window.localStorage.getItem('isAdmin') === 'true') { - return true; - } - return false; - } - return true; - }; - MockAdminGuard.prototype.canActivateChild = function (route, state) { - return this.canActivate(route, state); - }; - MockAdminGuard = tslib_1.__decorate([ - Injectable() - ], MockAdminGuard); - return MockAdminGuard; -}()); -export { MockAdminGuard }; -//# sourceMappingURL=mock-admin-guard.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-admin-guard.service.js.map b/src/app/shared/mocks/mock-admin-guard.service.js.map deleted file mode 100644 index 1f381483c8..0000000000 --- a/src/app/shared/mocks/mock-admin-guard.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-admin-guard.service.js","sourceRoot":"","sources":["mock-admin-guard.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC;IAAA;IAgBA,CAAC;IAdC,oCAAW,GAAX,UAAY,KAA6B,EAAE,KAA0B;QACnE,yDAAyD;QACzD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;YAC/D,IAAI,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,MAAM,EAAE;gBACrD,OAAO,IAAI,CAAC;aACb;YACD,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yCAAgB,GAAhB,UAAiB,KAA6B,EAAE,KAA0B;QACxE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAfU,cAAc;QAD1B,UAAU,EAAE;OACA,cAAc,CAgB1B;IAAD,qBAAC;CAAA,AAhBD,IAgBC;SAhBY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-angulartics.service.js b/src/app/shared/mocks/mock-angulartics.service.js deleted file mode 100644 index 2a1ccc0d22..0000000000 --- a/src/app/shared/mocks/mock-angulartics.service.js +++ /dev/null @@ -1,9 +0,0 @@ -/* tslint:disable:no-empty */ -var AngularticsMock = /** @class */ (function () { - function AngularticsMock() { - } - AngularticsMock.prototype.eventTrack = function (action, properties) { }; - return AngularticsMock; -}()); -export { AngularticsMock }; -//# sourceMappingURL=mock-angulartics.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-angulartics.service.js.map b/src/app/shared/mocks/mock-angulartics.service.js.map deleted file mode 100644 index a82f9a412d..0000000000 --- a/src/app/shared/mocks/mock-angulartics.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-angulartics.service.js","sourceRoot":"","sources":["mock-angulartics.service.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;IAAA;IAEA,CAAC;IADQ,oCAAU,GAAjB,UAAkB,MAAM,EAAE,UAAU,IAAI,CAAC;IAC3C,sBAAC;AAAD,CAAC,AAFD,IAEC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-auth.service.js b/src/app/shared/mocks/mock-auth.service.js deleted file mode 100644 index dcb1a72ae2..0000000000 --- a/src/app/shared/mocks/mock-auth.service.js +++ /dev/null @@ -1,11 +0,0 @@ -/* tslint:disable:no-empty */ -var AuthServiceMock = /** @class */ (function () { - function AuthServiceMock() { - } - AuthServiceMock.prototype.checksAuthenticationToken = function () { - return; - }; - return AuthServiceMock; -}()); -export { AuthServiceMock }; -//# sourceMappingURL=mock-auth.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-auth.service.js.map b/src/app/shared/mocks/mock-auth.service.js.map deleted file mode 100644 index 26ffb1b43e..0000000000 --- a/src/app/shared/mocks/mock-auth.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-auth.service.js","sourceRoot":"","sources":["mock-auth.service.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B;IAAA;IAIA,CAAC;IAHQ,mDAAyB,GAAhC;QACE,OAAM;IACR,CAAC;IACH,sBAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-builder-service.js b/src/app/shared/mocks/mock-form-builder-service.js deleted file mode 100644 index 3ddfb9cad8..0000000000 --- a/src/app/shared/mocks/mock-form-builder-service.js +++ /dev/null @@ -1,21 +0,0 @@ -import { FormControl, FormGroup } from '@angular/forms'; -export function getMockFormBuilderService() { - return jasmine.createSpyObj('FormBuilderService', { - modelFromConfiguration: [], - createFormGroup: new FormGroup({}), - getValueFromModel: {}, - getFormControlById: new FormControl(), - hasMappedGroupValue: false, - findById: {}, - getPath: ['test', 'path'], - getId: 'path', - clearAllModelsValue: {}, - insertFormArrayGroup: {}, - isQualdrop: false, - isQualdropGroup: false, - isModelInCustomGroup: true, - isRelationGroup: true, - hasArrayGroupValue: true - }); -} -//# sourceMappingURL=mock-form-builder-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-builder-service.js.map b/src/app/shared/mocks/mock-form-builder-service.js.map deleted file mode 100644 index 4422604f8e..0000000000 --- a/src/app/shared/mocks/mock-form-builder-service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-form-builder-service.js","sourceRoot":"","sources":["mock-form-builder-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,oBAAoB,EAAE;QAChD,sBAAsB,EAAE,EAAE;QAC1B,eAAe,EAAE,IAAI,SAAS,CAAC,EAAE,CAAC;QAClC,iBAAiB,EAAE,EAAE;QACrB,kBAAkB,EAAE,IAAI,WAAW,EAAE;QACrC,mBAAmB,EAAE,KAAK;QAC1B,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QACzB,KAAK,EAAE,MAAM;QACb,mBAAmB,EAAG,EAAE;QACxB,oBAAoB,EAAE,EAAE;QACxB,UAAU,EAAE,KAAK;QACjB,eAAe,EAAE,KAAK;QACtB,oBAAoB,EAAE,IAAI;QAC1B,eAAe,EAAE,IAAI;QACrB,kBAAkB,EAAE,IAAI;KAEzB,CAAC,CAAC;AAEL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-models.js b/src/app/shared/mocks/mock-form-models.js deleted file mode 100644 index 7dee9624e3..0000000000 --- a/src/app/shared/mocks/mock-form-models.js +++ /dev/null @@ -1,228 +0,0 @@ -import { DsDynamicInputModel } from '../form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model'; -import { DynamicQualdropModel } from '../form/builder/ds-dynamic-form-ui/models/ds-dynamic-qualdrop.model'; -import { DynamicRowArrayModel } from '../form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-array-model'; -import { DynamicSelectModel } from '@ng-dynamic-forms/core'; -import { SubmissionScopeType } from '../../core/submission/submission-scope-type'; -import { DynamicRelationGroupModel } from '../form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.model'; -import { AuthorityOptions } from '../../core/integration/models/authority-options.model'; -import { AuthorityValue } from '../../core/integration/models/authority.value'; -import { FormFieldMetadataValueObject } from '../form/builder/models/form-field-metadata-value.model'; -import { DynamicRowGroupModel } from '../form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model'; -export var qualdropSelectConfig = { - name: 'dc.identifier_QUALDROP_METADATA', - id: 'dc_identifier_QUALDROP_METADATA', - readOnly: false, - disabled: false, - label: 'Identifiers', - placeholder: 'Identifiers', - options: [ - { - label: 'ISSN', - value: 'dc.identifier.issn' - }, - { - label: 'Other', - value: 'dc.identifier.other' - }, - { - label: 'ISMN', - value: 'dc.identifier.ismn' - }, - { - label: 'Gov\'t Doc #', - value: 'dc.identifier.govdoc' - }, - { - label: 'URI', - value: 'dc.identifier.uri' - }, - { - label: 'ISBN', - value: 'dc.identifier.isbn' - } - ], - value: 'dc.identifier.issn' -}; -export var qualdropInputConfig = { - name: 'dc.identifier_QUALDROP_VALUE', - id: 'dc_identifier_QUALDROP_VALUE', - readOnly: false, - disabled: false, - value: 'test' -}; -export var mockQualdropSelectModel = new DynamicSelectModel(qualdropSelectConfig); -export var mockQualdropInputModel = new DsDynamicInputModel(qualdropInputConfig); -export var qualdropConfig = { - id: 'dc_identifier_QUALDROP_GROUP', - legend: 'Identifiers', - readOnly: false, - group: [mockQualdropSelectModel, mockQualdropInputModel] -}; -export var MockQualdropModel = new DynamicQualdropModel(qualdropConfig); -var rowArrayQualdropConfig = { - id: 'row_QUALDROP_GROUP', - initialCount: 1, - notRepeatable: true, - groupFactory: function () { - return [MockQualdropModel]; - } -}; -export var MockRowArrayQualdropModel = new DynamicRowArrayModel(rowArrayQualdropConfig); -var mockFormRowModel = { - fields: [ - { - input: { type: 'lookup' }, - label: 'Journal', - mandatory: 'false', - repeatable: false, - hints: 'Enter the name of the journal where the item has been\n\t\t\t\t\tpublished, if any.', - selectableMetadata: [ - { - metadata: 'journal', - authority: 'JOURNALAuthority', - closed: false - } - ], - languageCodes: [] - }, - { - input: { type: 'onebox' }, - label: 'Issue', - mandatory: 'false', - repeatable: false, - hints: ' Enter issue number.', - selectableMetadata: [ - { - metadata: 'issue' - } - ], - languageCodes: [] - } - ] -}; -var relationGroupConfig = { - id: 'relationGroup', - formConfiguration: [mockFormRowModel], - mandatoryField: 'false', - relationFields: ['journal', 'issue'], - scopeUUID: 'scope', - submissionScope: SubmissionScopeType.WorkspaceItem, - value: { - journal: [ - 'journal test 1', - 'journal test 2' - ], - issue: [ - 'issue test 1', - 'issue test 2' - ], - } -}; -export var MockRelationModel = new DynamicRelationGroupModel(relationGroupConfig); -export var inputWithLanguageAndAuthorityConfig = { - authorityOptions: new AuthorityOptions('testAuthority', 'testWithAuthority', 'scope'), - languageCodes: [ - { - display: 'English', - code: 'en_US' - }, - { - display: 'Italian', - code: 'it_IT' - } - ], - language: 'en_US', - name: 'testWithAuthority', - id: 'testWithAuthority', - readOnly: false, - disabled: false, - value: { - value: 'testWithLanguageAndAuthority', - display: 'testWithLanguageAndAuthority', - id: 'testWithLanguageAndAuthority', - } -}; -export var mockInputWithLanguageAndAuthorityModel = new DsDynamicInputModel(inputWithLanguageAndAuthorityConfig); -export var inputWithLanguageConfig = { - languageCodes: [ - { - display: 'English', - code: 'en_US' - }, - { - display: 'Italian', - code: 'it_IT' - } - ], - language: 'en_US', - name: 'testWithLanguage', - id: 'testWithLanguage', - readOnly: false, - disabled: false, - value: 'testWithLanguage' -}; -export var mockInputWithLanguageModel = new DsDynamicInputModel(inputWithLanguageConfig); -export var inputWithLanguageAndAuthorityArrayConfig = { - authorityOptions: new AuthorityOptions('testAuthority', 'testWithAuthority', 'scope'), - languageCodes: [ - { - display: 'English', - code: 'en_US' - }, - { - display: 'Italian', - code: 'it_IT' - } - ], - language: 'en_US', - name: 'testWithLanguageAndAuthorityArray', - id: 'testWithLanguageAndAuthorityArray', - readOnly: false, - disabled: false, - value: [{ - value: 'testLanguageAndAuthorityArray', - display: 'testLanguageAndAuthorityArray', - id: 'testLanguageAndAuthorityArray', - }] -}; -export var mockInputWithLanguageAndAuthorityArrayModel = new DsDynamicInputModel(inputWithLanguageAndAuthorityArrayConfig); -export var inputWithFormFieldValueConfig = { - name: 'testWithFormField', - id: 'testWithFormField', - readOnly: false, - disabled: false, - value: new FormFieldMetadataValueObject('testWithFormFieldValue') -}; -export var mockInputWithFormFieldValueModel = new DsDynamicInputModel(inputWithFormFieldValueConfig); -export var inputWithAuthorityValueConfig = { - name: 'testWithAuthorityField', - id: 'testWithAuthorityField', - readOnly: false, - disabled: false, - value: Object.assign({}, new AuthorityValue(), { value: 'testWithAuthorityValue', id: 'testWithAuthorityValue', display: 'testWithAuthorityValue' }) -}; -export var mockInputWithAuthorityValueModel = new DsDynamicInputModel(inputWithAuthorityValueConfig); -export var inputWithObjectValueConfig = { - name: 'testWithObjectValue', - id: 'testWithObjectValue', - readOnly: false, - disabled: false, - value: { value: 'testWithObjectValue', id: 'testWithObjectValue', display: 'testWithObjectValue' } -}; -export var mockInputWithObjectValueModel = new DsDynamicInputModel(inputWithObjectValueConfig); -export var mockRowGroupModel = new DynamicRowGroupModel({ - id: 'mockRowGroupModel', - group: [mockInputWithFormFieldValueModel], -}); -export var fileFormEditInputConfig = { - name: 'dc.title', - id: 'dc_title', - readOnly: false, - disabled: false, -}; -export var mockFileFormEditInputModel = new DsDynamicInputModel(fileFormEditInputConfig); -export var mockFileFormEditRowGroupModel = new DynamicRowGroupModel({ - id: 'mockRowGroupModel', - group: [mockFileFormEditInputModel] -}); -//# sourceMappingURL=mock-form-models.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-models.js.map b/src/app/shared/mocks/mock-form-models.js.map deleted file mode 100644 index 93accdb7a9..0000000000 --- a/src/app/shared/mocks/mock-form-models.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-form-models.js","sourceRoot":"","sources":["mock-form-models.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-operations-service.js b/src/app/shared/mocks/mock-form-operations-service.js deleted file mode 100644 index 020a8d3388..0000000000 --- a/src/app/shared/mocks/mock-form-operations-service.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Mock for [[FormOperationsService]] - */ -export function getMockFormOperationsService() { - return jasmine.createSpyObj('SectionFormOperationsService', { - dispatchOperationsFromEvent: jasmine.createSpy('dispatchOperationsFromEvent'), - getArrayIndexFromEvent: jasmine.createSpy('getArrayIndexFromEvent'), - isPartOfArrayOfGroup: jasmine.createSpy('isPartOfArrayOfGroup'), - getQualdropValueMap: jasmine.createSpy('getQualdropValueMap'), - getFieldPathFromEvent: jasmine.createSpy('getFieldPathFromEvent'), - getQualdropItemPathFromEvent: jasmine.createSpy('getQualdropItemPathFromEvent'), - getFieldPathSegmentedFromChangeEvent: jasmine.createSpy('getFieldPathSegmentedFromChangeEvent'), - getFieldValueFromChangeEvent: jasmine.createSpy('getFieldValueFromChangeEvent'), - getValueMap: jasmine.createSpy('getValueMap'), - }); -} -//# sourceMappingURL=mock-form-operations-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-operations-service.js.map b/src/app/shared/mocks/mock-form-operations-service.js.map deleted file mode 100644 index 3bcd675829..0000000000 --- a/src/app/shared/mocks/mock-form-operations-service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-form-operations-service.js","sourceRoot":"","sources":["mock-form-operations-service.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,8BAA8B,EAAE;QAC1D,2BAA2B,EAAE,OAAO,CAAC,SAAS,CAAC,6BAA6B,CAAC;QAC7E,sBAAsB,EAAE,OAAO,CAAC,SAAS,CAAC,wBAAwB,CAAC;QACnE,oBAAoB,EAAE,OAAO,CAAC,SAAS,CAAC,sBAAsB,CAAC;QAC/D,mBAAmB,EAAE,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;QAC7D,qBAAqB,EAAE,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC;QACjE,4BAA4B,EAAE,OAAO,CAAC,SAAS,CAAC,8BAA8B,CAAC;QAC/E,oCAAoC,EAAE,OAAO,CAAC,SAAS,CAAC,sCAAsC,CAAC;QAC/F,4BAA4B,EAAE,OAAO,CAAC,SAAS,CAAC,8BAA8B,CAAC;QAC/E,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;KAE9C,CAAC,CAAC;AAEL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-service.js b/src/app/shared/mocks/mock-form-service.js deleted file mode 100644 index 4c2bc3043b..0000000000 --- a/src/app/shared/mocks/mock-form-service.js +++ /dev/null @@ -1,19 +0,0 @@ -import { of as observableOf } from 'rxjs'; -/** - * Mock for [[FormService]] - */ -export function getMockFormService(id$) { - if (id$ === void 0) { id$ = 'random_id'; } - return jasmine.createSpyObj('FormService', { - getFormData: jasmine.createSpy('getFormData'), - initForm: jasmine.createSpy('initForm'), - removeForm: jasmine.createSpy('removeForm'), - getForm: observableOf({}), - getUniqueId: id$, - resetForm: {}, - validateAllFormFields: jasmine.createSpy('validateAllFormFields'), - isValid: jasmine.createSpy('isValid'), - isFormInitialized: observableOf(true) - }); -} -//# sourceMappingURL=mock-form-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-form-service.js.map b/src/app/shared/mocks/mock-form-service.js.map deleted file mode 100644 index d83dc3e898..0000000000 --- a/src/app/shared/mocks/mock-form-service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-form-service.js","sourceRoot":"","sources":["mock-form-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAI1C;;GAEG;AACH,MAAM,6BACJ,GAAyB;IAAzB,oBAAA,EAAA,iBAAyB;IAEzB,OAAO,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE;QACzC,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;QAC7C,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC;QACvC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC;QAC3C,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC;QACzB,WAAW,EAAE,GAAG;QAChB,SAAS,EAAE,EAAE;QACb,qBAAqB,EAAE,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC;QACjE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;QACrC,iBAAiB,EAAE,YAAY,CAAC,IAAI,CAAC;KACtC,CAAC,CAAC;AAEL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-host-window-service.js b/src/app/shared/mocks/mock-host-window-service.js deleted file mode 100644 index dda698699b..0000000000 --- a/src/app/shared/mocks/mock-host-window-service.js +++ /dev/null @@ -1,19 +0,0 @@ -import { of as observableOf } from 'rxjs'; -// declare a stub service -var MockHostWindowService = /** @class */ (function () { - function MockHostWindowService(width) { - this.setWidth(width); - } - MockHostWindowService.prototype.setWidth = function (width) { - this.width = width; - }; - MockHostWindowService.prototype.isXs = function () { - return observableOf(this.width < 576); - }; - MockHostWindowService.prototype.isSm = function () { - return observableOf(this.width < 768); - }; - return MockHostWindowService; -}()); -export { MockHostWindowService }; -//# sourceMappingURL=mock-host-window-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-host-window-service.js.map b/src/app/shared/mocks/mock-host-window-service.js.map deleted file mode 100644 index 7a338fa8b9..0000000000 --- a/src/app/shared/mocks/mock-host-window-service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-host-window-service.js","sourceRoot":"","sources":["mock-host-window-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtD,yBAAyB;AACzB;IAIE,+BAAY,KAAK;QACf,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,wCAAQ,GAAR,UAAS,KAAK;QACZ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,oCAAI,GAAJ;QACE,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,oCAAI,GAAJ;QACE,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IACxC,CAAC;IACH,4BAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-item.js b/src/app/shared/mocks/mock-item.js deleted file mode 100644 index 890fa5fb0e..0000000000 --- a/src/app/shared/mocks/mock-item.js +++ /dev/null @@ -1,215 +0,0 @@ -import { of as observableOf } from 'rxjs'; -import { Item } from '../../core/shared/item.model'; -/* tslint:disable:no-shadowed-variable */ -export var MockItem = Object.assign(new Item(), { - handle: '10673/6', - lastModified: '2017-04-24T19:44:08.178+0000', - isArchived: true, - isDiscoverable: true, - isWithdrawn: false, - bitstreams: observableOf({ - self: 'dspace-angular://aggregated/object/1507836003548', - requestPending: false, - responsePending: false, - isSuccessful: true, - errorMessage: '', - statusCode: '202', - pageInfo: {}, - payload: { - pageInfo: { - elementsPerPage: 20, - totalElements: 3, - totalPages: 1, - currentPage: 2 - }, - page: [ - { - sizeBytes: 10201, - content: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreams/cf9b0c8e-a1eb-4b65-afd0-567366448713/content', - format: observableOf({ - self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreamformats/10', - requestPending: false, - responsePending: false, - isSuccessful: true, - errorMessage: '', - statusCode: '202', - pageInfo: {}, - payload: { - shortDescription: 'Microsoft Word XML', - description: 'Microsoft Word XML', - mimetype: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - supportLevel: 0, - internal: false, - extensions: null, - self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreamformats/10' - } - }), - bundleName: 'ORIGINAL', - self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreams/cf9b0c8e-a1eb-4b65-afd0-567366448713', - id: 'cf9b0c8e-a1eb-4b65-afd0-567366448713', - uuid: 'cf9b0c8e-a1eb-4b65-afd0-567366448713', - type: 'bitstream', - metadata: { - 'dc.title': [ - { - language: null, - value: 'test_word.docx' - } - ] - } - }, - { - sizeBytes: 31302, - content: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreams/99b00f3c-1cc6-4689-8158-91965bee6b28/content', - format: observableOf({ - self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreamformats/4', - requestPending: false, - responsePending: false, - isSuccessful: true, - errorMessage: '', - statusCode: '202', - pageInfo: {}, - payload: { - shortDescription: 'Adobe PDF', - description: 'Adobe Portable Document Format', - mimetype: 'application/pdf', - supportLevel: 0, - internal: false, - extensions: null, - self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreamformats/4' - } - }), - bundleName: 'ORIGINAL', - self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/bitstreams/99b00f3c-1cc6-4689-8158-91965bee6b28', - id: '99b00f3c-1cc6-4689-8158-91965bee6b28', - uuid: '99b00f3c-1cc6-4689-8158-91965bee6b28', - type: 'bitstream', - metadata: { - 'dc.title': [ - { - language: null, - value: 'test_pdf.pdf' - } - ] - } - } - ] - } - }), - self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/items/0ec7ff22-f211-40ab-a69e-c819b0b1f357', - id: '0ec7ff22-f211-40ab-a69e-c819b0b1f357', - uuid: '0ec7ff22-f211-40ab-a69e-c819b0b1f357', - type: 'item', - metadata: { - 'dc.creator': [ - { - language: 'en_US', - value: 'Doe, Jane' - } - ], - 'dc.date.accessioned': [ - { - language: null, - value: '1650-06-26T19:58:25Z' - } - ], - 'dc.date.available': [ - { - language: null, - value: '1650-06-26T19:58:25Z' - } - ], - 'dc.date.issued': [ - { - language: null, - value: '1650-06-26' - } - ], - 'dc.identifier.issn': [ - { - language: 'en_US', - value: '123456789' - } - ], - 'dc.identifier.uri': [ - { - language: null, - value: 'http://dspace7.4science.it/xmlui/handle/10673/6' - } - ], - 'dc.description.abstract': [ - { - language: 'en_US', - value: 'This is really just a sample abstract. If it was a real abstract it would contain useful information about this test document. Sorry though, nothing useful in this paragraph. You probably shouldn\'t have even bothered to read it!' - } - ], - 'dc.description.provenance': [ - { - language: 'en', - value: 'Made available in DSpace on 2012-06-26T19:58:25Z (GMT). No. of bitstreams: 2\r\ntest_ppt.ppt: 12707328 bytes, checksum: a353fc7d29b3c558c986f7463a41efd3 (MD5)\r\ntest_ppt.pptx: 12468572 bytes, checksum: 599305edb4ebee329667f2c35b14d1d6 (MD5)' - }, - { - language: 'en', - value: 'Restored into DSpace on 2013-06-13T09:17:34Z (GMT).' - }, - { - language: 'en', - value: 'Restored into DSpace on 2013-06-13T11:04:16Z (GMT).' - }, - { - language: 'en', - value: 'Restored into DSpace on 2017-04-24T19:44:08Z (GMT).' - } - ], - 'dc.language': [ - { - language: 'en_US', - value: 'en' - } - ], - 'dc.rights': [ - { - language: 'en_US', - value: '© Jane Doe' - } - ], - 'dc.subject': [ - { - language: 'en_US', - value: 'keyword1' - }, - { - language: 'en_US', - value: 'keyword2' - }, - { - language: 'en_US', - value: 'keyword3' - } - ], - 'dc.title': [ - { - language: 'en_US', - value: 'Test PowerPoint Document' - } - ], - 'dc.type': [ - { - language: 'en_US', - value: 'text' - } - ] - }, - owningCollection: observableOf({ - self: 'https://dspace7.4science.it/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', - requestPending: false, - responsePending: false, - isSuccessful: true, - errorMessage: '', - statusCode: '202', - pageInfo: {}, - payload: [] - }) -}); -/* tslint:enable:no-shadowed-variable */ -//# sourceMappingURL=mock-item.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-item.js.map b/src/app/shared/mocks/mock-item.js.map deleted file mode 100644 index ae8ac4d016..0000000000 --- a/src/app/shared/mocks/mock-item.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-item.js","sourceRoot":"","sources":["mock-item.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-metadata-service.js b/src/app/shared/mocks/mock-metadata-service.js deleted file mode 100644 index 6621acfaf7..0000000000 --- a/src/app/shared/mocks/mock-metadata-service.js +++ /dev/null @@ -1,10 +0,0 @@ -var MockMetadataService = /** @class */ (function () { - function MockMetadataService() { - } - // tslint:disable-next-line:no-empty - MockMetadataService.prototype.listenForRouteChange = function () { - }; - return MockMetadataService; -}()); -export { MockMetadataService }; -//# sourceMappingURL=mock-metadata-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-metadata-service.js.map b/src/app/shared/mocks/mock-metadata-service.js.map deleted file mode 100644 index 31eaafd020..0000000000 --- a/src/app/shared/mocks/mock-metadata-service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-metadata-service.js","sourceRoot":"","sources":["mock-metadata-service.ts"],"names":[],"mappings":"AACA;IAAA;IAOA,CAAC;IALC,oCAAoC;IAC7B,kDAAoB,GAA3B;IAEA,CAAC;IAEH,0BAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-object-cache.service.js b/src/app/shared/mocks/mock-object-cache.service.js deleted file mode 100644 index bf63406fb9..0000000000 --- a/src/app/shared/mocks/mock-object-cache.service.js +++ /dev/null @@ -1,14 +0,0 @@ -export function getMockObjectCacheService() { - return jasmine.createSpyObj('objectCacheService', [ - 'add', - 'remove', - 'getByUUID', - 'getBySelfLink', - 'getRequestHrefBySelfLink', - 'getRequestHrefByUUID', - 'getList', - 'hasByUUID', - 'hasBySelfLink' - ]); -} -//# sourceMappingURL=mock-object-cache.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-object-cache.service.js.map b/src/app/shared/mocks/mock-object-cache.service.js.map deleted file mode 100644 index e0d73dc26a..0000000000 --- a/src/app/shared/mocks/mock-object-cache.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-object-cache.service.js","sourceRoot":"","sources":["mock-object-cache.service.ts"],"names":[],"mappings":"AAEA,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,oBAAoB,EAAE;QAChD,KAAK;QACL,QAAQ;QACR,WAAW;QACX,eAAe;QACf,0BAA0B;QAC1B,sBAAsB;QACtB,SAAS;QACT,WAAW;QACX,eAAe;KAChB,CAAC,CAAC;AAEL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-remote-data-build.service.js b/src/app/shared/mocks/mock-remote-data-build.service.js deleted file mode 100644 index d2f84f9d33..0000000000 --- a/src/app/shared/mocks/mock-remote-data-build.service.js +++ /dev/null @@ -1,21 +0,0 @@ -import { of as observableOf } from 'rxjs'; -import { map } from 'rxjs/operators'; -import { RemoteData } from '../../core/data/remote-data'; -import { hasValue } from '../empty.util'; -export function getMockRemoteDataBuildService(toRemoteDataObservable$) { - return { - toRemoteDataObservable: function (requestEntry$, payload$) { - if (hasValue(toRemoteDataObservable$)) { - return toRemoteDataObservable$; - } - else { - return payload$.pipe(map(function (payload) { return ({ - payload: payload - }); })); - } - }, - buildSingle: function (href$) { return observableOf(new RemoteData(false, false, true, undefined, {})); }, - build: function (normalized) { return Object.create({}); } - }; -} -//# sourceMappingURL=mock-remote-data-build.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-remote-data-build.service.js.map b/src/app/shared/mocks/mock-remote-data-build.service.js.map deleted file mode 100644 index 2add06cc91..0000000000 --- a/src/app/shared/mocks/mock-remote-data-build.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-remote-data-build.service.js","sourceRoot":"","sources":["mock-remote-data-build.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,MAAM,wCAAwC,uBAAqD;IACjG,OAAO;QACL,sBAAsB,EAAE,UAAC,aAAuC,EAAE,QAAyB;YAEzF,IAAI,QAAQ,CAAC,uBAAuB,CAAC,EAAE;gBACrC,OAAO,uBAAuB,CAAC;aAChC;iBAAM;gBACL,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,OAAO,IAAK,OAAA,CAAC;oBACrC,OAAO,SAAA;iBACY,CAAA,EAFiB,CAEjB,CAAC,CAAC,CAAA;aACxB;QACH,CAAC;QACD,WAAW,EAAE,UAAC,KAAkC,IAAK,OAAA,YAAY,CAAC,IAAI,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,EAA/D,CAA+D;QACpH,KAAK,EAAE,UAAC,UAAiC,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAjB,CAAiB;KACtC,CAAC;AAE9B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-request.service.js b/src/app/shared/mocks/mock-request.service.js deleted file mode 100644 index 265bbb6eea..0000000000 --- a/src/app/shared/mocks/mock-request.service.js +++ /dev/null @@ -1,16 +0,0 @@ -import { of as observableOf } from 'rxjs'; -import { RequestEntry } from '../../core/data/request.reducer'; -export function getMockRequestService(requestEntry$) { - if (requestEntry$ === void 0) { requestEntry$ = observableOf(new RequestEntry()); } - return jasmine.createSpyObj('requestService', { - configure: false, - generateRequestId: 'clients/b186e8ce-e99c-4183-bc9a-42b4821bdb78', - getByHref: requestEntry$, - getByUUID: requestEntry$, - uriEncodeBody: jasmine.createSpy('uriEncodeBody'), - /* tslint:disable:no-empty */ - removeByHrefSubstring: function () { } - /* tslint:enable:no-empty */ - }); -} -//# sourceMappingURL=mock-request.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-request.service.js.map b/src/app/shared/mocks/mock-request.service.js.map deleted file mode 100644 index 6575346d02..0000000000 --- a/src/app/shared/mocks/mock-request.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-request.service.js","sourceRoot":"","sources":["mock-request.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,MAAM,gCAAgC,aAA0E;IAA1E,8BAAA,EAAA,gBAA0C,YAAY,CAAC,IAAI,YAAY,EAAE,CAAC;IAC9G,OAAO,OAAO,CAAC,YAAY,CAAC,gBAAgB,EAAE;QAC5C,SAAS,EAAE,KAAK;QAChB,iBAAiB,EAAE,8CAA8C;QACjE,SAAS,EAAE,aAAa;QACxB,SAAS,EAAE,aAAa;QACxB,aAAa,EAAE,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;QACjD,6BAA6B;QAC7B,qBAAqB,EAAE,cAAO,CAAC;QAC/B,4BAA4B;KAC7B,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-role-service.js b/src/app/shared/mocks/mock-role-service.js deleted file mode 100644 index 038d84e14b..0000000000 --- a/src/app/shared/mocks/mock-role-service.js +++ /dev/null @@ -1,45 +0,0 @@ -import { RoleType } from '../../core/roles/role-types'; -import { BehaviorSubject } from 'rxjs/internal/BehaviorSubject'; -var MockRoleService = /** @class */ (function () { - function MockRoleService() { - this._isSubmitter = new BehaviorSubject(true); - this._isController = new BehaviorSubject(true); - this._isAdmin = new BehaviorSubject(true); - } - MockRoleService.prototype.setSubmitter = function (isSubmitter) { - this._isSubmitter.next(isSubmitter); - }; - MockRoleService.prototype.setController = function (isController) { - this._isController.next(isController); - }; - MockRoleService.prototype.setAdmin = function (isAdmin) { - this._isAdmin.next(isAdmin); - }; - MockRoleService.prototype.isSubmitter = function () { - return this._isSubmitter; - }; - MockRoleService.prototype.isController = function () { - return this._isController; - }; - MockRoleService.prototype.isAdmin = function () { - return this._isAdmin; - }; - MockRoleService.prototype.checkRole = function (role) { - var check; - switch (role) { - case RoleType.Submitter: - check = this.isSubmitter(); - break; - case RoleType.Controller: - check = this.isController(); - break; - case RoleType.Admin: - check = this.isAdmin(); - break; - } - return check; - }; - return MockRoleService; -}()); -export { MockRoleService }; -//# sourceMappingURL=mock-role-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-role-service.js.map b/src/app/shared/mocks/mock-role-service.js.map deleted file mode 100644 index 2d5f52000f..0000000000 --- a/src/app/shared/mocks/mock-role-service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-role-service.js","sourceRoot":"","sources":["mock-role-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE;IAAA;QAEE,iBAAY,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QACzC,kBAAa,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1C,aAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;IA0CvC,CAAC;IAxCC,sCAAY,GAAZ,UAAa,WAAoB;QAC/B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAED,uCAAa,GAAb,UAAc,YAAqB;QACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;IAED,kCAAQ,GAAR,UAAS,OAAgB;QACvB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,qCAAW,GAAX;QACE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,sCAAY,GAAZ;QACE,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,iCAAO,GAAP;QACE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,mCAAS,GAAT,UAAU,IAAc;QACtB,IAAI,KAA0B,CAAC;QAC/B,QAAQ,IAAI,EAAE;YACZ,KAAK,QAAQ,CAAC,SAAS;gBACrB,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,QAAQ,CAAC,UAAU;gBACtB,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC5B,MAAM;YACR,KAAK,QAAQ,CAAC,KAAK;gBACjB,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM;SACT;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IACH,sBAAC;AAAD,CAAC,AA9CD,IA8CC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-router.js b/src/app/shared/mocks/mock-router.js deleted file mode 100644 index b9eaf52248..0000000000 --- a/src/app/shared/mocks/mock-router.js +++ /dev/null @@ -1,33 +0,0 @@ -import { of as observableOf } from 'rxjs'; -/** - * Mock for [[RouterService]] - */ -var MockRouter = /** @class */ (function () { - function MockRouter() { - this.events = observableOf({}); - this.routerState = { - snapshot: { - url: '', - root: { - queryParamMap: null - } - } - }; - // noinspection TypeScriptUnresolvedFunction - this.navigate = jasmine.createSpy('navigate'); - this.navigateByUrl = jasmine.createSpy('navigateByUrl'); - } - MockRouter.prototype.setRoute = function (route) { - this.routerState.snapshot.url = route; - }; - MockRouter.prototype.setParams = function (paramsMap) { - this.routerState.snapshot.root.queryParamMap = paramsMap; - }; - MockRouter.prototype.createUrlTree = function (commands, navExtras) { - if (navExtras === void 0) { navExtras = {}; } - return {}; - }; - return MockRouter; -}()); -export { MockRouter }; -//# sourceMappingURL=mock-router.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-router.js.map b/src/app/shared/mocks/mock-router.js.map deleted file mode 100644 index 1f1ab2f029..0000000000 --- a/src/app/shared/mocks/mock-router.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-router.js","sourceRoot":"","sources":["mock-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAE1C;;GAEG;AACH;IAAA;QACS,WAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;QAC1B,gBAAW,GAAG;YACnB,QAAQ,EAAE;gBACR,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE;oBACJ,aAAa,EAAE,IAAI;iBACpB;aACF;SACF,CAAC;QAEF,4CAA4C;QAC5C,aAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACzC,kBAAa,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAarD,CAAC;IAXC,6BAAQ,GAAR,UAAS,KAAK;QACZ,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,GAAG,KAAK,CAAC;IACxC,CAAC;IAED,8BAAS,GAAT,UAAU,SAAS;QACjB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;IAC3D,CAAC;IAED,kCAAa,GAAb,UAAc,QAAQ,EAAE,SAAc;QAAd,0BAAA,EAAA,cAAc;QACpC,OAAO,EAAE,CAAC;IACZ,CAAC;IACH,iBAAC;AAAD,CAAC,AA1BD,IA0BC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-scroll-to-service.js b/src/app/shared/mocks/mock-scroll-to-service.js deleted file mode 100644 index 68af1820a3..0000000000 --- a/src/app/shared/mocks/mock-scroll-to-service.js +++ /dev/null @@ -1,9 +0,0 @@ -/** - * Mock for [[ScrollToService]] - */ -export function getMockScrollToService() { - return jasmine.createSpyObj('scrollToService', { - scrollTo: jasmine.createSpy('scrollTo') - }); -} -//# sourceMappingURL=mock-scroll-to-service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-scroll-to-service.js.map b/src/app/shared/mocks/mock-scroll-to-service.js.map deleted file mode 100644 index 6daebe7139..0000000000 --- a/src/app/shared/mocks/mock-scroll-to-service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-scroll-to-service.js","sourceRoot":"","sources":["mock-scroll-to-service.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,iBAAiB,EAAE;QAC7C,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC;KACxC,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-section-upload.service.js b/src/app/shared/mocks/mock-section-upload.service.js deleted file mode 100644 index 37024713f5..0000000000 --- a/src/app/shared/mocks/mock-section-upload.service.js +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Mock for [[SubmissionFormsConfigService]] - */ -export function getMockSectionUploadService() { - return jasmine.createSpyObj('SectionUploadService', { - getUploadedFileList: jasmine.createSpy('getUploadedFileList'), - getFileData: jasmine.createSpy('getFileData'), - getDefaultPolicies: jasmine.createSpy('getDefaultPolicies'), - addUploadedFile: jasmine.createSpy('addUploadedFile'), - updateFileData: jasmine.createSpy('updateFileData'), - removeUploadedFile: jasmine.createSpy('removeUploadedFile') - }); -} -//# sourceMappingURL=mock-section-upload.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-section-upload.service.js.map b/src/app/shared/mocks/mock-section-upload.service.js.map deleted file mode 100644 index e898a23121..0000000000 --- a/src/app/shared/mocks/mock-section-upload.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-section-upload.service.js","sourceRoot":"","sources":["mock-section-upload.service.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,sBAAsB,EAAE;QAClD,mBAAmB,EAAE,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;QAC7D,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;QAC7C,kBAAkB,EAAE,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;QAC3D,eAAe,EAAE,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC;QACrD,cAAc,EAAE,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;QACnD,kBAAkB,EAAE,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;KAC5D,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-store.js b/src/app/shared/mocks/mock-store.js deleted file mode 100644 index 80ee9c68ab..0000000000 --- a/src/app/shared/mocks/mock-store.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=mock-store.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-store.js.map b/src/app/shared/mocks/mock-store.js.map deleted file mode 100644 index 14ff0dd608..0000000000 --- a/src/app/shared/mocks/mock-store.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-store.js","sourceRoot":"","sources":["mock-store.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-submission.js b/src/app/shared/mocks/mock-submission.js deleted file mode 100644 index 3d6c75f976..0000000000 --- a/src/app/shared/mocks/mock-submission.js +++ /dev/null @@ -1,1572 +0,0 @@ -import { PaginatedList } from '../../core/data/paginated-list'; -import { PageInfo } from '../../core/shared/page-info.model'; -import { FormFieldMetadataValueObject } from '../form/builder/models/form-field-metadata-value.model'; -import { Group } from '../../core/eperson/models/group.model'; -export var mockSectionsData = { - traditionalpageone: { - 'dc.title': [ - new FormFieldMetadataValueObject('test', null, null, 'test') - ] - }, - license: { - url: null, - acceptanceDate: null, - granted: false - }, - upload: { - files: [] - } -}; -export var mockSectionsDataTwo = { - traditionalpageone: { - 'dc.title': [ - new FormFieldMetadataValueObject('test', null, null, 'test') - ] - }, - traditionalpagetwo: { - 'dc.relation': [ - new FormFieldMetadataValueObject('test', null, null, 'test') - ] - }, - license: { - url: null, - acceptanceDate: null, - granted: false - }, - upload: { - files: [] - } -}; -export var mockSectionsErrors = [ - { - message: 'error.validation.required', - paths: [ - '/sections/traditionalpageone/dc.contributor.author', - '/sections/traditionalpageone/dc.title', - '/sections/traditionalpageone/dc.date.issued' - ] - }, - { - message: 'error.validation.license.notgranted', - paths: [ - '/sections/license' - ] - } -]; -export var mockUploadResponse1Errors = { - errors: [ - { - message: 'error.validation.required', - paths: [ - '/sections/traditionalpageone/dc.title', - '/sections/traditionalpageone/dc.date.issued' - ] - } - ] -}; -export var mockUploadResponse1ParsedErrors = { - traditionalpageone: [ - { path: '/sections/traditionalpageone/dc.title', message: 'error.validation.required' }, - { path: '/sections/traditionalpageone/dc.date.issued', message: 'error.validation.required' } - ] -}; -export var mockLicenseParsedErrors = { - license: [ - { path: '/sections/license', message: 'error.validation.license.notgranted' } - ] -}; -export var mockUploadResponse2Errors = { - errors: [ - { - message: 'error.validation.required', - paths: [ - '/sections/traditionalpageone/dc.title', - '/sections/traditionalpageone/dc.date.issued' - ] - }, - { - message: 'error.upload', - paths: [ - '/sections/upload' - ] - } - ] -}; -export var mockUploadResponse2ParsedErrors = { - traditionalpageone: [ - { path: '/sections/traditionalpageone/dc.title', message: 'error.validation.required' }, - { path: '/sections/traditionalpageone/dc.date.issued', message: 'error.validation.required' } - ], - upload: [ - { path: '/sections/upload', message: 'error.upload' } - ] -}; -export var mockSubmissionRestResponse = [ - { - id: 826, - lastModified: '2018-08-03T12:49:45.268+0000', - collection: [ - { - handle: '10673/2', - license: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', - defaultAccessConditions: [], - logo: [ - { - sizeBytes: 7451, - content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', - format: [], - bundleName: null, - self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425', - id: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', - uuid: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', - type: 'bitstream', - name: null, - metadata: [], - _links: { - content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', - format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', - self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425' - } - } - ], - self: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', - id: '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', - uuid: '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', - type: 'collection', - name: 'Collection of Sample Items', - metadata: [ - { - key: 'dc.provenance', - language: null, - value: 'This field is for private provenance information. It is only visible to Administrative users and is not displayed in the user interface by default.' - }, - { - key: 'dc.rights.license', - language: null, - value: '' - }, - { - key: 'dc.description', - language: null, - value: '

This is a DSpace Collection which contains sample DSpace Items.

\r\n

Collections in DSpace may only contain Items.

\r\n

This particular Collection has its own logo (the Open Source Initiative logo).

\r\n

This introductory text is editable by System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection).

' - }, - { - key: 'dc.description.abstract', - language: null, - value: 'This collection contains sample items.' - }, - { - key: 'dc.description.tableofcontents', - language: null, - value: '

This is the news section for this Collection. System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection) can edit this News field.

' - }, - { - key: 'dc.rights', - language: null, - value: '

If this collection had a specific copyright statement, it would be placed here.

' - }, - { - key: 'dc.title', - language: null, - value: 'Collection of Sample Items' - } - ], - _links: { - license: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', - defaultAccessConditions: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/defaultAccessConditions', - logo: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/logo', - self: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb' - } - } - ], - item: [ - { - handle: null, - lastModified: '2018-07-25T14:08:28.750+0000', - isArchived: false, - isDiscoverable: true, - isWithdrawn: false, - bitstreams: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5/bitstreams', - self: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5', - id: '6f344222-6980-4738-8192-b808d79af8a5', - uuid: '6f344222-6980-4738-8192-b808d79af8a5', - type: 'item', - name: null, - metadata: [], - _links: { - bitstreams: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5/bitstreams', - owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5/owningCollection', - templateItemOf: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5/templateItemOf', - self: 'https://rest.api/dspace-spring-rest/api/core/items/6f344222-6980-4738-8192-b808d79af8a5' - } - } - ], - sections: {}, - submissionDefinition: [ - { - isDefault: true, - sections: [ - { - mandatory: true, - sectionType: 'utils', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' - }, - { - mandatory: true, - sectionType: 'collection', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - { - header: 'submit.progressbar.describe.stepone', - mandatory: true, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' - }, - { - header: 'submit.progressbar.describe.steptwo', - mandatory: false, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' - }, - { - header: 'submit.progressbar.upload', - mandatory: true, - sectionType: 'upload', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' - }, - { - header: 'submit.progressbar.license', - mandatory: true, - sectionType: 'license', - visibility: { - main: null, - other: 'READONLY' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - } - ], - name: 'traditional', - type: 'submissiondefinition', - _links: { - collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', - sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' - } - ], - submitter: [], - errors: [], - self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826', - type: 'workspaceitem', - _links: { - collection: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/collection', - item: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/item', - submissionDefinition: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submissionDefinition', - submitter: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submitter', - self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826' - } - } -]; -export var mockSubmissionObject = { - collection: { - handle: '10673/2', - license: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', - defaultAccessConditions: { - pageInfo: { - elementsPerPage: 1, - totalElements: 1, - totalPages: 1, - currentPage: 1 - }, - page: [ - { - name: null, - groupUUID: '11cc35e5-a11d-4b64-b5b9-0052a5d15509', - id: 20, - uuid: 'resource-policy-20', - self: 'https://rest.api/dspace-spring-rest/api/authz/resourcePolicies/20', - type: 'resourcePolicy', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/authz/resourcePolicies/20' - } - } - ] - }, - logo: { - sizeBytes: 7451, - content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', - format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', - bundleName: null, - self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425', - id: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', - uuid: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', - type: 'bitstream', - name: null, - metadata: [], - _links: { - content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', - format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', - self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425' - } - }, - self: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', - id: '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', - uuid: '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb', - type: 'collection', - name: 'Collection of Sample Items', - metadata: [ - { - key: 'dc.provenance', - language: null, - value: 'This field is for private provenance information. It is only visible to Administrative users and is not displayed in the user interface by default.' - }, - { - key: 'dc.rights.license', - language: null, - value: '' - }, - { - key: 'dc.description', - language: null, - value: '

This is a DSpace Collection which contains sample DSpace Items.

\r\n

Collections in DSpace may only contain Items.

\r\n

This particular Collection has its own logo (the Open Source Initiative logo).

\r\n

This introductory text is editable by System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection).

' - }, - { - key: 'dc.description.abstract', - language: null, - value: 'This collection contains sample items.' - }, - { - key: 'dc.description.tableofcontents', - language: null, - value: '

This is the news section for this Collection. System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection) can edit this News field.

' - }, - { - key: 'dc.rights', - language: null, - value: '

If this collection had a specific copyright statement, it would be placed here.

' - }, - { - key: 'dc.title', - language: null, - value: 'Collection of Sample Items' - } - ], - _links: { - license: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', - defaultAccessConditions: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/defaultAccessConditions', - logo: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb/logo', - self: 'https://rest.api/dspace-spring-rest/api/core/collections/1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb' - } - }, - item: { - handle: null, - lastModified: '2019-01-09T10:17:33.722+0000', - isArchived: false, - isDiscoverable: true, - isWithdrawn: false, - owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/owningCollection', - bitstreams: { - pageInfo: { - elementsPerPage: 0, - totalElements: 0, - totalPages: 1, - currentPage: 1 - }, - page: [] - }, - self: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270', - id: 'cae8af78-c874-4468-af79-e6c996aa8270', - uuid: 'cae8af78-c874-4468-af79-e6c996aa8270', - type: 'item', - name: null, - metadata: [], - _links: { - bitstreams: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/bitstreams', - owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/owningCollection', - templateItemOf: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/templateItemOf', - self: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270' - } - }, - submissionDefinition: { - isDefault: true, - sections: { - pageInfo: { - elementsPerPage: 5, - totalElements: 5, - totalPages: 1, - currentPage: 1 - }, - page: [ - { - mandatory: true, - sectionType: 'collection', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - { - header: 'submit.progressbar.describe.stepone', - mandatory: true, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' - }, - { - header: 'submit.progressbar.describe.steptwo', - mandatory: true, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' - }, - { - header: 'submit.progressbar.upload', - mandatory: true, - sectionType: 'upload', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' - }, - { - header: 'submit.progressbar.license', - mandatory: true, - sectionType: 'license', - visibility: { - main: null, - other: 'READONLY' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - } - ] - }, - name: 'traditional', - type: 'submissiondefinition', - _links: { - collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', - sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional', - collections: { - pageInfo: { - elementsPerPage: 0, - totalElements: 0, - totalPages: 1, - currentPage: 1 - }, - page: [] - } - }, - submitter: { - handle: null, - groups: [], - netid: null, - lastActive: '2019-01-09T10:17:33.047+0000', - canLogIn: true, - email: 'dspacedemo+submit@gmail.com', - requireCertificate: false, - selfRegistered: false, - self: 'https://rest.api/dspace-spring-rest/api/eperson/epersons/99423c27-b642-5tg6-a9cd-6d910e68dca5', - id: '99423c27-b642-5tg6-a9cd-6d910e68dca5', - uuid: '99423c27-b642-5tg6-a9cd-6d910e68dca5', - type: 'eperson', - name: 'dspacedemo+submit@gmail.com', - metadata: [ - { - key: 'eperson.firstname', - language: null, - value: 'Demo' - }, - { - key: 'eperson.lastname', - language: null, - value: 'Submitter' - } - ], - _links: { - self: 'https://rest.api/dspace-spring-rest/api/eperson/epersons/99423c27-b642-5tg6-a9cd-6d910e68dca5' - } - }, - id: 826, - lastModified: '2019-01-09T10:17:33.738+0000', - sections: { - license: { - url: null, - acceptanceDate: null, - granted: false - }, - upload: { - files: [] - } - }, - errors: [ - { - message: 'error.validation.required', - paths: [ - '/sections/traditionalpageone/dc.title', - '/sections/traditionalpageone/dc.date.issued' - ] - } - ], - self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826', - type: 'workspaceitem', - _links: { - collection: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/collection', - item: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/item', - submissionDefinition: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submissionDefinition', - submitter: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submitter', - self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826' - } -}; -export var mockSubmissionObjectNew = { - collection: { - handle: '10673/2', - license: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', - defaultAccessConditions: { - pageInfo: { - elementsPerPage: 1, - totalElements: 1, - totalPages: 1, - currentPage: 1 - }, - page: [ - { - name: null, - groupUUID: '11cc35e5-a11d-4b64-b5b9-0052a5d15509', - id: 20, - uuid: 'resource-policy-20', - self: 'https://rest.api/dspace-spring-rest/api/authz/resourcePolicies/20', - type: 'resourcePolicy', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/authz/resourcePolicies/20' - } - } - ] - }, - logo: { - sizeBytes: 7451, - content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', - format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', - bundleName: null, - self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425', - id: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', - uuid: '3f859425-ffbd-4b0e-bf91-bfeb458a7425', - type: 'bitstream', - name: null, - metadata: [], - _links: { - content: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/content', - format: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425/format', - self: 'https://rest.api/dspace-spring-rest/api/core/bitstreams/3f859425-ffbd-4b0e-bf91-bfeb458a7425' - } - }, - self: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb', - id: '45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb', - uuid: '45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb', - type: 'collection', - name: 'Another Collection of Sample Items', - metadata: [ - { - key: 'dc.provenance', - language: null, - value: 'This field is for private provenance information. It is only visible to Administrative users and is not displayed in the user interface by default.' - }, - { - key: 'dc.rights.license', - language: null, - value: '' - }, - { - key: 'dc.description', - language: null, - value: '

This is a DSpace Collection which contains sample DSpace Items.

\r\n

Collections in DSpace may only contain Items.

\r\n

This particular Collection has its own logo (the Open Source Initiative logo).

\r\n

This introductory text is editable by System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection).

' - }, - { - key: 'dc.description.abstract', - language: null, - value: 'This collection contains sample items.' - }, - { - key: 'dc.description.tableofcontents', - language: null, - value: '

This is the news section for this Collection. System Administrators, Community Administrators (of a parent Community) or Collection Administrators (of this Collection) can edit this News field.

' - }, - { - key: 'dc.rights', - language: null, - value: '

If this collection had a specific copyright statement, it would be placed here.

' - }, - { - key: 'dc.title', - language: null, - value: 'Collection of Sample Items' - } - ], - _links: { - license: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb/license', - defaultAccessConditions: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb/defaultAccessConditions', - logo: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb/logo', - self: 'https://rest.api/dspace-spring-rest/api/core/collections/45f2f3f1-ba1f-4f36-908a-3f1ea9a557eb' - } - }, - item: { - handle: null, - lastModified: '2019-01-09T10:17:33.722+0000', - isArchived: false, - isDiscoverable: true, - isWithdrawn: false, - owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/owningCollection', - bitstreams: { - pageInfo: { - elementsPerPage: 0, - totalElements: 0, - totalPages: 1, - currentPage: 1 - }, - page: [] - }, - self: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270', - id: 'cae8af78-c874-4468-af79-e6c996aa8270', - uuid: 'cae8af78-c874-4468-af79-e6c996aa8270', - type: 'item', - name: null, - metadata: [], - _links: { - bitstreams: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/bitstreams', - owningCollection: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/owningCollection', - templateItemOf: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270/templateItemOf', - self: 'https://rest.api/dspace-spring-rest/api/core/items/cae8af78-c874-4468-af79-e6c996aa8270' - } - }, - submissionDefinition: { - isDefault: true, - sections: { - pageInfo: { - elementsPerPage: 5, - totalElements: 5, - totalPages: 1, - currentPage: 1 - }, - page: [ - { - mandatory: true, - sectionType: 'collection', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - { - header: 'submit.progressbar.describe.stepone', - mandatory: true, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' - }, - { - header: 'submit.progressbar.describe.steptwo', - mandatory: true, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' - }, - { - header: 'submit.progressbar.upload', - mandatory: true, - sectionType: 'upload', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' - }, - { - header: 'submit.progressbar.license', - mandatory: true, - sectionType: 'license', - visibility: { - main: null, - other: 'READONLY' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - } - ] - }, - name: 'traditionaltwo', - type: 'submissiondefinition', - _links: { - collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', - sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional', - collections: { - pageInfo: { - elementsPerPage: 0, - totalElements: 0, - totalPages: 1, - currentPage: 1 - }, - page: [] - } - }, - submitter: { - handle: null, - groups: [], - netid: null, - lastActive: '2019-01-09T10:17:33.047+0000', - canLogIn: true, - email: 'dspacedemo+submit@gmail.com', - requireCertificate: false, - selfRegistered: false, - self: 'https://rest.api/dspace-spring-rest/api/eperson/epersons/99423c27-b642-4bb9-a9cd-45gh23e68dca5', - id: '99423c27-b642-4bb9-a9cd-45gh23e68dca5', - uuid: '99423c27-b642-4bb9-a9cd-45gh23e68dca5', - type: 'eperson', - name: 'dspacedemo+submit@gmail.com', - metadata: [ - { - key: 'eperson.firstname', - language: null, - value: 'Demo' - }, - { - key: 'eperson.lastname', - language: null, - value: 'Submitter' - } - ], - _links: { - self: 'https://rest.api/dspace-spring-rest/api/eperson/epersons/99423c27-b642-4bb9-a9cd-45gh23e68dca5' - } - }, - id: 826, - lastModified: '2019-01-09T10:17:33.738+0000', - sections: {}, - errors: [], - self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826', - type: 'workspaceitem', - _links: { - collection: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/collection', - item: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/item', - submissionDefinition: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submissionDefinition', - submitter: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826/submitter', - self: 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826' - } -}; -export var mockSubmissionCollectionId = '1c11f3f1-ba1f-4f36-908a-3f1ea9a557eb'; -export var mockSubmissionId = '826'; -export var mockSubmissionSelfUrl = 'https://rest.api/dspace-spring-rest/api/submission/workspaceitems/826'; -export var mockSubmissionDefinitionResponse = { - isDefault: true, - sections: [ - { - mandatory: true, - sectionType: 'utils', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' - }, - { - mandatory: true, - sectionType: 'collection', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - { - header: 'submit.progressbar.describe.stepone', - mandatory: true, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' - }, - { - header: 'submit.progressbar.describe.steptwo', - mandatory: false, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' - }, - { - header: 'submit.progressbar.upload', - mandatory: true, - sectionType: 'upload', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' - }, - { - header: 'submit.progressbar.license', - mandatory: true, - sectionType: 'license', - visibility: { - main: null, - other: 'READONLY' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - } - ], - name: 'traditional', - type: 'submissiondefinition', - _links: { - collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', - sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' -}; -export var mockSubmissionDefinition = { - isDefault: true, - sections: new PaginatedList(new PageInfo(), [ - { - mandatory: true, - sectionType: 'utils', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/extraction' - }, - { - mandatory: true, - sectionType: 'collection', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/collection' - }, - { - header: 'submit.progressbar.describe.stepone', - mandatory: true, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpageone' - }, - { - header: 'submit.progressbar.describe.steptwo', - mandatory: false, - sectionType: 'submission-form', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/traditionalpagetwo' - }, - { - header: 'submit.progressbar.upload', - mandatory: true, - sectionType: 'upload', - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/upload' - }, - { - header: 'submit.progressbar.license', - mandatory: true, - sectionType: 'license', - visibility: { - main: null, - other: 'READONLY' - }, - type: 'submissionsection', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionsections/license' - } - ]), - name: 'traditional', - type: 'submissiondefinition', - _links: { - collections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/collections', - sections: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional/sections', - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissiondefinitions/traditional' -}; -export var mockSubmissionState = Object.assign({}, { - 826: { - collection: mockSubmissionCollectionId, - definition: 'traditional', - selfUrl: mockSubmissionSelfUrl, - activeSection: null, - sections: { - extraction: { - config: '', - mandatory: true, - sectionType: 'utils', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - collection: { - config: '', - mandatory: true, - sectionType: 'collection', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - traditionalpageone: { - header: 'submit.progressbar.describe.stepone', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone', - mandatory: true, - sectionType: 'submission-form', - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - traditionalpagetwo: { - header: 'submit.progressbar.describe.steptwo', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo', - mandatory: false, - sectionType: 'submission-form', - collapsed: false, - enabled: false, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - upload: { - header: 'submit.progressbar.upload', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload', - mandatory: true, - sectionType: 'upload', - collapsed: false, - enabled: true, - data: { - files: [] - }, - errors: [], - isLoading: false, - isValid: false - }, - license: { - header: 'submit.progressbar.license', - config: '', - mandatory: true, - sectionType: 'license', - visibility: { - main: null, - other: 'READONLY' - }, - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - } - }, - isLoading: false, - savePending: false, - depositPending: false - } -}); -export var mockSectionsState = Object.assign({}, { - extraction: { - config: '', - mandatory: true, - sectionType: 'utils', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - collection: { - config: '', - mandatory: true, - sectionType: 'collection', - visibility: { - main: 'HIDDEN', - other: 'HIDDEN' - }, - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - traditionalpageone: { - header: 'submit.progressbar.describe.stepone', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone', - mandatory: true, - sectionType: 'submission-form', - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - traditionalpagetwo: { - header: 'submit.progressbar.describe.steptwo', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo', - mandatory: false, - sectionType: 'submission-form', - collapsed: false, - enabled: false, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - upload: { - header: 'submit.progressbar.upload', - config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload', - mandatory: true, - sectionType: 'upload', - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - }, - license: { - header: 'submit.progressbar.license', - config: '', - mandatory: true, - sectionType: 'license', - visibility: { - main: null, - other: 'READONLY' - }, - collapsed: false, - enabled: true, - data: {}, - errors: [], - isLoading: false, - isValid: false - } -}); -export var mockSectionsList = [ - { - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpageone', - mandatory: true, - data: {}, - errors: [], - header: 'submit.progressbar.describe.stepone', - id: 'traditionalpageone', - sectionType: 'submission-form' - }, - { - config: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/traditionalpagetwo', - mandatory: true, - data: {}, - errors: [], - header: 'submit.progressbar.describe.steptwo', - id: 'traditionalpagetwo', - sectionType: 'submission-form' - }, - { - config: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload', - mandatory: true, - data: {}, - errors: [], - header: 'submit.progressbar.upload', - id: 'upload', - sectionType: 'upload' - }, - { - config: '', - mandatory: true, - data: {}, - errors: [], - header: 'submit.progressbar.license', - id: 'license', - sectionType: 'license' - } -]; -export var mockUploadConfigResponse = { - accessConditionOptions: [ - { - name: 'openaccess', - groupUUID: '123456-g', - hasStartDate: false, - hasEndDate: false - }, - { - name: 'lease', - groupUUID: '123456-g', - hasStartDate: false, - hasEndDate: true, - maxEndDate: '2019-07-12T14:40:06.308+0000' - }, - { - name: 'embargo', - groupUUID: '123456-g', - hasStartDate: true, - hasEndDate: false, - maxStartDate: '2022-01-12T14:40:06.308+0000' - }, - { - name: 'administrator', - groupUUID: '0f2773dd-1741-475f-80e7-ccdef153d655', - hasStartDate: false, - hasEndDate: false - } - ], - metadata: { - rows: [ - { - fields: [ - { - input: { - type: 'onebox' - }, - label: 'Title', - mandatory: true, - repeatable: false, - mandatoryMessage: 'You must enter a main title for this item.', - hints: 'Enter the name of the file.', - selectableMetadata: [ - { - metadata: 'dc.title', - label: null, - authority: null, - closed: null - } - ], - languageCodes: [] - } - ] - }, - { - fields: [ - { - input: { - type: 'textarea' - }, - label: 'Description', - mandatory: false, - repeatable: true, - hints: 'Enter a description for the file', - selectableMetadata: [ - { - metadata: 'dc.description', - label: null, - authority: null, - closed: null - } - ], - languageCodes: [] - } - ] - } - ], - name: 'bitstream-metadata', - type: 'submissionform', - _links: { - self: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/bitstream-metadata' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionforms/bitstream-metadata' - }, - required: false, - maxSize: 536870912, - name: 'upload', - type: 'submissionupload', - _links: { - metadata: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload/metadata', - self: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' - }, - self: 'https://rest.api/dspace-spring-rest/api/config/submissionuploads/upload' -}; -export var mockAccessConditionOptions = [ - { - name: 'openaccess', - groupUUID: '123456-g', - hasStartDate: false, - hasEndDate: false - }, - { - name: 'lease', - groupUUID: '123456-g', - hasStartDate: false, - hasEndDate: true, - maxEndDate: '2019-07-12T14:40:06.308+0000' - }, - { - name: 'embargo', - groupUUID: '123456-g', - hasStartDate: true, - hasEndDate: false, - maxStartDate: '2022-01-12T14:40:06.308+0000' - }, - { - name: 'administrator', - groupUUID: '0f2773dd-1741-475f-80e7-ccdef153d655', - hasStartDate: false, - hasEndDate: false - } -]; -export var mockGroup = Object.assign(new Group(), { - handle: null, - permanent: true, - self: 'https://rest.api/dspace-spring-rest/api/eperson/groups/123456-g1', - id: '123456-g', - uuid: '123456-g', - type: 'group', - name: 'Anonymous', - metadata: [], - _links: { - groups: 'https://rest.api/dspace-spring-rest/api/eperson/groups/123456-g1/groups', - self: 'https://rest.api/dspace-spring-rest/api/eperson/groups/123456-g1' - }, - groups: { - pageInfo: { - elementsPerPage: 0, - totalElements: 0, - totalPages: 1, - currentPage: 1 - }, - page: [] - } -}); -export var mockUploadFiles = [ - { - uuid: '123456-test-upload', - metadata: { - 'dc.source': [ - { - value: '123456-test-upload.jpg', - language: null, - authority: null, - display: '123456-test-upload.jpg', - confidence: -1, - place: 0, - otherInformation: null - } - ], - 'dc.title': [ - { - value: '123456-test-upload.jpg', - language: null, - authority: null, - display: '123456-test-upload.jpg', - confidence: -1, - place: 0, - otherInformation: null - } - ] - }, - accessConditions: [ - { - id: 3675, - name: 'lease', - rpType: 'TYPE_CUSTOM', - groupUUID: '123456-g', - action: 'READ', - endDate: '2019-01-16', - type: 'resourcePolicy' - }, - { - id: 3676, - name: 'openaccess', - rpType: 'TYPE_CUSTOM', - groupUUID: '123456-g', - action: 'READ', - type: 'resourcePolicy' - } - ], - format: { - id: 16, - shortDescription: 'JPEG', - description: 'Joint Photographic Experts Group/JPEG File Interchange Format (JFIF)', - mimetype: 'image/jpeg', - supportLevel: 0, - internal: false, - extensions: null, - type: 'bitstreamformat' - }, - sizeBytes: 202999, - checkSum: { - checkSumAlgorithm: 'MD5', - value: '5e0996996863d2623439cbb53052bc72' - }, - url: 'https://test-ui.com/api/core/bitstreams/123456-test-upload/content' - } -]; -export var mockFileFormData = { - metadata: { - 'dc.title': [ - { - value: 'title', - language: null, - authority: null, - display: 'title', - confidence: -1, - place: 0, - otherInformation: null - } - ], - 'dc.description': [ - { - value: 'description', - language: null, - authority: null, - display: 'description', - confidence: -1, - place: 0, - otherInformation: null - } - ] - }, - accessConditions: [ - { - name: [ - { - value: 'openaccess', - language: null, - authority: null, - display: 'openaccess', - confidence: -1, - place: 0, - otherInformation: null - } - ], - groupUUID: [ - { - value: '123456-g', - language: null, - authority: null, - display: '123456-g', - confidence: -1, - place: 0, - otherInformation: null - } - ] - }, - { - name: [ - { - value: 'lease', - language: null, - authority: null, - display: 'lease', - confidence: -1, - place: 0, - otherInformation: null - } - ], - endDate: [ - { - value: { - year: 2019, - month: 1, - day: 16 - }, - language: null, - authority: null, - display: { - year: 2019, - month: 1, - day: 16 - }, - confidence: -1, - place: 0, - otherInformation: null - } - ], - groupUUID: [ - { - value: '123456-g', - language: null, - authority: null, - display: '123456-g', - confidence: -1, - place: 0, - otherInformation: null - } - ] - }, - { - name: [ - { - value: 'embargo', - language: null, - authority: null, - display: 'lease', - confidence: -1, - place: 0, - otherInformation: null - } - ], - startDate: [ - { - value: { - year: 2019, - month: 1, - day: 16 - }, - language: null, - authority: null, - display: { - year: 2019, - month: 1, - day: 16 - }, - confidence: -1, - place: 0, - otherInformation: null - } - ], - groupUUID: [ - { - value: '123456-g', - language: null, - authority: null, - display: '123456-g', - confidence: -1, - place: 0, - otherInformation: null - } - ] - } - ] -}; -//# sourceMappingURL=mock-submission.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-submission.js.map b/src/app/shared/mocks/mock-submission.js.map deleted file mode 100644 index a3783cc014..0000000000 --- a/src/app/shared/mocks/mock-submission.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-submission.js","sourceRoot":"","sources":["mock-submission.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-translate-loader.js b/src/app/shared/mocks/mock-translate-loader.js deleted file mode 100644 index ca38a45bda..0000000000 --- a/src/app/shared/mocks/mock-translate-loader.js +++ /dev/null @@ -1,11 +0,0 @@ -import { of as observableOf } from 'rxjs'; -var MockTranslateLoader = /** @class */ (function () { - function MockTranslateLoader() { - } - MockTranslateLoader.prototype.getTranslation = function (lang) { - return observableOf({}); - }; - return MockTranslateLoader; -}()); -export { MockTranslateLoader }; -//# sourceMappingURL=mock-translate-loader.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-translate-loader.js.map b/src/app/shared/mocks/mock-translate-loader.js.map deleted file mode 100644 index 6cb163d59e..0000000000 --- a/src/app/shared/mocks/mock-translate-loader.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-translate-loader.js","sourceRoot":"","sources":["mock-translate-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAGtD;IAAA;IAIA,CAAC;IAHC,4CAAc,GAAd,UAAe,IAAY;QACzB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACH,0BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-translate.service.js b/src/app/shared/mocks/mock-translate.service.js deleted file mode 100644 index 80d1acd4d6..0000000000 --- a/src/app/shared/mocks/mock-translate.service.js +++ /dev/null @@ -1,7 +0,0 @@ -export function getMockTranslateService() { - return jasmine.createSpyObj('translateService', { - get: jasmine.createSpy('get'), - instant: jasmine.createSpy('instant') - }); -} -//# sourceMappingURL=mock-translate.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-translate.service.js.map b/src/app/shared/mocks/mock-translate.service.js.map deleted file mode 100644 index 83694debf6..0000000000 --- a/src/app/shared/mocks/mock-translate.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-translate.service.js","sourceRoot":"","sources":["mock-translate.service.ts"],"names":[],"mappings":"AAEA,MAAM;IACJ,OAAO,OAAO,CAAC,YAAY,CAAC,kBAAkB,EAAE;QAC9C,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC;QAC7B,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC;KACtC,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mocks/mock-uuid.service.js b/src/app/shared/mocks/mock-uuid.service.js deleted file mode 100644 index f2984381a4..0000000000 --- a/src/app/shared/mocks/mock-uuid.service.js +++ /dev/null @@ -1,8 +0,0 @@ -export var defaultUUID = 'c4ce6905-290b-478f-979d-a333bbd7820f'; -export function getMockUUIDService(uuid) { - if (uuid === void 0) { uuid = defaultUUID; } - return jasmine.createSpyObj('uuidService', { - generate: uuid, - }); -} -//# sourceMappingURL=mock-uuid.service.js.map \ No newline at end of file diff --git a/src/app/shared/mocks/mock-uuid.service.js.map b/src/app/shared/mocks/mock-uuid.service.js.map deleted file mode 100644 index acbb411840..0000000000 --- a/src/app/shared/mocks/mock-uuid.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-uuid.service.js","sourceRoot":"","sources":["mock-uuid.service.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,IAAM,WAAW,GAAG,sCAAsC,CAAC;AAElE,MAAM,6BAA6B,IAAkB;IAAlB,qBAAA,EAAA,kBAAkB;IACnD,OAAO,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE;QACzC,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js b/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js deleted file mode 100644 index 180d192986..0000000000 --- a/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -var ClaimedTaskActionsApproveComponent = /** @class */ (function () { - function ClaimedTaskActionsApproveComponent() { - /** - * An event fired when a approve action is confirmed. - */ - this.approve = new EventEmitter(); - } - /** - * Emit approve event - */ - ClaimedTaskActionsApproveComponent.prototype.confirmApprove = function () { - this.approve.emit(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Boolean) - ], ClaimedTaskActionsApproveComponent.prototype, "processingApprove", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ClaimedTaskActionsApproveComponent.prototype, "wrapperClass", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ClaimedTaskActionsApproveComponent.prototype, "approve", void 0); - ClaimedTaskActionsApproveComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-claimed-task-actions-approve', - styleUrls: ['./claimed-task-actions-approve.component.scss'], - templateUrl: './claimed-task-actions-approve.component.html', - }) - ], ClaimedTaskActionsApproveComponent); - return ClaimedTaskActionsApproveComponent; -}()); -export { ClaimedTaskActionsApproveComponent }; -//# sourceMappingURL=claimed-task-actions-approve.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js.map b/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js.map deleted file mode 100644 index c868706c96..0000000000 --- a/src/app/shared/mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-task-actions-approve.component.js","sourceRoot":"","sources":["claimed-task-actions-approve.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAQvE;IANA;QAkBE;;WAEG;QACO,YAAO,GAAsB,IAAI,YAAY,EAAO,CAAC;IAQjE,CAAC;IANC;;OAEG;IACH,2DAAc,GAAd;QACE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAjBQ;QAAR,KAAK,EAAE;;iFAA4B;IAK3B;QAAR,KAAK,EAAE;;4EAAsB;IAKpB;QAAT,MAAM,EAAE;0CAAU,YAAY;uEAAgC;IAfpD,kCAAkC;QAN9C,SAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,SAAS,EAAE,CAAC,+CAA+C,CAAC;YAC5D,WAAW,EAAE,+CAA+C;SAC7D,CAAC;OAEW,kCAAkC,CAuB9C;IAAD,yCAAC;CAAA,AAvBD,IAuBC;SAvBY,kCAAkC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js b/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js deleted file mode 100644 index dd88663e3d..0000000000 --- a/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js +++ /dev/null @@ -1,114 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { BehaviorSubject } from 'rxjs'; -import { filter, map } from 'rxjs/operators'; -import { TranslateService } from '@ngx-translate/core'; -import { ClaimedTask } from '../../../core/tasks/models/claimed-task-object.model'; -import { isNotUndefined } from '../../empty.util'; -import { MyDSpaceActionsComponent } from '../mydspace-actions'; -import { ResourceType } from '../../../core/shared/resource-type'; -import { NotificationsService } from '../../notifications/notifications.service'; -/** - * This component represents mydspace actions related to ClaimedTask object. - */ -var ClaimedTaskActionsComponent = /** @class */ (function (_super) { - tslib_1.__extends(ClaimedTaskActionsComponent, _super); - /** - * Initialize instance variables - * - * @param {Injector} injector - * @param {Router} router - * @param {NotificationsService} notificationsService - * @param {TranslateService} translate - */ - function ClaimedTaskActionsComponent(injector, router, notificationsService, translate) { - var _this = _super.call(this, ResourceType.ClaimedTask, injector, router, notificationsService, translate) || this; - _this.injector = injector; - _this.router = router; - _this.notificationsService = notificationsService; - _this.translate = translate; - /** - * A boolean representing if an approve operation is pending - */ - _this.processingApprove$ = new BehaviorSubject(false); - /** - * A boolean representing if a reject operation is pending - */ - _this.processingReject$ = new BehaviorSubject(false); - /** - * A boolean representing if a return to pool operation is pending - */ - _this.processingReturnToPool$ = new BehaviorSubject(false); - return _this; - } - /** - * Initialize objects - */ - ClaimedTaskActionsComponent.prototype.ngOnInit = function () { - this.initObjects(this.object); - }; - /** - * Init the ClaimedTask and Workflowitem objects - * - * @param {PoolTask} object - */ - ClaimedTaskActionsComponent.prototype.initObjects = function (object) { - this.object = object; - this.workflowitem$ = this.object.workflowitem.pipe(filter(function (rd) { return ((!rd.isRequestPending) && isNotUndefined(rd.payload)); }), map(function (rd) { return rd.payload; })); - }; - /** - * Approve the task. - */ - ClaimedTaskActionsComponent.prototype.approve = function () { - var _this = this; - this.processingApprove$.next(true); - this.objectDataService.approveTask(this.object.id) - .subscribe(function (res) { - _this.processingApprove$.next(false); - _this.handleActionResponse(res.hasSucceeded); - }); - }; - /** - * Reject the task. - */ - ClaimedTaskActionsComponent.prototype.reject = function (reason) { - var _this = this; - this.processingReject$.next(true); - this.objectDataService.rejectTask(reason, this.object.id) - .subscribe(function (res) { - _this.processingReject$.next(false); - _this.handleActionResponse(res.hasSucceeded); - }); - }; - /** - * Return task to the pool. - */ - ClaimedTaskActionsComponent.prototype.returnToPool = function () { - var _this = this; - this.processingReturnToPool$.next(true); - this.objectDataService.returnToPoolTask(this.object.id) - .subscribe(function (res) { - _this.processingReturnToPool$.next(false); - _this.handleActionResponse(res.hasSucceeded); - }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", ClaimedTask) - ], ClaimedTaskActionsComponent.prototype, "object", void 0); - ClaimedTaskActionsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-claimed-task-actions', - styleUrls: ['./claimed-task-actions.component.scss'], - templateUrl: './claimed-task-actions.component.html', - }), - tslib_1.__metadata("design:paramtypes", [Injector, - Router, - NotificationsService, - TranslateService]) - ], ClaimedTaskActionsComponent); - return ClaimedTaskActionsComponent; -}(MyDSpaceActionsComponent)); -export { ClaimedTaskActionsComponent }; -//# sourceMappingURL=claimed-task-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js.map b/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js.map deleted file mode 100644 index 33174cabf7..0000000000 --- a/src/app/shared/mydspace-actions/claimed-task/claimed-task-actions.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-task-actions.component.js","sourceRoot":"","sources":["claimed-task-actions.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js b/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js deleted file mode 100644 index 8fbeb8ccd9..0000000000 --- a/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js +++ /dev/null @@ -1,70 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -import { FormBuilder, Validators } from '@angular/forms'; -import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; -var ClaimedTaskActionsRejectComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {FormBuilder} formBuilder - * @param {NgbModal} modalService - */ - function ClaimedTaskActionsRejectComponent(formBuilder, modalService) { - this.formBuilder = formBuilder; - this.modalService = modalService; - /** - * An event fired when a reject action is confirmed. - * Event's payload equals to reject reason. - */ - this.reject = new EventEmitter(); - } - /** - * Initialize form - */ - ClaimedTaskActionsRejectComponent.prototype.ngOnInit = function () { - this.rejectForm = this.formBuilder.group({ - reason: ['', Validators.required] - }); - }; - /** - * Close modal and emit reject event - */ - ClaimedTaskActionsRejectComponent.prototype.confirmReject = function () { - this.processingReject = true; - this.modalRef.close('Send Button'); - var reason = this.rejectForm.get('reason').value; - this.reject.emit(reason); - }; - /** - * Open modal - * - * @param content - */ - ClaimedTaskActionsRejectComponent.prototype.openRejectModal = function (content) { - this.rejectForm.reset(); - this.modalRef = this.modalService.open(content); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Boolean) - ], ClaimedTaskActionsRejectComponent.prototype, "processingReject", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ClaimedTaskActionsRejectComponent.prototype, "wrapperClass", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ClaimedTaskActionsRejectComponent.prototype, "reject", void 0); - ClaimedTaskActionsRejectComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-claimed-task-actions-reject', - styleUrls: ['./claimed-task-actions-reject.component.scss'], - templateUrl: './claimed-task-actions-reject.component.html', - }), - tslib_1.__metadata("design:paramtypes", [FormBuilder, NgbModal]) - ], ClaimedTaskActionsRejectComponent); - return ClaimedTaskActionsRejectComponent; -}()); -export { ClaimedTaskActionsRejectComponent }; -//# sourceMappingURL=claimed-task-actions-reject.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js.map b/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js.map deleted file mode 100644 index b0a66f6a95..0000000000 --- a/src/app/shared/mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-task-actions-reject.component.js","sourceRoot":"","sources":["claimed-task-actions-reject.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAa,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,QAAQ,EAAe,MAAM,4BAA4B,CAAC;AAQnE;IA4BE;;;;;OAKG;IACH,2CAAoB,WAAwB,EAAU,YAAsB;QAAxD,gBAAW,GAAX,WAAW,CAAa;QAAU,iBAAY,GAAZ,YAAY,CAAU;QAtB5E;;;WAGG;QACO,WAAM,GAAyB,IAAI,YAAY,EAAU,CAAC;IAmBpE,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YACvC,MAAM,EAAE,CAAC,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IAEL,CAAC;IAED;;OAEG;IACH,yDAAa,GAAb;QACE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACnC,IAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,2DAAe,GAAf,UAAgB,OAAY;QAC1B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IA5DQ;QAAR,KAAK,EAAE;;+EAA2B;IAK1B;QAAR,KAAK,EAAE;;2EAAsB;IAMpB;QAAT,MAAM,EAAE;0CAAS,YAAY;qEAAsC;IAhBzD,iCAAiC;QAN7C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAC,8CAA8C,CAAC;YAC3D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAoCiC,WAAW,EAAwB,QAAQ;OAlCjE,iCAAiC,CAkE7C;IAAD,wCAAC;CAAA,AAlED,IAkEC;SAlEY,iCAAiC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js b/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js deleted file mode 100644 index a26828d97a..0000000000 --- a/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js +++ /dev/null @@ -1,38 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, EventEmitter, Input, Output } from '@angular/core'; -var ClaimedTaskActionsReturnToPoolComponent = /** @class */ (function () { - function ClaimedTaskActionsReturnToPoolComponent() { - /** - * An event fired when a return to pool action is confirmed. - */ - this.returnToPool = new EventEmitter(); - } - /** - * Emit returnToPool event - */ - ClaimedTaskActionsReturnToPoolComponent.prototype.confirmReturnToPool = function () { - this.returnToPool.emit(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Boolean) - ], ClaimedTaskActionsReturnToPoolComponent.prototype, "processingReturnToPool", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ClaimedTaskActionsReturnToPoolComponent.prototype, "wrapperClass", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ClaimedTaskActionsReturnToPoolComponent.prototype, "returnToPool", void 0); - ClaimedTaskActionsReturnToPoolComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-claimed-task-actions-return-to-pool', - styleUrls: ['./claimed-task-actions-return-to-pool.component.scss'], - templateUrl: './claimed-task-actions-return-to-pool.component.html', - }) - ], ClaimedTaskActionsReturnToPoolComponent); - return ClaimedTaskActionsReturnToPoolComponent; -}()); -export { ClaimedTaskActionsReturnToPoolComponent }; -//# sourceMappingURL=claimed-task-actions-return-to-pool.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js.map b/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js.map deleted file mode 100644 index be6fbfdc1a..0000000000 --- a/src/app/shared/mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-task-actions-return-to-pool.component.js","sourceRoot":"","sources":["claimed-task-actions-return-to-pool.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAQvE;IANA;QAkBE;;WAEG;QACO,iBAAY,GAAsB,IAAI,YAAY,EAAO,CAAC;IAQtE,CAAC;IANC;;OAEG;IACH,qEAAmB,GAAnB;QACE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAjBQ;QAAR,KAAK,EAAE;;2FAAiC;IAKhC;QAAR,KAAK,EAAE;;iFAAsB;IAKpB;QAAT,MAAM,EAAE;0CAAe,YAAY;iFAAgC;IAfzD,uCAAuC;QANnD,SAAS,CAAC;YACT,QAAQ,EAAE,wCAAwC;YAClD,SAAS,EAAE,CAAC,sDAAsD,CAAC;YACnE,WAAW,EAAE,sDAAsD;SACpE,CAAC;OAEW,uCAAuC,CAuBnD;IAAD,8CAAC;CAAA,AAvBD,IAuBC;SAvBY,uCAAuC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/item/item-actions.component.js b/src/app/shared/mydspace-actions/item/item-actions.component.js deleted file mode 100644 index 0ac9bacffd..0000000000 --- a/src/app/shared/mydspace-actions/item/item-actions.component.js +++ /dev/null @@ -1,56 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { TranslateService } from '@ngx-translate/core'; -import { MyDSpaceActionsComponent } from '../mydspace-actions'; -import { Item } from '../../../core/shared/item.model'; -import { ResourceType } from '../../../core/shared/resource-type'; -import { NotificationsService } from '../../notifications/notifications.service'; -/** - * This component represents mydspace actions related to Item object. - */ -var ItemActionsComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemActionsComponent, _super); - /** - * Initialize instance variables - * - * @param {Injector} injector - * @param {Router} router - * @param {NotificationsService} notificationsService - * @param {TranslateService} translate - */ - function ItemActionsComponent(injector, router, notificationsService, translate) { - var _this = _super.call(this, ResourceType.Item, injector, router, notificationsService, translate) || this; - _this.injector = injector; - _this.router = router; - _this.notificationsService = notificationsService; - _this.translate = translate; - return _this; - } - /** - * Init the target object - * - * @param {Item} object - */ - ItemActionsComponent.prototype.initObjects = function (object) { - this.object = object; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemActionsComponent.prototype, "object", void 0); - ItemActionsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-actions', - styleUrls: ['./item-actions.component.scss'], - templateUrl: './item-actions.component.html', - }), - tslib_1.__metadata("design:paramtypes", [Injector, - Router, - NotificationsService, - TranslateService]) - ], ItemActionsComponent); - return ItemActionsComponent; -}(MyDSpaceActionsComponent)); -export { ItemActionsComponent }; -//# sourceMappingURL=item-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/item/item-actions.component.js.map b/src/app/shared/mydspace-actions/item/item-actions.component.js.map deleted file mode 100644 index 6c8b2fdccc..0000000000 --- a/src/app/shared/mydspace-actions/item/item-actions.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-actions.component.js","sourceRoot":"","sources":["item-actions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF;;GAEG;AAOH;IAA0C,gDAA+C;IAOvF;;;;;;;OAOG;IACH,8BAAsB,QAAkB,EAClB,MAAc,EACd,oBAA0C,EAC1C,SAA2B;QAHjD,YAIE,kBAAM,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,SAC5E;QALqB,cAAQ,GAAR,QAAQ,CAAU;QAClB,YAAM,GAAN,MAAM,CAAQ;QACd,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,eAAS,GAAT,SAAS,CAAkB;;IAEjD,CAAC;IAED;;;;OAIG;IACH,0CAAW,GAAX,UAAY,MAAY;QACtB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAxBQ;QAAR,KAAK,EAAE;0CAAS,IAAI;wDAAC;IALX,oBAAoB;QANhC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE,CAAC,+BAA+B,CAAC;YAC5C,WAAW,EAAE,+BAA+B;SAC7C,CAAC;iDAiBgC,QAAQ;YACV,MAAM;YACQ,oBAAoB;YAC/B,gBAAgB;OAlBtC,oBAAoB,CA+BhC;IAAD,2BAAC;CAAA,AA/BD,CAA0C,wBAAwB,GA+BjE;SA/BY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js b/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js deleted file mode 100644 index 26f9cb397e..0000000000 --- a/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js +++ /dev/null @@ -1,38 +0,0 @@ -import { ResourceType } from '../../core/shared/resource-type'; -import { WorkspaceitemDataService } from '../../core/submission/workspaceitem-data.service'; -import { ClaimedTaskDataService } from '../../core/tasks/claimed-task-data.service'; -import { PoolTaskDataService } from '../../core/tasks/pool-task-data.service'; -import { WorkflowitemDataService } from '../../core/submission/workflowitem-data.service'; -import { ItemDataService } from '../../core/data/item-data.service'; -/** - * Class to return DataService for given ResourceType - */ -var MydspaceActionsServiceFactory = /** @class */ (function () { - function MydspaceActionsServiceFactory() { - } - MydspaceActionsServiceFactory.prototype.getConstructor = function (type) { - switch (type) { - case ResourceType.Item: { - return ItemDataService; - } - case ResourceType.Workspaceitem: { - return WorkspaceitemDataService; - } - case ResourceType.Workflowitem: { - return WorkflowitemDataService; - } - case ResourceType.ClaimedTask: { - return ClaimedTaskDataService; - } - case ResourceType.PoolTask: { - return PoolTaskDataService; - } - default: { - return undefined; - } - } - }; - return MydspaceActionsServiceFactory; -}()); -export { MydspaceActionsServiceFactory }; -//# sourceMappingURL=mydspace-actions-service.factory.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js.map b/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js.map deleted file mode 100644 index 0c008acbe0..0000000000 --- a/src/app/shared/mydspace-actions/mydspace-actions-service.factory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mydspace-actions-service.factory.js","sourceRoot":"","sources":["mydspace-actions-service.factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAE1F,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEpE;;GAEG;AACH;IAAA;IAuBA,CAAC;IAtBQ,sDAAc,GAArB,UAAsB,IAAkB;QACtC,QAAQ,IAAI,EAAE;YACZ,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;gBACtB,OAAO,eAAsB,CAAC;aAC/B;YACD,KAAK,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC/B,OAAO,wBAA+B,CAAC;aACxC;YACD,KAAK,YAAY,CAAC,YAAY,CAAC,CAAC;gBAC9B,OAAO,uBAA8B,CAAC;aACvC;YACD,KAAK,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC7B,OAAO,sBAA6B,CAAC;aACtC;YACD,KAAK,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC1B,OAAO,mBAA0B,CAAC;aACnC;YACD,OAAO,CAAC,CAAC;gBACP,OAAO,SAAS,CAAC;aAClB;SACF;IACH,CAAC;IACH,oCAAC;AAAD,CAAC,AAvBD,IAuBC"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/mydspace-actions.js b/src/app/shared/mydspace-actions/mydspace-actions.js deleted file mode 100644 index 8b8281a6be..0000000000 --- a/src/app/shared/mydspace-actions/mydspace-actions.js +++ /dev/null @@ -1,73 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Input } from '@angular/core'; -import { find } from 'rxjs/operators'; -import { MydspaceActionsServiceFactory } from './mydspace-actions-service.factory'; -import { NotificationOptions } from '../notifications/models/notification-options.model'; -/** - * Abstract class for all different representations of mydspace actions - */ -var MyDSpaceActionsComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ResourceType} objectType - * @param {Injector} injector - * @param {Router} router - * @param {NotificationsService} notificationsService - * @param {TranslateService} translate - */ - function MyDSpaceActionsComponent(objectType, injector, router, notificationsService, translate) { - this.objectType = objectType; - this.injector = injector; - this.router = router; - this.notificationsService = notificationsService; - this.translate = translate; - var factory = new MydspaceActionsServiceFactory(); - this.objectDataService = injector.get(factory.getConstructor(objectType)); - } - /** - * Refresh current page - */ - MyDSpaceActionsComponent.prototype.reload = function () { - // override the route reuse strategy - this.router.routeReuseStrategy.shouldReuseRoute = function () { - return false; - }; - this.router.navigated = false; - var url = decodeURIComponent(this.router.url); - this.router.navigateByUrl(url); - }; - /** - * Override the target object with a refreshed one - */ - MyDSpaceActionsComponent.prototype.refresh = function () { - var _this = this; - // find object by id - this.objectDataService.findById(this.object.id).pipe(find(function (rd) { return rd.hasSucceeded; })).subscribe(function (rd) { - _this.initObjects(rd.payload); - }); - }; - /** - * Handle action response and show properly notification - * - * @param result - * true on success, false otherwise - */ - MyDSpaceActionsComponent.prototype.handleActionResponse = function (result) { - if (result) { - this.reload(); - this.notificationsService.success(null, this.translate.get('submission.workflow.tasks.generic.success'), new NotificationOptions(5000, false)); - } - else { - this.notificationsService.error(null, this.translate.get('submission.workflow.tasks.generic.error'), new NotificationOptions(20000, true)); - } - }; - var _a; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", typeof (_a = typeof T !== "undefined" && T) === "function" && _a || Object) - ], MyDSpaceActionsComponent.prototype, "object", void 0); - return MyDSpaceActionsComponent; -}()); -export { MyDSpaceActionsComponent }; -//# sourceMappingURL=mydspace-actions.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/mydspace-actions.js.map b/src/app/shared/mydspace-actions/mydspace-actions.js.map deleted file mode 100644 index 9b7db1d138..0000000000 --- a/src/app/shared/mydspace-actions/mydspace-actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mydspace-actions.js","sourceRoot":"","sources":["mydspace-actions.ts"],"names":[],"mappings":";AACA,OAAO,EAAY,KAAK,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AAKnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAIzF;;GAEG;AACH;IAYE;;;;;;;;OAQG;IACH,kCACY,UAAwB,EACxB,QAAkB,EAClB,MAAc,EACd,oBAA0C,EAC1C,SAA2B;QAJ3B,eAAU,GAAV,UAAU,CAAc;QACxB,aAAQ,GAAR,QAAQ,CAAU;QAClB,WAAM,GAAN,MAAM,CAAQ;QACd,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,cAAS,GAAT,SAAS,CAAkB;QACrC,IAAM,OAAO,GAAG,IAAI,6BAA6B,EAAe,CAAC;QACjE,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5E,CAAC;IASD;;OAEG;IACH,yCAAM,GAAN;QACE,oCAAoC;QACpC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,GAAG;YAChD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;QAC9B,IAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,0CAAO,GAAP;QAAA,iBAOC;QANC,oBAAoB;QACpB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAClD,IAAI,CAAC,UAAC,EAAiB,IAAK,OAAA,EAAE,CAAC,YAAY,EAAf,CAAe,CAAC,CAC7C,CAAC,SAAS,CAAC,UAAC,EAAiB;YAC5B,KAAI,CAAC,WAAW,CAAC,EAAE,CAAC,OAAY,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,uDAAoB,GAApB,UAAqB,MAAe;QAClC,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,EACpC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,2CAA2C,CAAC,EAC/D,IAAI,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAClC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,yCAAyC,CAAC,EAC7D,IAAI,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;SACzC;IACH,CAAC;;IA3EQ;QAAR,KAAK,EAAE;8DAAkB,CAAC,oBAAD,CAAC;4DAAC;IA4E9B,+BAAC;CAAA,AAjFD,IAiFC;SAjFqB,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js b/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js deleted file mode 100644 index db55bcf2f2..0000000000 --- a/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js +++ /dev/null @@ -1,83 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { BehaviorSubject } from 'rxjs'; -import { filter, map } from 'rxjs/operators'; -import { TranslateService } from '@ngx-translate/core'; -import { PoolTask } from '../../../core/tasks/models/pool-task-object.model'; -import { isNotUndefined } from '../../empty.util'; -import { MyDSpaceActionsComponent } from '../mydspace-actions'; -import { ResourceType } from '../../../core/shared/resource-type'; -import { NotificationsService } from '../../notifications/notifications.service'; -/** - * This component represents mydspace actions related to PoolTask object. - */ -var PoolTaskActionsComponent = /** @class */ (function (_super) { - tslib_1.__extends(PoolTaskActionsComponent, _super); - /** - * Initialize instance variables - * - * @param {Injector} injector - * @param {Router} router - * @param {NotificationsService} notificationsService - * @param {TranslateService} translate - */ - function PoolTaskActionsComponent(injector, router, notificationsService, translate) { - var _this = _super.call(this, ResourceType.PoolTask, injector, router, notificationsService, translate) || this; - _this.injector = injector; - _this.router = router; - _this.notificationsService = notificationsService; - _this.translate = translate; - /** - * A boolean representing if a claim operation is pending - * @type {BehaviorSubject} - */ - _this.processingClaim$ = new BehaviorSubject(false); - return _this; - } - /** - * Initialize objects - */ - PoolTaskActionsComponent.prototype.ngOnInit = function () { - this.initObjects(this.object); - }; - /** - * Init the PoolTask and Workflowitem objects - * - * @param {PoolTask} object - */ - PoolTaskActionsComponent.prototype.initObjects = function (object) { - this.object = object; - this.workflowitem$ = this.object.workflowitem.pipe(filter(function (rd) { return ((!rd.isRequestPending) && isNotUndefined(rd.payload)); }), map(function (rd) { return rd.payload; })); - }; - /** - * Claim the task. - */ - PoolTaskActionsComponent.prototype.claim = function () { - var _this = this; - this.processingClaim$.next(true); - this.objectDataService.claimTask(this.object.id) - .subscribe(function (res) { - _this.handleActionResponse(res.hasSucceeded); - _this.processingClaim$.next(false); - }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", PoolTask) - ], PoolTaskActionsComponent.prototype, "object", void 0); - PoolTaskActionsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-pool-task-actions', - styleUrls: ['./pool-task-actions.component.scss'], - templateUrl: './pool-task-actions.component.html', - }), - tslib_1.__metadata("design:paramtypes", [Injector, - Router, - NotificationsService, - TranslateService]) - ], PoolTaskActionsComponent); - return PoolTaskActionsComponent; -}(MyDSpaceActionsComponent)); -export { PoolTaskActionsComponent }; -//# sourceMappingURL=pool-task-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js.map b/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js.map deleted file mode 100644 index f3848f9911..0000000000 --- a/src/app/shared/mydspace-actions/pool-task/pool-task-actions.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pool-task-actions.component.js","sourceRoot":"","sources":["pool-task-actions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAc,MAAM,MAAM,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKvD,OAAO,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF;;GAEG;AAMH;IAA8C,oDAAuD;IAkBnG;;;;;;;OAOG;IACH,kCAAsB,QAAkB,EAClB,MAAc,EACd,oBAA0C,EAC1C,SAA2B;QAHjD,YAIE,kBAAM,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,SAChF;QALqB,cAAQ,GAAR,QAAQ,CAAU;QAClB,YAAM,GAAN,MAAM,CAAQ;QACd,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,eAAS,GAAT,SAAS,CAAkB;QAtBjD;;;WAGG;QACI,sBAAgB,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;;IAoB9D,CAAC;IAED;;OAEG;IACH,2CAAQ,GAAR;QACE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,8CAAW,GAAX,UAAY,MAAgB;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,aAAa,GAAI,IAAI,CAAC,MAAM,CAAC,YAAqD,CAAC,IAAI,CAC1F,MAAM,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAtD,CAAsD,CAAC,EAChG,GAAG,CAAC,UAAC,EAA4B,IAAK,OAAA,EAAE,CAAC,OAAO,EAAV,CAAU,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,wCAAK,GAAL;QAAA,iBAOC;QANC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;aAC7C,SAAS,CAAC,UAAC,GAAwB;YAClC,KAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC5C,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACP,CAAC;IAzDQ;QAAR,KAAK,EAAE;0CAAS,QAAQ;4DAAC;IALf,wBAAwB;QALpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;iDA2BgC,QAAQ;YACV,MAAM;YACQ,oBAAoB;YAC/B,gBAAgB;OA7BtC,wBAAwB,CA+DpC;IAAD,+BAAC;CAAA,AA/DD,CAA8C,wBAAwB,GA+DrE;SA/DY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js b/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js deleted file mode 100644 index 1d308c75f5..0000000000 --- a/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js +++ /dev/null @@ -1,56 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { TranslateService } from '@ngx-translate/core'; -import { MyDSpaceActionsComponent } from '../mydspace-actions'; -import { Workflowitem } from '../../../core/submission/models/workflowitem.model'; -import { ResourceType } from '../../../core/shared/resource-type'; -import { NotificationsService } from '../../notifications/notifications.service'; -/** - * This component represents mydspace actions related to Workflowitem object. - */ -var WorkflowitemActionsComponent = /** @class */ (function (_super) { - tslib_1.__extends(WorkflowitemActionsComponent, _super); - /** - * Initialize instance variables - * - * @param {Injector} injector - * @param {Router} router - * @param {NotificationsService} notificationsService - * @param {TranslateService} translate - */ - function WorkflowitemActionsComponent(injector, router, notificationsService, translate) { - var _this = _super.call(this, ResourceType.Workflowitem, injector, router, notificationsService, translate) || this; - _this.injector = injector; - _this.router = router; - _this.notificationsService = notificationsService; - _this.translate = translate; - return _this; - } - /** - * Init the target object - * - * @param {Workflowitem} object - */ - WorkflowitemActionsComponent.prototype.initObjects = function (object) { - this.object = object; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Workflowitem) - ], WorkflowitemActionsComponent.prototype, "object", void 0); - WorkflowitemActionsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-workflowitem-actions', - styleUrls: ['./workflowitem-actions.component.scss'], - templateUrl: './workflowitem-actions.component.html', - }), - tslib_1.__metadata("design:paramtypes", [Injector, - Router, - NotificationsService, - TranslateService]) - ], WorkflowitemActionsComponent); - return WorkflowitemActionsComponent; -}(MyDSpaceActionsComponent)); -export { WorkflowitemActionsComponent }; -//# sourceMappingURL=workflowitem-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js.map b/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js.map deleted file mode 100644 index 82d0414dbd..0000000000 --- a/src/app/shared/mydspace-actions/workflowitem/workflowitem-actions.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workflowitem-actions.component.js","sourceRoot":"","sources":["workflowitem-actions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,oDAAoD,CAAC;AAElF,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF;;GAEG;AAMH;IAAkD,wDAA+D;IAO/G;;;;;;;OAOG;IACH,sCAAsB,QAAkB,EAClB,MAAc,EACd,oBAA0C,EAC1C,SAA2B;QAHjD,YAIE,kBAAM,YAAY,CAAC,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,SACpF;QALqB,cAAQ,GAAR,QAAQ,CAAU;QAClB,YAAM,GAAN,MAAM,CAAQ;QACd,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,eAAS,GAAT,SAAS,CAAkB;;IAEjD,CAAC;IAED;;;;OAIG;IACH,kDAAW,GAAX,UAAY,MAAoB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAxBQ;QAAR,KAAK,EAAE;0CAAS,YAAY;gEAAC;IALnB,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;iDAgBgC,QAAQ;YACV,MAAM;YACQ,oBAAoB;YAC/B,gBAAgB;OAlBtC,4BAA4B,CA+BxC;IAAD,mCAAC;CAAA,AA/BD,CAAkD,wBAAwB,GA+BzE;SA/BY,4BAA4B"} \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js b/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js deleted file mode 100644 index fc43df2a49..0000000000 --- a/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js +++ /dev/null @@ -1,82 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { BehaviorSubject } from 'rxjs'; -import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; -import { TranslateService } from '@ngx-translate/core'; -import { Workspaceitem } from '../../../core/submission/models/workspaceitem.model'; -import { MyDSpaceActionsComponent } from '../mydspace-actions'; -import { ResourceType } from '../../../core/shared/resource-type'; -import { NotificationsService } from '../../notifications/notifications.service'; -/** - * This component represents mydspace actions related to Workspaceitem object. - */ -var WorkspaceitemActionsComponent = /** @class */ (function (_super) { - tslib_1.__extends(WorkspaceitemActionsComponent, _super); - /** - * Initialize instance variables - * - * @param {Injector} injector - * @param {Router} router - * @param {NgbModal} modalService - * @param {NotificationsService} notificationsService - * @param {TranslateService} translate - */ - function WorkspaceitemActionsComponent(injector, router, modalService, notificationsService, translate) { - var _this = _super.call(this, ResourceType.Workspaceitem, injector, router, notificationsService, translate) || this; - _this.injector = injector; - _this.router = router; - _this.modalService = modalService; - _this.notificationsService = notificationsService; - _this.translate = translate; - /** - * A boolean representing if a delete operation is pending - * @type {BehaviorSubject} - */ - _this.processingDelete$ = new BehaviorSubject(false); - return _this; - } - /** - * Delete the target workspaceitem object - */ - WorkspaceitemActionsComponent.prototype.confirmDiscard = function (content) { - var _this = this; - this.modalService.open(content).result.then(function (result) { - if (result === 'ok') { - _this.processingDelete$.next(true); - _this.objectDataService.delete(_this.object) - .subscribe(function (response) { - _this.processingDelete$.next(false); - _this.handleActionResponse(response); - }); - } - }); - }; - /** - * Init the target object - * - * @param {Workspaceitem} object - */ - WorkspaceitemActionsComponent.prototype.initObjects = function (object) { - this.object = object; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Workspaceitem) - ], WorkspaceitemActionsComponent.prototype, "object", void 0); - WorkspaceitemActionsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-workspaceitem-actions', - styleUrls: ['./workspaceitem-actions.component.scss'], - templateUrl: './workspaceitem-actions.component.html', - }), - tslib_1.__metadata("design:paramtypes", [Injector, - Router, - NgbModal, - NotificationsService, - TranslateService]) - ], WorkspaceitemActionsComponent); - return WorkspaceitemActionsComponent; -}(MyDSpaceActionsComponent)); -export { WorkspaceitemActionsComponent }; -//# sourceMappingURL=workspaceitem-actions.component.js.map \ No newline at end of file diff --git a/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js.map b/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js.map deleted file mode 100644 index 3478436e5c..0000000000 --- a/src/app/shared/mydspace-actions/workspaceitem/workspaceitem-actions.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-actions.component.js","sourceRoot":"","sources":["workspaceitem-actions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF;;GAEG;AAMH;IAAmD,yDAAiE;IAalH;;;;;;;;OAQG;IACH,uCAAsB,QAAkB,EAClB,MAAc,EACd,YAAsB,EACtB,oBAA0C,EAC1C,SAA2B;QAJjD,YAKE,kBAAM,YAAY,CAAC,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,CAAC,SACrF;QANqB,cAAQ,GAAR,QAAQ,CAAU;QAClB,YAAM,GAAN,MAAM,CAAQ;QACd,kBAAY,GAAZ,YAAY,CAAU;QACtB,0BAAoB,GAApB,oBAAoB,CAAsB;QAC1C,eAAS,GAAT,SAAS,CAAkB;QAnBjD;;;WAGG;QACI,uBAAiB,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;;IAiB/D,CAAC;IAED;;OAEG;IACI,sDAAc,GAArB,UAAsB,OAAO;QAA7B,iBAaC;QAZC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CACzC,UAAC,MAAM;YACL,IAAI,MAAM,KAAK,IAAI,EAAE;gBACnB,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClC,KAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAI,CAAC,MAAM,CAAC;qBACvC,SAAS,CAAC,UAAC,QAAiB;oBAC3B,KAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACnC,KAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAA;aACL;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,mDAAW,GAAX,UAAY,MAAqB;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAlDQ;QAAR,KAAK,EAAE;0CAAS,aAAa;iEAAC;IALpB,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;SACtD,CAAC;iDAuBgC,QAAQ;YACV,MAAM;YACA,QAAQ;YACA,oBAAoB;YAC/B,gBAAgB;OA1BtC,6BAA6B,CAyDzC;IAAD,oCAAC;CAAA,AAzDD,CAAmD,wBAAwB,GAyD1E;SAzDY,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/ngrx/dspace-router-state-serializer.js b/src/app/shared/ngrx/dspace-router-state-serializer.js deleted file mode 100644 index 19c0b58168..0000000000 --- a/src/app/shared/ngrx/dspace-router-state-serializer.js +++ /dev/null @@ -1,14 +0,0 @@ -var DSpaceRouterStateSerializer = /** @class */ (function () { - function DSpaceRouterStateSerializer() { - } - DSpaceRouterStateSerializer.prototype.serialize = function (routerState) { - var url = routerState.url; - var queryParams = routerState.root.queryParams; - // Only return an object including the URL and query params - // instead of the entire snapshot - return { url: url, queryParams: queryParams }; - }; - return DSpaceRouterStateSerializer; -}()); -export { DSpaceRouterStateSerializer }; -//# sourceMappingURL=dspace-router-state-serializer.js.map \ No newline at end of file diff --git a/src/app/shared/ngrx/dspace-router-state-serializer.js.map b/src/app/shared/ngrx/dspace-router-state-serializer.js.map deleted file mode 100644 index 72e5331393..0000000000 --- a/src/app/shared/ngrx/dspace-router-state-serializer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-router-state-serializer.js","sourceRoot":"","sources":["dspace-router-state-serializer.ts"],"names":[],"mappings":"AAQA;IAAA;IASA,CAAC;IARC,+CAAS,GAAT,UAAU,WAAgC;QAChC,IAAA,qBAAG,CAAiB;QAC5B,IAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;QAEjD,2DAA2D;QAC3D,iCAAiC;QACjC,OAAO,EAAE,GAAG,KAAA,EAAE,WAAW,aAAA,EAAE,CAAC;IAC9B,CAAC;IACH,kCAAC;AAAD,CAAC,AATD,IASC"} \ No newline at end of file diff --git a/src/app/shared/ngrx/type.js b/src/app/shared/ngrx/type.js deleted file mode 100644 index 1fbd0c68e0..0000000000 --- a/src/app/shared/ngrx/type.js +++ /dev/null @@ -1,24 +0,0 @@ -/** - * Based on - * https://github.com/ngrx/example-app/blob/master/src/app/util.ts - * - * This function coerces a string into a string literal type. - * Using tagged union types in TypeScript 2.0, this enables - * powerful typechecking of our reducers. - * - * Since every action label passes through this function it - * is a good place to ensure all of our action labels - * are unique. - */ -var typeCache = {}; -export function types() { - return Object.keys(typeCache); -} -export function type(label) { - if (typeCache[label]) { - throw new Error("Action type \"" + label + "\" is not unique\""); - } - typeCache[label] = true; - return label; -} -//# sourceMappingURL=type.js.map \ No newline at end of file diff --git a/src/app/shared/ngrx/type.js.map b/src/app/shared/ngrx/type.js.map deleted file mode 100644 index 8bd7b5ef4d..0000000000 --- a/src/app/shared/ngrx/type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"type.js","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;GAWG;AAEH,IAAM,SAAS,GAAiC,EAAE,CAAC;AAEnD,MAAM;IACJ,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,eAAkB,KAAa;IACnC,IAAI,SAAS,CAAC,KAAe,CAAC,EAAE;QAC9B,MAAM,IAAI,KAAK,CAAC,mBAAgB,KAAK,uBAAkB,CAAC,CAAC;KAC1D;IAED,SAAS,CAAC,KAAe,CAAC,GAAG,IAAI,CAAC;IAElC,OAAO,KAAU,CAAC;AACpB,CAAC"} \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-animations-type.js b/src/app/shared/notifications/models/notification-animations-type.js deleted file mode 100644 index 441b741010..0000000000 --- a/src/app/shared/notifications/models/notification-animations-type.js +++ /dev/null @@ -1,17 +0,0 @@ -// 'fade' | 'fromTop' | 'fromRight' | 'fromBottom' | 'fromLeft' | 'rotate' | 'scale' -export var NotificationAnimationsType; -(function (NotificationAnimationsType) { - NotificationAnimationsType["Fade"] = "fade"; - NotificationAnimationsType["FromTop"] = "fromTop"; - NotificationAnimationsType["FromRight"] = "fromRight"; - NotificationAnimationsType["FromBottom"] = "fromBottom"; - NotificationAnimationsType["FromLeft"] = "fromLeft"; - NotificationAnimationsType["Rotate"] = "rotate"; - NotificationAnimationsType["Scale"] = "scale"; -})(NotificationAnimationsType || (NotificationAnimationsType = {})); -export var NotificationAnimationsStatus; -(function (NotificationAnimationsStatus) { - NotificationAnimationsStatus["In"] = "In"; - NotificationAnimationsStatus["Out"] = "Out"; -})(NotificationAnimationsStatus || (NotificationAnimationsStatus = {})); -//# sourceMappingURL=notification-animations-type.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-animations-type.js.map b/src/app/shared/notifications/models/notification-animations-type.js.map deleted file mode 100644 index 35631a0469..0000000000 --- a/src/app/shared/notifications/models/notification-animations-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notification-animations-type.js","sourceRoot":"","sources":["notification-animations-type.ts"],"names":[],"mappings":"AAAA,oFAAoF;AAEpF,MAAM,CAAN,IAAY,0BAQX;AARD,WAAY,0BAA0B;IACpC,2CAAa,CAAA;IACb,iDAAmB,CAAA;IACnB,qDAAuB,CAAA;IACvB,uDAAyB,CAAA;IACzB,mDAAqB,CAAA;IACrB,+CAAiB,CAAA;IACjB,6CAAe,CAAA;AACjB,CAAC,EARW,0BAA0B,KAA1B,0BAA0B,QAQrC;AAED,MAAM,CAAN,IAAY,4BAGX;AAHD,WAAY,4BAA4B;IACtC,yCAAS,CAAA;IACT,2CAAW,CAAA;AACb,CAAC,EAHW,4BAA4B,KAA5B,4BAA4B,QAGvC"} \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-options.model.js b/src/app/shared/notifications/models/notification-options.model.js deleted file mode 100644 index b64a9d8e4e..0000000000 --- a/src/app/shared/notifications/models/notification-options.model.js +++ /dev/null @@ -1,14 +0,0 @@ -import { NotificationAnimationsType } from './notification-animations-type'; -var NotificationOptions = /** @class */ (function () { - function NotificationOptions(timeOut, clickToClose, animate) { - if (timeOut === void 0) { timeOut = 5000; } - if (clickToClose === void 0) { clickToClose = true; } - if (animate === void 0) { animate = NotificationAnimationsType.Scale; } - this.timeOut = timeOut; - this.clickToClose = clickToClose; - this.animate = animate; - } - return NotificationOptions; -}()); -export { NotificationOptions }; -//# sourceMappingURL=notification-options.model.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-options.model.js.map b/src/app/shared/notifications/models/notification-options.model.js.map deleted file mode 100644 index af73d27da7..0000000000 --- a/src/app/shared/notifications/models/notification-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notification-options.model.js","sourceRoot":"","sources":["notification-options.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAQ5E;IAKE,6BAAY,OAAc,EACd,YAAmB,EACnB,OAA0C;QAF1C,wBAAA,EAAA,cAAc;QACd,6BAAA,EAAA,mBAAmB;QACnB,wBAAA,EAAA,UAAU,0BAA0B,CAAC,KAAK;QAEpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IACH,0BAAC;AAAD,CAAC,AAbD,IAaC"} \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-type.js b/src/app/shared/notifications/models/notification-type.js deleted file mode 100644 index b97c16199b..0000000000 --- a/src/app/shared/notifications/models/notification-type.js +++ /dev/null @@ -1,8 +0,0 @@ -export var NotificationType; -(function (NotificationType) { - NotificationType["Success"] = "alert-success"; - NotificationType["Error"] = "alert-danger"; - NotificationType["Info"] = "alert-info"; - NotificationType["Warning"] = "alert-warning"; -})(NotificationType || (NotificationType = {})); -//# sourceMappingURL=notification-type.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification-type.js.map b/src/app/shared/notifications/models/notification-type.js.map deleted file mode 100644 index eb7d5cadba..0000000000 --- a/src/app/shared/notifications/models/notification-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notification-type.js","sourceRoot":"","sources":["notification-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,6CAAyB,CAAA;IACzB,0CAAsB,CAAA;IACtB,uCAAmB,CAAA;IACnB,6CAAyB,CAAA;AAC3B,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,QAK3B"} \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification.model.js b/src/app/shared/notifications/models/notification.model.js deleted file mode 100644 index 635828ac28..0000000000 --- a/src/app/shared/notifications/models/notification.model.js +++ /dev/null @@ -1,15 +0,0 @@ -import { NotificationOptions } from './notification-options.model'; -import { isEmpty } from '../../empty.util'; -var Notification = /** @class */ (function () { - function Notification(id, type, title, content, options, html) { - this.id = id; - this.type = type; - this.title = title; - this.content = content; - this.options = isEmpty(options) ? new NotificationOptions() : options; - this.html = html; - } - return Notification; -}()); -export { Notification }; -//# sourceMappingURL=notification.model.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/models/notification.model.js.map b/src/app/shared/notifications/models/notification.model.js.map deleted file mode 100644 index 9efeb0a29a..0000000000 --- a/src/app/shared/notifications/models/notification.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notification.model.js","sourceRoot":"","sources":["notification.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEzF,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAY3C;IAQE,sBAAY,EAAU,EACV,IAAsB,EACtB,KAAmC,EACnC,OAAqC,EACrC,OAA6B,EAC7B,IAAc;QAExB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACtE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEH,mBAAC;AAAD,CAAC,AAvBD,IAuBC"} \ No newline at end of file diff --git a/src/app/shared/notifications/notification/notification.component.js b/src/app/shared/notifications/notification/notification.component.js deleted file mode 100644 index 9193c9e8e5..0000000000 --- a/src/app/shared/notifications/notification/notification.component.js +++ /dev/null @@ -1,140 +0,0 @@ -import * as tslib_1 from "tslib"; -import { of as observableOf, Observable } from 'rxjs'; -import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, NgZone, TemplateRef, ViewEncapsulation } from '@angular/core'; -import { trigger } from '@angular/animations'; -import { DomSanitizer } from '@angular/platform-browser'; -import { NotificationsService } from '../notifications.service'; -import { scaleEnter, scaleInState, scaleLeave, scaleOutState } from '../../animations/scale'; -import { rotateEnter, rotateInState, rotateLeave, rotateOutState } from '../../animations/rotate'; -import { fromBottomEnter, fromBottomInState, fromBottomLeave, fromBottomOutState } from '../../animations/fromBottom'; -import { fromRightEnter, fromRightInState, fromRightLeave, fromRightOutState } from '../../animations/fromRight'; -import { fromLeftEnter, fromLeftInState, fromLeftLeave, fromLeftOutState } from '../../animations/fromLeft'; -import { fromTopEnter, fromTopInState, fromTopLeave, fromTopOutState } from '../../animations/fromTop'; -import { fadeInEnter, fadeInState, fadeOutLeave, fadeOutState } from '../../animations/fade'; -import { NotificationAnimationsStatus } from '../models/notification-animations-type'; -import { isNotEmpty } from '../../empty.util'; -var NotificationComponent = /** @class */ (function () { - function NotificationComponent(notificationService, domSanitizer, cdr, zone) { - var _this = this; - this.notificationService = notificationService; - this.domSanitizer = domSanitizer; - this.cdr = cdr; - this.zone = zone; - this.notification = null; - this.showProgressBar = false; - this.titleIsTemplate = false; - this.contentIsTemplate = false; - this.htmlIsTemplate = false; - this.progressWidth = 0; - this.stopTime = false; - this.count = 0; - this.instance = function () { - _this.diff = (new Date().getTime() - _this.start) - (_this.count * _this.speed); - if (_this.count++ === _this.steps) { - _this.remove(); - // this.item.timeoutEnd!.emit(); - } - else if (!_this.stopTime) { - if (_this.showProgressBar) { - _this.progressWidth += 100 / _this.steps; - } - _this.timer = setTimeout(_this.instance, (_this.speed - _this.diff)); - } - _this.zone.run(function () { return _this.cdr.detectChanges(); }); - }; - } - NotificationComponent.prototype.ngOnInit = function () { - this.animate = this.notification.options.animate + NotificationAnimationsStatus.In; - if (this.notification.options.timeOut !== 0) { - this.startTimeOut(); - this.showProgressBar = true; - } - this.html = this.notification.html; - this.contentType(this.notification.title, 'title'); - this.contentType(this.notification.content, 'content'); - }; - NotificationComponent.prototype.startTimeOut = function () { - var _this = this; - this.steps = this.notification.options.timeOut / 10; - this.speed = this.notification.options.timeOut / this.steps; - this.start = new Date().getTime(); - this.zone.runOutsideAngular(function () { return _this.timer = setTimeout(_this.instance, _this.speed); }); - }; - NotificationComponent.prototype.ngOnDestroy = function () { - clearTimeout(this.timer); - }; - NotificationComponent.prototype.remove = function () { - var _this = this; - if (this.animate) { - this.setAnimationOut(); - setTimeout(function () { - _this.notificationService.remove(_this.notification); - }, 1000); - } - else { - this.notificationService.remove(this.notification); - } - }; - NotificationComponent.prototype.contentType = function (item, key) { - if (item instanceof TemplateRef) { - this[key] = item; - } - else if (key === 'title' || (key === 'content' && !this.html)) { - var value = null; - if (isNotEmpty(item)) { - if (typeof item === 'string') { - value = observableOf(item); - } - else if (item instanceof Observable) { - value = item; - } - else if (typeof item === 'object' && isNotEmpty(item.value)) { - // when notifications state is transferred from SSR to CSR, - // Observables Object loses the instance type and become simply object, - // so converts it again to Observable - value = observableOf(item.value); - } - } - this[key] = value; - } - else { - this[key] = this.domSanitizer.bypassSecurityTrustHtml(item); - } - this[key + 'IsTemplate'] = item instanceof TemplateRef; - }; - NotificationComponent.prototype.setAnimationOut = function () { - this.animate = this.notification.options.animate + NotificationAnimationsStatus.Out; - this.cdr.detectChanges(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], NotificationComponent.prototype, "notification", void 0); - NotificationComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-notification', - encapsulation: ViewEncapsulation.None, - animations: [ - trigger('enterLeave', [ - fadeInEnter, fadeInState, fadeOutLeave, fadeOutState, - fromBottomEnter, fromBottomInState, fromBottomLeave, fromBottomOutState, - fromRightEnter, fromRightInState, fromRightLeave, fromRightOutState, - fromLeftEnter, fromLeftInState, fromLeftLeave, fromLeftOutState, - fromTopEnter, fromTopInState, fromTopLeave, fromTopOutState, - rotateInState, rotateEnter, rotateOutState, rotateLeave, - scaleInState, scaleEnter, scaleOutState, scaleLeave - ]) - ], - templateUrl: './notification.component.html', - styleUrls: ['./notification.component.scss'], - changeDetection: ChangeDetectionStrategy.OnPush - }), - tslib_1.__metadata("design:paramtypes", [NotificationsService, - DomSanitizer, - ChangeDetectorRef, - NgZone]) - ], NotificationComponent); - return NotificationComponent; -}()); -export { NotificationComponent }; -//# sourceMappingURL=notification.component.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notification/notification.component.js.map b/src/app/shared/notifications/notification/notification.component.js.map deleted file mode 100644 index f57d39a052..0000000000 --- a/src/app/shared/notifications/notification/notification.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notification.component.js","sourceRoot":"","sources":["notification.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAG,UAAU,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,KAAK,EACL,MAAM,EAGN,WAAW,EACX,iBAAiB,EAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtH,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACjH,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACvG,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAsB9C;IAwBE,+BAAoB,mBAAyC,EACzC,YAA0B,EAC1B,GAAsB,EACtB,IAAY;QAHhC,iBAIC;QAJmB,wBAAmB,GAAnB,mBAAmB,CAAsB;QACzC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,QAAG,GAAH,GAAG,CAAmB;QACtB,SAAI,GAAJ,IAAI,CAAQ;QAzBhB,iBAAY,GAAG,IAAqB,CAAC;QAM9C,oBAAe,GAAG,KAAK,CAAC;QACxB,oBAAe,GAAG,KAAK,CAAC;QACxB,sBAAiB,GAAG,KAAK,CAAC;QAC1B,mBAAc,GAAG,KAAK,CAAC;QAEvB,kBAAa,GAAG,CAAC,CAAC;QAEjB,aAAQ,GAAG,KAAK,CAAC;QAIjB,UAAK,GAAG,CAAC,CAAC;QAkCV,aAAQ,GAAG;YACjB,KAAI,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,KAAK,CAAC,CAAC;YAE5E,IAAI,KAAI,CAAC,KAAK,EAAE,KAAK,KAAI,CAAC,KAAK,EAAE;gBAC/B,KAAI,CAAC,MAAM,EAAE,CAAC;gBACd,gCAAgC;aACjC;iBAAM,IAAI,CAAC,KAAI,CAAC,QAAQ,EAAE;gBACzB,IAAI,KAAI,CAAC,eAAe,EAAE;oBACxB,KAAI,CAAC,aAAa,IAAI,GAAG,GAAG,KAAI,CAAC,KAAK,CAAC;iBACxC;gBAED,KAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAI,CAAC,QAAQ,EAAE,CAAC,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,IAAI,CAAC,CAAC,CAAC;aAClE;YACD,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,GAAG,CAAC,aAAa,EAAE,EAAxB,CAAwB,CAAC,CAAC;QAChD,CAAC,CAAC;IAvCF,CAAC;IAED,wCAAQ,GAAR;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,GAAG,4BAA4B,CAAC,EAAE,CAAC;QAEnF,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,KAAK,CAAC,EAAE;YAC3C,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;SAC7B;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC;IAEO,4CAAY,GAApB;QAAA,iBAKC;QAJC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;QACpD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5D,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAM,OAAA,KAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAI,CAAC,QAAQ,EAAE,KAAI,CAAC,KAAK,CAAC,EAAlD,CAAkD,CAAC,CAAC;IACxF,CAAC;IAED,2CAAW,GAAX;QACE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAkBO,sCAAM,GAAd;QAAA,iBASC;QARC,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,UAAU,CAAC;gBACT,KAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAI,CAAC,YAAY,CAAC,CAAC;YACrD,CAAC,EAAE,IAAI,CAAC,CAAC;SACV;aAAM;YACL,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SACpD;IACH,CAAC;IAEO,2CAAW,GAAnB,UAAoB,IAAS,EAAE,GAAW;QACxC,IAAI,IAAI,YAAY,WAAW,EAAE;YAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;SAClB;aAAM,IAAI,GAAG,KAAK,OAAO,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC/D,IAAI,KAAK,GAAG,IAAI,CAAC;YACjB,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;gBACpB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;oBAC5B,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;iBAC5B;qBAAM,IAAI,IAAI,YAAY,UAAU,EAAE;oBACrC,KAAK,GAAG,IAAI,CAAC;iBACd;qBAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBAC7D,2DAA2D;oBAC3D,uEAAuE;oBACvE,qCAAqC;oBACrC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBAClC;aACF;YACD,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;SAClB;aAAM;YACL,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;SAC7D;QAED,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,IAAI,YAAY,WAAW,CAAC;IACzD,CAAC;IAEO,+CAAe,GAAvB;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,GAAG,4BAA4B,CAAC,GAAG,CAAC;QACpF,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC3B,CAAC;IA1GQ;QAAR,KAAK,EAAE;;+DAA6C;IAF1C,qBAAqB;QAnBjC,SAAS,CAAC;YACT,QAAQ,EAAE,iBAAiB;YAC3B,aAAa,EAAE,iBAAiB,CAAC,IAAI;YACrC,UAAU,EAAE;gBACV,OAAO,CAAC,YAAY,EAAE;oBACpB,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY;oBACpD,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB;oBACvE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB;oBACnE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB;oBAC/D,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe;oBAC3D,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW;oBACvD,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU;iBACpD,CAAC;aACH;YACD,WAAW,EAAE,+BAA+B;YAC5C,SAAS,EAAE,CAAC,+BAA+B,CAAC;YAC5C,eAAe,EAAE,uBAAuB,CAAC,MAAM;SAChD,CAAC;iDA0ByC,oBAAoB;YAC3B,YAAY;YACrB,iBAAiB;YAChB,MAAM;OA3BrB,qBAAqB,CA6GjC;IAAD,4BAAC;CAAA,AA7GD,IA6GC;SA7GY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications-board/notifications-board.component.js b/src/app/shared/notifications/notifications-board/notifications-board.component.js deleted file mode 100644 index 0b454b775e..0000000000 --- a/src/app/shared/notifications/notifications-board/notifications-board.component.js +++ /dev/null @@ -1,130 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewEncapsulation } from '@angular/core'; -import { select, Store } from '@ngrx/store'; -import { difference } from 'lodash'; -import { NotificationsService } from '../notifications.service'; -import { notificationsStateSelector } from '../selectors'; -var NotificationsBoardComponent = /** @class */ (function () { - function NotificationsBoardComponent(service, store, cdr) { - this.service = service; - this.store = store; - this.cdr = cdr; - this.notifications = []; - this.position = ['bottom', 'right']; - // Received values - this.maxStack = 8; - // Sent values - this.rtl = false; - this.animate = 'fromRight'; - } - Object.defineProperty(NotificationsBoardComponent.prototype, "options", { - set: function (opt) { - this.attachChanges(opt); - }, - enumerable: true, - configurable: true - }); - NotificationsBoardComponent.prototype.ngOnInit = function () { - var _this = this; - this.sub = this.store.pipe(select(notificationsStateSelector)) - .subscribe(function (state) { - if (state.length === 0) { - _this.notifications = []; - } - else if (state.length > _this.notifications.length) { - // Add - var newElem = difference(state, _this.notifications); - newElem.forEach(function (notification) { - _this.add(notification); - }); - } - else { - // Remove - var delElem = difference(_this.notifications, state); - delElem.forEach(function (notification) { - _this.notifications = _this.notifications.filter(function (item) { return item.id !== notification.id; }); - }); - } - _this.cdr.detectChanges(); - }); - }; - // Add the new notification to the notification array - NotificationsBoardComponent.prototype.add = function (item) { - var toBlock = this.block(item); - if (!toBlock) { - if (this.notifications.length >= this.maxStack) { - this.notifications.splice(this.notifications.length - 1, 1); - } - this.notifications.splice(0, 0, item); - } - else { - // Remove the notification from the store - // This notification was in the store, but not in this.notifications - // because it was a blocked duplicate - this.service.remove(item); - } - }; - NotificationsBoardComponent.prototype.block = function (item) { - var toCheck = item.html ? this.checkHtml : this.checkStandard; - this.notifications.forEach(function (notification) { - if (toCheck(notification, item)) { - return true; - } - }); - if (this.notifications.length > 0) { - this.notifications.forEach(function (notification) { - if (toCheck(notification, item)) { - return true; - } - }); - } - var comp; - if (this.notifications.length > 0) { - comp = this.notifications[0]; - } - else { - return false; - } - return toCheck(comp, item); - }; - NotificationsBoardComponent.prototype.checkStandard = function (checker, item) { - return checker.type === item.type && checker.title === item.title && checker.content === item.content; - }; - NotificationsBoardComponent.prototype.checkHtml = function (checker, item) { - return checker.html ? checker.type === item.type && checker.title === item.title && checker.content === item.content && checker.html === item.html : false; - }; - // Attach all the changes received in the options object - NotificationsBoardComponent.prototype.attachChanges = function (options) { - var _this = this; - Object.keys(options).forEach(function (a) { - if (_this.hasOwnProperty(a)) { - _this[a] = options[a]; - } - }); - }; - NotificationsBoardComponent.prototype.ngOnDestroy = function () { - if (this.sub) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object), - tslib_1.__metadata("design:paramtypes", [Object]) - ], NotificationsBoardComponent.prototype, "options", null); - NotificationsBoardComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-notifications-board', - encapsulation: ViewEncapsulation.None, - templateUrl: './notifications-board.component.html', - styleUrls: ['./notifications-board.component.scss'], - changeDetection: ChangeDetectionStrategy.OnPush - }), - tslib_1.__metadata("design:paramtypes", [NotificationsService, - Store, - ChangeDetectorRef]) - ], NotificationsBoardComponent); - return NotificationsBoardComponent; -}()); -export { NotificationsBoardComponent }; -//# sourceMappingURL=notifications-board.component.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications-board/notifications-board.component.js.map b/src/app/shared/notifications/notifications-board/notifications-board.component.js.map deleted file mode 100644 index c498853f0e..0000000000 --- a/src/app/shared/notifications/notifications-board/notifications-board.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notifications-board.component.js","sourceRoot":"","sources":["notifications-board.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.actions.js b/src/app/shared/notifications/notifications.actions.js deleted file mode 100644 index 069b0e59f6..0000000000 --- a/src/app/shared/notifications/notifications.actions.js +++ /dev/null @@ -1,47 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -export var NotificationsActionTypes = { - NEW_NOTIFICATION: type('dspace/notifications/NEW_NOTIFICATION'), - REMOVE_ALL_NOTIFICATIONS: type('dspace/notifications/REMOVE_ALL_NOTIFICATIONS'), - REMOVE_NOTIFICATION: type('dspace/notifications/REMOVE_NOTIFICATION'), -}; -/* tslint:disable:max-classes-per-file */ -/** - * New notification. - * @class NewNotificationAction - * @implements {Action} - */ -var NewNotificationAction = /** @class */ (function () { - function NewNotificationAction(notification) { - this.type = NotificationsActionTypes.NEW_NOTIFICATION; - this.payload = notification; - } - return NewNotificationAction; -}()); -export { NewNotificationAction }; -/** - * Remove all notifications. - * @class RemoveAllNotificationsAction - * @implements {Action} - */ -var RemoveAllNotificationsAction = /** @class */ (function () { - function RemoveAllNotificationsAction(payload) { - this.payload = payload; - this.type = NotificationsActionTypes.REMOVE_ALL_NOTIFICATIONS; - } - return RemoveAllNotificationsAction; -}()); -export { RemoveAllNotificationsAction }; -/** - * Remove a notification. - * @class RemoveNotificationAction - * @implements {Action} - */ -var RemoveNotificationAction = /** @class */ (function () { - function RemoveNotificationAction(notificationId) { - this.type = NotificationsActionTypes.REMOVE_NOTIFICATION; - this.payload = notificationId; - } - return RemoveNotificationAction; -}()); -export { RemoveNotificationAction }; -//# sourceMappingURL=notifications.actions.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.actions.js.map b/src/app/shared/notifications/notifications.actions.js.map deleted file mode 100644 index 0ee4745890..0000000000 --- a/src/app/shared/notifications/notifications.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notifications.actions.js","sourceRoot":"","sources":["notifications.actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C,MAAM,CAAC,IAAM,wBAAwB,GAAG;IACtC,gBAAgB,EAAE,IAAI,CAAC,uCAAuC,CAAC;IAC/D,wBAAwB,EAAE,IAAI,CAAC,+CAA+C,CAAC;IAC/E,mBAAmB,EAAE,IAAI,CAAC,0CAA0C,CAAC;CACtE,CAAC;AAEF,yCAAyC;AAEzC;;;;GAIG;AACH;IAIE,+BAAY,YAA2B;QAHhC,SAAI,GAAW,wBAAwB,CAAC,gBAAgB,CAAC;QAI9D,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;IAC9B,CAAC;IACH,4BAAC;AAAD,CAAC,AAPD,IAOC;;AAED;;;;GAIG;AACH;IAGE,sCAAmB,OAAa;QAAb,YAAO,GAAP,OAAO,CAAM;QAFzB,SAAI,GAAW,wBAAwB,CAAC,wBAAwB,CAAC;IAEpC,CAAC;IACvC,mCAAC;AAAD,CAAC,AAJD,IAIC;;AAED;;;;GAIG;AACH;IAIE,kCAAY,cAAmB;QAHxB,SAAI,GAAW,wBAAwB,CAAC,mBAAmB,CAAC;QAIjE,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;IAChC,CAAC;IACH,+BAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.effects.js b/src/app/shared/notifications/notifications.effects.js deleted file mode 100644 index e3aff2f3fc..0000000000 --- a/src/app/shared/notifications/notifications.effects.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Actions } from '@ngrx/effects'; -import { Store } from '@ngrx/store'; -var NotificationsEffects = /** @class */ (function () { - /** - * Authenticate user. - * @method authenticate - */ - /* @Effect() - public timer: Observable = this.actions$ - .pipe(ofType(NotificationsActionTypes.NEW_NOTIFICATION_WITH_TIMER), - // .debounceTime((action: any) => action.payload.options.timeOut) - debounceTime(3000), - map(() => new RemoveNotificationAction()); - .switchMap((action: NewNotificationWithTimerAction) => Observable - .timer(30000) - .mapTo(() => new RemoveNotificationAction()) - ));*/ - /** - * @constructor - * @param {Actions} actions$ - * @param {Store} store - */ - function NotificationsEffects(actions$, store) { - this.actions$ = actions$; - this.store = store; - } - NotificationsEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions, - Store]) - ], NotificationsEffects); - return NotificationsEffects; -}()); -export { NotificationsEffects }; -//# sourceMappingURL=notifications.effects.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.effects.js.map b/src/app/shared/notifications/notifications.effects.js.map deleted file mode 100644 index 545b890d3f..0000000000 --- a/src/app/shared/notifications/notifications.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notifications.effects.js","sourceRoot":"","sources":["notifications.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC;IAEE;;;OAGG;IACJ;;;;;;;;;YASQ;IAEP;;;;OAIG;IACH,8BAAoB,QAAiB,EACjB,KAAsB;QADtB,aAAQ,GAAR,QAAQ,CAAS;QACjB,UAAK,GAAL,KAAK,CAAiB;IAC1C,CAAC;IAxBU,oBAAoB;QADhC,UAAU,EAAE;iDAuBmB,OAAO;YACV,KAAK;OAvBrB,oBAAoB,CAyBhC;IAAD,2BAAC;CAAA,AAzBD,IAyBC;SAzBY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.reducers.js b/src/app/shared/notifications/notifications.reducers.js deleted file mode 100644 index 267307aa05..0000000000 --- a/src/app/shared/notifications/notifications.reducers.js +++ /dev/null @@ -1,28 +0,0 @@ -import { NotificationsActionTypes } from './notifications.actions'; -/** - * The initial state. - */ -var initialState = []; -/** - * The reducer function. - * @function reducer - * @param {State} state Current state - * @param {NotificationsActions} action Incoming action - */ -export function notificationsReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - case NotificationsActionTypes.NEW_NOTIFICATION: - return state.concat([action.payload]); - case NotificationsActionTypes.REMOVE_ALL_NOTIFICATIONS: - return []; - case NotificationsActionTypes.REMOVE_NOTIFICATION: - return removeNotification(state, action); - default: - return state; - } -} -var removeNotification = function (state, action) { - return state.filter(function (item) { return item.id !== action.payload; }); -}; -//# sourceMappingURL=notifications.reducers.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.reducers.js.map b/src/app/shared/notifications/notifications.reducers.js.map deleted file mode 100644 index 9cd3e84a85..0000000000 --- a/src/app/shared/notifications/notifications.reducers.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notifications.reducers.js","sourceRoot":"","sources":["notifications.reducers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,wBAAwB,EAA4B,MAAM,yBAAyB,CAAC;AAUnH;;GAEG;AACH,IAAM,YAAY,GAAuB,EAAE,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,+BAA+B,KAAyB,EAAE,MAA4B;IAAvD,sBAAA,EAAA,oBAAyB;IAE5D,QAAQ,MAAM,CAAC,IAAI,EAAE;QACnB,KAAK,wBAAwB,CAAC,gBAAgB;YAC5C,OAAW,KAAK,SAAE,MAAM,CAAC,OAAO,GAAE;QAEpC,KAAK,wBAAwB,CAAC,wBAAwB;YACpD,OAAO,EAAE,CAAC;QAEZ,KAAK,wBAAwB,CAAC,mBAAmB;YAC/C,OAAO,kBAAkB,CAAC,KAAK,EAAE,MAAkC,CAAC,CAAC;QAEvE;YACE,OAAO,KAAK,CAAC;KAChB;AACH,CAAC;AAED,IAAM,kBAAkB,GAAG,UAAC,KAAyB,EAAE,MAAgC;IACrF,OAAO,KAAK,CAAC,MAAM,CAAC,UAAC,IAAmB,IAAK,OAAA,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,OAAO,EAA1B,CAA0B,CAAC,CAAC;AAC3E,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.service.js b/src/app/shared/notifications/notifications.service.js deleted file mode 100644 index efc078b27f..0000000000 --- a/src/app/shared/notifications/notifications.service.js +++ /dev/null @@ -1,112 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { first } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; -import { TranslateService } from '@ngx-translate/core'; -import { uniqueId } from 'lodash'; -import { Notification } from './models/notification.model'; -import { NotificationType } from './models/notification-type'; -import { NotificationOptions } from './models/notification-options.model'; -import { NewNotificationAction, RemoveAllNotificationsAction, RemoveNotificationAction } from './notifications.actions'; -import { GLOBAL_CONFIG } from '../../../config'; -var NotificationsService = /** @class */ (function () { - function NotificationsService(config, store, translate) { - this.config = config; - this.store = store; - this.translate = translate; - } - NotificationsService.prototype.add = function (notification) { - var notificationAction; - notificationAction = new NewNotificationAction(notification); - this.store.dispatch(notificationAction); - }; - NotificationsService.prototype.success = function (title, content, options, html) { - if (title === void 0) { title = observableOf(''); } - if (content === void 0) { content = observableOf(''); } - if (options === void 0) { options = {}; } - if (html === void 0) { html = false; } - var notificationOptions = tslib_1.__assign({}, this.getDefaultOptions(), options); - var notification = new Notification(uniqueId(), NotificationType.Success, title, content, notificationOptions, html); - this.add(notification); - return notification; - }; - NotificationsService.prototype.error = function (title, content, options, html) { - if (title === void 0) { title = observableOf(''); } - if (content === void 0) { content = observableOf(''); } - if (options === void 0) { options = {}; } - if (html === void 0) { html = false; } - var notificationOptions = tslib_1.__assign({}, this.getDefaultOptions(), options); - var notification = new Notification(uniqueId(), NotificationType.Error, title, content, notificationOptions, html); - this.add(notification); - return notification; - }; - NotificationsService.prototype.info = function (title, content, options, html) { - if (title === void 0) { title = observableOf(''); } - if (content === void 0) { content = observableOf(''); } - if (options === void 0) { options = {}; } - if (html === void 0) { html = false; } - var notificationOptions = tslib_1.__assign({}, this.getDefaultOptions(), options); - var notification = new Notification(uniqueId(), NotificationType.Info, title, content, notificationOptions, html); - this.add(notification); - return notification; - }; - NotificationsService.prototype.warning = function (title, content, options, html) { - if (title === void 0) { title = observableOf(''); } - if (content === void 0) { content = observableOf(''); } - if (options === void 0) { options = this.getDefaultOptions(); } - if (html === void 0) { html = false; } - var notificationOptions = tslib_1.__assign({}, this.getDefaultOptions(), options); - var notification = new Notification(uniqueId(), NotificationType.Warning, title, content, notificationOptions, html); - this.add(notification); - return notification; - }; - NotificationsService.prototype.notificationWithAnchor = function (notificationType, options, href, hrefTranslateLabel, messageTranslateLabel, interpolateParam) { - var _this = this; - this.translate.get(hrefTranslateLabel) - .pipe(first()) - .subscribe(function (hrefMsg) { - var anchor = "\n " + hrefMsg + "\n "; - var interpolateParams = Object.create({}); - interpolateParams[interpolateParam] = anchor; - _this.translate.get(messageTranslateLabel, interpolateParams) - .pipe(first()) - .subscribe(function (m) { - switch (notificationType) { - case NotificationType.Success: - _this.success(null, m, options, true); - break; - case NotificationType.Error: - _this.error(null, m, options, true); - break; - case NotificationType.Info: - _this.info(null, m, options, true); - break; - case NotificationType.Warning: - _this.warning(null, m, options, true); - break; - } - }); - }); - }; - NotificationsService.prototype.remove = function (notification) { - var actionRemove = new RemoveNotificationAction(notification.id); - this.store.dispatch(actionRemove); - }; - NotificationsService.prototype.removeAll = function () { - var actionRemoveAll = new RemoveAllNotificationsAction(); - this.store.dispatch(actionRemoveAll); - }; - NotificationsService.prototype.getDefaultOptions = function () { - return new NotificationOptions(this.config.notifications.timeOut, this.config.notifications.clickToClose, this.config.notifications.animate); - }; - NotificationsService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, Store, - TranslateService]) - ], NotificationsService); - return NotificationsService; -}()); -export { NotificationsService }; -//# sourceMappingURL=notifications.service.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/notifications.service.js.map b/src/app/shared/notifications/notifications.service.js.map deleted file mode 100644 index 37ba115eaf..0000000000 --- a/src/app/shared/notifications/notifications.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notifications.service.js","sourceRoot":"","sources":["notifications.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAiB,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxH,OAAO,EAAE,aAAa,EAAgB,MAAM,iBAAiB,CAAC;AAG9D;IAEE,8BAA0C,MAAoB,EAC1C,KAA0B,EAC1B,SAA2B;QAFL,WAAM,GAAN,MAAM,CAAc;QAC1C,UAAK,GAAL,KAAK,CAAqB;QAC1B,cAAS,GAAT,SAAS,CAAkB;IAC/C,CAAC;IAEO,kCAAG,GAAX,UAAY,YAA0B;QACpC,IAAI,kBAAkB,CAAC;QACvB,kBAAkB,GAAG,IAAI,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAC7D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC1C,CAAC;IAED,sCAAO,GAAP,UAAQ,KAA6B,EAC7B,OAA+B,EAC/B,OAA0C,EAC1C,IAAqB;QAHrB,sBAAA,EAAA,QAAa,YAAY,CAAC,EAAE,CAAC;QAC7B,wBAAA,EAAA,UAAe,YAAY,CAAC,EAAE,CAAC;QAC/B,wBAAA,EAAA,YAA0C;QAC1C,qBAAA,EAAA,YAAqB;QAC3B,IAAM,mBAAmB,wBAAQ,IAAI,CAAC,iBAAiB,EAAE,EAAK,OAAO,CAAE,CAAC;QACxE,IAAM,YAAY,GAAG,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC;QACvH,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACvB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,oCAAK,GAAL,UAAM,KAA6B,EAC7B,OAA+B,EAC/B,OAA0C,EAC1C,IAAqB;QAHrB,sBAAA,EAAA,QAAa,YAAY,CAAC,EAAE,CAAC;QAC7B,wBAAA,EAAA,UAAe,YAAY,CAAC,EAAE,CAAC;QAC/B,wBAAA,EAAA,YAA0C;QAC1C,qBAAA,EAAA,YAAqB;QACzB,IAAM,mBAAmB,wBAAQ,IAAI,CAAC,iBAAiB,EAAE,EAAK,OAAO,CAAE,CAAC;QACxE,IAAM,YAAY,GAAG,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC;QACrH,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACvB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,mCAAI,GAAJ,UAAK,KAA6B,EAC7B,OAA+B,EAC/B,OAA0C,EAC1C,IAAqB;QAHrB,sBAAA,EAAA,QAAa,YAAY,CAAC,EAAE,CAAC;QAC7B,wBAAA,EAAA,UAAe,YAAY,CAAC,EAAE,CAAC;QAC/B,wBAAA,EAAA,YAA0C;QAC1C,qBAAA,EAAA,YAAqB;QACxB,IAAM,mBAAmB,wBAAQ,IAAI,CAAC,iBAAiB,EAAE,EAAK,OAAO,CAAE,CAAC;QACxE,IAAM,YAAY,GAAG,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC;QACpH,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACvB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,sCAAO,GAAP,UAAQ,KAA6B,EAC7B,OAA+B,EAC/B,OAAuD,EACvD,IAAqB;QAHrB,sBAAA,EAAA,QAAa,YAAY,CAAC,EAAE,CAAC;QAC7B,wBAAA,EAAA,UAAe,YAAY,CAAC,EAAE,CAAC;QAC/B,wBAAA,EAAA,UAA+B,IAAI,CAAC,iBAAiB,EAAE;QACvD,qBAAA,EAAA,YAAqB;QAC3B,IAAM,mBAAmB,wBAAQ,IAAI,CAAC,iBAAiB,EAAE,EAAK,OAAO,CAAE,CAAC;QACxE,IAAM,YAAY,GAAG,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC;QACvH,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACvB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,qDAAsB,GAAtB,UAAuB,gBAAkC,EAClC,OAA4B,EAC5B,IAAY,EACZ,kBAA0B,EAC1B,qBAA6B,EAC7B,gBAAwB;QAL/C,iBAiCC;QA3BC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC;aACnC,IAAI,CAAC,KAAK,EAAE,CAAC;aACb,SAAS,CAAC,UAAC,OAAO;YACjB,IAAM,MAAM,GAAG,8CAAyC,IAAI,8CAClC,OAAO,0CACd,CAAC;YACpB,IAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5C,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC;YAC7C,KAAI,CAAC,SAAS,CAAC,GAAG,CAAC,qBAAqB,EAAE,iBAAiB,CAAC;iBACzD,IAAI,CAAC,KAAK,EAAE,CAAC;iBACb,SAAS,CAAC,UAAC,CAAC;gBACX,QAAQ,gBAAgB,EAAE;oBACxB,KAAK,gBAAgB,CAAC,OAAO;wBAC3B,KAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;wBACrC,MAAM;oBACR,KAAK,gBAAgB,CAAC,KAAK;wBACzB,KAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;wBACnC,MAAM;oBACR,KAAK,gBAAgB,CAAC,IAAI;wBACxB,KAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;wBAClC,MAAM;oBACR,KAAK,gBAAgB,CAAC,OAAO;wBAC3B,KAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;wBACrC,MAAM;iBACT;YACH,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAED,qCAAM,GAAN,UAAO,YAA2B;QAChC,IAAM,YAAY,GAAG,IAAI,wBAAwB,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpC,CAAC;IAED,wCAAS,GAAT;QACE,IAAM,eAAe,GAAG,IAAI,4BAA4B,EAAE,CAAC;QAC3D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;IAEO,gDAAiB,GAAzB;QACE,OAAO,IAAI,mBAAmB,CAC5B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EACjC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,EACtC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAClC,CAAC;IACJ,CAAC;IAxGU,oBAAoB;QADhC,UAAU,EAAE;QAGE,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;yDACP,KAAK;YACD,gBAAgB;OAJpC,oBAAoB,CAyGhC;IAAD,2BAAC;CAAA,AAzGD,IAyGC;SAzGY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/notifications/selectors.js b/src/app/shared/notifications/selectors.js deleted file mode 100644 index bc382e47ab..0000000000 --- a/src/app/shared/notifications/selectors.js +++ /dev/null @@ -1,2 +0,0 @@ -export var notificationsStateSelector = function (state) { return state.notifications; }; -//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/shared/notifications/selectors.js.map b/src/app/shared/notifications/selectors.js.map deleted file mode 100644 index 3da6e2ee79..0000000000 --- a/src/app/shared/notifications/selectors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,IAAM,0BAA0B,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,aAAa,EAAnB,CAAmB,CAAC"} \ No newline at end of file diff --git a/src/app/shared/number-picker/number-picker.component.js b/src/app/shared/number-picker/number-picker.component.js deleted file mode 100644 index 6bae14f5d0..0000000000 --- a/src/app/shared/number-picker/number-picker.component.js +++ /dev/null @@ -1,187 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output, } from '@angular/core'; -import { FormBuilder, NG_VALUE_ACCESSOR } from '@angular/forms'; -import { isEmpty } from '../empty.util'; -var NumberPickerComponent = /** @class */ (function () { - function NumberPickerComponent(fb, cd) { - this.fb = fb; - this.cd = cd; - this.selected = new EventEmitter(); - this.remove = new EventEmitter(); - this.blur = new EventEmitter(); - this.change = new EventEmitter(); - this.focus = new EventEmitter(); - } - NumberPickerComponent_1 = NumberPickerComponent; - NumberPickerComponent.prototype.ngOnInit = function () { - // this.startValue = this.value; - this.step = this.step || 1; - this.min = this.min || 0; - this.max = this.max || 100; - this.size = this.size || 1; - this.disabled = this.disabled || false; - this.invalid = this.invalid || false; - this.cd.detectChanges(); - }; - NumberPickerComponent.prototype.ngOnChanges = function (changes) { - if (this.value) { - if (changes.max) { - // When the user select a month with < # of days - this.value = this.value > this.max ? this.max : this.value; - } - } - else if (changes.value && changes.value.currentValue === null) { - // When the user delete the inserted value - this.value = null; - } - else if (changes.invalid) { - this.invalid = changes.invalid.currentValue; - } - }; - NumberPickerComponent.prototype.changeValue = function (reverse) { - if (reverse === void 0) { reverse = false; } - // First after init - if (isEmpty(this.value)) { - this.value = this.startValue; - } - else { - this.startValue = this.value; - var newValue = this.value; - if (reverse) { - newValue -= this.step; - } - else { - newValue += this.step; - } - if (newValue >= this.min && newValue <= this.max) { - this.value = newValue; - } - else { - if (newValue > this.max) { - this.value = this.min; - } - else { - this.value = this.max; - } - } - } - this.emitChange(); - }; - NumberPickerComponent.prototype.toggleDown = function () { - this.changeValue(true); - }; - NumberPickerComponent.prototype.toggleUp = function () { - this.changeValue(); - }; - NumberPickerComponent.prototype.update = function (event) { - try { - var i = Number.parseInt(event.target.value, 10); - if (i >= this.min && i <= this.max) { - this.value = i; - this.emitChange(); - } - else if (event.target.value === null || event.target.value === '') { - this.value = null; - this.emitChange(); - } - else { - this.value = undefined; - } - } - catch (e) { - this.value = undefined; - } - }; - NumberPickerComponent.prototype.onBlur = function (event) { - this.blur.emit(event); - }; - NumberPickerComponent.prototype.onFocus = function (event) { - if (this.value) { - this.startValue = this.value; - } - this.focus.emit(event); - }; - NumberPickerComponent.prototype.writeValue = function (value) { - this.startValue = value || this.min; - }; - NumberPickerComponent.prototype.registerOnChange = function (fn) { - return; - }; - NumberPickerComponent.prototype.registerOnTouched = function (fn) { - return; - }; - NumberPickerComponent.prototype.emitChange = function () { - this.change.emit({ field: this.name, value: this.value }); - }; - var NumberPickerComponent_1; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], NumberPickerComponent.prototype, "step", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], NumberPickerComponent.prototype, "min", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], NumberPickerComponent.prototype, "max", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], NumberPickerComponent.prototype, "size", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], NumberPickerComponent.prototype, "placeholder", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], NumberPickerComponent.prototype, "name", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Boolean) - ], NumberPickerComponent.prototype, "disabled", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Boolean) - ], NumberPickerComponent.prototype, "invalid", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], NumberPickerComponent.prototype, "value", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], NumberPickerComponent.prototype, "selected", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], NumberPickerComponent.prototype, "remove", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], NumberPickerComponent.prototype, "blur", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], NumberPickerComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], NumberPickerComponent.prototype, "focus", void 0); - NumberPickerComponent = NumberPickerComponent_1 = tslib_1.__decorate([ - Component({ - selector: 'ds-number-picker', - styleUrls: ['./number-picker.component.scss'], - templateUrl: './number-picker.component.html', - providers: [ - { provide: NG_VALUE_ACCESSOR, useExisting: NumberPickerComponent_1, multi: true } - ], - }), - tslib_1.__metadata("design:paramtypes", [FormBuilder, ChangeDetectorRef]) - ], NumberPickerComponent); - return NumberPickerComponent; -}()); -export { NumberPickerComponent }; -//# sourceMappingURL=number-picker.component.js.map \ No newline at end of file diff --git a/src/app/shared/number-picker/number-picker.component.js.map b/src/app/shared/number-picker/number-picker.component.js.map deleted file mode 100644 index 83d70d501d..0000000000 --- a/src/app/shared/number-picker/number-picker.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"number-picker.component.js","sourceRoot":"","sources":["number-picker.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/object-collection/object-collection.component.js b/src/app/shared/object-collection/object-collection.component.js deleted file mode 100644 index 38b006a70c..0000000000 --- a/src/app/shared/object-collection/object-collection.component.js +++ /dev/null @@ -1,143 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { map } from 'rxjs/operators'; -import { RemoteData } from '../../core/data/remote-data'; -import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; -import { SortOptions } from '../../core/cache/models/sort-options.model'; -import { SetViewMode } from '../view-mode'; -import { hasValue, isNotEmpty } from '../empty.util'; -var ObjectCollectionComponent = /** @class */ (function () { - /** - * @param cdRef - * ChangeDetectorRef service provided by Angular. - * @param route - * Route is a singleton service provided by Angular. - * @param router - * Router is a singleton service provided by Angular. - */ - function ObjectCollectionComponent(cdRef, route, router) { - this.cdRef = cdRef; - this.route = route; - this.router = router; - this.hasBorder = false; - this.hideGear = false; - /** - * An event fired when the page is changed. - * Event's payload equals to the newly selected page. - */ - this.pageChange = new EventEmitter(); - /** - * An event fired when the page wsize is changed. - * Event's payload equals to the newly selected page size. - */ - this.pageSizeChange = new EventEmitter(); - /** - * An event fired when the sort direction is changed. - * Event's payload equals to the newly selected sort direction. - */ - this.sortDirectionChange = new EventEmitter(); - this.paginationChange = new EventEmitter(); - /** - * An event fired when the sort field is changed. - * Event's payload equals to the newly selected sort field. - */ - this.sortFieldChange = new EventEmitter(); - this.data = {}; - this.currentMode = SetViewMode.List; - this.viewModeEnum = SetViewMode; - } - ObjectCollectionComponent.prototype.ngOnChanges = function (changes) { - if (changes.objects && !changes.objects.isFirstChange()) { - // this.pageInfo = this.objects.pageInfo; - } - }; - ObjectCollectionComponent.prototype.ngOnInit = function () { - // this.pageInfo = this.objects.pageInfo; - var _this = this; - this.sub = this.route - .queryParams - .subscribe(function (params) { - if (isNotEmpty(params.view)) { - _this.currentMode = params.view; - } - }); - }; - ObjectCollectionComponent.prototype.getViewMode = function () { - var _this = this; - this.route.queryParams.pipe(map(function (params) { - if (isNotEmpty(params.view) && hasValue(params.view)) { - _this.currentMode = params.view; - } - })); - return this.currentMode; - }; - ObjectCollectionComponent.prototype.onPageChange = function (event) { - this.pageChange.emit(event); - }; - ObjectCollectionComponent.prototype.onPageSizeChange = function (event) { - this.pageSizeChange.emit(event); - }; - ObjectCollectionComponent.prototype.onSortDirectionChange = function (event) { - this.sortDirectionChange.emit(event); - }; - ObjectCollectionComponent.prototype.onSortFieldChange = function (event) { - this.sortFieldChange.emit(event); - }; - ObjectCollectionComponent.prototype.onPaginationChange = function (event) { - this.paginationChange.emit(event); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", RemoteData) - ], ObjectCollectionComponent.prototype, "objects", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", PaginationComponentOptions) - ], ObjectCollectionComponent.prototype, "config", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SortOptions) - ], ObjectCollectionComponent.prototype, "sortConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectCollectionComponent.prototype, "hasBorder", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectCollectionComponent.prototype, "hideGear", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectCollectionComponent.prototype, "pageChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectCollectionComponent.prototype, "pageSizeChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectCollectionComponent.prototype, "sortDirectionChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectCollectionComponent.prototype, "paginationChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectCollectionComponent.prototype, "sortFieldChange", void 0); - ObjectCollectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-viewable-collection', - styleUrls: ['./object-collection.component.scss'], - templateUrl: './object-collection.component.html', - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - ActivatedRoute, - Router]) - ], ObjectCollectionComponent); - return ObjectCollectionComponent; -}()); -export { ObjectCollectionComponent }; -//# sourceMappingURL=object-collection.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/object-collection.component.js.map b/src/app/shared/object-collection/object-collection.component.js.map deleted file mode 100644 index 285390beef..0000000000 --- a/src/app/shared/object-collection/object-collection.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-collection.component.js","sourceRoot":"","sources":["object-collection.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js b/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js deleted file mode 100644 index 3e007a9522..0000000000 --- a/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ClaimedTask } from '../../../core/tasks/models/claimed-task-object.model'; -import { SearchResult } from '../../../+search-page/search-result.model'; -import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; -import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; -/** - * Represents a search result object of a ClaimedTask object - */ -var ClaimedTaskMyDSpaceResult = /** @class */ (function (_super) { - tslib_1.__extends(ClaimedTaskMyDSpaceResult, _super); - function ClaimedTaskMyDSpaceResult() { - return _super !== null && _super.apply(this, arguments) || this; - } - ClaimedTaskMyDSpaceResult = tslib_1.__decorate([ - searchResultFor(ClaimedTask, MyDSpaceConfigurationValueType.Workflow) - ], ClaimedTaskMyDSpaceResult); - return ClaimedTaskMyDSpaceResult; -}(SearchResult)); -export { ClaimedTaskMyDSpaceResult }; -//# sourceMappingURL=claimed-task-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js.map deleted file mode 100644 index 327fbedf88..0000000000 --- a/src/app/shared/object-collection/shared/claimed-task-my-dspace-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-task-my-dspace-result.model.js","sourceRoot":"","sources":["claimed-task-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAEvG;;GAEG;AAEH;IAA+C,qDAAyB;IAAxE;;IACA,CAAC;IADY,yBAAyB;QADrC,eAAe,CAAC,WAAW,EAAE,8BAA8B,CAAC,QAAQ,CAAC;OACzD,yBAAyB,CACrC;IAAD,gCAAC;CAAA,AADD,CAA+C,YAAY,GAC1D;SADY,yBAAyB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/collection-search-result.model.js b/src/app/shared/object-collection/shared/collection-search-result.model.js deleted file mode 100644 index e162ede065..0000000000 --- a/src/app/shared/object-collection/shared/collection-search-result.model.js +++ /dev/null @@ -1,16 +0,0 @@ -import * as tslib_1 from "tslib"; -import { SearchResult } from '../../../+search-page/search-result.model'; -import { Collection } from '../../../core/shared/collection.model'; -import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; -var CollectionSearchResult = /** @class */ (function (_super) { - tslib_1.__extends(CollectionSearchResult, _super); - function CollectionSearchResult() { - return _super !== null && _super.apply(this, arguments) || this; - } - CollectionSearchResult = tslib_1.__decorate([ - searchResultFor(Collection) - ], CollectionSearchResult); - return CollectionSearchResult; -}(SearchResult)); -export { CollectionSearchResult }; -//# sourceMappingURL=collection-search-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/collection-search-result.model.js.map b/src/app/shared/object-collection/shared/collection-search-result.model.js.map deleted file mode 100644 index f9546df8a5..0000000000 --- a/src/app/shared/object-collection/shared/collection-search-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-search-result.model.js","sourceRoot":"","sources":["collection-search-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAGvG;IAA4C,kDAAwB;IAApE;;IACA,CAAC;IADY,sBAAsB;QADlC,eAAe,CAAC,UAAU,CAAC;OACf,sBAAsB,CAClC;IAAD,6BAAC;CAAA,AADD,CAA4C,YAAY,GACvD;SADY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/community-search-result.model.js b/src/app/shared/object-collection/shared/community-search-result.model.js deleted file mode 100644 index 43ddc2c3e5..0000000000 --- a/src/app/shared/object-collection/shared/community-search-result.model.js +++ /dev/null @@ -1,16 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Community } from '../../../core/shared/community.model'; -import { SearchResult } from '../../../+search-page/search-result.model'; -import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; -var CommunitySearchResult = /** @class */ (function (_super) { - tslib_1.__extends(CommunitySearchResult, _super); - function CommunitySearchResult() { - return _super !== null && _super.apply(this, arguments) || this; - } - CommunitySearchResult = tslib_1.__decorate([ - searchResultFor(Community) - ], CommunitySearchResult); - return CommunitySearchResult; -}(SearchResult)); -export { CommunitySearchResult }; -//# sourceMappingURL=community-search-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/community-search-result.model.js.map b/src/app/shared/object-collection/shared/community-search-result.model.js.map deleted file mode 100644 index 3fa6ef4651..0000000000 --- a/src/app/shared/object-collection/shared/community-search-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-search-result.model.js","sourceRoot":"","sources":["community-search-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAGvG;IAA2C,iDAAuB;IAAlE;;IACA,CAAC;IADY,qBAAqB;QADjC,eAAe,CAAC,SAAS,CAAC;OACd,qBAAqB,CACjC;IAAD,4BAAC;CAAA,AADD,CAA2C,YAAY,GACtD;SADY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/dso-element-decorator.js b/src/app/shared/object-collection/shared/dso-element-decorator.js deleted file mode 100644 index ac08138257..0000000000 --- a/src/app/shared/object-collection/shared/dso-element-decorator.js +++ /dev/null @@ -1,16 +0,0 @@ -var dsoElementMap = new Map(); -export function renderElementsFor(listable, viewMode) { - return function decorator(objectElement) { - if (!objectElement) { - return; - } - if (!dsoElementMap.get(viewMode)) { - dsoElementMap.set(viewMode, new Map()); - } - dsoElementMap.get(viewMode).set(listable, objectElement); - }; -} -export function rendersDSOType(listable, viewMode) { - return dsoElementMap.get(viewMode).get(listable); -} -//# sourceMappingURL=dso-element-decorator.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/dso-element-decorator.js.map b/src/app/shared/object-collection/shared/dso-element-decorator.js.map deleted file mode 100644 index 1e89bd37e4..0000000000 --- a/src/app/shared/object-collection/shared/dso-element-decorator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dso-element-decorator.js","sourceRoot":"","sources":["dso-element-decorator.ts"],"names":[],"mappings":"AAIA,IAAM,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;AAChC,MAAM,4BAA4B,QAA4C,EAAE,QAAqB;IACnG,OAAO,mBAAmB,aAAkB;QAC1C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YAChC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;SACxC;QACD,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC3D,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,yBAAyB,QAA4C,EAAE,QAAqB;IAChG,OAAO,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACnD,CAAC"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/item-my-dspace-result.model.js b/src/app/shared/object-collection/shared/item-my-dspace-result.model.js deleted file mode 100644 index 7efb687948..0000000000 --- a/src/app/shared/object-collection/shared/item-my-dspace-result.model.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Item } from '../../../core/shared/item.model'; -import { SearchResult } from '../../../+search-page/search-result.model'; -import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; -import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; -/** - * Represents a search result object of a Item object - */ -var ItemMyDSpaceResult = /** @class */ (function (_super) { - tslib_1.__extends(ItemMyDSpaceResult, _super); - function ItemMyDSpaceResult() { - return _super !== null && _super.apply(this, arguments) || this; - } - ItemMyDSpaceResult = tslib_1.__decorate([ - searchResultFor(Item, MyDSpaceConfigurationValueType.Workspace) - ], ItemMyDSpaceResult); - return ItemMyDSpaceResult; -}(SearchResult)); -export { ItemMyDSpaceResult }; -//# sourceMappingURL=item-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/item-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/item-my-dspace-result.model.js.map deleted file mode 100644 index 6a4377a465..0000000000 --- a/src/app/shared/object-collection/shared/item-my-dspace-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-my-dspace-result.model.js","sourceRoot":"","sources":["item-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AACvG,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAE7G;;GAEG;AAEH;IAAwC,8CAAkB;IAA1D;;IACA,CAAC;IADY,kBAAkB;QAD9B,eAAe,CAAC,IAAI,EAAE,8BAA8B,CAAC,SAAS,CAAC;OACnD,kBAAkB,CAC9B;IAAD,yBAAC;CAAA,AADD,CAAwC,YAAY,GACnD;SADY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/item-search-result.model.js b/src/app/shared/object-collection/shared/item-search-result.model.js deleted file mode 100644 index 6c4d44ec90..0000000000 --- a/src/app/shared/object-collection/shared/item-search-result.model.js +++ /dev/null @@ -1,16 +0,0 @@ -import * as tslib_1 from "tslib"; -import { SearchResult } from '../../../+search-page/search-result.model'; -import { Item } from '../../../core/shared/item.model'; -import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; -var ItemSearchResult = /** @class */ (function (_super) { - tslib_1.__extends(ItemSearchResult, _super); - function ItemSearchResult() { - return _super !== null && _super.apply(this, arguments) || this; - } - ItemSearchResult = tslib_1.__decorate([ - searchResultFor(Item) - ], ItemSearchResult); - return ItemSearchResult; -}(SearchResult)); -export { ItemSearchResult }; -//# sourceMappingURL=item-search-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/item-search-result.model.js.map b/src/app/shared/object-collection/shared/item-search-result.model.js.map deleted file mode 100644 index ab9d23a8b6..0000000000 --- a/src/app/shared/object-collection/shared/item-search-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-search-result.model.js","sourceRoot":"","sources":["item-search-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAGvG;IAAsC,4CAAkB;IAAxD;;IACA,CAAC;IADY,gBAAgB;QAD5B,eAAe,CAAC,IAAI,CAAC;OACT,gBAAgB,CAC5B;IAAD,uBAAC;CAAA,AADD,CAAsC,YAAY,GACjD;SADY,gBAAgB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/listable-object.model.js b/src/app/shared/object-collection/shared/listable-object.model.js deleted file mode 100644 index bbcefdafca..0000000000 --- a/src/app/shared/object-collection/shared/listable-object.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=listable-object.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/listable-object.model.js.map b/src/app/shared/object-collection/shared/listable-object.model.js.map deleted file mode 100644 index d1df240cfa..0000000000 --- a/src/app/shared/object-collection/shared/listable-object.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"listable-object.model.js","sourceRoot":"","sources":["listable-object.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js deleted file mode 100644 index 92c4dfed44..0000000000 --- a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js +++ /dev/null @@ -1,9 +0,0 @@ -export var MyDspaceItemStatusType; -(function (MyDspaceItemStatusType) { - MyDspaceItemStatusType["WORKFLOW"] = "mydspace.status.workflow"; - MyDspaceItemStatusType["VALIDATION"] = "mydspace.status.validation"; - MyDspaceItemStatusType["WAITING_CONTROLLER"] = "mydspace.status.waiting-for-controller"; - MyDspaceItemStatusType["WORKSPACE"] = "mydspace.status.workspace"; - MyDspaceItemStatusType["ARCHIVED"] = "mydspace.status.archived"; -})(MyDspaceItemStatusType || (MyDspaceItemStatusType = {})); -//# sourceMappingURL=my-dspace-item-status-type.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js.map b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js.map deleted file mode 100644 index 5546fe9e4c..0000000000 --- a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-item-status-type.js","sourceRoot":"","sources":["my-dspace-item-status-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAChC,+DAAqC,CAAA;IACrC,mEAAyC,CAAA;IACzC,uFAA6D,CAAA;IAC7D,iEAAuC,CAAA;IACvC,+DAAqC,CAAA;AACvC,CAAC,EANW,sBAAsB,KAAtB,sBAAsB,QAMjC"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js deleted file mode 100644 index f2c2021c31..0000000000 --- a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js +++ /dev/null @@ -1,48 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { MyDspaceItemStatusType } from './my-dspace-item-status-type'; -/** - * This component represents a badge with mydspace item status - */ -var MyDSpaceItemStatusComponent = /** @class */ (function () { - function MyDSpaceItemStatusComponent() { - } - /** - * Initialize badge content and class - */ - MyDSpaceItemStatusComponent.prototype.ngOnInit = function () { - this.badgeContent = this.status; - this.badgeClass = 'text-light badge '; - switch (this.status) { - case MyDspaceItemStatusType.VALIDATION: - this.badgeClass += 'badge-warning'; - break; - case MyDspaceItemStatusType.WAITING_CONTROLLER: - this.badgeClass += 'badge-info'; - break; - case MyDspaceItemStatusType.WORKSPACE: - this.badgeClass += 'badge-primary'; - break; - case MyDspaceItemStatusType.ARCHIVED: - this.badgeClass += 'badge-success'; - break; - case MyDspaceItemStatusType.WORKFLOW: - this.badgeClass += 'badge-info'; - break; - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], MyDSpaceItemStatusComponent.prototype, "status", void 0); - MyDSpaceItemStatusComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-mydspace-item-status', - styleUrls: ['./my-dspace-item-status.component.scss'], - templateUrl: './my-dspace-item-status.component.html' - }) - ], MyDSpaceItemStatusComponent); - return MyDSpaceItemStatusComponent; -}()); -export { MyDSpaceItemStatusComponent }; -//# sourceMappingURL=my-dspace-item-status.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js.map b/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js.map deleted file mode 100644 index d0bcd7743d..0000000000 --- a/src/app/shared/object-collection/shared/mydspace-item-status/my-dspace-item-status.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-item-status.component.js","sourceRoot":"","sources":["my-dspace-item-status.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE;;GAEG;AAMH;IAAA;IA0CA,CAAC;IAzBC;;OAEG;IACH,8CAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,mBAAmB,CAAC;QACtC,QAAQ,IAAI,CAAC,MAAM,EAAE;YACnB,KAAK,sBAAsB,CAAC,UAAU;gBACpC,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC;gBACnC,MAAM;YACR,KAAK,sBAAsB,CAAC,kBAAkB;gBAC5C,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC;gBAChC,MAAM;YACR,KAAK,sBAAsB,CAAC,SAAS;gBACnC,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC;gBACnC,MAAM;YACR,KAAK,sBAAsB,CAAC,QAAQ;gBAClC,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC;gBACnC,MAAM;YACR,KAAK,sBAAsB,CAAC,QAAQ;gBAClC,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC;gBAChC,MAAM;SACT;IACH,CAAC;IAnCQ;QAAR,KAAK,EAAE;;+DAAgC;IAL7B,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,wCAAwC,CAAC;YACrD,WAAW,EAAE,wCAAwC;SACtD,CAAC;OACW,2BAA2B,CA0CvC;IAAD,kCAAC;CAAA,AA1CD,IA0CC;SA1CY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js b/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js deleted file mode 100644 index 5f7a8e0f79..0000000000 --- a/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { filter, find, flatMap, map } from 'rxjs/operators'; -import { isNotEmpty, isNotUndefined } from '../../../empty.util'; -/** - * This component represents a badge with submitter information. - */ -var ItemSubmitterComponent = /** @class */ (function () { - function ItemSubmitterComponent() { - } - /** - * Initialize submitter object - */ - ItemSubmitterComponent.prototype.ngOnInit = function () { - this.submitter$ = this.object.workflowitem.pipe(filter(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); }), flatMap(function (rd) { return rd.payload.submitter; }), find(function (rd) { return rd.hasSucceeded && isNotEmpty(rd.payload); }), map(function (rd) { return rd.payload; })); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ItemSubmitterComponent.prototype, "object", void 0); - ItemSubmitterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-submitter', - styleUrls: ['./item-submitter.component.scss'], - templateUrl: './item-submitter.component.html' - }) - ], ItemSubmitterComponent); - return ItemSubmitterComponent; -}()); -export { ItemSubmitterComponent }; -//# sourceMappingURL=item-submitter.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js.map b/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js.map deleted file mode 100644 index db1c0a3d47..0000000000 --- a/src/app/shared/object-collection/shared/mydspace-item-submitter/item-submitter.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-submitter.component.js","sourceRoot":"","sources":["item-submitter.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAI5D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGjE;;GAEG;AAMH;IAAA;IAsBA,CAAC;IAVC;;OAEG;IACH,yCAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAI,IAAI,CAAC,MAAM,CAAC,YAAqD,CAAC,IAAI,CACvF,MAAM,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,EACzF,OAAO,CAAC,UAAC,EAA4B,IAAK,OAAA,EAAE,CAAC,OAAO,CAAC,SAA4C,EAAvD,CAAuD,CAAC,EAClG,IAAI,CAAC,UAAC,EAAuB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,EAAzC,CAAyC,CAAC,EAC5E,GAAG,CAAC,UAAC,EAAuB,IAAK,OAAA,EAAE,CAAC,OAAO,EAAV,CAAU,CAAC,CAAC,CAAC;IAClD,CAAC;IAhBQ;QAAR,KAAK,EAAE;;0DAAa;IALV,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;OACW,sBAAsB,CAsBlC;IAAD,6BAAC;CAAA,AAtBD,IAsBC;SAtBY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js b/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js deleted file mode 100644 index f8c89f8e2d..0000000000 --- a/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js +++ /dev/null @@ -1,19 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -var AbstractListableElementComponent = /** @class */ (function () { - function AbstractListableElementComponent(listableObject) { - this.listableObject = listableObject; - this.object = listableObject; - } - AbstractListableElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-abstract-object-element', - template: "", - }), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object]) - ], AbstractListableElementComponent); - return AbstractListableElementComponent; -}()); -export { AbstractListableElementComponent }; -//# sourceMappingURL=abstract-listable-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js.map b/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js.map deleted file mode 100644 index 0b19bed2eb..0000000000 --- a/src/app/shared/object-collection/shared/object-collection-element/abstract-listable-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"abstract-listable-element.component.js","sourceRoot":"","sources":["abstract-listable-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAOlD;IAEE,0CAA2D,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QACvF,IAAI,CAAC,MAAM,GAAG,cAAmB,CAAC;IACpC,CAAC;IAJU,gCAAgC;QAJ5C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,QAAQ,EAAE,EAAE;SACb,CAAC;QAGoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAFxC,gCAAgC,CAK5C;IAAD,uCAAC;CAAA,AALD,IAKC;SALY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js b/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js deleted file mode 100644 index 566deece9c..0000000000 --- a/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { PoolTask } from '../../../core/tasks/models/pool-task-object.model'; -import { SearchResult } from '../../../+search-page/search-result.model'; -import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; -import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; -/** - * Represents a search result object of a PoolTask object - */ -var PoolTaskMyDSpaceResult = /** @class */ (function (_super) { - tslib_1.__extends(PoolTaskMyDSpaceResult, _super); - function PoolTaskMyDSpaceResult() { - return _super !== null && _super.apply(this, arguments) || this; - } - PoolTaskMyDSpaceResult = tslib_1.__decorate([ - searchResultFor(PoolTask, MyDSpaceConfigurationValueType.Workflow) - ], PoolTaskMyDSpaceResult); - return PoolTaskMyDSpaceResult; -}(SearchResult)); -export { PoolTaskMyDSpaceResult }; -//# sourceMappingURL=pool-task-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js.map deleted file mode 100644 index 772d083f47..0000000000 --- a/src/app/shared/object-collection/shared/pool-task-my-dspace-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pool-task-my-dspace-result.model.js","sourceRoot":"","sources":["pool-task-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAEvG;;GAEG;AAEH;IAA4C,kDAAsB;IAAlE;;IACA,CAAC;IADY,sBAAsB;QADlC,eAAe,CAAC,QAAQ,EAAE,8BAA8B,CAAC,QAAQ,CAAC;OACtD,sBAAsB,CAClC;IAAD,6BAAC;CAAA,AADD,CAA4C,YAAY,GACvD;SADY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js b/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js deleted file mode 100644 index 9821fe54d8..0000000000 --- a/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Workflowitem } from '../../../core/submission/models/workflowitem.model'; -import { SearchResult } from '../../../+search-page/search-result.model'; -import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; -import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; -/** - * Represents a search result object of a Workflowitem object - */ -var WorkflowitemMyDSpaceResult = /** @class */ (function (_super) { - tslib_1.__extends(WorkflowitemMyDSpaceResult, _super); - function WorkflowitemMyDSpaceResult() { - return _super !== null && _super.apply(this, arguments) || this; - } - WorkflowitemMyDSpaceResult = tslib_1.__decorate([ - searchResultFor(Workflowitem, MyDSpaceConfigurationValueType.Workspace) - ], WorkflowitemMyDSpaceResult); - return WorkflowitemMyDSpaceResult; -}(SearchResult)); -export { WorkflowitemMyDSpaceResult }; -//# sourceMappingURL=workflowitem-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js.map deleted file mode 100644 index 8408bec1b3..0000000000 --- a/src/app/shared/object-collection/shared/workflowitem-my-dspace-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workflowitem-my-dspace-result.model.js","sourceRoot":"","sources":["workflowitem-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oDAAoD,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AAEvG;;GAEG;AAEH;IAAgD,sDAA0B;IAA1E;;IACA,CAAC;IADY,0BAA0B;QADtC,eAAe,CAAC,YAAY,EAAE,8BAA8B,CAAC,SAAS,CAAC;OAC3D,0BAA0B,CACtC;IAAD,iCAAC;CAAA,AADD,CAAgD,YAAY,GAC3D;SADY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js b/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js deleted file mode 100644 index 356ec01517..0000000000 --- a/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Workspaceitem } from '../../../core/submission/models/workspaceitem.model'; -import { MyDSpaceConfigurationValueType } from '../../../+my-dspace-page/my-dspace-configuration-value-type'; -import { searchResultFor } from '../../../+search-page/search-service/search-result-element-decorator'; -import { SearchResult } from '../../../+search-page/search-result.model'; -/** - * Represents a search result object of a Workspaceitem object - */ -var WorkspaceitemMyDSpaceResult = /** @class */ (function (_super) { - tslib_1.__extends(WorkspaceitemMyDSpaceResult, _super); - function WorkspaceitemMyDSpaceResult() { - return _super !== null && _super.apply(this, arguments) || this; - } - WorkspaceitemMyDSpaceResult = tslib_1.__decorate([ - searchResultFor(Workspaceitem, MyDSpaceConfigurationValueType.Workspace) - ], WorkspaceitemMyDSpaceResult); - return WorkspaceitemMyDSpaceResult; -}(SearchResult)); -export { WorkspaceitemMyDSpaceResult }; -//# sourceMappingURL=workspaceitem-my-dspace-result.model.js.map \ No newline at end of file diff --git a/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js.map b/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js.map deleted file mode 100644 index bcb9caad6f..0000000000 --- a/src/app/shared/object-collection/shared/workspaceitem-my-dspace-result.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-my-dspace-result.model.js","sourceRoot":"","sources":["workspaceitem-my-dspace-result.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AACpF,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,sEAAsE,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAEzE;;GAEG;AAEH;IAAiD,uDAA2B;IAA5E;;IACA,CAAC;IADY,2BAA2B;QADvC,eAAe,CAAC,aAAa,EAAE,8BAA8B,CAAC,SAAS,CAAC;OAC5D,2BAA2B,CACvC;IAAD,kCAAC;CAAA,AADD,CAAiD,YAAY,GAC5D;SADY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js deleted file mode 100644 index 1711e664be..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js +++ /dev/null @@ -1,58 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { find } from 'rxjs/operators'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { isNotUndefined } from '../../../empty.util'; -import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model'; -import { ClaimedTaskMyDSpaceResult } from '../../../object-collection/shared/claimed-task-my-dspace-result.model'; -import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders claimed task object for the mydspace result in the detail view. - */ -var ClaimedMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ClaimedMyDSpaceResultDetailElementComponent, _super); - function ClaimedMyDSpaceResultDetailElementComponent(listable) { - var _this = _super.call(this, listable) || this; - _this.listable = listable; - /** - * A boolean representing if to show submitter information - */ - _this.showSubmitter = true; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.VALIDATION; - return _this; - } - /** - * Initialize all instance variables - */ - ClaimedMyDSpaceResultDetailElementComponent.prototype.ngOnInit = function () { - this.initWorkflowItem(this.dso.workflowitem); - }; - /** - * Retrieve workflowitem from result object - */ - ClaimedMyDSpaceResultDetailElementComponent.prototype.initWorkflowItem = function (wfi$) { - var _this = this; - wfi$.pipe(find(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); })).subscribe(function (rd) { - _this.workflowitem = rd.payload; - }); - }; - ClaimedMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-claimed-my-dspace-result-detail-element', - styleUrls: ['../my-dspace-result-detail-element.component.scss'], - templateUrl: './claimed-my-dspace-result-detail-element.component.html' - }), - renderElementsFor(ClaimedTaskMyDSpaceResult, SetViewMode.Detail), - renderElementsFor(ClaimedTask, SetViewMode.Detail), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object]) - ], ClaimedMyDSpaceResultDetailElementComponent); - return ClaimedMyDSpaceResultDetailElementComponent; -}(MyDSpaceResultDetailElementComponent)); -export { ClaimedMyDSpaceResultDetailElementComponent }; -//# sourceMappingURL=claimed-my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js.map deleted file mode 100644 index 959aee8281..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/claimed-my-dspace-result/claimed-my-dspace-result-detail-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["claimed-my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAG5F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAE,WAAW,EAAE,MAAM,yDAAyD,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uEAAuE,CAAC;AAClH,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAAiE,uEAA4E;IAiB3I,qDAAoD,QAAwB;QAA5E,YACE,kBAAM,QAAQ,CAAC,SAChB;QAFmD,cAAQ,GAAR,QAAQ,CAAgB;QAf5E;;WAEG;QACI,mBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,UAAU,CAAC;;IASlD,CAAC;IAED;;OAEG;IACH,8DAAQ,GAAR;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAoD,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,sEAAgB,GAAhB,UAAiB,IAA0C;QAA3D,iBAMC;QALC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,CACxF,CAAC,SAAS,CAAC,UAAC,EAA4B;YACvC,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IArCU,2CAA2C;QARvD,SAAS,CAAC;YACT,QAAQ,EAAE,4CAA4C;YACtD,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,WAAW,EAAE,0DAA0D;SACxE,CAAC;QAED,iBAAiB,CAAC,yBAAyB,EAAE,WAAW,CAAC,MAAM,CAAC;QAChE,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC;QAkBpC,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAjBjC,2CAA2C,CAuCvD;IAAD,kDAAC;CAAA,AAvCD,CAAiE,oCAAoC,GAuCpG;SAvCY,2CAA2C"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js deleted file mode 100644 index 6e433a98cc..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js +++ /dev/null @@ -1,54 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Metadata } from '../../../../../core/shared/metadata.utils'; -import { MyDSpaceResult } from '../../../../../+my-dspace-page/my-dspace-result.model'; -import { Item } from '../../../../../core/shared/item.model'; -/** - * This component show values for the given item metadata - */ -var ItemDetailPreviewFieldComponent = /** @class */ (function () { - function ItemDetailPreviewFieldComponent() { - } - /** - * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string[]} the matching string values or an empty array. - */ - ItemDetailPreviewFieldComponent.prototype.allMetadataValues = function (keyOrKeys) { - return Metadata.allValues([this.object.hitHighlights, this.item.metadata], keyOrKeys); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemDetailPreviewFieldComponent.prototype, "item", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", MyDSpaceResult) - ], ItemDetailPreviewFieldComponent.prototype, "object", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ItemDetailPreviewFieldComponent.prototype, "label", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ItemDetailPreviewFieldComponent.prototype, "metadata", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ItemDetailPreviewFieldComponent.prototype, "placeholder", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ItemDetailPreviewFieldComponent.prototype, "separator", void 0); - ItemDetailPreviewFieldComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-detail-preview-field', - templateUrl: './item-detail-preview-field.component.html' - }) - ], ItemDetailPreviewFieldComponent); - return ItemDetailPreviewFieldComponent; -}()); -export { ItemDetailPreviewFieldComponent }; -//# sourceMappingURL=item-detail-preview-field.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js.map deleted file mode 100644 index c395081f8b..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-detail-preview-field.component.js","sourceRoot":"","sources":["item-detail-preview-field.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,uDAAuD,CAAC;AACvF,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAE7D;;GAEG;AAKH;IAAA;IAyCA,CAAC;IATC;;;;;OAKG;IACH,2DAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAnCQ;QAAR,KAAK,EAAE;0CAAO,IAAI;iEAAC;IAKX;QAAR,KAAK,EAAE;0CAAS,cAAc;mEAAM;IAK5B;QAAR,KAAK,EAAE;;kEAAe;IAKd;QAAR,KAAK,EAAE;;qEAA6B;IAK5B;QAAR,KAAK,EAAE;;wEAAqB;IAKpB;QAAR,KAAK,EAAE;;sEAAmB;IA9BhB,+BAA+B;QAJ3C,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,WAAW,EAAE,4CAA4C;SAC1D,CAAC;OACW,+BAA+B,CAyC3C;IAAD,sCAAC;CAAA,AAzCD,IAyCC;SAzCY,+BAA+B"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js deleted file mode 100644 index fff5288287..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js +++ /dev/null @@ -1,55 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../core/shared/item.model'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { fadeInOut } from '../../../animations/fade'; -import { MyDSpaceResult } from '../../../../+my-dspace-page/my-dspace-result.model'; -/** - * This component show metadata for the given item object in the detail view. - */ -var ItemDetailPreviewComponent = /** @class */ (function () { - function ItemDetailPreviewComponent() { - /** - * A boolean representing if to show submitter information - */ - this.showSubmitter = false; - /** - * The value's separator - */ - this.separator = ', '; - } - /** - * Initialize all instance variables - */ - ItemDetailPreviewComponent.prototype.ngOnInit = function () { - this.thumbnail$ = this.item.getThumbnail(); - this.bitstreams$ = this.item.getFiles(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemDetailPreviewComponent.prototype, "item", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", MyDSpaceResult) - ], ItemDetailPreviewComponent.prototype, "object", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ItemDetailPreviewComponent.prototype, "status", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ItemDetailPreviewComponent.prototype, "showSubmitter", void 0); - ItemDetailPreviewComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-detail-preview', - styleUrls: ['./item-detail-preview.component.scss'], - templateUrl: './item-detail-preview.component.html', - animations: [fadeInOut] - }) - ], ItemDetailPreviewComponent); - return ItemDetailPreviewComponent; -}()); -export { ItemDetailPreviewComponent }; -//# sourceMappingURL=item-detail-preview.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js.map deleted file mode 100644 index 927239dd37..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-detail-preview.component.js","sourceRoot":"","sources":["item-detail-preview.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAIjD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAEpF;;GAEG;AAOH;IANA;QAuBE;;WAEG;QACM,kBAAa,GAAG,KAAK,CAAC;QAO/B;;WAEG;QACI,cAAS,GAAG,IAAI,CAAC;IAe1B,CAAC;IARC;;OAEG;IACH,6CAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC1C,CAAC;IAtCQ;QAAR,KAAK,EAAE;0CAAO,IAAI;4DAAC;IAKX;QAAR,KAAK,EAAE;0CAAS,cAAc;8DAAM;IAK5B;QAAR,KAAK,EAAE;;8DAAgC;IAK/B;QAAR,KAAK,EAAE;;qEAAuB;IApBpB,0BAA0B;QANtC,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;YACnD,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;OACW,0BAA0B,CA6CtC;IAAD,iCAAC;CAAA,AA7CD,IA6CC;SA7CY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js deleted file mode 100644 index 0a918b1fc5..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { ItemMyDSpaceResult } from '../../../object-collection/shared/item-my-dspace-result.model'; -import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders item object for the mydspace result in the detail view. - */ -var ItemMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemMyDSpaceResultDetailElementComponent, _super); - function ItemMyDSpaceResultDetailElementComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.ARCHIVED; - return _this; - } - ItemMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-workspaceitem-my-dspace-result-detail-element', - styleUrls: ['../my-dspace-result-detail-element.component.scss', './item-my-dspace-result-detail-element.component.scss'], - templateUrl: './item-my-dspace-result-detail-element.component.html' - }), - renderElementsFor(ItemMyDSpaceResult, SetViewMode.Detail) - ], ItemMyDSpaceResultDetailElementComponent); - return ItemMyDSpaceResultDetailElementComponent; -}(MyDSpaceResultDetailElementComponent)); -export { ItemMyDSpaceResultDetailElementComponent }; -//# sourceMappingURL=item-my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js.map deleted file mode 100644 index f34dce05f6..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/item-my-dspace-result/item-my-dspace-result-detail-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["item-my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAG5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,+DAA+D,CAAC;AACnG,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAQH;IAA8D,oEAA8D;IAP5H;QAAA,qEAcC;QALC;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IAElD,CAAC;IAPY,wCAAwC;QAPpD,SAAS,CAAC;YACT,QAAQ,EAAE,kDAAkD;YAC5D,SAAS,EAAE,CAAC,mDAAmD,EAAE,uDAAuD,CAAC;YACzH,WAAW,EAAE,uDAAuD;SACrE,CAAC;QAED,iBAAiB,CAAC,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC;OAC7C,wCAAwC,CAOpD;IAAD,+CAAC;CAAA,AAPD,CAA8D,oCAAoC,GAOjG;SAPY,wCAAwC"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js deleted file mode 100644 index 30aee93f3f..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js +++ /dev/null @@ -1,47 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { Metadata } from '../../../core/shared/metadata.utils'; -var MyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(MyDSpaceResultDetailElementComponent, _super); - /** - * Initialize instance variables - * - * @param {ListableObject} detailable - */ - function MyDSpaceResultDetailElementComponent(detailable) { - var _this = _super.call(this, detailable) || this; - _this.detailable = detailable; - _this.dso = _this.object.indexableObject; - return _this; - } - /** - * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string[]} the matching string values or an empty array. - */ - MyDSpaceResultDetailElementComponent.prototype.allMetadataValues = function (keyOrKeys) { - return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys); - }; - /** - * Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string} the first matching string value, or `undefined`. - */ - MyDSpaceResultDetailElementComponent.prototype.firstMetadataValue = function (keyOrKeys) { - return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys); - }; - MyDSpaceResultDetailElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-my-dspace-result-detail-element', - template: "" - }), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object]) - ], MyDSpaceResultDetailElementComponent); - return MyDSpaceResultDetailElementComponent; -}(AbstractListableElementComponent)); -export { MyDSpaceResultDetailElementComponent }; -//# sourceMappingURL=my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js.map deleted file mode 100644 index ec36d3548a..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAGhJ,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAM/D;IAA+G,gEAAmC;IAOhJ;;;;OAIG;IACH,8CAA2D,UAA0B;QAArF,YACE,kBAAM,UAAU,CAAC,SAElB;QAH0D,gBAAU,GAAV,UAAU,CAAgB;QAEnF,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;;IACzC,CAAC;IAED;;;;;OAKG;IACH,gEAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;;;OAKG;IACH,iEAAkB,GAAlB,UAAmB,SAA4B;QAC7C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAnCU,oCAAoC;QAJhD,SAAS,CAAC;YACT,QAAQ,EAAE,oCAAoC;YAC9C,QAAQ,EAAE,EAAE;SACb,CAAC;QAaoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAZxC,oCAAoC,CAoChD;IAAD,2CAAC;CAAA,AApCD,CAA+G,gCAAgC,GAoC9I;SApCY,oCAAoC"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js deleted file mode 100644 index 8d3777f6b7..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js +++ /dev/null @@ -1,58 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { find } from 'rxjs/operators'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { isNotUndefined } from '../../../empty.util'; -import { PoolTask } from '../../../../core/tasks/models/pool-task-object.model'; -import { PoolTaskMyDSpaceResult } from '../../../object-collection/shared/pool-task-my-dspace-result.model'; -import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders pool task object for the mydspace result in the detail view. - */ -var PoolMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(PoolMyDSpaceResultDetailElementComponent, _super); - function PoolMyDSpaceResultDetailElementComponent(listable) { - var _this = _super.call(this, listable) || this; - _this.listable = listable; - /** - * A boolean representing if to show submitter information - */ - _this.showSubmitter = true; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.WAITING_CONTROLLER; - return _this; - } - /** - * Initialize all instance variables - */ - PoolMyDSpaceResultDetailElementComponent.prototype.ngOnInit = function () { - this.initWorkflowItem(this.dso.workflowitem); - }; - /** - * Retrieve workflowitem from result object - */ - PoolMyDSpaceResultDetailElementComponent.prototype.initWorkflowItem = function (wfi$) { - var _this = this; - wfi$.pipe(find(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); })).subscribe(function (rd) { - _this.workflowitem = rd.payload; - }); - }; - PoolMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-pool-my-dspace-result-detail-element', - styleUrls: ['../my-dspace-result-detail-element.component.scss'], - templateUrl: './pool-my-dspace-result-detail-element.component.html', - }), - renderElementsFor(PoolTaskMyDSpaceResult, SetViewMode.Detail), - renderElementsFor(PoolTask, SetViewMode.Detail), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object]) - ], PoolMyDSpaceResultDetailElementComponent); - return PoolMyDSpaceResultDetailElementComponent; -}(MyDSpaceResultDetailElementComponent)); -export { PoolMyDSpaceResultDetailElementComponent }; -//# sourceMappingURL=pool-my-dspace-result-detail-lement.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js.map deleted file mode 100644 index dd1a5f8d12..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/pool-my-dspace-result/pool-my-dspace-result-detail-lement.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pool-my-dspace-result-detail-lement.component.js","sourceRoot":"","sources":["pool-my-dspace-result-detail-lement.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAGtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAE5F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAE,QAAQ,EAAE,MAAM,sDAAsD,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,oEAAoE,CAAC;AAC5G,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAA8D,oEAAsE;IAiBlI,kDAAoD,QAAwB;QAA5E,YACE,kBAAM,QAAQ,CAAC,SAChB;QAFmD,cAAQ,GAAR,QAAQ,CAAgB;QAf5E;;WAEG;QACI,mBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,kBAAkB,CAAC;;IAS1D,CAAC;IAED;;OAEG;IACH,2DAAQ,GAAR;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAoD,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,mEAAgB,GAAhB,UAAiB,IAA0C;QAA3D,iBAMC;QALC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,CACxF,CAAC,SAAS,CAAC,UAAC,EAA4B;YACvC,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IArCU,wCAAwC;QARpD,SAAS,CAAC;YACT,QAAQ,EAAE,yCAAyC;YACnD,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,WAAW,EAAE,uDAAuD;SACrE,CAAC;QAED,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC,MAAM,CAAC;QAC7D,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC;QAkBjC,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAjBjC,wCAAwC,CAuCpD;IAAD,+CAAC;CAAA,AAvCD,CAA8D,oCAAoC,GAuCjG;SAvCY,wCAAwC"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js deleted file mode 100644 index 1b1540810e..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js +++ /dev/null @@ -1,54 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { WorkflowitemMyDSpaceResult } from '../../../object-collection/shared/workflowitem-my-dspace-result.model'; -import { Workflowitem } from '../../../../core/submission/models/workflowitem.model'; -import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { find } from 'rxjs/operators'; -import { isNotUndefined } from '../../../empty.util'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders workflowitem object for the mydspace result in the detail view. - */ -var WorkflowitemMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(WorkflowitemMyDSpaceResultDetailElementComponent, _super); - function WorkflowitemMyDSpaceResultDetailElementComponent(listable) { - var _this = _super.call(this, listable) || this; - _this.listable = listable; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.WORKFLOW; - return _this; - } - /** - * Initialize all instance variables - */ - WorkflowitemMyDSpaceResultDetailElementComponent.prototype.ngOnInit = function () { - this.initItem(this.dso.item); - }; - /** - * Retrieve item from result object - */ - WorkflowitemMyDSpaceResultDetailElementComponent.prototype.initItem = function (item$) { - var _this = this; - item$.pipe(find(function (rd) { return rd.hasSucceeded && isNotUndefined(rd.payload); })).subscribe(function (rd) { - _this.item = rd.payload; - }); - }; - WorkflowitemMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-workflowitem-my-dspace-result-detail-element', - styleUrls: ['../my-dspace-result-detail-element.component.scss'], - templateUrl: './workflowitem-my-dspace-result-detail-element.component.html', - }), - renderElementsFor(WorkflowitemMyDSpaceResult, SetViewMode.Detail), - renderElementsFor(Workflowitem, SetViewMode.Detail), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object]) - ], WorkflowitemMyDSpaceResultDetailElementComponent); - return WorkflowitemMyDSpaceResultDetailElementComponent; -}(MyDSpaceResultDetailElementComponent)); -export { WorkflowitemMyDSpaceResultDetailElementComponent }; -//# sourceMappingURL=workflowitem-my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js.map deleted file mode 100644 index 6cd3063f44..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-detail-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workflowitem-my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["workflowitem-my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAI5F,OAAO,EAAE,0BAA0B,EAAE,MAAM,uEAAuE,CAAC;AACnH,OAAO,EAAE,YAAY,EAAE,MAAM,uDAAuD,CAAC;AACrF,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAG3H,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAAsE,4EAA8E;IAYlJ,0DAAoD,QAAwB;QAA5E,YACE,kBAAM,QAAQ,CAAC,SAChB;QAFmD,cAAQ,GAAR,QAAQ,CAAgB;QAL5E;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IAIhD,CAAC;IAED;;OAEG;IACH,mEAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAoC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,mEAAQ,GAAR,UAAS,KAAmC;QAA5C,iBAMC;QALC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC9E,CAAC,SAAS,CAAC,UAAC,EAAoB;YAC/B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAhCU,gDAAgD;QAR5D,SAAS,CAAC;YACT,QAAQ,EAAE,iDAAiD;YAC3D,SAAS,EAAE,CAAC,mDAAmD,CAAC;YAChE,WAAW,EAAE,+DAA+D;SAC7E,CAAC;QAED,iBAAiB,CAAC,0BAA0B,EAAE,WAAW,CAAC,MAAM,CAAC;QACjE,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC;QAarC,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAZjC,gDAAgD,CAkC5D;IAAD,uDAAC;CAAA,AAlCD,CAAsE,oCAAoC,GAkCzG;SAlCY,gDAAgD"} \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js b/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js deleted file mode 100644 index 6455e5ebfa..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js +++ /dev/null @@ -1,54 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { find } from 'rxjs/operators'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { Workspaceitem } from '../../../../core/submission/models/workspaceitem.model'; -import { WorkspaceitemMyDSpaceResult } from '../../../object-collection/shared/workspaceitem-my-dspace-result.model'; -import { isNotUndefined } from '../../../empty.util'; -import { MyDSpaceResultDetailElementComponent } from '../my-dspace-result-detail-element.component'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders workspaceitem object for the mydspace result in the detail view. - */ -var WorkspaceitemMyDSpaceResultDetailElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(WorkspaceitemMyDSpaceResultDetailElementComponent, _super); - function WorkspaceitemMyDSpaceResultDetailElementComponent(listable) { - var _this = _super.call(this, listable) || this; - _this.listable = listable; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.WORKSPACE; - return _this; - } - /** - * Initialize all instance variables - */ - WorkspaceitemMyDSpaceResultDetailElementComponent.prototype.ngOnInit = function () { - this.initItem(this.dso.item); - }; - /** - * Retrieve item from result object - */ - WorkspaceitemMyDSpaceResultDetailElementComponent.prototype.initItem = function (item$) { - var _this = this; - item$.pipe(find(function (rd) { return rd.hasSucceeded && isNotUndefined(rd.payload); })).subscribe(function (rd) { - _this.item = rd.payload; - }); - }; - WorkspaceitemMyDSpaceResultDetailElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-workspaceitem-my-dspace-result-detail-element', - styleUrls: ['../my-dspace-result-detail-element.component.scss', './workspaceitem-my-dspace-result-detail-element.component.scss'], - templateUrl: './workspaceitem-my-dspace-result-detail-element.component.html', - }), - renderElementsFor(WorkspaceitemMyDSpaceResult, SetViewMode.Detail), - renderElementsFor(Workspaceitem, SetViewMode.Detail), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object]) - ], WorkspaceitemMyDSpaceResultDetailElementComponent); - return WorkspaceitemMyDSpaceResultDetailElementComponent; -}(MyDSpaceResultDetailElementComponent)); -export { WorkspaceitemMyDSpaceResultDetailElementComponent }; -//# sourceMappingURL=workspaceitem-my-dspace-result-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js.map b/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js.map deleted file mode 100644 index fa3dc94d56..0000000000 --- a/src/app/shared/object-detail/my-dspace-result-detail-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-detail-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-my-dspace-result-detail-element.component.js","sourceRoot":"","sources":["workspaceitem-my-dspace-result-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAE5F,OAAO,EAAE,aAAa,EAAE,MAAM,wDAAwD,CAAC;AACvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wEAAwE,CAAC;AAGrH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,oCAAoC,EAAE,MAAM,8CAA8C,CAAC;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAAuE,6EAAgF;IAYrJ,2DAAoD,QAAwB;QAA5E,YACE,kBAAM,QAAQ,CAAC,SAChB;QAFmD,cAAQ,GAAR,QAAQ,CAAgB;QAL5E;;WAEG;QACH,YAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC;;IAI1C,CAAC;IAED;;OAEG;IACH,oEAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAoC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,oEAAQ,GAAR,UAAS,KAAmC;QAA5C,iBAMC;QALC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC9E,CAAC,SAAS,CAAC,UAAC,EAAoB;YAC/B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAhCU,iDAAiD;QAR7D,SAAS,CAAC;YACT,QAAQ,EAAE,kDAAkD;YAC5D,SAAS,EAAE,CAAC,mDAAmD,EAAE,gEAAgE,CAAC;YAClI,WAAW,EAAE,gEAAgE;SAC9E,CAAC;QAED,iBAAiB,CAAC,2BAA2B,EAAE,WAAW,CAAC,MAAM,CAAC;QAClE,iBAAiB,CAAC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC;QAatC,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;;OAZjC,iDAAiD,CAiC7D;IAAD,wDAAC;CAAA,AAjCD,CAAuE,oCAAoC,GAiC1G;SAjCY,iDAAiD"} \ No newline at end of file diff --git a/src/app/shared/object-detail/object-detail.component.js b/src/app/shared/object-detail/object-detail.component.js deleted file mode 100644 index 9fff998881..0000000000 --- a/src/app/shared/object-detail/object-detail.component.js +++ /dev/null @@ -1,160 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; -import { SortOptions } from '../../core/cache/models/sort-options.model'; -import { RemoteData } from '../../core/data/remote-data'; -import { fadeIn } from '../animations/fade'; -import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; -/** - * This component renders a paginated set of results in the detail view. - */ -var ObjectDetailComponent = /** @class */ (function () { - function ObjectDetailComponent() { - /** - * A boolean representing if to hide gear pagination icon - */ - this.hideGear = true; - /** - * A boolean representing if to hide pagination when there is only a page - */ - this.hidePagerWhenSinglePage = true; - /** - * Option for hiding the pagination detail - */ - this.hidePaginationDetail = true; - /** - * An event fired when the page is changed. - * Event's payload equals to the newly selected page. - */ - this.change = new EventEmitter(); - /** - * An event fired when the page is changed. - * Event's payload equals to the newly selected page. - */ - this.pageChange = new EventEmitter(); - /** - * An event fired when the page wsize is changed. - * Event's payload equals to the newly selected page size. - */ - this.pageSizeChange = new EventEmitter(); - /** - * An event fired when the sort direction is changed. - * Event's payload equals to the newly selected sort direction. - */ - this.sortDirectionChange = new EventEmitter(); - /** - * An event fired when the pagination is changed. - * Event's payload equals to the newly selected sort direction. - */ - this.paginationChange = new EventEmitter(); - /** - * An event fired when the sort field is changed. - * Event's payload equals to the newly selected sort field. - */ - this.sortFieldChange = new EventEmitter(); - } - Object.defineProperty(ObjectDetailComponent.prototype, "objects", { - /** - * Getter for _objects property - */ - get: function () { - return this._objects; - }, - /** - * Setter for _objects property - * @param objects - */ - set: function (objects) { - this._objects = objects; - }, - enumerable: true, - configurable: true - }); - /** - * Emit pageChange event - */ - ObjectDetailComponent.prototype.onPageChange = function (event) { - this.pageChange.emit(event); - }; - /** - * Emit pageSizeChange event - */ - ObjectDetailComponent.prototype.onPageSizeChange = function (event) { - this.pageSizeChange.emit(event); - }; - /** - * Emit sortDirectionChange event - */ - ObjectDetailComponent.prototype.onSortDirectionChange = function (event) { - this.sortDirectionChange.emit(event); - }; - /** - * Emit sortFieldChange event - */ - ObjectDetailComponent.prototype.onSortFieldChange = function (event) { - this.sortFieldChange.emit(event); - }; - /** - * Emit paginationChange event - */ - ObjectDetailComponent.prototype.onPaginationChange = function (event) { - this.paginationChange.emit(event); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", PaginationComponentOptions) - ], ObjectDetailComponent.prototype, "config", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SortOptions) - ], ObjectDetailComponent.prototype, "sortConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectDetailComponent.prototype, "hideGear", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectDetailComponent.prototype, "hidePagerWhenSinglePage", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", RemoteData), - tslib_1.__metadata("design:paramtypes", [RemoteData]) - ], ObjectDetailComponent.prototype, "objects", null); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectDetailComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectDetailComponent.prototype, "pageChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectDetailComponent.prototype, "pageSizeChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectDetailComponent.prototype, "sortDirectionChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectDetailComponent.prototype, "paginationChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectDetailComponent.prototype, "sortFieldChange", void 0); - ObjectDetailComponent = tslib_1.__decorate([ - Component({ - changeDetection: ChangeDetectionStrategy.Default, - encapsulation: ViewEncapsulation.Emulated, - selector: 'ds-object-detail', - styleUrls: ['./object-detail.component.scss'], - templateUrl: './object-detail.component.html', - animations: [fadeIn] - }) - ], ObjectDetailComponent); - return ObjectDetailComponent; -}()); -export { ObjectDetailComponent }; -//# sourceMappingURL=object-detail.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/object-detail.component.js.map b/src/app/shared/object-detail/object-detail.component.js.map deleted file mode 100644 index 8c88dcdf08..0000000000 --- a/src/app/shared/object-detail/object-detail.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-detail.component.js","sourceRoot":"","sources":["object-detail.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,YAAY,EACZ,KAAK,EACL,MAAM,EACN,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAiB,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAGxF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,kDAAkD,CAAC;AAE9F;;GAEG;AASH;IARA;QAoBE;;WAEG;QACM,aAAQ,GAAG,IAAI,CAAC;QAEzB;;WAEG;QACM,4BAAuB,GAAG,IAAI,CAAC;QAsBxC;;WAEG;QACI,yBAAoB,GAAG,IAAI,CAAC;QAEnC;;;WAGG;QACO,WAAM,GAGX,IAAI,YAAY,EAGjB,CAAC;QAEL;;;WAGG;QACO,eAAU,GAAyB,IAAI,YAAY,EAAU,CAAC;QAExE;;;WAGG;QACO,mBAAc,GAAyB,IAAI,YAAY,EAAU,CAAC;QAE5E;;;WAGG;QACO,wBAAmB,GAAgC,IAAI,YAAY,EAAiB,CAAC;QAE/F;;;WAGG;QACO,qBAAgB,GAAgC,IAAI,YAAY,EAAO,CAAC;QAElF;;;WAGG;QACO,oBAAe,GAAyB,IAAI,YAAY,EAAU,CAAC;IAqC/E,CAAC;IA7FU,sBAAI,0CAAO;QAIpB;;WAEG;aACH;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QAbD;;;WAGG;aACM,UAAY,OAAkD;YACrE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAC1B,CAAC;;;OAAA;IAwDD;;OAEG;IACH,4CAAY,GAAZ,UAAa,KAAK;QAChB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,gDAAgB,GAAhB,UAAiB,KAAK;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,qDAAqB,GAArB,UAAsB,KAAK;QACzB,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,iDAAiB,GAAjB,UAAkB,KAAK;QACrB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,kDAAkB,GAAlB,UAAmB,KAAK;QACtB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IArHQ;QAAR,KAAK,EAAE;0CAAS,0BAA0B;yDAAC;IAKnC;QAAR,KAAK,EAAE;0CAAa,WAAW;6DAAC;IAKxB;QAAR,KAAK,EAAE;;2DAAiB;IAKhB;QAAR,KAAK,EAAE;;0EAAgC;IAW/B;QAAR,KAAK,EAAE;0CAAsB,UAAU;iDAAV,UAAU;wDAEvC;IAkBS;QAAT,MAAM,EAAE;0CAAS,YAAY;yDAMzB;IAMK;QAAT,MAAM,EAAE;0CAAa,YAAY;6DAAsC;IAM9D;QAAT,MAAM,EAAE;0CAAiB,YAAY;iEAAsC;IAMlE;QAAT,MAAM,EAAE;0CAAsB,YAAY;sEAAoD;IAMrF;QAAT,MAAM,EAAE;0CAAmB,YAAY;mEAA0C;IAMxE;QAAT,MAAM,EAAE;0CAAkB,YAAY;kEAAsC;IAvFlE,qBAAqB;QARjC,SAAS,CAAC;YACT,eAAe,EAAE,uBAAuB,CAAC,OAAO;YAChD,aAAa,EAAE,iBAAiB,CAAC,QAAQ;YACzC,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,CAAE,gCAAgC,CAAE;YAC/C,WAAW,EAAE,gCAAgC;YAC7C,UAAU,EAAE,CAAC,MAAM,CAAC;SACrB,CAAC;OACW,qBAAqB,CA4HjC;IAAD,4BAAC;CAAA,AA5HD,IA4HC;SA5HY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js b/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js deleted file mode 100644 index 873dc1050e..0000000000 --- a/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js +++ /dev/null @@ -1,49 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { rendersDSOType } from '../../object-collection/shared/dso-element-decorator'; -import { SetViewMode } from '../../view-mode'; -/** - * This component renders a wrapper for an object in the detail view. - */ -var WrapperDetailElementComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {Injector} injector - */ - function WrapperDetailElementComponent(injector) { - this.injector = injector; - } - /** - * Initialize injector - */ - WrapperDetailElementComponent.prototype.ngOnInit = function () { - var _this = this; - this.objectInjector = Injector.create({ - providers: [{ provide: 'objectElementProvider', useFactory: function () { return (_this.object); }, deps: [] }], - parent: this.injector - }); - }; - /** - * Return class name for the object to inject - */ - WrapperDetailElementComponent.prototype.getDetailElement = function () { - var f = this.object.constructor; - return rendersDSOType(f, SetViewMode.Detail); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], WrapperDetailElementComponent.prototype, "object", void 0); - WrapperDetailElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-wrapper-detail-element', - styleUrls: ['./wrapper-detail-element.component.scss'], - templateUrl: './wrapper-detail-element.component.html' - }), - tslib_1.__metadata("design:paramtypes", [Injector]) - ], WrapperDetailElementComponent); - return WrapperDetailElementComponent; -}()); -export { WrapperDetailElementComponent }; -//# sourceMappingURL=wrapper-detail-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js.map b/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js.map deleted file mode 100644 index 76abcc04ad..0000000000 --- a/src/app/shared/object-detail/wrapper-detail-element/wrapper-detail-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"wrapper-detail-element.component.js","sourceRoot":"","sources":["wrapper-detail-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAEtF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;GAEG;AAMH;IAYE;;;;OAIG;IACH,uCAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtC,CAAC;IAED;;OAEG;IACH,gDAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,MAAM,CAAC,EAAb,CAAa,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC;YAC3F,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IAEL,CAAC;IAED;;OAEG;IACH,wDAAgB,GAAhB;QACE,IAAM,CAAC,GAAuC,IAAI,CAAC,MAAM,CAAC,WAAiD,CAAC;QAC5G,OAAO,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAhCQ;QAAR,KAAK,EAAE;;iEAAwB;IALrB,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;iDAkB8B,QAAQ;OAjB3B,6BAA6B,CAsCzC;IAAD,oCAAC;CAAA,AAtCD,IAsCC;SAtCY,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js b/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js deleted file mode 100644 index 7d1f85f71b..0000000000 --- a/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { Collection } from '../../../core/shared/collection.model'; -import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; -import { SetViewMode } from '../../view-mode'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -var CollectionGridElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(CollectionGridElementComponent, _super); - function CollectionGridElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - CollectionGridElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-collection-grid-element', - styleUrls: ['./collection-grid-element.component.scss'], - templateUrl: './collection-grid-element.component.html' - }), - renderElementsFor(Collection, SetViewMode.Grid) - ], CollectionGridElementComponent); - return CollectionGridElementComponent; -}(AbstractListableElementComponent)); -export { CollectionGridElementComponent }; -//# sourceMappingURL=collection-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js.map b/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js.map deleted file mode 100644 index 4afdf2dca8..0000000000 --- a/src/app/shared/object-grid/collection-grid-element/collection-grid-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-grid-element.component.js","sourceRoot":"","sources":["collection-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAC,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAShJ;IAAoD,0DAA4C;IAAhG;;IAAkG,CAAC;IAAtF,8BAA8B;QAP1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,SAAS,EAAE,CAAC,0CAA0C,CAAC;YACvD,WAAW,EAAE,0CAA0C;SACxD,CAAC;QAED,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC;OACnC,8BAA8B,CAAwD;IAAD,qCAAC;CAAA,AAAnG,CAAoD,gCAAgC,GAAe;SAAtF,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js b/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js deleted file mode 100644 index 8c2fb90c68..0000000000 --- a/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { Community } from '../../../core/shared/community.model'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; -import { SetViewMode } from '../../view-mode'; -var CommunityGridElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(CommunityGridElementComponent, _super); - function CommunityGridElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - CommunityGridElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-community-grid-element', - styleUrls: ['./community-grid-element.component.scss'], - templateUrl: './community-grid-element.component.html' - }), - renderElementsFor(Community, SetViewMode.Grid) - ], CommunityGridElementComponent); - return CommunityGridElementComponent; -}(AbstractListableElementComponent)); -export { CommunityGridElementComponent }; -//# sourceMappingURL=community-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js.map b/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js.map deleted file mode 100644 index 29c21bcb06..0000000000 --- a/src/app/shared/object-grid/community-grid-element/community-grid-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-grid-element.component.js","sourceRoot":"","sources":["community-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,iBAAiB,EAAC,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAS9C;IAAmD,yDAA2C;IAA9F;;IAAgG,CAAC;IAApF,6BAA6B;QAPzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;QAED,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC;OAClC,6BAA6B,CAAuD;IAAD,oCAAC;CAAA,AAAjG,CAAmD,gCAAgC,GAAc;SAApF,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js b/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js deleted file mode 100644 index 7b44ef64ae..0000000000 --- a/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Bitstream } from '../../../core/shared/bitstream.model'; -/** - * This component renders a given Bitstream as a thumbnail. - * One input parameter of type Bitstream is expected. - * If no Bitstream is provided, a holderjs image will be rendered instead. - */ -var GridThumbnailComponent = /** @class */ (function () { - function GridThumbnailComponent() { - this.data = {}; - /** - * The default 'holder.js' image - */ - this.holderSource = 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/PjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjYwIiBoZWlnaHQ9IjE4MCIgdmlld0JveD0iMCAwIDI2MCAxODAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjwhLS0KU291cmNlIFVSTDogaG9sZGVyLmpzLzEwMCV4MTgwL3RleHQ6Tm8gVGh1bWJuYWlsCkNyZWF0ZWQgd2l0aCBIb2xkZXIuanMgMi42LjAuCkxlYXJuIG1vcmUgYXQgaHR0cDovL2hvbGRlcmpzLmNvbQooYykgMjAxMi0yMDE1IEl2YW4gTWFsb3BpbnNreSAtIGh0dHA6Ly9pbXNreS5jbwotLT48ZGVmcz48c3R5bGUgdHlwZT0idGV4dC9jc3MiPjwhW0NEQVRBWyNob2xkZXJfMTVmNzJmMmFlMGIgdGV4dCB7IGZpbGw6I0FBQUFBQTtmb250LXdlaWdodDpib2xkO2ZvbnQtZmFtaWx5OkFyaWFsLCBIZWx2ZXRpY2EsIE9wZW4gU2Fucywgc2Fucy1zZXJpZiwgbW9ub3NwYWNlO2ZvbnQtc2l6ZToxM3B0IH0gXV0+PC9zdHlsZT48L2RlZnM+PGcgaWQ9ImhvbGRlcl8xNWY3MmYyYWUwYiI+PHJlY3Qgd2lkdGg9IjI2MCIgaGVpZ2h0PSIxODAiIGZpbGw9IiNFRUVFRUUiLz48Zz48dGV4dCB4PSI3Mi4yNDIxODc1IiB5PSI5NiI+Tm8gVGh1bWJuYWlsPC90ZXh0PjwvZz48L2c+PC9zdmc+'; - } - GridThumbnailComponent.prototype.errorHandler = function (event) { - event.currentTarget.src = this.holderSource; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Bitstream) - ], GridThumbnailComponent.prototype, "thumbnail", void 0); - GridThumbnailComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-grid-thumbnail', - styleUrls: ['./grid-thumbnail.component.scss'], - templateUrl: './grid-thumbnail.component.html' - }) - ], GridThumbnailComponent); - return GridThumbnailComponent; -}()); -export { GridThumbnailComponent }; -//# sourceMappingURL=grid-thumbnail.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js.map b/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js.map deleted file mode 100644 index c5ce8f4918..0000000000 --- a/src/app/shared/object-grid/grid-thumbnail/grid-thumbnail.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"grid-thumbnail.component.js","sourceRoot":"","sources":["grid-thumbnail.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAEjE;;;;GAIG;AAOH;IALA;QASE,SAAI,GAAQ,EAAE,CAAC;QAEf;;WAEG;QACH,iBAAY,GAAG,w5BAAw5B,CAAC;IAM16B,CAAC;IAJC,6CAAY,GAAZ,UAAa,KAAK;QAChB,KAAK,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;IAC9C,CAAC;IAXQ;QAAR,KAAK,EAAE;0CAAY,SAAS;6DAAC;IAFnB,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;OACW,sBAAsB,CAelC;IAAD,6BAAC;CAAA,AAfD,IAeC;SAfY,sBAAsB"} \ No newline at end of file diff --git a/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js b/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js deleted file mode 100644 index c34f6b9414..0000000000 --- a/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { Item } from '../../../core/shared/item.model'; -import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { SetViewMode } from '../../view-mode'; -var ItemGridElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemGridElementComponent, _super); - function ItemGridElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - ItemGridElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-grid-element', - styleUrls: ['./item-grid-element.component.scss'], - templateUrl: './item-grid-element.component.html' - }), - renderElementsFor(Item, SetViewMode.Grid) - ], ItemGridElementComponent); - return ItemGridElementComponent; -}(AbstractListableElementComponent)); -export { ItemGridElementComponent }; -//# sourceMappingURL=item-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js.map b/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js.map deleted file mode 100644 index 08074d572e..0000000000 --- a/src/app/shared/object-grid/item-grid-element/item-grid-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-grid-element.component.js","sourceRoot":"","sources":["item-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAC,MAAM,sDAAsD,CAAC;AACxF,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAS9C;IAA8C,oDAAsC;IAApF;;IAAsF,CAAC;IAA1E,wBAAwB;QAPpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;QAED,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;OAC7B,wBAAwB,CAAkD;IAAD,+BAAC;CAAA,AAAvF,CAA8C,gCAAgC,GAAS;SAA1E,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/object-grid/object-grid.component.js b/src/app/shared/object-grid/object-grid.component.js deleted file mode 100644 index 6db34997ef..0000000000 --- a/src/app/shared/object-grid/object-grid.component.js +++ /dev/null @@ -1,165 +0,0 @@ -import * as tslib_1 from "tslib"; -import { combineLatest as observableCombineLatest, BehaviorSubject } from 'rxjs'; -import { startWith, distinctUntilChanged, map } from 'rxjs/operators'; -import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; -import { SortOptions } from '../../core/cache/models/sort-options.model'; -import { RemoteData } from '../../core/data/remote-data'; -import { fadeIn } from '../animations/fade'; -import { hasNoValue, hasValue } from '../empty.util'; -import { HostWindowService, WidthCategory } from '../host-window.service'; -import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; -var ObjectGridComponent = /** @class */ (function () { - function ObjectGridComponent(hostWindow) { - this.hostWindow = hostWindow; - this.hideGear = false; - this.hidePagerWhenSinglePage = true; - /** - * An event fired when the page is changed. - * Event's payload equals to the newly selected page. - */ - this.change = new EventEmitter(); - /** - * An event fired when the page is changed. - * Event's payload equals to the newly selected page. - */ - this.pageChange = new EventEmitter(); - /** - * An event fired when the page wsize is changed. - * Event's payload equals to the newly selected page size. - */ - this.pageSizeChange = new EventEmitter(); - /** - * An event fired when the sort direction is changed. - * Event's payload equals to the newly selected sort direction. - */ - this.sortDirectionChange = new EventEmitter(); - this.paginationChange = new EventEmitter(); - /** - * An event fired when the sort field is changed. - * Event's payload equals to the newly selected sort field. - */ - this.sortFieldChange = new EventEmitter(); - this.data = {}; - this._objects$ = new BehaviorSubject(undefined); - } - Object.defineProperty(ObjectGridComponent.prototype, "objects", { - get: function () { - return this._objects$.getValue(); - }, - set: function (objects) { - this._objects$.next(objects); - }, - enumerable: true, - configurable: true - }); - ObjectGridComponent.prototype.ngOnInit = function () { - var nbColumns$ = this.hostWindow.widthCategory.pipe(map(function (widthCat) { - switch (widthCat) { - case WidthCategory.XL: - case WidthCategory.LG: { - return 3; - } - case WidthCategory.MD: - case WidthCategory.SM: { - return 2; - } - default: { - return 1; - } - } - }), distinctUntilChanged()).pipe(startWith(3)); - this.columns$ = observableCombineLatest(nbColumns$, this._objects$).pipe(map(function (_a) { - var nbColumns = _a[0], objects = _a[1]; - if (hasValue(objects) && hasValue(objects.payload) && hasValue(objects.payload.page)) { - var page = objects.payload.page; - var result_1 = []; - page.forEach(function (obj, i) { - var colNb = i % nbColumns; - var col = result_1[colNb]; - if (hasNoValue(col)) { - col = []; - } - result_1[colNb] = col.concat([obj]); - }); - return result_1; - } - else { - return []; - } - })); - }; - ObjectGridComponent.prototype.onPageChange = function (event) { - this.pageChange.emit(event); - }; - ObjectGridComponent.prototype.onPageSizeChange = function (event) { - this.pageSizeChange.emit(event); - }; - ObjectGridComponent.prototype.onSortDirectionChange = function (event) { - this.sortDirectionChange.emit(event); - }; - ObjectGridComponent.prototype.onSortFieldChange = function (event) { - this.sortFieldChange.emit(event); - }; - ObjectGridComponent.prototype.onPaginationChange = function (event) { - this.paginationChange.emit(event); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", PaginationComponentOptions) - ], ObjectGridComponent.prototype, "config", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SortOptions) - ], ObjectGridComponent.prototype, "sortConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectGridComponent.prototype, "hideGear", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectGridComponent.prototype, "hidePagerWhenSinglePage", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", RemoteData), - tslib_1.__metadata("design:paramtypes", [RemoteData]) - ], ObjectGridComponent.prototype, "objects", null); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectGridComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectGridComponent.prototype, "pageChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectGridComponent.prototype, "pageSizeChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectGridComponent.prototype, "sortDirectionChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectGridComponent.prototype, "paginationChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectGridComponent.prototype, "sortFieldChange", void 0); - ObjectGridComponent = tslib_1.__decorate([ - Component({ - changeDetection: ChangeDetectionStrategy.Default, - encapsulation: ViewEncapsulation.Emulated, - selector: 'ds-object-grid', - styleUrls: ['./object-grid.component.scss'], - templateUrl: './object-grid.component.html', - animations: [fadeIn] - }), - tslib_1.__metadata("design:paramtypes", [HostWindowService]) - ], ObjectGridComponent); - return ObjectGridComponent; -}()); -export { ObjectGridComponent }; -//# sourceMappingURL=object-grid.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/object-grid.component.js.map b/src/app/shared/object-grid/object-grid.component.js.map deleted file mode 100644 index 822d1a2d9f..0000000000 --- a/src/app/shared/object-grid/object-grid.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-grid.component.js","sourceRoot":"","sources":["object-grid.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,IAAI,uBAAuB,EAAE,eAAe,EAAc,MAAM,MAAM,CAAC;AAE7F,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,YAAY,EACZ,KAAK,EACL,MAAM,EACN,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAiB,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAGxF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAG1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kDAAkD,CAAC;AAW9F;IAwDE,6BAAoB,UAA6B;QAA7B,eAAU,GAAV,UAAU,CAAmB;QApDxC,aAAQ,GAAG,KAAK,CAAC;QACjB,4BAAuB,GAAG,IAAI,CAAC;QAWxC;;;WAGG;QACO,WAAM,GAGX,IAAI,YAAY,EAGjB,CAAC;QAEL;;;WAGG;QACO,eAAU,GAAyB,IAAI,YAAY,EAAU,CAAC;QAExE;;;WAGG;QACO,mBAAc,GAAyB,IAAI,YAAY,EAAU,CAAC;QAE5E;;;WAGG;QACO,wBAAmB,GAAgC,IAAI,YAAY,EAAiB,CAAC;QAErF,qBAAgB,GAAgC,IAAI,YAAY,EAAO,CAAC;QAElF;;;WAGG;QACO,oBAAe,GAAyB,IAAI,YAAY,EAAU,CAAC;QAC7E,SAAI,GAAQ,EAAE,CAAC;QAIb,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAlDQ,sBAAI,wCAAO;aAIpB;YACE,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACnC,CAAC;aANQ,UAAY,OAAkD;YACrE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;;;OAAA;IAkDD,sCAAQ,GAAR;QACE,IAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CACnD,GAAG,CAAC,UAAC,QAAuB;YAC1B,QAAQ,QAAQ,EAAE;gBAChB,KAAK,aAAa,CAAC,EAAE,CAAC;gBACtB,KAAK,aAAa,CAAC,EAAE,CAAC,CAAC;oBACrB,OAAO,CAAC,CAAC;iBACV;gBACD,KAAK,aAAa,CAAC,EAAE,CAAC;gBACtB,KAAK,aAAa,CAAC,EAAE,CAAC,CAAC;oBACrB,OAAO,CAAC,CAAC;iBACV;gBACD,OAAO,CAAC,CAAC;oBACP,OAAO,CAAC,CAAC;iBACV;aACF;QACH,CAAC,CAAC,EACF,oBAAoB,EAAE,CACvB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAErB,IAAI,CAAC,QAAQ,GAAG,uBAAuB,CACrC,UAAU,EACV,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,EAAoB;gBAAnB,iBAAS,EAAE,eAAO;YAC7C,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACpF,IAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;gBAElC,IAAM,QAAM,GAAG,EAAE,CAAC;gBAElB,IAAI,CAAC,OAAO,CAAC,UAAC,GAAmB,EAAE,CAAS;oBAC1C,IAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC;oBAC5B,IAAI,GAAG,GAAG,QAAM,CAAC,KAAK,CAAC,CAAC;oBACxB,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE;wBACnB,GAAG,GAAG,EAAE,CAAC;qBACV;oBACD,QAAM,CAAC,KAAK,CAAC,GAAO,GAAG,SAAE,GAAG,EAAC,CAAC;gBAChC,CAAC,CAAC,CAAC;gBACH,OAAO,QAAM,CAAC;aACf;iBAAM;gBACL,OAAO,EAAE,CAAC;aACX;QACH,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,0CAAY,GAAZ,UAAa,KAAK;QAChB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,8CAAgB,GAAhB,UAAiB,KAAK;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,mDAAqB,GAArB,UAAsB,KAAK;QACzB,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,+CAAiB,GAAjB,UAAkB,KAAK;QACrB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,gDAAkB,GAAlB,UAAmB,KAAK;QACtB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAvHQ;QAAR,KAAK,EAAE;0CAAS,0BAA0B;uDAAC;IACnC;QAAR,KAAK,EAAE;0CAAa,WAAW;2DAAC;IACxB;QAAR,KAAK,EAAE;;yDAAkB;IACjB;QAAR,KAAK,EAAE;;wEAAgC;IAG/B;QAAR,KAAK,EAAE;0CAAsB,UAAU;iDAAV,UAAU;sDAEvC;IAUS;QAAT,MAAM,EAAE;0CAAS,YAAY;uDAMzB;IAMK;QAAT,MAAM,EAAE;0CAAa,YAAY;2DAAsC;IAM9D;QAAT,MAAM,EAAE;0CAAiB,YAAY;+DAAsC;IAMlE;QAAT,MAAM,EAAE;0CAAsB,YAAY;oEAAoD;IAErF;QAAT,MAAM,EAAE;0CAAmB,YAAY;iEAA0C;IAMxE;QAAT,MAAM,EAAE;0CAAkB,YAAY;gEAAsC;IApDlE,mBAAmB;QAT/B,SAAS,CAAC;YACT,eAAe,EAAE,uBAAuB,CAAC,OAAO;YAChD,aAAa,EAAE,iBAAiB,CAAC,QAAQ;YACzC,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;YAC3C,UAAU,EAAE,CAAC,MAAM,CAAC;SACrB,CAAC;iDA0DgC,iBAAiB;OAxDtC,mBAAmB,CA2H/B;IAAD,0BAAC;CAAA,AA3HD,IA2HC;SA3HY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js b/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js deleted file mode 100644 index 076cfe8be9..0000000000 --- a/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { SearchResultGridElementComponent } from '../search-result-grid-element.component'; -import { SetViewMode } from '../../../view-mode'; -import { CollectionSearchResult } from '../../../object-collection/shared/collection-search-result.model'; -var CollectionSearchResultGridElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(CollectionSearchResultGridElementComponent, _super); - function CollectionSearchResultGridElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - CollectionSearchResultGridElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-collection-search-result-grid-element', - styleUrls: ['../search-result-grid-element.component.scss', 'collection-search-result-grid-element.component.scss'], - templateUrl: 'collection-search-result-grid-element.component.html' - }), - renderElementsFor(CollectionSearchResult, SetViewMode.Grid) - ], CollectionSearchResultGridElementComponent); - return CollectionSearchResultGridElementComponent; -}(SearchResultGridElementComponent)); -export { CollectionSearchResultGridElementComponent }; -//# sourceMappingURL=collection-search-result-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js.map b/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js.map deleted file mode 100644 index b4a958a218..0000000000 --- a/src/app/shared/object-grid/search-result-grid-element/collection-search-result/collection-search-result-grid-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-search-result-grid-element.component.js","sourceRoot":"","sources":["collection-search-result-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAC,MAAM,yDAAyD,CAAC;AAC3F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kEAAkE,CAAC;AAS1G;IAAgE,sEAAoE;IAApI;;IAAsI,CAAC;IAA1H,0CAA0C;QAPtD,SAAS,CAAC;YACT,QAAQ,EAAE,0CAA0C;YACpD,SAAS,EAAE,CAAC,8CAA8C,EAAE,sDAAsD,CAAC;YACnH,WAAW,EAAE,sDAAsD;SACpE,CAAC;QAED,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC/C,0CAA0C,CAAgF;IAAD,iDAAC;CAAA,AAAvI,CAAgE,gCAAgC,GAAuC;SAA1H,0CAA0C"} \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js b/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js deleted file mode 100644 index 8ceed16a7b..0000000000 --- a/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { SearchResultGridElementComponent } from '../search-result-grid-element.component'; -import { SetViewMode } from '../../../view-mode'; -import { CommunitySearchResult } from '../../../object-collection/shared/community-search-result.model'; -var CommunitySearchResultGridElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(CommunitySearchResultGridElementComponent, _super); - function CommunitySearchResultGridElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - CommunitySearchResultGridElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-community-search-result-grid-element', - styleUrls: ['../search-result-grid-element.component.scss', 'community-search-result-grid-element.component.scss'], - templateUrl: 'community-search-result-grid-element.component.html' - }), - renderElementsFor(CommunitySearchResult, SetViewMode.Grid) - ], CommunitySearchResultGridElementComponent); - return CommunitySearchResultGridElementComponent; -}(SearchResultGridElementComponent)); -export { CommunitySearchResultGridElementComponent }; -//# sourceMappingURL=community-search-result-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js.map b/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js.map deleted file mode 100644 index e083d946b5..0000000000 --- a/src/app/shared/object-grid/search-result-grid-element/community-search-result/community-search-result-grid-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-search-result-grid-element.component.js","sourceRoot":"","sources":["community-search-result-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iEAAiE,CAAC;AASxG;IAA+D,qEAAkE;IAAjI;;IAEA,CAAC;IAFY,yCAAyC;QAPrD,SAAS,CAAC;YACT,QAAQ,EAAE,yCAAyC;YACnD,SAAS,EAAE,CAAC,8CAA8C,EAAE,qDAAqD,CAAC;YAClH,WAAW,EAAE,qDAAqD;SACnE,CAAC;QAED,iBAAiB,CAAC,qBAAqB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC9C,yCAAyC,CAErD;IAAD,gDAAC;CAAA,AAFD,CAA+D,gCAAgC,GAE9F;SAFY,yCAAyC"} \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js b/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js deleted file mode 100644 index 0bc2642067..0000000000 --- a/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { SearchResultGridElementComponent } from '../search-result-grid-element.component'; -import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model'; -import { SetViewMode } from '../../../view-mode'; -import { focusShadow } from '../../../../shared/animations/focus'; -var ItemSearchResultGridElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemSearchResultGridElementComponent, _super); - function ItemSearchResultGridElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - ItemSearchResultGridElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-search-result-grid-element', - styleUrls: ['../search-result-grid-element.component.scss', 'item-search-result-grid-element.component.scss'], - templateUrl: 'item-search-result-grid-element.component.html', - animations: [focusShadow], - }), - renderElementsFor(ItemSearchResult, SetViewMode.Grid) - ], ItemSearchResultGridElementComponent); - return ItemSearchResultGridElementComponent; -}(SearchResultGridElementComponent)); -export { ItemSearchResultGridElementComponent }; -//# sourceMappingURL=item-search-result-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js.map b/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js.map deleted file mode 100644 index 3b77b39d50..0000000000 --- a/src/app/shared/object-grid/search-result-grid-element/item-search-result/item-search-result-grid-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-search-result-grid-element.component.js","sourceRoot":"","sources":["item-search-result-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4DAA4D,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAUlE;IAA0D,gEAAwD;IAAlH;;IAAoH,CAAC;IAAxG,oCAAoC;QARhD,SAAS,CAAC;YACT,QAAQ,EAAE,oCAAoC;YAC9C,SAAS,EAAE,CAAC,8CAA8C,EAAE,gDAAgD,CAAC;YAC7G,WAAW,EAAE,gDAAgD;YAC7D,UAAU,EAAE,CAAC,WAAW,CAAC;SAC1B,CAAC;QAED,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,CAAC,IAAI,CAAC;OACzC,oCAAoC,CAAoE;IAAD,2CAAC;CAAA,AAArH,CAA0D,gCAAgC,GAA2B;SAAxG,oCAAoC"} \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js b/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js deleted file mode 100644 index 52728f567a..0000000000 --- a/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js +++ /dev/null @@ -1,47 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { TruncatableService } from '../../truncatable/truncatable.service'; -import { Metadata } from '../../../core/shared/metadata.utils'; -var SearchResultGridElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(SearchResultGridElementComponent, _super); - function SearchResultGridElementComponent(listableObject, truncatableService) { - var _this = _super.call(this, listableObject) || this; - _this.listableObject = listableObject; - _this.truncatableService = truncatableService; - _this.dso = _this.object.indexableObject; - return _this; - } - /** - * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string[]} the matching string values or an empty array. - */ - SearchResultGridElementComponent.prototype.allMetadataValues = function (keyOrKeys) { - return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys); - }; - /** - * Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string} the first matching string value, or `undefined`. - */ - SearchResultGridElementComponent.prototype.firstMetadataValue = function (keyOrKeys) { - return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys); - }; - SearchResultGridElementComponent.prototype.isCollapsed = function () { - return this.truncatableService.isCollapsed(this.dso.id); - }; - SearchResultGridElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-result-grid-element', - template: "" - }), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object, TruncatableService]) - ], SearchResultGridElementComponent); - return SearchResultGridElementComponent; -}(AbstractListableElementComponent)); -export { SearchResultGridElementComponent }; -//# sourceMappingURL=search-result-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js.map b/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js.map deleted file mode 100644 index cda164ca8a..0000000000 --- a/src/app/shared/object-grid/search-result-grid-element/search-result-grid-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-result-grid-element.component.js","sourceRoot":"","sources":["search-result-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAIlD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAEhJ,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAO/D;IAAyG,4DAAmC;IAG1I,0CAA2D,cAA8B,EAAU,kBAAsC;QAAzI,YACE,kBAAM,cAAc,CAAC,SAEtB;QAH0D,oBAAc,GAAd,cAAc,CAAgB;QAAU,wBAAkB,GAAlB,kBAAkB,CAAoB;QAEvI,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;;IACzC,CAAC;IAED;;;;;OAKG;IACH,4DAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;;;OAKG;IACH,6DAAkB,GAAlB,UAAmB,SAA4B;QAC7C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAED,sDAAW,GAAX;QACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IA9BU,gCAAgC;QAL5C,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,QAAQ,EAAE,EAAE;SACb,CAAC;QAKoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;yDAAoE,kBAAkB;OAH9H,gCAAgC,CAgC5C;IAAD,uCAAC;CAAA,AAhCD,CAAyG,gCAAgC,GAgCxI;SAhCY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js b/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js deleted file mode 100644 index 2e36f3e910..0000000000 --- a/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js +++ /dev/null @@ -1,35 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { SetViewMode } from '../../view-mode'; -import { rendersDSOType } from '../../object-collection/shared/dso-element-decorator'; -var WrapperGridElementComponent = /** @class */ (function () { - function WrapperGridElementComponent(injector) { - this.injector = injector; - } - WrapperGridElementComponent.prototype.ngOnInit = function () { - var _this = this; - this.objectInjector = Injector.create({ - providers: [{ provide: 'objectElementProvider', useFactory: function () { return (_this.object); }, deps: [] }], - parent: this.injector - }); - }; - WrapperGridElementComponent.prototype.getGridElement = function () { - var f = this.object.constructor; - return rendersDSOType(f, SetViewMode.Grid); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], WrapperGridElementComponent.prototype, "object", void 0); - WrapperGridElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-wrapper-grid-element', - styleUrls: ['./wrapper-grid-element.component.scss'], - templateUrl: './wrapper-grid-element.component.html' - }), - tslib_1.__metadata("design:paramtypes", [Injector]) - ], WrapperGridElementComponent); - return WrapperGridElementComponent; -}()); -export { WrapperGridElementComponent }; -//# sourceMappingURL=wrapper-grid-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js.map b/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js.map deleted file mode 100644 index 4d8156d415..0000000000 --- a/src/app/shared/object-grid/wrapper-grid-element/wrapper-grid-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"wrapper-grid-element.component.js","sourceRoot":"","sources":["wrapper-grid-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAQtF;IAIE,qCAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IACtC,CAAC;IAED,8CAAQ,GAAR;QAAA,iBAMC;QALC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,MAAM,CAAC,EAAb,CAAa,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC;YAC3F,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IAEL,CAAC;IAED,oDAAc,GAAd;QACE,IAAM,CAAC,GAAuC,IAAI,CAAC,MAAM,CAAC,WAAiD,CAAC;QAC5G,OAAO,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAjBQ;QAAR,KAAK,EAAE;;+DAAwB;IADrB,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;iDAK8B,QAAQ;OAJ3B,2BAA2B,CAmBvC;IAAD,kCAAC;CAAA,AAnBD,IAmBC;SAnBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js b/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js deleted file mode 100644 index be4195ab13..0000000000 --- a/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; -import { BrowseEntry } from '../../../core/shared/browse-entry.model'; -import { SetViewMode } from '../../view-mode'; -var BrowseEntryListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(BrowseEntryListElementComponent, _super); - function BrowseEntryListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - BrowseEntryListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-browse-entry-list-element', - styleUrls: ['./browse-entry-list-element.component.scss'], - templateUrl: './browse-entry-list-element.component.html' - }) - /** - * This component is automatically used to create a list view for BrowseEntry objects when used in ObjectCollectionComponent - */ - , - renderElementsFor(BrowseEntry, SetViewMode.List) - ], BrowseEntryListElementComponent); - return BrowseEntryListElementComponent; -}(AbstractListableElementComponent)); -export { BrowseEntryListElementComponent }; -//# sourceMappingURL=browse-entry-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js.map b/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js.map deleted file mode 100644 index 39ae82a45f..0000000000 --- a/src/app/shared/object-list/browse-entry-list-element/browse-entry-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-entry-list-element.component.js","sourceRoot":"","sources":["browse-entry-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAEtE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAY9C;IAAqD,2DAA6C;IAAlG;;IAAoG,CAAC;IAAxF,+BAA+B;QAV3C,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,SAAS,EAAE,CAAC,4CAA4C,CAAC;YACzD,WAAW,EAAE,4CAA4C;SAC1D,CAAC;QAEF;;WAEG;;QACF,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC;OACpC,+BAA+B,CAAyD;IAAD,sCAAC;CAAA,AAArG,CAAqD,gCAAgC,GAAgB;SAAxF,+BAA+B"} \ No newline at end of file diff --git a/src/app/shared/object-list/collection-list-element/collection-list-element.component.js b/src/app/shared/object-list/collection-list-element/collection-list-element.component.js deleted file mode 100644 index 4a1c0e96ea..0000000000 --- a/src/app/shared/object-list/collection-list-element/collection-list-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { Collection } from '../../../core/shared/collection.model'; -import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; -import { SetViewMode } from '../../view-mode'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -var CollectionListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(CollectionListElementComponent, _super); - function CollectionListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - CollectionListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-collection-list-element', - styleUrls: ['./collection-list-element.component.scss'], - templateUrl: './collection-list-element.component.html' - }), - renderElementsFor(Collection, SetViewMode.List) - ], CollectionListElementComponent); - return CollectionListElementComponent; -}(AbstractListableElementComponent)); -export { CollectionListElementComponent }; -//# sourceMappingURL=collection-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/collection-list-element/collection-list-element.component.js.map b/src/app/shared/object-list/collection-list-element/collection-list-element.component.js.map deleted file mode 100644 index b18702be9c..0000000000 --- a/src/app/shared/object-list/collection-list-element/collection-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-list-element.component.js","sourceRoot":"","sources":["collection-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAShJ;IAAoD,0DAA4C;IAAhG;;IAAkG,CAAC;IAAtF,8BAA8B;QAP1C,SAAS,CAAC;YACT,QAAQ,EAAE,4BAA4B;YACtC,SAAS,EAAE,CAAC,0CAA0C,CAAC;YACvD,WAAW,EAAE,0CAA0C;SACxD,CAAC;QAED,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC;OACnC,8BAA8B,CAAwD;IAAD,qCAAC;CAAA,AAAnG,CAAoD,gCAAgC,GAAe;SAAtF,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/object-list/community-list-element/community-list-element.component.js b/src/app/shared/object-list/community-list-element/community-list-element.component.js deleted file mode 100644 index 80e529919a..0000000000 --- a/src/app/shared/object-list/community-list-element/community-list-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { Community } from '../../../core/shared/community.model'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; -import { SetViewMode } from '../../view-mode'; -var CommunityListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(CommunityListElementComponent, _super); - function CommunityListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - CommunityListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-community-list-element', - styleUrls: ['./community-list-element.component.scss'], - templateUrl: './community-list-element.component.html' - }), - renderElementsFor(Community, SetViewMode.List) - ], CommunityListElementComponent); - return CommunityListElementComponent; -}(AbstractListableElementComponent)); -export { CommunityListElementComponent }; -//# sourceMappingURL=community-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/community-list-element/community-list-element.component.js.map b/src/app/shared/object-list/community-list-element/community-list-element.component.js.map deleted file mode 100644 index 0203dbd492..0000000000 --- a/src/app/shared/object-list/community-list-element/community-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-list-element.component.js","sourceRoot":"","sources":["community-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAS9C;IAAmD,yDAA2C;IAA9F;;IAAgG,CAAC;IAApF,6BAA6B;QAPzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;QAED,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC;OAClC,6BAA6B,CAAuD;IAAD,oCAAC;CAAA,AAAjG,CAAmD,gCAAgC,GAAc;SAApF,6BAA6B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-list-element.component.js b/src/app/shared/object-list/item-list-element/item-list-element.component.js deleted file mode 100644 index 1fa30c8e73..0000000000 --- a/src/app/shared/object-list/item-list-element/item-list-element.component.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { Item } from '../../../core/shared/item.model'; -import { renderElementsFor } from '../../object-collection/shared/dso-element-decorator'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { SetViewMode } from '../../view-mode'; -import { ItemViewMode } from '../../items/item-type-decorator'; -var ItemListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemListElementComponent, _super); - function ItemListElementComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.viewMode = ItemViewMode.Element; - return _this; - } - ItemListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-list-element', - styleUrls: ['./item-list-element.component.scss'], - templateUrl: './item-list-element.component.html' - }) - /** - * The component used to list items depending on type - * Uses item-type-switcher to determine which components to use for displaying the list - */ - , - renderElementsFor(Item, SetViewMode.List) - ], ItemListElementComponent); - return ItemListElementComponent; -}(AbstractListableElementComponent)); -export { ItemListElementComponent }; -//# sourceMappingURL=item-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-list-element.component.js.map deleted file mode 100644 index 05ab8e0e6f..0000000000 --- a/src/app/shared/object-list/item-list-element/item-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-list-element.component.js","sourceRoot":"","sources":["item-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sDAAsD,CAAC;AACzF,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAa/D;IAA8C,oDAAsC;IAXpF;QAAA,qEAaC;QADC,cAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;;IAClC,CAAC;IAFY,wBAAwB;QAXpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;QAEF;;;WAGG;;QACF,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;OAC7B,wBAAwB,CAEpC;IAAD,+BAAC;CAAA,AAFD,CAA8C,gCAAgC,GAE7E;SAFY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js deleted file mode 100644 index 7767894d7b..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -var JournalIssueListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(JournalIssueListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type Journal Issue - */ - function JournalIssueListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - JournalIssueListElementComponent = tslib_1.__decorate([ - rendersItemType('JournalIssue', ItemViewMode.Element), - Component({ - selector: 'ds-journal-issue-list-element', - styleUrls: ['./journal-issue-list-element.component.scss'], - templateUrl: './journal-issue-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type Journal Issue - */ - ], JournalIssueListElementComponent); - return JournalIssueListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { JournalIssueListElementComponent }; -//# sourceMappingURL=journal-issue-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js.map deleted file mode 100644 index 3345061bd9..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"journal-issue-list-element.component.js","sourceRoot":"","sources":["journal-issue-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAsD,4DAAyC;IAH/F;;OAEG;IACH;;IACA,CAAC;IADY,gCAAgC;QAT5C,eAAe,CAAC,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC;QACrD,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,SAAS,EAAE,CAAC,6CAA6C,CAAC;YAC1D,WAAW,EAAE,6CAA6C;SAC3D,CAAC;QACF;;WAEG;OACU,gCAAgC,CAC5C;IAAD,uCAAC;CAAA,AADD,CAAsD,yCAAyC,GAC9F;SADY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js deleted file mode 100644 index 344f35f951..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -var JournalVolumeListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(JournalVolumeListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type Journal Volume - */ - function JournalVolumeListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - JournalVolumeListElementComponent = tslib_1.__decorate([ - rendersItemType('JournalVolume', ItemViewMode.Element), - Component({ - selector: 'ds-journal-volume-list-element', - styleUrls: ['./journal-volume-list-element.component.scss'], - templateUrl: './journal-volume-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type Journal Volume - */ - ], JournalVolumeListElementComponent); - return JournalVolumeListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { JournalVolumeListElementComponent }; -//# sourceMappingURL=journal-volume-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js.map deleted file mode 100644 index 1d444223da..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"journal-volume-list-element.component.js","sourceRoot":"","sources":["journal-volume-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAuD,6DAAyC;IAHhG;;OAEG;IACH;;IACA,CAAC;IADY,iCAAiC;QAT7C,eAAe,CAAC,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC;QACtD,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAC,8CAA8C,CAAC;YAC3D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;QACF;;WAEG;OACU,iCAAiC,CAC7C;IAAD,wCAAC;CAAA,AADD,CAAuD,yCAAyC,GAC/F;SADY,iCAAiC"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js deleted file mode 100644 index 408424b233..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -var JournalListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(JournalListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type Journal - */ - function JournalListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - JournalListElementComponent = tslib_1.__decorate([ - rendersItemType('Journal', ItemViewMode.Element), - Component({ - selector: 'ds-journal-list-element', - styleUrls: ['./journal-list-element.component.scss'], - templateUrl: './journal-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type Journal - */ - ], JournalListElementComponent); - return JournalListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { JournalListElementComponent }; -//# sourceMappingURL=journal-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js.map deleted file mode 100644 index 81435f4cd3..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/journal/journal-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"journal-list-element.component.js","sourceRoot":"","sources":["journal-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAiD,uDAAyC;IAH1F;;OAEG;IACH;;IACA,CAAC;IADY,2BAA2B;QATvC,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC;QAChD,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;OACU,2BAA2B,CACvC;IAAD,kCAAC;CAAA,AADD,CAAiD,yCAAyC,GACzF;SADY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js deleted file mode 100644 index 9ee965fa66..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -var OrgUnitListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(OrgUnitListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type Organisation Unit - */ - function OrgUnitListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - OrgUnitListElementComponent = tslib_1.__decorate([ - rendersItemType('OrgUnit', ItemViewMode.Element), - Component({ - selector: 'ds-orgunit-list-element', - styleUrls: ['./orgunit-list-element.component.scss'], - templateUrl: './orgunit-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type Organisation Unit - */ - ], OrgUnitListElementComponent); - return OrgUnitListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { OrgUnitListElementComponent }; -//# sourceMappingURL=orgunit-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js.map deleted file mode 100644 index 09f87db5d0..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"orgunit-list-element.component.js","sourceRoot":"","sources":["orgunit-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAiD,uDAAyC;IAH1F;;OAEG;IACH;;IACA,CAAC;IADY,2BAA2B;QATvC,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC;QAChD,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;OACU,2BAA2B,CACvC;IAAD,kCAAC;CAAA,AADD,CAAiD,yCAAyC,GACzF;SADY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js deleted file mode 100644 index d4ad81f310..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { Component } from '@angular/core'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -import { MetadataRepresentationType } from '../../../../../core/shared/metadata-representation/metadata-representation.model'; -var OrgUnitMetadataListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(OrgUnitMetadataListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type OrgUnit - */ - function OrgUnitMetadataListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - OrgUnitMetadataListElementComponent = tslib_1.__decorate([ - rendersItemType('OrgUnit', ItemViewMode.Element, MetadataRepresentationType.Item), - Component({ - selector: 'ds-orgunit-metadata-list-element', - templateUrl: './orgunit-metadata-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type OrgUnit - */ - ], OrgUnitMetadataListElementComponent); - return OrgUnitMetadataListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { OrgUnitMetadataListElementComponent }; -//# sourceMappingURL=orgunit-metadata-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js.map deleted file mode 100644 index 9393fb8b31..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"orgunit-metadata-list-element.component.js","sourceRoot":"","sources":["orgunit-metadata-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAC/G,OAAO,EAAE,0BAA0B,EAAE,MAAM,kFAAkF,CAAC;AAU9H;IAAyD,+DAAyC;IAHlG;;OAEG;IACH;;IACA,CAAC;IADY,mCAAmC;QAR/C,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,EAAE,0BAA0B,CAAC,IAAI,CAAC;QACjF,SAAS,CAAC;YACT,QAAQ,EAAE,kCAAkC;YAC5C,WAAW,EAAE,gDAAgD;SAC9D,CAAC;QACF;;WAEG;OACU,mCAAmC,CAC/C;IAAD,0CAAC;CAAA,AADD,CAAyD,yCAAyC,GACjG;SADY,mCAAmC"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js deleted file mode 100644 index 08547fdf81..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -var PersonListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(PersonListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type Person - */ - function PersonListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - PersonListElementComponent = tslib_1.__decorate([ - rendersItemType('Person', ItemViewMode.Element), - Component({ - selector: 'ds-person-list-element', - styleUrls: ['./person-list-element.component.scss'], - templateUrl: './person-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type Person - */ - ], PersonListElementComponent); - return PersonListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { PersonListElementComponent }; -//# sourceMappingURL=person-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js.map deleted file mode 100644 index 0a295b1b86..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/person/person-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"person-list-element.component.js","sourceRoot":"","sources":["person-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAgD,sDAAyC;IAHzF;;OAEG;IACH;;IACA,CAAC;IADY,0BAA0B;QATtC,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC;QAC/C,SAAS,CAAC;YACT,QAAQ,EAAE,wBAAwB;YAClC,SAAS,EAAE,CAAC,sCAAsC,CAAC;YACnD,WAAW,EAAE,sCAAsC;SACpD,CAAC;QACF;;WAEG;OACU,0BAA0B,CACtC;IAAD,iCAAC;CAAA,AADD,CAAgD,yCAAyC,GACxF;SADY,0BAA0B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js deleted file mode 100644 index 5d1e6d9769..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { Component } from '@angular/core'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -import { MetadataRepresentationType } from '../../../../../core/shared/metadata-representation/metadata-representation.model'; -var PersonMetadataListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(PersonMetadataListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type Person - */ - function PersonMetadataListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - PersonMetadataListElementComponent = tslib_1.__decorate([ - rendersItemType('Person', ItemViewMode.Element, MetadataRepresentationType.Item), - Component({ - selector: 'ds-person-metadata-list-element', - templateUrl: './person-metadata-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type Person - */ - ], PersonMetadataListElementComponent); - return PersonMetadataListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { PersonMetadataListElementComponent }; -//# sourceMappingURL=person-metadata-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js.map deleted file mode 100644 index ba1b185a5e..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/person/person-metadata-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"person-metadata-list-element.component.js","sourceRoot":"","sources":["person-metadata-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAC/G,OAAO,EAAE,0BAA0B,EAAE,MAAM,kFAAkF,CAAC;AAU9H;IAAwD,8DAAyC;IAHjG;;OAEG;IACH;;IACA,CAAC;IADY,kCAAkC;QAR9C,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAO,EAAE,0BAA0B,CAAC,IAAI,CAAC;QAChF,SAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,WAAW,EAAE,+CAA+C;SAC7D,CAAC;QACF;;WAEG;OACU,kCAAkC,CAC9C;IAAD,yCAAC;CAAA,AADD,CAAwD,yCAAyC,GAChG;SADY,kCAAkC"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js deleted file mode 100644 index f0dba4162b..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -var ProjectListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ProjectListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type Project - */ - function ProjectListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - ProjectListElementComponent = tslib_1.__decorate([ - rendersItemType('Project', ItemViewMode.Element), - Component({ - selector: 'ds-project-list-element', - styleUrls: ['./project-list-element.component.scss'], - templateUrl: './project-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type Project - */ - ], ProjectListElementComponent); - return ProjectListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { ProjectListElementComponent }; -//# sourceMappingURL=project-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js.map deleted file mode 100644 index 2acb503cbf..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/project/project-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"project-list-element.component.js","sourceRoot":"","sources":["project-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACtF,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAW/G;IAAiD,uDAAyC;IAH1F;;OAEG;IACH;;IACA,CAAC;IADY,2BAA2B;QATvC,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC;QAChD,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF;;WAEG;OACU,2BAA2B,CACvC;IAAD,kCAAC;CAAA,AADD,CAAiD,yCAAyC,GACzF;SADY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js deleted file mode 100644 index 8d5dfcf990..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js +++ /dev/null @@ -1,28 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { DEFAULT_ITEM_TYPE, ItemViewMode, rendersItemType } from '../../../../items/item-type-decorator'; -import { TypedItemSearchResultListElementComponent } from '../typed-item-search-result-list-element.component'; -var PublicationListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(PublicationListElementComponent, _super); - /** - * The component for displaying a list element for an item of the type Publication - */ - function PublicationListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - PublicationListElementComponent = tslib_1.__decorate([ - rendersItemType('Publication', ItemViewMode.Element), - rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Element), - Component({ - selector: 'ds-publication-list-element', - styleUrls: ['./publication-list-element.component.scss'], - templateUrl: './publication-list-element.component.html' - }) - /** - * The component for displaying a list element for an item of the type Publication - */ - ], PublicationListElementComponent); - return PublicationListElementComponent; -}(TypedItemSearchResultListElementComponent)); -export { PublicationListElementComponent }; -//# sourceMappingURL=publication-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js.map deleted file mode 100644 index a123f02c67..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/publication/publication-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"publication-list-element.component.js","sourceRoot":"","sources":["publication-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACzG,OAAO,EAAE,yCAAyC,EAAE,MAAM,oDAAoD,CAAC;AAY/G;IAAqD,2DAAyC;IAH9F;;OAEG;IACH;;IACA,CAAC;IADY,+BAA+B;QAV3C,eAAe,CAAC,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC;QACpD,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,OAAO,CAAC;QACxD,SAAS,CAAC;YACT,QAAQ,EAAE,6BAA6B;YACvC,SAAS,EAAE,CAAC,2CAA2C,CAAC;YACxD,WAAW,EAAE,2CAA2C;SACzD,CAAC;QACF;;WAEG;OACU,+BAA+B,CAC3C;IAAD,sCAAC;CAAA,AADD,CAAqD,yCAAyC,GAC7F;SADY,+BAA+B"} \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js b/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js deleted file mode 100644 index db22dc3493..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { hasValue } from '../../../empty.util'; -import { ITEM } from '../../../items/switcher/item-type-switcher.component'; -import { TruncatableService } from '../../../truncatable/truncatable.service'; -import { SearchResultListElementComponent } from '../../search-result-list-element/search-result-list-element.component'; -import { MetadataMap } from '../../../../core/shared/metadata.models'; -/** - * A generic component for displaying item list elements - */ -var TypedItemSearchResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(TypedItemSearchResultListElementComponent, _super); - function TypedItemSearchResultListElementComponent(truncatableService, obj) { - var _this = _super.call(this, undefined, truncatableService) || this; - _this.truncatableService = truncatableService; - _this.obj = obj; - if (hasValue(obj.indexableObject)) { - _this.object = obj; - _this.dso = _this.object.indexableObject; - } - else { - _this.object = { - indexableObject: obj, - hitHighlights: new MetadataMap() - }; - _this.dso = obj; - } - _this.item = _this.dso; - return _this; - } - TypedItemSearchResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-search-result', - template: '' - }), - tslib_1.__param(1, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [TruncatableService, Object]) - ], TypedItemSearchResultListElementComponent); - return TypedItemSearchResultListElementComponent; -}(SearchResultListElementComponent)); -export { TypedItemSearchResultListElementComponent }; -//# sourceMappingURL=typed-item-search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js.map b/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js.map deleted file mode 100644 index 366db8595b..0000000000 --- a/src/app/shared/object-list/item-list-element/item-types/typed-item-search-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"typed-item-search-result-list-element.component.js","sourceRoot":"","sources":["typed-item-search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,sDAAsD,CAAC;AAE5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,gCAAgC,EAAE,MAAM,uEAAuE,CAAC;AACzH,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAEtE;;GAEG;AAKH;IAA+D,qEAAwD;IAGrH,mDACY,kBAAsC,EAC3B,GAA4B;QAFnD,YAIE,kBAAM,SAAS,EAAE,kBAAkB,CAAC,SAYrC;QAfW,wBAAkB,GAAlB,kBAAkB,CAAoB;QAC3B,SAAG,GAAH,GAAG,CAAyB;QAGjD,IAAI,QAAQ,CAAE,GAAW,CAAC,eAAe,CAAC,EAAE;YAC1C,KAAI,CAAC,MAAM,GAAG,GAAuB,CAAC;YACtC,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;SACxC;aAAM;YACL,KAAI,CAAC,MAAM,GAAG;gBACZ,eAAe,EAAE,GAAW;gBAC5B,aAAa,EAAE,IAAI,WAAW,EAAE;aACjC,CAAC;YACF,KAAI,CAAC,GAAG,GAAG,GAAW,CAAC;SACxB;QACD,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,GAAG,CAAC;;IACvB,CAAC;IAnBU,yCAAyC;QAJrD,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,QAAQ,EAAE,EAAE;SACb,CAAC;QAMG,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;iDADiB,kBAAkB;OAJvC,yCAAyC,CAoBrD;IAAD,gDAAC;CAAA,AApBD,CAA+D,gCAAgC,GAoB9F;SApBY,yCAAyC"} \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js b/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js deleted file mode 100644 index 56f2a9fd1c..0000000000 --- a/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { MetadataRepresentationType } from '../../../../core/shared/metadata-representation/metadata-representation.model'; -import { Component } from '@angular/core'; -import { MetadataRepresentationListElementComponent } from '../metadata-representation-list-element.component'; -import { DEFAULT_ITEM_TYPE, ItemViewMode, rendersItemType } from '../../../items/item-type-decorator'; -var ItemMetadataListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemMetadataListElementComponent, _super); - function ItemMetadataListElementComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * The view-mode we're currently on - * @type {ElementViewMode} - */ - _this.viewMode = ItemViewMode.Element; - return _this; - } - ItemMetadataListElementComponent = tslib_1.__decorate([ - rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Metadata, MetadataRepresentationType.Item), - Component({ - selector: 'ds-item-metadata-list-element', - templateUrl: './item-metadata-list-element.component.html' - }) - /** - * A component for displaying MetadataRepresentation objects in the form of items - * It will send the MetadataRepresentation object along with ElementViewMode.SetElement to the ItemTypeSwitcherComponent, - * which will in his turn decide how to render the item as metadata. - */ - ], ItemMetadataListElementComponent); - return ItemMetadataListElementComponent; -}(MetadataRepresentationListElementComponent)); -export { ItemMetadataListElementComponent }; -//# sourceMappingURL=item-metadata-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js.map b/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js.map deleted file mode 100644 index 93846918fa..0000000000 --- a/src/app/shared/object-list/metadata-representation-list-element/item/item-metadata-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-metadata-list-element.component.js","sourceRoot":"","sources":["item-metadata-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,+EAA+E,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,0CAA0C,EAAE,MAAM,mDAAmD,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAYtG;IAAsD,4DAA0C;IAVhG;QAAA,qEAgBC;QALC;;;WAGG;QACH,cAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;;IAClC,CAAC;IANY,gCAAgC;QAV5C,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,EAAE,0BAA0B,CAAC,IAAI,CAAC;QAC1F,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,WAAW,EAAE,6CAA6C;SAC3D,CAAC;QACF;;;;WAIG;OACU,gCAAgC,CAM5C;IAAD,uCAAC;CAAA,AAND,CAAsD,0CAA0C,GAM/F;SANY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js b/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js deleted file mode 100644 index 1d17a0463d..0000000000 --- a/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { ITEM } from '../../items/switcher/item-type-switcher.component'; -var MetadataRepresentationListElementComponent = /** @class */ (function () { - function MetadataRepresentationListElementComponent(metadataRepresentation) { - this.metadataRepresentation = metadataRepresentation; - } - MetadataRepresentationListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-metadata-representation-list-element', - template: '' - }) - /** - * An abstract class for displaying a single MetadataRepresentation - */ - , - tslib_1.__param(0, Inject(ITEM)), - tslib_1.__metadata("design:paramtypes", [Object]) - ], MetadataRepresentationListElementComponent); - return MetadataRepresentationListElementComponent; -}()); -export { MetadataRepresentationListElementComponent }; -//# sourceMappingURL=metadata-representation-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js.map b/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js.map deleted file mode 100644 index 672eef12dc..0000000000 --- a/src/app/shared/object-list/metadata-representation-list-element/metadata-representation-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"metadata-representation-list-element.component.js","sourceRoot":"","sources":["metadata-representation-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,IAAI,EAAE,MAAM,mDAAmD,CAAC;AASzE;IACE,oDAAiC,sBAA8C;QAA9C,2BAAsB,GAAtB,sBAAsB,CAAwB;IAC/E,CAAC;IAFU,0CAA0C;QAPtD,SAAS,CAAC;YACT,QAAQ,EAAE,yCAAyC;YACnD,QAAQ,EAAE,EAAE;SACb,CAAC;QACF;;WAEG;;QAEY,mBAAA,MAAM,CAAC,IAAI,CAAC,CAAA;;OADd,0CAA0C,CAGtD;IAAD,iDAAC;CAAA,AAHD,IAGC;SAHY,0CAA0C"} \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js b/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js deleted file mode 100644 index 3cb7ab9598..0000000000 --- a/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { MetadataRepresentationType } from '../../../../core/shared/metadata-representation/metadata-representation.model'; -import { Component } from '@angular/core'; -import { MetadataRepresentationListElementComponent } from '../metadata-representation-list-element.component'; -import { DEFAULT_ITEM_TYPE, ItemViewMode, rendersItemType } from '../../../items/item-type-decorator'; -var PlainTextMetadataListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(PlainTextMetadataListElementComponent, _super); - /** - * A component for displaying MetadataRepresentation objects in the form of plain text - * It will simply use the value retrieved from MetadataRepresentation.getValue() to display as plain text - */ - function PlainTextMetadataListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - PlainTextMetadataListElementComponent = tslib_1.__decorate([ - rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Metadata, MetadataRepresentationType.PlainText) - // For now, authority controlled fields are rendered the same way as plain text fields - , - rendersItemType(DEFAULT_ITEM_TYPE, ItemViewMode.Metadata, MetadataRepresentationType.AuthorityControlled), - Component({ - selector: 'ds-plain-text-metadata-list-element', - templateUrl: './plain-text-metadata-list-element.component.html' - }) - /** - * A component for displaying MetadataRepresentation objects in the form of plain text - * It will simply use the value retrieved from MetadataRepresentation.getValue() to display as plain text - */ - ], PlainTextMetadataListElementComponent); - return PlainTextMetadataListElementComponent; -}(MetadataRepresentationListElementComponent)); -export { PlainTextMetadataListElementComponent }; -//# sourceMappingURL=plain-text-metadata-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js.map b/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js.map deleted file mode 100644 index 6bfb245e0e..0000000000 --- a/src/app/shared/object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"plain-text-metadata-list-element.component.js","sourceRoot":"","sources":["plain-text-metadata-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,+EAA+E,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,0CAA0C,EAAE,MAAM,mDAAmD,CAAC;AAC/G,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAatG;IAA2D,iEAA0C;IAJrG;;;OAGG;IACH;;IACA,CAAC;IADY,qCAAqC;QAXjD,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,EAAE,0BAA0B,CAAC,SAAS,CAAC;QAChG,sFAAsF;;QACrF,eAAe,CAAC,iBAAiB,EAAE,YAAY,CAAC,QAAQ,EAAE,0BAA0B,CAAC,mBAAmB,CAAC;QACzG,SAAS,CAAC;YACT,QAAQ,EAAE,qCAAqC;YAC/C,WAAW,EAAE,mDAAmD;SACjE,CAAC;QACF;;;WAGG;OACU,qCAAqC,CACjD;IAAD,4CAAC;CAAA,AADD,CAA2D,0CAA0C,GACpG;SADY,qCAAqC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js deleted file mode 100644 index b7d1d5b283..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js +++ /dev/null @@ -1,57 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { Location, LocationStrategy, PathLocationStrategy } from '@angular/common'; -import { find } from 'rxjs/operators'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; -import { isNotUndefined } from '../../../empty.util'; -import { ClaimedTask } from '../../../../core/tasks/models/claimed-task-object.model'; -import { ClaimedTaskMyDSpaceResult } from '../../../object-collection/shared/claimed-task-my-dspace-result.model'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders claimed task object for the mydspace result in the list view. - */ -var ClaimedMyDSpaceResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ClaimedMyDSpaceResultListElementComponent, _super); - function ClaimedMyDSpaceResultListElementComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * A boolean representing if to show submitter information - */ - _this.showSubmitter = true; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.VALIDATION; - return _this; - } - /** - * Initialize all instance variables - */ - ClaimedMyDSpaceResultListElementComponent.prototype.ngOnInit = function () { - this.initWorkflowItem(this.dso.workflowitem); - }; - /** - * Retrieve workflowitem from result object - */ - ClaimedMyDSpaceResultListElementComponent.prototype.initWorkflowItem = function (wfi$) { - var _this = this; - wfi$.pipe(find(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); })).subscribe(function (rd) { - _this.workflowitem = rd.payload; - }); - }; - ClaimedMyDSpaceResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-claimed-my-dspace-result-list-element', - styleUrls: ['../my-dspace-result-list-element.component.scss'], - templateUrl: './claimed-my-dspace-result-list-element.component.html', - providers: [Location, { provide: LocationStrategy, useClass: PathLocationStrategy }] - }), - renderElementsFor(ClaimedTaskMyDSpaceResult, SetViewMode.List), - renderElementsFor(ClaimedTask, SetViewMode.List) - ], ClaimedMyDSpaceResultListElementComponent); - return ClaimedMyDSpaceResultListElementComponent; -}(MyDSpaceResultListElementComponent)); -export { ClaimedMyDSpaceResultListElementComponent }; -//# sourceMappingURL=claimed-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js.map deleted file mode 100644 index 6c4568c70f..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/claimed-my-dspace-result/claimed-my-dspace-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"claimed-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["claimed-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAGnF,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAGjG,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,yDAAyD,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uEAAuE,CAAC;AAClH,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAUH;IAA+D,qEAA0E;IATzI;QAAA,qEA2CC;QAhCC;;WAEG;QACI,mBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,UAAU,CAAC;;IAwBpD,CAAC;IAjBC;;OAEG;IACH,4DAAQ,GAAR;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAoD,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,oEAAgB,GAAhB,UAAiB,IAA0C;QAA3D,iBAMC;QALC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,CACxF,CAAC,SAAS,CAAC,UAAC,EAA4B;YACvC,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAjCU,yCAAyC;QATrD,SAAS,CAAC;YACT,QAAQ,EAAE,0CAA0C;YACpD,SAAS,EAAE,CAAC,iDAAiD,CAAC;YAC9D,WAAW,EAAE,wDAAwD;YACrE,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;SACrF,CAAC;QAED,iBAAiB,CAAC,yBAAyB,EAAE,WAAW,CAAC,IAAI,CAAC;QAC9D,iBAAiB,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC;OACpC,yCAAyC,CAkCrD;IAAD,gDAAC;CAAA,AAlCD,CAA+D,kCAAkC,GAkChG;SAlCY,yCAAyC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js b/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js deleted file mode 100644 index d7995f6703..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js +++ /dev/null @@ -1,44 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Item } from '../../../../core/shared/item.model'; -import { fadeInOut } from '../../../animations/fade'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { MyDSpaceResult } from '../../../../+my-dspace-page/my-dspace-result.model'; -/** - * This component show metadata for the given item object in the list view. - */ -var ItemListPreviewComponent = /** @class */ (function () { - function ItemListPreviewComponent() { - /** - * A boolean representing if to show submitter information - */ - this.showSubmitter = false; - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Item) - ], ItemListPreviewComponent.prototype, "item", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", MyDSpaceResult) - ], ItemListPreviewComponent.prototype, "object", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], ItemListPreviewComponent.prototype, "status", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ItemListPreviewComponent.prototype, "showSubmitter", void 0); - ItemListPreviewComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-list-preview', - styleUrls: ['item-list-preview.component.scss'], - templateUrl: 'item-list-preview.component.html', - animations: [fadeInOut] - }) - ], ItemListPreviewComponent); - return ItemListPreviewComponent; -}()); -export { ItemListPreviewComponent }; -//# sourceMappingURL=item-list-preview.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js.map deleted file mode 100644 index 64d32eb7c1..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-list-preview.component.js","sourceRoot":"","sources":["item-list-preview.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AAEpF;;GAEG;AAOH;IANA;QAuBE;;WAEG;QACM,kBAAa,GAAG,KAAK,CAAC;IAEjC,CAAC;IAjBU;QAAR,KAAK,EAAE;0CAAO,IAAI;0DAAC;IAKX;QAAR,KAAK,EAAE;0CAAS,cAAc;4DAAM;IAK5B;QAAR,KAAK,EAAE;;4DAAgC;IAK/B;QAAR,KAAK,EAAE;;mEAAuB;IApBpB,wBAAwB;QANpC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,kCAAkC,CAAC;YAC/C,WAAW,EAAE,kCAAkC;YAC/C,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC;OACW,wBAAwB,CAsBpC;IAAD,+BAAC;CAAA,AAtBD,IAsBC;SAtBY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js deleted file mode 100644 index d5ca8c4e14..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js +++ /dev/null @@ -1,32 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; -import { ItemMyDSpaceResult } from '../../../object-collection/shared/item-my-dspace-result.model'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders item object for the mydspace result in the list view. - */ -var ItemMyDSpaceResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemMyDSpaceResultListElementComponent, _super); - function ItemMyDSpaceResultListElementComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.ARCHIVED; - return _this; - } - ItemMyDSpaceResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-workspaceitem-my-dspace-result-list-element', - styleUrls: ['../my-dspace-result-list-element.component.scss', './item-my-dspace-result-list-element.component.scss'], - templateUrl: './item-my-dspace-result-list-element.component.html' - }), - renderElementsFor(ItemMyDSpaceResult, SetViewMode.List) - ], ItemMyDSpaceResultListElementComponent); - return ItemMyDSpaceResultListElementComponent; -}(MyDSpaceResultListElementComponent)); -export { ItemMyDSpaceResultListElementComponent }; -//# sourceMappingURL=item-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js.map deleted file mode 100644 index a9a3cadd53..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/item-my-dspace-result/item-my-dspace-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["item-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAEjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,+DAA+D,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAQH;IAA4D,kEAA4D;IAPxH;QAAA,qEAcC;QALC;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IAElD,CAAC;IAPY,sCAAsC;QAPlD,SAAS,CAAC;YACT,QAAQ,EAAE,gDAAgD;YAC1D,SAAS,EAAE,CAAC,iDAAiD,EAAE,qDAAqD,CAAC;YACrH,WAAW,EAAE,qDAAqD;SACnE,CAAC;QAED,iBAAiB,CAAC,kBAAkB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC3C,sCAAsC,CAOlD;IAAD,6CAAC;CAAA,AAPD,CAA4D,kCAAkC,GAO7F;SAPY,sCAAsC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js deleted file mode 100644 index 4482b5a481..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js +++ /dev/null @@ -1,51 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { Metadata } from '../../../core/shared/metadata.utils'; -var MyDSpaceResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(MyDSpaceResultListElementComponent, _super); - /** - * Initialize instance variables - * - * @param {ListableObject} listable - * @param {number} index - */ - function MyDSpaceResultListElementComponent(listable, index) { - var _this = _super.call(this, listable) || this; - _this.listable = listable; - _this.index = index; - _this.dso = _this.object.indexableObject; - _this.dsoIndex = _this.index; - return _this; - } - /** - * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string[]} the matching string values or an empty array. - */ - MyDSpaceResultListElementComponent.prototype.allMetadataValues = function (keyOrKeys) { - return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys); - }; - /** - * Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string} the first matching string value, or `undefined`. - */ - MyDSpaceResultListElementComponent.prototype.firstMetadataValue = function (keyOrKeys) { - return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys); - }; - MyDSpaceResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-my-dspace-result-list-element', - template: "" - }), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__param(1, Inject('indexElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object, Number]) - ], MyDSpaceResultListElementComponent); - return MyDSpaceResultListElementComponent; -}(AbstractListableElementComponent)); -export { MyDSpaceResultListElementComponent }; -//# sourceMappingURL=my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js.map deleted file mode 100644 index dae604983a..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/my-dspace-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"my-dspace-result-list-element.component.js","sourceRoot":"","sources":["my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAGhJ,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAM/D;IAA6G,8DAAmC;IAY9I;;;;;OAKG;IACH,4CAA2D,QAAwB,EACzB,KAAa;QADvE,YAEE,kBAAM,QAAQ,CAAC,SAGhB;QAL0D,cAAQ,GAAR,QAAQ,CAAgB;QACzB,WAAK,GAAL,KAAK,CAAQ;QAErE,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;QACvC,KAAI,CAAC,QAAQ,GAAG,KAAI,CAAC,KAAK,CAAC;;IAC7B,CAAC;IAED;;;;;OAKG;IACH,8DAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;;;OAKG;IACH,+DAAkB,GAAlB,UAAmB,SAA4B;QAC7C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IA3CU,kCAAkC;QAJ9C,SAAS,CAAC;YACT,QAAQ,EAAE,kCAAkC;YAC5C,QAAQ,EAAE,EAAE;SACb,CAAC;QAmBoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;QAC/B,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;;OAnBvC,kCAAkC,CA6C9C;IAAD,yCAAC;CAAA,AA7CD,CAA6G,gCAAgC,GA6C5I;SA7CY,kCAAkC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js deleted file mode 100644 index d14662ebcd..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js +++ /dev/null @@ -1,60 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { find } from 'rxjs/operators'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; -import { isNotUndefined } from '../../../empty.util'; -import { PoolTask } from '../../../../core/tasks/models/pool-task-object.model'; -import { PoolTaskMyDSpaceResult } from '../../../object-collection/shared/pool-task-my-dspace-result.model'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders pool task object for the mydspace result in the list view. - */ -var PoolMyDSpaceResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(PoolMyDSpaceResultListElementComponent, _super); - function PoolMyDSpaceResultListElementComponent(listable, index) { - var _this = _super.call(this, listable, index) || this; - _this.listable = listable; - _this.index = index; - /** - * A boolean representing if to show submitter information - */ - _this.showSubmitter = true; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.WAITING_CONTROLLER; - return _this; - } - /** - * Initialize all instance variables - */ - PoolMyDSpaceResultListElementComponent.prototype.ngOnInit = function () { - this.initWorkflowItem(this.dso.workflowitem); - }; - /** - * Retrieve workflowitem from result object - */ - PoolMyDSpaceResultListElementComponent.prototype.initWorkflowItem = function (wfi$) { - var _this = this; - wfi$.pipe(find(function (rd) { return (rd.hasSucceeded && isNotUndefined(rd.payload)); })).subscribe(function (rd) { - _this.workflowitem = rd.payload; - }); - }; - PoolMyDSpaceResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-pool-my-dspace-result-list-element', - styleUrls: ['../my-dspace-result-list-element.component.scss'], - templateUrl: './pool-my-dspace-result-list-element.component.html', - }), - renderElementsFor(PoolTaskMyDSpaceResult, SetViewMode.List), - renderElementsFor(PoolTask, SetViewMode.List), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__param(1, Inject('indexElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object, Number]) - ], PoolMyDSpaceResultListElementComponent); - return PoolMyDSpaceResultListElementComponent; -}(MyDSpaceResultListElementComponent)); -export { PoolMyDSpaceResultListElementComponent }; -//# sourceMappingURL=pool-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js.map deleted file mode 100644 index a67a5fd126..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/pool-my-dspace-result/pool-my-dspace-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pool-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["pool-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAGjG,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAE,QAAQ,EAAE,MAAM,sDAAsD,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,oEAAoE,CAAC;AAC5G,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAA4D,kEAAoE;IAiB9H,gDAAoD,QAAwB,EACzB,KAAa;QADhE,YAEE,kBAAM,QAAQ,EAAE,KAAK,CAAC,SACvB;QAHmD,cAAQ,GAAR,QAAQ,CAAgB;QACzB,WAAK,GAAL,KAAK,CAAQ;QAhBhE;;WAEG;QACI,mBAAa,GAAG,IAAI,CAAC;QAE5B;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,kBAAkB,CAAC;;IAU1D,CAAC;IAED;;OAEG;IACH,yDAAQ,GAAR;QACE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,YAAoD,CAAC,CAAC;IACvF,CAAC;IAED;;OAEG;IACH,iEAAgB,GAAhB,UAAiB,IAA0C;QAA3D,iBAMC;QALC,IAAI,CAAC,IAAI,CACP,IAAI,CAAC,UAAC,EAA4B,IAAK,OAAA,CAAC,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA/C,CAA+C,CAAC,CACxF,CAAC,SAAS,CAAC,UAAC,EAA4B;YACvC,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAtCU,sCAAsC;QARlD,SAAS,CAAC;YACT,QAAQ,EAAE,uCAAuC;YACjD,SAAS,EAAE,CAAC,iDAAiD,CAAC;YAC9D,WAAW,EAAE,qDAAqD;SACnE,CAAC;QAED,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC,IAAI,CAAC;QAC3D,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC;QAkB/B,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;QAC/B,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;;OAlBhC,sCAAsC,CAuClD;IAAD,6CAAC;CAAA,AAvCD,CAA4D,kCAAkC,GAuC7F;SAvCY,sCAAsC"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js deleted file mode 100644 index 3dbd5ebcf6..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js +++ /dev/null @@ -1,51 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { find } from 'rxjs/operators'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; -import { isNotUndefined } from '../../../empty.util'; -import { WorkflowitemMyDSpaceResult } from '../../../object-collection/shared/workflowitem-my-dspace-result.model'; -import { Workflowitem } from '../../../../core/submission/models/workflowitem.model'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders workflowitem object for the mydspace result in the list view. - */ -var WorkflowitemMyDSpaceResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(WorkflowitemMyDSpaceResultListElementComponent, _super); - function WorkflowitemMyDSpaceResultListElementComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.WORKFLOW; - return _this; - } - /** - * Initialize all instance variables - */ - WorkflowitemMyDSpaceResultListElementComponent.prototype.ngOnInit = function () { - this.initItem(this.dso.item); - }; - /** - * Retrieve item from result object - */ - WorkflowitemMyDSpaceResultListElementComponent.prototype.initItem = function (item$) { - var _this = this; - item$.pipe(find(function (rd) { return rd.hasSucceeded && isNotUndefined(rd.payload); })).subscribe(function (rd) { - _this.item = rd.payload; - }); - }; - WorkflowitemMyDSpaceResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-workflowitem-my-dspace-result-list-element', - styleUrls: ['../my-dspace-result-list-element.component.scss'], - templateUrl: './workflowitem-my-dspace-result-list-element.component.html', - }), - renderElementsFor(WorkflowitemMyDSpaceResult, SetViewMode.List), - renderElementsFor(Workflowitem, SetViewMode.List) - ], WorkflowitemMyDSpaceResultListElementComponent); - return WorkflowitemMyDSpaceResultListElementComponent; -}(MyDSpaceResultListElementComponent)); -export { WorkflowitemMyDSpaceResultListElementComponent }; -//# sourceMappingURL=workflowitem-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js.map deleted file mode 100644 index cd921c06f2..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/workflowitem-my-dspace-result/workflowitem-my-dspace-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workflowitem-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["workflowitem-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAGjG,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uEAAuE,CAAC;AACnH,OAAO,EAAE,YAAY,EAAE,MAAM,uDAAuD,CAAC;AAErF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AASH;IAAoE,0EAA4E;IARhJ;QAAA,qEAsCC;QAvBC;;WAEG;QACI,YAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IAoBlD,CAAC;IAlBC;;OAEG;IACH,iEAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAoC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,iEAAQ,GAAR,UAAS,KAAmC;QAA5C,iBAMC;QALC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC9E,CAAC,SAAS,CAAC,UAAC,EAAoB;YAC/B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IA5BU,8CAA8C;QAR1D,SAAS,CAAC;YACT,QAAQ,EAAE,+CAA+C;YACzD,SAAS,EAAE,CAAC,iDAAiD,CAAC;YAC9D,WAAW,EAAE,6DAA6D;SAC3E,CAAC;QAED,iBAAiB,CAAC,0BAA0B,EAAE,WAAW,CAAC,IAAI,CAAC;QAC/D,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC;OACrC,8CAA8C,CA8B1D;IAAD,qDAAC;CAAA,AA9BD,CAAoE,kCAAkC,GA8BrG;SA9BY,8CAA8C"} \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js b/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js deleted file mode 100644 index 7f2410b377..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js +++ /dev/null @@ -1,49 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { find } from 'rxjs/operators'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { MyDSpaceResultListElementComponent, } from '../my-dspace-result-list-element.component'; -import { WorkspaceitemMyDSpaceResult } from '../../../object-collection/shared/workspaceitem-my-dspace-result.model'; -import { isNotUndefined } from '../../../empty.util'; -import { MyDspaceItemStatusType } from '../../../object-collection/shared/mydspace-item-status/my-dspace-item-status-type'; -import { SetViewMode } from '../../../view-mode'; -/** - * This component renders workspaceitem object for the mydspace result in the list view. - */ -var WorkspaceitemMyDSpaceResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(WorkspaceitemMyDSpaceResultListElementComponent, _super); - function WorkspaceitemMyDSpaceResultListElementComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Represent item's status - */ - _this.status = MyDspaceItemStatusType.WORKSPACE; - return _this; - } - /** - * Initialize all instance variables - */ - WorkspaceitemMyDSpaceResultListElementComponent.prototype.ngOnInit = function () { - this.initItem(this.dso.item); - }; - /** - * Retrieve item from result object - */ - WorkspaceitemMyDSpaceResultListElementComponent.prototype.initItem = function (item$) { - var _this = this; - item$.pipe(find(function (rd) { return rd.hasSucceeded && isNotUndefined(rd.payload); })).subscribe(function (rd) { - _this.item = rd.payload; - }); - }; - WorkspaceitemMyDSpaceResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-workspaceitem-my-dspace-result-list-element', - styleUrls: ['../my-dspace-result-list-element.component.scss', './workspaceitem-my-dspace-result-list-element.component.scss'], - templateUrl: './workspaceitem-my-dspace-result-list-element.component.html', - }), - renderElementsFor(WorkspaceitemMyDSpaceResult, SetViewMode.List) - ], WorkspaceitemMyDSpaceResultListElementComponent); - return WorkspaceitemMyDSpaceResultListElementComponent; -}(MyDSpaceResultListElementComponent)); -export { WorkspaceitemMyDSpaceResultListElementComponent }; -//# sourceMappingURL=workspaceitem-my-dspace-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js.map b/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js.map deleted file mode 100644 index ef3c4f780e..0000000000 --- a/src/app/shared/object-list/my-dspace-result-list-element/workspaceitem-my-dspace-result/workspaceitem-my-dspace-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"workspaceitem-my-dspace-result-list-element.component.js","sourceRoot":"","sources":["workspaceitem-my-dspace-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,GAAG,MAAM,4CAA4C,CAAC;AAGjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,wEAAwE,CAAC;AAErH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mFAAmF,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAQH;IAAqE,2EAA8E;IAPnJ;QAAA,qEAoCC;QAtBC;;WAEG;QACH,YAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC;;IAmB5C,CAAC;IAjBC;;OAEG;IACH,kEAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAoC,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,kEAAQ,GAAR,UAAS,KAAmC;QAA5C,iBAMC;QALC,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,UAAC,EAAoB,IAAK,OAAA,EAAE,CAAC,YAAY,IAAI,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,EAA7C,CAA6C,CAAC,CAC9E,CAAC,SAAS,CAAC,UAAC,EAAoB;YAC/B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IA5BU,+CAA+C;QAP3D,SAAS,CAAC;YACT,QAAQ,EAAE,gDAAgD;YAC1D,SAAS,EAAE,CAAC,iDAAiD,EAAE,8DAA8D,CAAC;YAC9H,WAAW,EAAE,8DAA8D;SAC5E,CAAC;QAED,iBAAiB,CAAC,2BAA2B,EAAE,WAAW,CAAC,IAAI,CAAC;OACpD,+CAA+C,CA6B3D;IAAD,sDAAC;CAAA,AA7BD,CAAqE,kCAAkC,GA6BtG;SA7BY,+CAA+C"} \ No newline at end of file diff --git a/src/app/shared/object-list/object-list.component.js b/src/app/shared/object-list/object-list.component.js deleted file mode 100644 index 84aa1df651..0000000000 --- a/src/app/shared/object-list/object-list.component.js +++ /dev/null @@ -1,127 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; -import { SortOptions } from '../../core/cache/models/sort-options.model'; -import { RemoteData } from '../../core/data/remote-data'; -import { fadeIn } from '../animations/fade'; -import { PaginationComponentOptions } from '../pagination/pagination-component-options.model'; -var ObjectListComponent = /** @class */ (function () { - function ObjectListComponent() { - this.hasBorder = false; - this.hideGear = false; - this.hidePagerWhenSinglePage = true; - /** - * An event fired when the page is changed. - * Event's payload equals to the newly selected page. - */ - this.change = new EventEmitter(); - /** - * An event fired when the page is changed. - * Event's payload equals to the newly selected page. - */ - this.pageChange = new EventEmitter(); - /** - * An event fired when the page wsize is changed. - * Event's payload equals to the newly selected page size. - */ - this.pageSizeChange = new EventEmitter(); - /** - * An event fired when the sort direction is changed. - * Event's payload equals to the newly selected sort direction. - */ - this.sortDirectionChange = new EventEmitter(); - this.paginationChange = new EventEmitter(); - /** - * An event fired when the sort field is changed. - * Event's payload equals to the newly selected sort field. - */ - this.sortFieldChange = new EventEmitter(); - this.data = {}; - } - Object.defineProperty(ObjectListComponent.prototype, "objects", { - get: function () { - return this._objects; - }, - set: function (objects) { - this._objects = objects; - }, - enumerable: true, - configurable: true - }); - ObjectListComponent.prototype.onPageChange = function (event) { - this.pageChange.emit(event); - }; - ObjectListComponent.prototype.onPageSizeChange = function (event) { - this.pageSizeChange.emit(event); - }; - ObjectListComponent.prototype.onSortDirectionChange = function (event) { - this.sortDirectionChange.emit(event); - }; - ObjectListComponent.prototype.onSortFieldChange = function (event) { - this.sortFieldChange.emit(event); - }; - ObjectListComponent.prototype.onPaginationChange = function (event) { - this.paginationChange.emit(event); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", PaginationComponentOptions) - ], ObjectListComponent.prototype, "config", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SortOptions) - ], ObjectListComponent.prototype, "sortConfig", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectListComponent.prototype, "hasBorder", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectListComponent.prototype, "hideGear", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ObjectListComponent.prototype, "hidePagerWhenSinglePage", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", RemoteData), - tslib_1.__metadata("design:paramtypes", [RemoteData]) - ], ObjectListComponent.prototype, "objects", null); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectListComponent.prototype, "change", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectListComponent.prototype, "pageChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectListComponent.prototype, "pageSizeChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectListComponent.prototype, "sortDirectionChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectListComponent.prototype, "paginationChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], ObjectListComponent.prototype, "sortFieldChange", void 0); - ObjectListComponent = tslib_1.__decorate([ - Component({ - changeDetection: ChangeDetectionStrategy.Default, - encapsulation: ViewEncapsulation.Emulated, - selector: 'ds-object-list', - styleUrls: ['./object-list.component.scss'], - templateUrl: './object-list.component.html', - animations: [fadeIn] - }) - ], ObjectListComponent); - return ObjectListComponent; -}()); -export { ObjectListComponent }; -//# sourceMappingURL=object-list.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/object-list.component.js.map b/src/app/shared/object-list/object-list.component.js.map deleted file mode 100644 index 83763343c8..0000000000 --- a/src/app/shared/object-list/object-list.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-list.component.js","sourceRoot":"","sources":["object-list.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js b/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js deleted file mode 100644 index eaa02851f0..0000000000 --- a/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { SearchResultListElementComponent } from '../search-result-list-element.component'; -import { SetViewMode } from '../../../view-mode'; -import { CollectionSearchResult } from '../../../object-collection/shared/collection-search-result.model'; -var CollectionSearchResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(CollectionSearchResultListElementComponent, _super); - function CollectionSearchResultListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - CollectionSearchResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-collection-search-result-list-element', - styleUrls: ['../search-result-list-element.component.scss', 'collection-search-result-list-element.component.scss'], - templateUrl: 'collection-search-result-list-element.component.html' - }), - renderElementsFor(CollectionSearchResult, SetViewMode.List) - ], CollectionSearchResultListElementComponent); - return CollectionSearchResultListElementComponent; -}(SearchResultListElementComponent)); -export { CollectionSearchResultListElementComponent }; -//# sourceMappingURL=collection-search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js.map b/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js.map deleted file mode 100644 index 39a63f0aac..0000000000 --- a/src/app/shared/object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"collection-search-result-list-element.component.js","sourceRoot":"","sources":["collection-search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAE5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kEAAkE,CAAC;AAS1G;IAAgE,sEAAoE;IAApI;;IAAsI,CAAC;IAA1H,0CAA0C;QAPtD,SAAS,CAAC;YACT,QAAQ,EAAE,0CAA0C;YACpD,SAAS,EAAE,CAAC,8CAA8C,EAAE,sDAAsD,CAAC;YACnH,WAAW,EAAE,sDAAsD;SACpE,CAAC;QAED,iBAAiB,CAAC,sBAAsB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC/C,0CAA0C,CAAgF;IAAD,iDAAC;CAAA,AAAvI,CAAgE,gCAAgC,GAAuC;SAA1H,0CAA0C"} \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js b/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js deleted file mode 100644 index 4af8ec2869..0000000000 --- a/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js +++ /dev/null @@ -1,23 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { SearchResultListElementComponent } from '../search-result-list-element.component'; -import { SetViewMode } from '../../../view-mode'; -import { CommunitySearchResult } from '../../../object-collection/shared/community-search-result.model'; -var CommunitySearchResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(CommunitySearchResultListElementComponent, _super); - function CommunitySearchResultListElementComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - CommunitySearchResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-community-search-result-list-element', - styleUrls: ['../search-result-list-element.component.scss', 'community-search-result-list-element.component.scss'], - templateUrl: 'community-search-result-list-element.component.html' - }), - renderElementsFor(CommunitySearchResult, SetViewMode.List) - ], CommunitySearchResultListElementComponent); - return CommunitySearchResultListElementComponent; -}(SearchResultListElementComponent)); -export { CommunitySearchResultListElementComponent }; -//# sourceMappingURL=community-search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js.map b/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js.map deleted file mode 100644 index 094fe9dd17..0000000000 --- a/src/app/shared/object-list/search-result-list-element/community-search-result/community-search-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"community-search-result-list-element.component.js","sourceRoot":"","sources":["community-search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAE5F,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iEAAiE,CAAC;AASxG;IAA+D,qEAAkE;IAAjI;;IAEA,CAAC;IAFY,yCAAyC;QAPrD,SAAS,CAAC;YACT,QAAQ,EAAE,yCAAyC;YACnD,SAAS,EAAE,CAAC,8CAA8C,EAAE,qDAAqD,CAAC;YAClH,WAAW,EAAE,qDAAqD;SACnE,CAAC;QAED,iBAAiB,CAAC,qBAAqB,EAAE,WAAW,CAAC,IAAI,CAAC;OAC9C,yCAAyC,CAErD;IAAD,gDAAC;CAAA,AAFD,CAA+D,gCAAgC,GAE9F;SAFY,yCAAyC"} \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js deleted file mode 100644 index b6d7e7175f..0000000000 --- a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js +++ /dev/null @@ -1,28 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { focusBackground } from '../../../animations/focus'; -import { renderElementsFor } from '../../../object-collection/shared/dso-element-decorator'; -import { ItemSearchResult } from '../../../object-collection/shared/item-search-result.model'; -import { SetViewMode } from '../../../view-mode'; -import { SearchResultListElementComponent } from '../search-result-list-element.component'; -import { ItemViewMode } from '../../../items/item-type-decorator'; -var ItemSearchResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(ItemSearchResultListElementComponent, _super); - function ItemSearchResultListElementComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.viewMode = ItemViewMode.Element; - return _this; - } - ItemSearchResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-item-search-result-list-element', - styleUrls: ['../search-result-list-element.component.scss', 'item-search-result-list-element.component.scss'], - templateUrl: 'item-search-result-list-element.component.html', - animations: [focusBackground], - }), - renderElementsFor(ItemSearchResult, SetViewMode.List) - ], ItemSearchResultListElementComponent); - return ItemSearchResultListElementComponent; -}(SearchResultListElementComponent)); -export { ItemSearchResultListElementComponent }; -//# sourceMappingURL=item-search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js.map b/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js.map deleted file mode 100644 index a25b45ae04..0000000000 --- a/src/app/shared/object-list/search-result-list-element/item-search-result/item-search-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-search-result-list-element.component.js","sourceRoot":"","sources":["item-search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAG5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yDAAyD,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,4DAA4D,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAWlE;IAA0D,gEAAwD;IATlH;QAAA,qEAYC;QAFC,cAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;;IAElC,CAAC;IAHY,oCAAoC;QAThD,SAAS,CAAC;YACT,QAAQ,EAAE,oCAAoC;YAC9C,SAAS,EAAE,CAAC,8CAA8C,EAAE,gDAAgD,CAAC;YAC7G,WAAW,EAAE,gDAAgD;YAC7D,UAAU,EAAE,CAAC,eAAe,CAAC;SAE9B,CAAC;QAED,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,CAAC,IAAI,CAAC;OACzC,oCAAoC,CAGhD;IAAD,2CAAC;CAAA,AAHD,CAA0D,gCAAgC,GAGzF;SAHY,oCAAoC"} \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js b/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js deleted file mode 100644 index de4e3557a3..0000000000 --- a/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js +++ /dev/null @@ -1,50 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Inject } from '@angular/core'; -import { hasValue } from '../../empty.util'; -import { AbstractListableElementComponent } from '../../object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { TruncatableService } from '../../truncatable/truncatable.service'; -import { Metadata } from '../../../core/shared/metadata.utils'; -var SearchResultListElementComponent = /** @class */ (function (_super) { - tslib_1.__extends(SearchResultListElementComponent, _super); - function SearchResultListElementComponent(listable, truncatableService) { - var _this = _super.call(this, listable) || this; - _this.listable = listable; - _this.truncatableService = truncatableService; - if (hasValue(_this.object)) { - _this.dso = _this.object.indexableObject; - } - return _this; - } - /** - * Gets all matching metadata string values from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string[]} the matching string values or an empty array. - */ - SearchResultListElementComponent.prototype.allMetadataValues = function (keyOrKeys) { - return Metadata.allValues([this.object.hitHighlights, this.dso.metadata], keyOrKeys); - }; - /** - * Gets the first matching metadata string value from hitHighlights or dso metadata, preferring hitHighlights. - * - * @param {string|string[]} keyOrKeys The metadata key(s) in scope. Wildcards are supported; see [[Metadata]]. - * @returns {string} the first matching string value, or `undefined`. - */ - SearchResultListElementComponent.prototype.firstMetadataValue = function (keyOrKeys) { - return Metadata.firstValue([this.object.hitHighlights, this.dso.metadata], keyOrKeys); - }; - SearchResultListElementComponent.prototype.isCollapsed = function () { - return this.truncatableService.isCollapsed(this.dso.id); - }; - SearchResultListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-result-list-element', - template: "" - }), - tslib_1.__param(0, Inject('objectElementProvider')), - tslib_1.__metadata("design:paramtypes", [Object, TruncatableService]) - ], SearchResultListElementComponent); - return SearchResultListElementComponent; -}(AbstractListableElementComponent)); -export { SearchResultListElementComponent }; -//# sourceMappingURL=search-result-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js.map b/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js.map deleted file mode 100644 index bd607602cf..0000000000 --- a/src/app/shared/object-list/search-result-list-element/search-result-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-result-list-element.component.js","sourceRoot":"","sources":["search-result-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAKlD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,8FAA8F,CAAC;AAChJ,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAO/D;IAAyG,4DAAmC;IAG1I,0CAA2D,QAAwB,EAAY,kBAAsC;QAArI,YACE,kBAAM,QAAQ,CAAC,SAIhB;QAL0D,cAAQ,GAAR,QAAQ,CAAgB;QAAY,wBAAkB,GAAlB,kBAAkB,CAAoB;QAEnI,IAAI,QAAQ,CAAC,KAAI,CAAC,MAAM,CAAC,EAAE;YACzB,KAAI,CAAC,GAAG,GAAG,KAAI,CAAC,MAAM,CAAC,eAAe,CAAC;SACxC;;IACH,CAAC;IAED;;;;;OAKG;IACH,4DAAiB,GAAjB,UAAkB,SAA4B;QAC5C,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;;;OAKG;IACH,6DAAkB,GAAlB,UAAmB,SAA4B;QAC7C,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAED,sDAAW,GAAX;QACE,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IAhCU,gCAAgC;QAL5C,SAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,QAAQ,EAAE,EAAE;SACb,CAAC;QAKoB,mBAAA,MAAM,CAAC,uBAAuB,CAAC,CAAA;yDAAgE,kBAAkB;OAH1H,gCAAgC,CAiC5C;IAAD,uCAAC;CAAA,AAjCD,CAAyG,gCAAgC,GAiCxI;SAjCY,gCAAgC"} \ No newline at end of file diff --git a/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js b/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js deleted file mode 100644 index e44c8134cf..0000000000 --- a/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input } from '@angular/core'; -import { SetViewMode } from '../../view-mode'; -import { rendersDSOType } from '../../object-collection/shared/dso-element-decorator'; -var WrapperListElementComponent = /** @class */ (function () { - function WrapperListElementComponent(injector) { - this.injector = injector; - } - WrapperListElementComponent.prototype.ngOnInit = function () { - var _this = this; - this.objectInjector = Injector.create({ - providers: [ - { provide: 'objectElementProvider', useFactory: function () { return (_this.object); }, deps: [] }, - { provide: 'indexElementProvider', useFactory: function () { return (_this.index); }, deps: [] } - ], - parent: this.injector - }); - }; - WrapperListElementComponent.prototype.getListElement = function () { - var f = this.object.constructor; - return rendersDSOType(f, SetViewMode.List); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], WrapperListElementComponent.prototype, "object", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], WrapperListElementComponent.prototype, "index", void 0); - WrapperListElementComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-wrapper-list-element', - styleUrls: ['./wrapper-list-element.component.scss'], - templateUrl: './wrapper-list-element.component.html' - }), - tslib_1.__metadata("design:paramtypes", [Injector]) - ], WrapperListElementComponent); - return WrapperListElementComponent; -}()); -export { WrapperListElementComponent }; -//# sourceMappingURL=wrapper-list-element.component.js.map \ No newline at end of file diff --git a/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js.map b/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js.map deleted file mode 100644 index c40024ad26..0000000000 --- a/src/app/shared/object-list/wrapper-list-element/wrapper-list-element.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"wrapper-list-element.component.js","sourceRoot":"","sources":["wrapper-list-element.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAA;AAQrF;IAKE,qCAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;IAAG,CAAC;IAE1C,8CAAQ,GAAR;QAAA,iBAQC;QAPC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YAClC,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,uBAAuB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,MAAM,CAAC,EAAb,CAAa,EAAE,IAAI,EAAC,EAAE,EAAE;gBAC9E,EAAE,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,KAAK,CAAC,EAAZ,CAAY,EAAE,IAAI,EAAC,EAAE,EAAE;aAC7E;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC,CAAC;IACL,CAAC;IAED,oDAAc,GAAd;QACE,IAAM,CAAC,GAAuC,IAAI,CAAC,MAAM,CAAC,WAAiD,CAAC;QAC5G,OAAO,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAnBQ;QAAR,KAAK,EAAE;;+DAAwB;IACvB;QAAR,KAAK,EAAE;;8DAAe;IAFZ,2BAA2B;QALvC,SAAS,CAAC;YACT,QAAQ,EAAE,yBAAyB;YACnC,SAAS,EAAE,CAAC,uCAAuC,CAAC;YACpD,WAAW,EAAE,uCAAuC;SACrD,CAAC;iDAM8B,QAAQ;OAL3B,2BAA2B,CAqBvC;IAAD,kCAAC;CAAA,AArBD,IAqBC;SArBY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/object.util.js b/src/app/shared/object.util.js deleted file mode 100644 index cb41492d65..0000000000 --- a/src/app/shared/object.util.js +++ /dev/null @@ -1,58 +0,0 @@ -import * as tslib_1 from "tslib"; -import { isNotEmpty } from './empty.util'; -import { isEqual, isObject, transform } from 'lodash'; -/** - * Returns passed object without specified property - */ -export function deleteProperty(object, key) { - var _a = key, deletedKey = object[_a], otherKeys = tslib_1.__rest(object, [typeof _a === "symbol" ? _a : _a + ""]); - return otherKeys; -} -/** - * Returns true if the passed object is empty or has only empty property. - * hasOnlyEmptyProperties({}); // true - * hasOnlyEmptyProperties({a: null}); // true - * hasOnlyEmptyProperties({a: []}); // true - * hasOnlyEmptyProperties({a: [], b: {}); // true - * hasOnlyEmptyProperties({a: 'a', b: 'b'}); // false - * hasOnlyEmptyProperties({a: [], b: 'b'}); // false - */ -export function hasOnlyEmptyProperties(obj) { - var objectType = typeof obj; - if (objectType === 'object') { - if (Object.keys(obj).length === 0) { - return true; - } - else { - var result = true; - for (var key in obj) { - if (isNotEmpty(obj[key])) { - result = false; - break; - } - } - return result; - } - } -} -/** - * Returns diff from the base object. - * difference({}, {}); // {} - * difference({a: 'a', b: 'b'}, {a: 'a'}); // {b: 'b'} - * difference({a: 'a', b: {}}, {a: 'a'}); // {} - * difference({a: 'a'}, {a: 'a', b: 'b'}); // {} - */ -export function difference(object, base) { - var changes = function (o, b) { - return transform(o, function (result, value, key) { - if (!isEqual(value, b[key]) && isNotEmpty(value)) { - var resultValue = (isObject(value) && isObject(b[key])) ? changes(value, b[key]) : value; - if (!hasOnlyEmptyProperties(resultValue)) { - result[key] = resultValue; - } - } - }); - }; - return changes(object, base); -} -//# sourceMappingURL=object.util.js.map \ No newline at end of file diff --git a/src/app/shared/object.util.js.map b/src/app/shared/object.util.js.map deleted file mode 100644 index 21c70166b1..0000000000 --- a/src/app/shared/object.util.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object.util.js","sourceRoot":"","sources":["object.util.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEtD;;GAEG;AACH,MAAM,yBAAyB,MAAc,EAAE,GAAW;IACxD,IAAO,QAAK,EAAL,uBAAiB,EAAE,2EAAsB,CAAC;IACjD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,iCAAiC,GAAW;IAChD,IAAM,UAAU,GAAG,OAAO,GAAG,CAAC;IAC9B,IAAI,UAAU,KAAK,QAAQ,EAAE;QAC3B,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC;SACb;aAAM;YACL,IAAI,MAAM,GAAG,IAAI,CAAC;YAClB,KAAK,IAAM,GAAG,IAAI,GAAG,EAAE;gBACrB,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;oBACxB,MAAM,GAAG,KAAK,CAAC;oBACf,MAAM;iBACP;aACF;YACD,OAAO,MAAM,CAAC;SACf;KACF;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,qBAAqB,MAAc,EAAE,IAAY;IACrD,IAAM,OAAO,GAAG,UAAC,CAAC,EAAE,CAAC;QACnB,OAAO,SAAS,CAAC,CAAC,EAAE,UAAC,MAAM,EAAE,KAAK,EAAE,GAAG;YACrC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;gBAChD,IAAM,WAAW,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC3F,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,EAAE;oBACxC,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;iBAC3B;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,OAAO,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/pagination/pagination-component-options.model.js b/src/app/shared/pagination/pagination-component-options.model.js deleted file mode 100644 index 0c638d3eb9..0000000000 --- a/src/app/shared/pagination/pagination-component-options.model.js +++ /dev/null @@ -1,24 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgbPaginationConfig } from '@ng-bootstrap/ng-bootstrap'; -var PaginationComponentOptions = /** @class */ (function (_super) { - tslib_1.__extends(PaginationComponentOptions, _super); - function PaginationComponentOptions() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * The active page. - */ - _this.currentPage = 1; - /** - * Maximum number of pages to display. - */ - _this.maxSize = 10; - /** - * A number array that represents options for a context pagination limit. - */ - _this.pageSizeOptions = [1, 5, 10, 20, 40, 60, 80, 100]; - return _this; - } - return PaginationComponentOptions; -}(NgbPaginationConfig)); -export { PaginationComponentOptions }; -//# sourceMappingURL=pagination-component-options.model.js.map \ No newline at end of file diff --git a/src/app/shared/pagination/pagination-component-options.model.js.map b/src/app/shared/pagination/pagination-component-options.model.js.map deleted file mode 100644 index f4339e7b7e..0000000000 --- a/src/app/shared/pagination/pagination-component-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pagination-component-options.model.js","sourceRoot":"","sources":["pagination-component-options.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE;IAAgD,sDAAmB;IAAnE;QAAA,qEA2BC;QApBC;;WAEG;QACH,iBAAW,GAAG,CAAC,CAAC;QAEhB;;WAEG;QACH,aAAO,GAAG,EAAE,CAAC;QAEb;;WAEG;QACH,qBAAe,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;;IAO9D,CAAC;IAAD,iCAAC;AAAD,CAAC,AA3BD,CAAgD,mBAAmB,GA2BlE"} \ No newline at end of file diff --git a/src/app/shared/pagination/pagination.component.js b/src/app/shared/pagination/pagination.component.js deleted file mode 100644 index 42733d0fc3..0000000000 --- a/src/app/shared/pagination/pagination.component.js +++ /dev/null @@ -1,474 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { Observable } from 'rxjs'; -import { isNumeric } from 'rxjs/internal-compatibility'; -import { isEqual, isObject, transform } from 'lodash'; -import { HostWindowService } from '../host-window.service'; -import { PaginationComponentOptions } from './pagination-component-options.model'; -import { SortDirection, SortOptions } from '../../core/cache/models/sort-options.model'; -import { hasValue, isNotEmpty } from '../empty.util'; -import { difference } from '../object.util'; -/** - * The default pagination controls component. - */ -var PaginationComponent = /** @class */ (function () { - /** - * @param route - * Route is a singleton service provided by Angular. - * @param router - * Router is a singleton service provided by Angular. - */ - function PaginationComponent(cdRef, route, router, hostWindowService) { - this.cdRef = cdRef; - this.route = route; - this.router = router; - this.hostWindowService = hostWindowService; - /** - * Page state of a Remote paginated objects. - */ - this.pageInfoState = undefined; - /** - * An event fired when the page is changed. - * Event's payload equals to the newly selected page. - */ - this.pageChange = new EventEmitter(); - /** - * An event fired when the page wsize is changed. - * Event's payload equals to the newly selected page size. - */ - this.pageSizeChange = new EventEmitter(); - /** - * An event fired when the sort direction is changed. - * Event's payload equals to the newly selected sort direction. - */ - this.sortDirectionChange = new EventEmitter(); - /** - * An event fired when the sort field is changed. - * Event's payload equals to the newly selected sort field. - */ - this.sortFieldChange = new EventEmitter(); - /** - * An event fired when the pagination is changed. - * Event's payload equals to the newly selected sort field. - */ - this.paginationChange = new EventEmitter(); - /** - * Option for hiding the pagination detail - */ - this.hidePaginationDetail = false; - /** - * Option for hiding the gear - */ - this.hideGear = false; - /** - * Option for hiding the pager when there is less than 2 pages - */ - this.hidePagerWhenSinglePage = true; - /** - * Current page in the state of a Remote paginated objects. - */ - this.currentPageState = undefined; - /** - * Declare SortDirection enumeration to use it in the template - */ - this.sortDirections = SortDirection; - /** - * Direction in which to sort: ascending or descending - */ - this.sortDirection = SortDirection.ASC; - /** - * Name of the field that's used to sort by - */ - this.sortField = 'id'; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subs = []; - } - /** - * Method provided by Angular. Invoked after the constructor. - */ - PaginationComponent.prototype.ngOnInit = function () { - var _this = this; - this.subs.push(this.hostWindowService.isXs() - .subscribe(function (status) { - _this.isXs = status; - _this.cdRef.markForCheck(); - })); - this.checkConfig(this.paginationOptions); - this.initializeConfig(); - // Listen to changes - this.subs.push(this.route.queryParams - .subscribe(function (queryParams) { - if (_this.isEmptyPaginationParams(queryParams)) { - _this.initializeConfig(queryParams); - } - else { - _this.currentQueryParams = queryParams; - var fixedProperties = _this.validateParams(queryParams); - if (isNotEmpty(fixedProperties)) { - _this.fixRoute(fixedProperties); - } - else { - _this.setFields(); - } - } - })); - }; - PaginationComponent.prototype.fixRoute = function (fixedProperties) { - this.updateRoute(fixedProperties); - }; - /** - * Method provided by Angular. Invoked when the instance is destroyed. - */ - PaginationComponent.prototype.ngOnDestroy = function () { - this.subs - .filter(function (sub) { return hasValue(sub); }) - .forEach(function (sub) { return sub.unsubscribe(); }); - }; - /** - * Initializes all default variables - */ - PaginationComponent.prototype.initializeConfig = function (queryParams) { - if (queryParams === void 0) { queryParams = {}; } - // Set initial values - this.id = this.paginationOptions.id || null; - this.pageSizeOptions = this.paginationOptions.pageSizeOptions; - this.currentPage = this.paginationOptions.currentPage; - this.pageSize = this.paginationOptions.pageSize; - if (this.sortOptions) { - this.sortDirection = this.sortOptions.direction; - this.sortField = this.sortOptions.field; - } - this.currentQueryParams = Object.assign({}, queryParams, { - pageId: this.id, - page: this.currentPage, - pageSize: this.pageSize, - sortDirection: this.sortDirection, - sortField: this.sortField - }); - }; - /** - * Method to change the route to the given page - * - * @param page - * The page being navigated to. - */ - PaginationComponent.prototype.doPageChange = function (page) { - this.updateRoute({ page: page.toString() }); - }; - /** - * Method to change the route to the given page size - * - * @param pageSize - * The page size being navigated to. - */ - PaginationComponent.prototype.doPageSizeChange = function (pageSize) { - this.updateRoute({ page: 1, pageSize: pageSize }); - }; - /** - * Method to change the route to the given sort direction - * - * @param sortDirection - * The sort direction being navigated to. - */ - PaginationComponent.prototype.doSortDirectionChange = function (sortDirection) { - this.updateRoute({ page: 1, sortDirection: sortDirection }); - }; - /** - * Method to change the route to the given sort field - * - * @param sortField - * The sort field being navigated to. - */ - PaginationComponent.prototype.doSortFieldChange = function (field) { - this.updateRoute({ page: 1, sortField: field }); - }; - /** - * Method to set the current page and trigger page change events - * - * @param page - * The new page value - */ - PaginationComponent.prototype.setPage = function (page) { - this.currentPage = page; - this.pageChange.emit(page); - this.emitPaginationChange(); - }; - /** - * Method to set the current page size and trigger page size change events - * - * @param pageSize - * The new page size value. - */ - PaginationComponent.prototype.setPageSize = function (pageSize) { - this.pageSize = pageSize; - this.pageSizeChange.emit(pageSize); - this.emitPaginationChange(); - }; - /** - * Method to set the current sort direction and trigger sort direction change events - * - * @param sortDirection - * The new sort directionvalue. - */ - PaginationComponent.prototype.setSortDirection = function (sortDirection) { - this.sortDirection = sortDirection; - this.sortDirectionChange.emit(sortDirection); - this.emitPaginationChange(); - }; - /** - * Method to set the current sort field and trigger sort field change events - * - * @param sortField - * The new sort field. - */ - PaginationComponent.prototype.setSortField = function (field) { - this.sortField = field; - this.sortFieldChange.emit(field); - this.emitPaginationChange(); - }; - /** - * Method to emit a general pagination change event - */ - PaginationComponent.prototype.emitPaginationChange = function () { - this.paginationChange.emit({ - pageId: this.id, - page: this.currentPage, - pageSize: this.pageSize, - sortDirection: this.sortDirection, - sortField: this.sortField - }); - }; - /** - * Method to update the route parameters - */ - PaginationComponent.prototype.updateRoute = function (params) { - if (isNotEmpty(difference(params, this.currentQueryParams))) { - this.router.navigate([], { - queryParams: Object.assign({}, this.currentQueryParams, params), - queryParamsHandling: 'merge' - }); - } - }; - PaginationComponent.prototype.difference = function (object, base) { - var changes = function (o, b) { - return transform(o, function (result, value, key) { - if (!isEqual(value, b[key]) && isNotEmpty(value)) { - result[key] = (isObject(value) && isObject(b[key])) ? changes(value, b[key]) : value; - } - }); - }; - return changes(object, base); - }; - /** - * Method to get pagination details of the current viewed page. - */ - PaginationComponent.prototype.getShowingDetails = function (collectionSize) { - var showingDetails = { range: null + ' - ' + null, total: null }; - if (collectionSize) { - var firstItem = void 0; - var lastItem = void 0; - var pageMax = this.pageSize * this.currentPage; - firstItem = this.pageSize * (this.currentPage - 1) + 1; - if (collectionSize > pageMax) { - lastItem = pageMax; - } - else { - lastItem = collectionSize; - } - showingDetails = { range: firstItem + ' - ' + lastItem, total: collectionSize }; - } - return showingDetails; - }; - /** - * Method to validate query params - * - * @param page - * The page number to validate - * @param pageSize - * The page size to validate - * @returns valid parameters if initial parameters were invalid - */ - PaginationComponent.prototype.validateParams = function (params) { - var validPage = this.validatePage(params.page); - var filteredSize = this.validatePageSize(params.pageSize); - var fixedFields = {}; - if (+params.page !== validPage) { - fixedFields.page = validPage.toString(); - } - if (+params.pageSize !== filteredSize) { - fixedFields.pageSize = filteredSize.toString(); - } - return fixedFields; - }; - /** - * Method to update all pagination variables to the current query parameters - */ - PaginationComponent.prototype.setFields = function () { - // (+) converts string to a number - var page = this.currentQueryParams.page; - if (this.currentPage !== +page) { - this.setPage(+page); - } - var pageSize = this.currentQueryParams.pageSize; - if (this.pageSize !== +pageSize) { - this.setPageSize(+pageSize); - } - var sortDirection = this.currentQueryParams.sortDirection; - if (this.sortDirection !== sortDirection) { - this.setSortDirection(sortDirection); - } - var sortField = this.currentQueryParams.sortField; - if (this.sortField !== sortField) { - this.setSortField(sortField); - } - this.cdRef.detectChanges(); - }; - /** - * Method to validate the current page value - * - * @param page - * The page number to validate - * @returns returns valid page value - */ - PaginationComponent.prototype.validatePage = function (page) { - var result = this.currentPage; - if (isNumeric(page)) { - result = +page; - } - return result; - }; - /** - * Method to validate the current page size value - * - * @param page size - * The page size to validate - * @returns returns valid page size value - */ - PaginationComponent.prototype.validatePageSize = function (pageSize) { - var filteredPageSize = this.pageSizeOptions.find(function (x) { return x === +pageSize; }); - var result = this.pageSize; - if (filteredPageSize) { - result = +pageSize; - } - return result; - }; - /** - * Method to ensure options passed contains the required properties. - * - * @param paginateOptions - * The paginate options object. - */ - PaginationComponent.prototype.checkConfig = function (paginateOptions) { - var required = ['id', 'currentPage', 'pageSize', 'pageSizeOptions']; - var missing = required.filter(function (prop) { - return !(prop in paginateOptions); - }); - if (0 < missing.length) { - throw new Error('Paginate: Argument is missing the following required properties: ' + missing.join(', ')); - } - }; - /** - * Method to check if none of the query params necessary for pagination are filled out. - * - * @param paginateOptions - * The paginate options object. - */ - PaginationComponent.prototype.isEmptyPaginationParams = function (paginateOptions) { - var properties = ['id', 'currentPage', 'pageSize', 'pageSizeOptions']; - var missing = properties.filter(function (prop) { - return !(prop in paginateOptions); - }); - return properties.length === missing.length; - }; - Object.defineProperty(PaginationComponent.prototype, "hasMultiplePages", { - /** - * Property to check whether the current pagination object has multiple pages - * @returns true if there are multiple pages, else returns false - */ - get: function () { - return this.collectionSize > this.pageSize; - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(PaginationComponent.prototype, "shouldShowBottomPager", { - /** - * Property to check whether the current pagination should show a bottom pages - * @returns true if a bottom pages should be shown, else returns false - */ - get: function () { - return this.hasMultiplePages || !this.hidePagerWhenSinglePage; - }, - enumerable: true, - configurable: true - }); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], PaginationComponent.prototype, "collectionSize", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Observable) - ], PaginationComponent.prototype, "pageInfoState", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", PaginationComponentOptions) - ], PaginationComponent.prototype, "paginationOptions", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SortOptions) - ], PaginationComponent.prototype, "sortOptions", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], PaginationComponent.prototype, "pageChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], PaginationComponent.prototype, "pageSizeChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], PaginationComponent.prototype, "sortDirectionChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], PaginationComponent.prototype, "sortFieldChange", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], PaginationComponent.prototype, "paginationChange", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], PaginationComponent.prototype, "hidePaginationDetail", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], PaginationComponent.prototype, "hideGear", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], PaginationComponent.prototype, "hidePagerWhenSinglePage", void 0); - PaginationComponent = tslib_1.__decorate([ - Component({ - exportAs: 'paginationComponent', - selector: 'ds-pagination', - styleUrls: ['pagination.component.scss'], - templateUrl: 'pagination.component.html', - changeDetection: ChangeDetectionStrategy.Default, - encapsulation: ViewEncapsulation.Emulated - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - ActivatedRoute, - Router, - HostWindowService]) - ], PaginationComponent); - return PaginationComponent; -}()); -export { PaginationComponent }; -//# sourceMappingURL=pagination.component.js.map \ No newline at end of file diff --git a/src/app/shared/pagination/pagination.component.js.map b/src/app/shared/pagination/pagination.component.js.map deleted file mode 100644 index 27fb45c1ef..0000000000 --- a/src/app/shared/pagination/pagination.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"pagination.component.js","sourceRoot":"","sources":["pagination.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/roles/role.directive.js b/src/app/shared/roles/role.directive.js deleted file mode 100644 index 3fd3b17650..0000000000 --- a/src/app/shared/roles/role.directive.js +++ /dev/null @@ -1,100 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core'; -import { combineLatest } from 'rxjs'; -import { filter, first, map } from 'rxjs/operators'; -import { hasValue } from '../empty.util'; -import { RoleService } from '../../core/roles/role.service'; -var RoleDirective = /** @class */ (function () { - function RoleDirective(roleService, viewContainer, changeDetector, templateRef) { - this.roleService = roleService; - this.viewContainer = viewContainer; - this.changeDetector = changeDetector; - this.templateRef = templateRef; - this.subs = []; - } - RoleDirective.prototype.ngOnChanges = function (changes) { - var onlyChanges = changes.dsShowOnlyForRole; - var exceptChanges = changes.dsShowExceptForRole; - this.hasRoles(this.dsShowOnlyForRole); - if (changes.dsShowOnlyForRole) { - this.validateOnly(); - } - else if (changes.dsShowExceptForRole) { - this.validateExcept(); - } - }; - RoleDirective.prototype.ngOnDestroy = function () { - this.subs - .filter(function (subscription) { return hasValue(subscription); }) - .forEach(function (subscription) { return subscription.unsubscribe(); }); - }; - /** - * Show template in view container - */ - RoleDirective.prototype.showTemplateBlockInView = function () { - this.viewContainer.clear(); - if (!this.templateRef) { - return; - } - this.viewContainer.createEmbeddedView(this.templateRef); - this.changeDetector.markForCheck(); - }; - /** - * Validate the list of roles that can show template - */ - RoleDirective.prototype.validateOnly = function () { - var _this = this; - this.subs.push(this.hasRoles(this.dsShowOnlyForRole).pipe(filter(function (hasRole) { return hasRole; })) - .subscribe(function (hasRole) { - _this.showTemplateBlockInView(); - })); - }; - /** - * Validate the list of roles that cannot show template - */ - RoleDirective.prototype.validateExcept = function () { - var _this = this; - this.subs.push(this.hasRoles(this.dsShowExceptForRole).pipe(filter(function (hasRole) { return !hasRole; })) - .subscribe(function (hasRole) { - _this.showTemplateBlockInView(); - })); - }; - /** - * Check if current user role is included in the specified role list - * - * @param roles - * The role or the list of roles - * @returns {Observable} - * observable of true if current user role is included in the specified role list, observable of false otherwise - */ - RoleDirective.prototype.hasRoles = function (roles) { - var _this = this; - var toValidate = (Array.isArray(roles)) ? roles : [roles]; - var checks = toValidate.map(function (role) { return _this.roleService.checkRole(role); }); - return combineLatest(checks).pipe(map(function (permissions) { return permissions.includes(true); }), first()); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], RoleDirective.prototype, "dsShowOnlyForRole", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], RoleDirective.prototype, "dsShowExceptForRole", void 0); - RoleDirective = tslib_1.__decorate([ - Directive({ - selector: '[dsShowOnlyForRole],[dsShowExceptForRole]' - }) - /** - * Structural Directive for showing or hiding a template based on current user role - */ - , - tslib_1.__metadata("design:paramtypes", [RoleService, - ViewContainerRef, - ChangeDetectorRef, - TemplateRef]) - ], RoleDirective); - return RoleDirective; -}()); -export { RoleDirective }; -//# sourceMappingURL=role.directive.js.map \ No newline at end of file diff --git a/src/app/shared/roles/role.directive.js.map b/src/app/shared/roles/role.directive.js.map deleted file mode 100644 index ce1aac9a29..0000000000 --- a/src/app/shared/roles/role.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"role.directive.js","sourceRoot":"","sources":["role.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,KAAK,EAIL,WAAW,EACX,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAA4B,MAAM,MAAM,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAS5D;IAcE,uBACU,WAAwB,EACxB,aAA+B,EAC/B,cAAiC,EACjC,WAA6B;QAH7B,gBAAW,GAAX,WAAW,CAAa;QACxB,kBAAa,GAAb,aAAa,CAAkB;QAC/B,mBAAc,GAAd,cAAc,CAAmB;QACjC,gBAAW,GAAX,WAAW,CAAkB;QAN/B,SAAI,GAAmB,EAAE,CAAC;IAQlC,CAAC;IAED,mCAAW,GAAX,UAAY,OAAsB;QAChC,IAAM,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;QAC9C,IAAM,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC;QAClD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACtC,IAAI,OAAO,CAAC,iBAAiB,EAAE;YAC7B,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;aAAM,IAAI,OAAO,CAAC,mBAAmB,EAAE;YACtC,IAAI,CAAC,cAAc,EAAE,CAAA;SACtB;IACH,CAAC;IAED,mCAAW,GAAX;QACE,IAAI,CAAC,IAAI;aACN,MAAM,CAAC,UAAC,YAAY,IAAK,OAAA,QAAQ,CAAC,YAAY,CAAC,EAAtB,CAAsB,CAAC;aAChD,OAAO,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,WAAW,EAAE,EAA1B,CAA0B,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACK,+CAAuB,GAA/B;QACE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO;SACR;QAED,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,oCAAY,GAApB;QAAA,iBAKC;QAJC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,OAAO,EAAP,CAAO,CAAC,CAAC;aACpF,SAAS,CAAC,UAAC,OAAO;YACjB,KAAI,CAAC,uBAAuB,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAED;;OAEG;IACK,sCAAc,GAAtB;QAAA,iBAKC;QAJC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,OAAO,IAAK,OAAA,CAAC,OAAO,EAAR,CAAQ,CAAC,CAAC;aACvF,SAAS,CAAC,UAAC,OAAO;YACjB,KAAI,CAAC,uBAAuB,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAED;;;;;;;OAOG;IACK,gCAAQ,GAAhB,UAAiB,KAA4B;QAA7C,iBAQC;QAPC,IAAM,UAAU,GAAe,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxE,IAAM,MAAM,GAA+B,UAAU,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,KAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAhC,CAAgC,CAAC,CAAC;QAEtG,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,CAC/B,GAAG,CAAC,UAAC,WAAsB,IAAK,OAAA,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAA1B,CAA0B,CAAC,EAC3D,KAAK,EAAE,CACR,CAAA;IACH,CAAC;IAnFQ;QAAR,KAAK,EAAE;;4DAA0C;IAKzC;QAAR,KAAK,EAAE;;8DAA4C;IAVzC,aAAa;QANzB,SAAS,CAAC;YACT,QAAQ,EAAE,2CAA2C;SACtD,CAAC;QACF;;WAEG;;iDAgBsB,WAAW;YACT,gBAAgB;YACf,iBAAiB;YACpB,WAAW;OAlBvB,aAAa,CAyFzB;IAAD,oBAAC;CAAA,AAzFD,IAyFC;SAzFY,aAAa"} \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.actions.js b/src/app/shared/sass-helper/sass-helper.actions.js deleted file mode 100644 index 7a9d38293e..0000000000 --- a/src/app/shared/sass-helper/sass-helper.actions.js +++ /dev/null @@ -1,21 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var CSSVariableActionTypes = { - ADD: type('dspace/css-variables/ADD'), -}; -var AddCSSVariableAction = /** @class */ (function () { - function AddCSSVariableAction(name, value) { - this.type = CSSVariableActionTypes.ADD; - this.payload = { name: name, value: value }; - } - return AddCSSVariableAction; -}()); -export { AddCSSVariableAction }; -//# sourceMappingURL=sass-helper.actions.js.map \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.actions.js.map b/src/app/shared/sass-helper/sass-helper.actions.js.map deleted file mode 100644 index 985d85f0c2..0000000000 --- a/src/app/shared/sass-helper/sass-helper.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sass-helper.actions.js","sourceRoot":"","sources":["sass-helper.actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG;IACpC,GAAG,EAAE,IAAI,CAAC,0BAA0B,CAAC;CACtC,CAAC;AAEF;IAOE,8BAAY,IAAY,EAAE,KAAa;QANvC,SAAI,GAAG,sBAAsB,CAAC,GAAG,CAAC;QAOhC,IAAI,CAAC,OAAO,GAAG,EAAC,IAAI,MAAA,EAAE,KAAK,OAAA,EAAC,CAAC;IAC/B,CAAC;IACH,2BAAC;AAAD,CAAC,AAVD,IAUC"} \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.reducer.js b/src/app/shared/sass-helper/sass-helper.reducer.js deleted file mode 100644 index ded67b34d9..0000000000 --- a/src/app/shared/sass-helper/sass-helper.reducer.js +++ /dev/null @@ -1,17 +0,0 @@ -import { CSSVariableActionTypes } from './sass-helper.actions'; -var initialState = Object.create({}); -export function cssVariablesReducer(state, action) { - if (state === void 0) { state = initialState; } - var _a; - switch (action.type) { - case CSSVariableActionTypes.ADD: { - var variable = action.payload; - var t = Object.assign({}, state, (_a = {}, _a[variable.name] = variable.value, _a)); - return t; - } - default: { - return state; - } - } -} -//# sourceMappingURL=sass-helper.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.reducer.js.map b/src/app/shared/sass-helper/sass-helper.reducer.js.map deleted file mode 100644 index 1788e4abd1..0000000000 --- a/src/app/shared/sass-helper/sass-helper.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sass-helper.reducer.js","sourceRoot":"","sources":["sass-helper.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAMlF,IAAM,YAAY,GAAsB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE1D,MAAM,8BAA8B,KAAoB,EAAE,MAAyB;IAA/C,sBAAA,EAAA,oBAAoB;;IACtD,QAAQ,MAAM,CAAC,IAAI,EAAE;QACnB,KAAK,sBAAsB,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;YAChC,IAAM,CAAC,GAAI,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,YAAI,GAAC,QAAQ,CAAC,IAAI,IAAG,QAAQ,CAAC,KAAK,MAAG,CAAC;YACzE,OAAO,CAAC,CAAC;SACV;QACD,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.service.js b/src/app/shared/sass-helper/sass-helper.service.js deleted file mode 100644 index 9892dc138d..0000000000 --- a/src/app/shared/sass-helper/sass-helper.service.js +++ /dev/null @@ -1,33 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { keySelector } from '../../app.reducer'; -import { select, Store } from '@ngrx/store'; -import { GLOBAL_CONFIG } from '../../../config'; -import { AddCSSVariableAction } from './sass-helper.actions'; -var CSSVariableService = /** @class */ (function () { - function CSSVariableService(store, EnvConfig) { - this.store = store; - this.EnvConfig = EnvConfig; - } - CSSVariableService.prototype.addCSSVariable = function (name, value) { - this.store.dispatch(new AddCSSVariableAction(name, value)); - }; - CSSVariableService.prototype.getVariable = function (name) { - return this.store.pipe(select(themeVariableByNameSelector(name))); - }; - CSSVariableService.prototype.getAllVariables = function () { - return this.store.pipe(select(themeVariablesSelector)); - }; - CSSVariableService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(1, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Store, Object]) - ], CSSVariableService); - return CSSVariableService; -}()); -export { CSSVariableService }; -var themeVariablesSelector = function (state) { return state.cssVariables; }; -var themeVariableByNameSelector = function (name) { - return keySelector(name, themeVariablesSelector); -}; -//# sourceMappingURL=sass-helper.service.js.map \ No newline at end of file diff --git a/src/app/shared/sass-helper/sass-helper.service.js.map b/src/app/shared/sass-helper/sass-helper.service.js.map deleted file mode 100644 index b417fc3d5a..0000000000 --- a/src/app/shared/sass-helper/sass-helper.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sass-helper.service.js","sourceRoot":"","sources":["sass-helper.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAY,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAoB,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAG7D;IACE,4BACY,KAAsB,EACC,SAAuB;QAD9C,UAAK,GAAL,KAAK,CAAiB;QACC,cAAS,GAAT,SAAS,CAAc;IAC1D,CAAC;IAED,2CAAc,GAAd,UAAe,IAAY,EAAE,KAAa;QACxC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,wCAAW,GAAX,UAAY,IAAY;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,4CAAe,GAAf;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC;IACzD,CAAC;IAhBU,kBAAkB;QAD9B,UAAU,EAAE;QAIR,mBAAA,MAAM,CAAC,aAAa,CAAC,CAAA;iDADL,KAAK;OAFb,kBAAkB,CAkB9B;IAAD,yBAAC;CAAA,AAlBD,IAkBC;SAlBY,kBAAkB;AAoB/B,IAAM,sBAAsB,GAAG,UAAC,KAAe,IAAK,OAAA,KAAK,CAAC,YAAY,EAAlB,CAAkB,CAAC;AAEvE,IAAM,2BAA2B,GAAG,UAAC,IAAY;IAC/C,OAAO,WAAW,CAAS,IAAI,EAAE,sBAAsB,CAAC,CAAC;AAC3D,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/search-form/search-form.component.js b/src/app/shared/search-form/search-form.component.js deleted file mode 100644 index fc82d1c1dd..0000000000 --- a/src/app/shared/search-form/search-form.component.js +++ /dev/null @@ -1,103 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Router } from '@angular/router'; -import { isNotEmpty } from '../empty.util'; -import { SearchService } from '../../+search-page/search-service/search.service'; -/** - * This component renders a simple item page. - * The route parameter 'id' is used to request the item it represents. - * All fields of the item that should be displayed, are defined in its template. - */ -var SearchFormComponent = /** @class */ (function () { - function SearchFormComponent(router, searchService) { - this.router = router; - this.searchService = searchService; - /** - * The currently selected scope object's UUID - */ - this.scope = ''; - } - /** - * Updates the search when the form is submitted - * @param data Values submitted using the form - */ - SearchFormComponent.prototype.onSubmit = function (data) { - this.updateSearch(data); - }; - /** - * Updates the search when the current scope has been changed - * @param {string} scope The new scope - */ - SearchFormComponent.prototype.onScopeChange = function (scope) { - this.updateSearch({ scope: scope }); - }; - /** - * Updates the search URL - * @param data Updated parameters - */ - SearchFormComponent.prototype.updateSearch = function (data) { - this.router.navigate(this.getSearchLinkParts(), { - queryParams: Object.assign({}, { page: 1 }, data), - queryParamsHandling: 'merge' - }); - }; - /** - * For usage of the isNotEmpty function in the template - */ - SearchFormComponent.prototype.isNotEmpty = function (object) { - return isNotEmpty(object); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - SearchFormComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.searchService.getSearchLink(); - }; - /** - * @returns {string[]} The base path to the search page, or the current page when inPlaceSearch is true, split in separate pieces - */ - SearchFormComponent.prototype.getSearchLinkParts = function () { - if (this.inPlaceSearch) { - return []; - } - return this.getSearchLink().split('/'); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SearchFormComponent.prototype, "query", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchFormComponent.prototype, "inPlaceSearch", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SearchFormComponent.prototype, "scope", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SearchFormComponent.prototype, "currentUrl", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], SearchFormComponent.prototype, "scopes", void 0); - SearchFormComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-search-form', - styleUrls: ['./search-form.component.scss'], - templateUrl: './search-form.component.html' - }) - /** - * Component that represents the search form - */ - , - tslib_1.__metadata("design:paramtypes", [Router, SearchService]) - ], SearchFormComponent); - return SearchFormComponent; -}()); -export { SearchFormComponent }; -//# sourceMappingURL=search-form.component.js.map \ No newline at end of file diff --git a/src/app/shared/search-form/search-form.component.js.map b/src/app/shared/search-form/search-form.component.js.map deleted file mode 100644 index c8793162da..0000000000 --- a/src/app/shared/search-form/search-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-form.component.js","sourceRoot":"","sources":["search-form.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAY,UAAU,EAAE,MAAM,eAAe,CAAC;AAGrD,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AAEjF;;;;GAIG;AAWH;IAwBE,6BAAoB,MAAc,EAAU,aAA4B;QAApD,WAAM,GAAN,MAAM,CAAQ;QAAU,kBAAa,GAAb,aAAa,CAAe;QAbxE;;WAEG;QAEH,UAAK,GAAG,EAAE,CAAC;IAUX,CAAC;IAED;;;OAGG;IACH,sCAAQ,GAAR,UAAS,IAAS;QAChB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,2CAAa,GAAb,UAAc,KAAa;QACzB,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,OAAA,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,0CAAY,GAAZ,UAAa,IAAS;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE;YAC9C,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC;YACjD,mBAAmB,EAAE,OAAO;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,wCAAU,GAAV,UAAW,MAAW;QACpB,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,2CAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,gDAAkB,GAAzB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IA3EQ;QAAR,KAAK,EAAE;;sDAAe;IAKd;QAAR,KAAK,EAAE;;8DAAe;IAMvB;QADC,KAAK,EAAE;;sDACG;IAEF;QAAR,KAAK,EAAE;;2DAAoB;IAKnB;QAAR,KAAK,EAAE;;uDAAwB;IAtBrB,mBAAmB;QAT/B,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EAAE,CAAC,8BAA8B,CAAC;YAC3C,WAAW,EAAE,8BAA8B;SAC5C,CAAC;QAEF;;WAEG;;iDAyB2B,MAAM,EAAyB,aAAa;OAxB7D,mBAAmB,CAgF/B;IAAD,0BAAC;CAAA,AAhFD,IAgFC;SAhFY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/services/api.service.js b/src/app/shared/services/api.service.js deleted file mode 100644 index d78b7ad3d4..0000000000 --- a/src/app/shared/services/api.service.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { throwError as observableThrowError } from 'rxjs'; -import { catchError } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { HttpClient } from '@angular/common/http'; -var ApiService = /** @class */ (function () { - function ApiService(_http) { - this._http = _http; - } - /** - * whatever domain/feature method name - */ - ApiService.prototype.get = function (url, options) { - return this._http.get(url, options).pipe(catchError(function (err) { - console.log('Error: ', err); - return observableThrowError(err); - })); - }; - ApiService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [HttpClient]) - ], ApiService); - return ApiService; -}()); -export { ApiService }; -//# sourceMappingURL=api.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/api.service.js.map b/src/app/shared/services/api.service.js.map deleted file mode 100644 index a21ec466b0..0000000000 --- a/src/app/shared/services/api.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"api.service.js","sourceRoot":"","sources":["api.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD;IACE,oBAAmB,KAAiB;QAAjB,UAAK,GAAL,KAAK,CAAY;IAEpC,CAAC;IAED;;OAEG;IACH,wBAAG,GAAH,UAAI,GAAW,EAAE,OAAa;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CACtC,UAAU,CAAC,UAAC,GAAG;YACb,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC5B,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAdU,UAAU;QADtB,UAAU,EAAE;iDAEe,UAAU;OADzB,UAAU,CAgBtB;IAAD,iBAAC;CAAA,AAhBD,IAgBC;SAhBY,UAAU"} \ No newline at end of file diff --git a/src/app/shared/services/client-cookie.service.js b/src/app/shared/services/client-cookie.service.js deleted file mode 100644 index d225b6abdc..0000000000 --- a/src/app/shared/services/client-cookie.service.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { getJSON, remove, set } from 'js-cookie'; -import { CookieService } from './cookie.service'; -var ClientCookieService = /** @class */ (function (_super) { - tslib_1.__extends(ClientCookieService, _super); - function ClientCookieService() { - return _super !== null && _super.apply(this, arguments) || this; - } - ClientCookieService.prototype.set = function (name, value, options) { - set(name, value, options); - this.updateSource(); - }; - ClientCookieService.prototype.remove = function (name, options) { - remove(name, options); - this.updateSource(); - }; - ClientCookieService.prototype.get = function (name) { - return getJSON(name); - }; - ClientCookieService.prototype.getAll = function () { - return getJSON(); - }; - ClientCookieService = tslib_1.__decorate([ - Injectable() - ], ClientCookieService); - return ClientCookieService; -}(CookieService)); -export { ClientCookieService }; -//# sourceMappingURL=client-cookie.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/client-cookie.service.js.map b/src/app/shared/services/client-cookie.service.js.map deleted file mode 100644 index bcd6aef675..0000000000 --- a/src/app/shared/services/client-cookie.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"client-cookie.service.js","sourceRoot":"","sources":["client-cookie.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAoB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAClE,OAAO,EAAE,aAAa,EAAkB,MAAM,kBAAkB,CAAC;AAGjE;IAAyC,+CAAa;IAAtD;;IAmBA,CAAC;IAjBQ,iCAAG,GAAV,UAAW,IAAY,EAAE,KAAU,EAAE,OAA0B;QAC7D,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAEM,oCAAM,GAAb,UAAc,IAAY,EAAE,OAA0B;QACpD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtB,IAAI,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAEM,iCAAG,GAAV,UAAW,IAAY;QACrB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,CAAC;IAEM,oCAAM,GAAb;QACE,OAAO,OAAO,EAAE,CAAA;IAClB,CAAC;IAlBU,mBAAmB;QAD/B,UAAU,EAAE;OACA,mBAAmB,CAmB/B;IAAD,0BAAC;CAAA,AAnBD,CAAyC,aAAa,GAmBrD;SAnBY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/services/cookie.service.js b/src/app/shared/services/cookie.service.js deleted file mode 100644 index bf19204af1..0000000000 --- a/src/app/shared/services/cookie.service.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { REQUEST } from '@nguniversal/express-engine/tokens'; -import { Subject } from 'rxjs'; -var CookieService = /** @class */ (function () { - function CookieService(req) { - this.req = req; - this.cookieSource = new Subject(); - this.cookies$ = this.cookieSource.asObservable(); - } - CookieService.prototype.updateSource = function () { - this.cookieSource.next(this.getAll()); - }; - CookieService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(REQUEST)), - tslib_1.__metadata("design:paramtypes", [Object]) - ], CookieService); - return CookieService; -}()); -export { CookieService }; -//# sourceMappingURL=cookie.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/cookie.service.js.map b/src/app/shared/services/cookie.service.js.map deleted file mode 100644 index da3db155d2..0000000000 --- a/src/app/shared/services/cookie.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"cookie.service.js","sourceRoot":"","sources":["cookie.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAElD,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAA;AAE5D,OAAO,EAAE,OAAO,EAAgB,MAAM,MAAM,CAAA;AAgB5C;IAIE,uBAAuC,GAAQ;QAAR,QAAG,GAAH,GAAG,CAAK;QAH5B,iBAAY,GAAG,IAAI,OAAO,EAAmC,CAAC;QACjE,aAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAG5D,CAAC;IAUS,oCAAY,GAAtB;QACE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,CAAC;IAjBmB,aAAa;QADlC,UAAU,EAAE;QAKE,mBAAA,MAAM,CAAC,OAAO,CAAC,CAAA;;OAJR,aAAa,CAkBlC;IAAD,oBAAC;CAAA,AAlBD,IAkBC;SAlBqB,aAAa"} \ No newline at end of file diff --git a/src/app/shared/services/route.service.js b/src/app/shared/services/route.service.js deleted file mode 100644 index fe0420e858..0000000000 --- a/src/app/shared/services/route.service.js +++ /dev/null @@ -1,114 +0,0 @@ -import * as tslib_1 from "tslib"; -import { distinctUntilChanged, filter, map, mergeMap } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { ActivatedRoute, NavigationEnd, Router, } from '@angular/router'; -import { select, Store } from '@ngrx/store'; -import { isEqual } from 'lodash'; -import { AddUrlToHistoryAction } from '../history/history.actions'; -import { historySelector } from '../history/selectors'; -/** - * Service to keep track of the current query parameters - */ -var RouteService = /** @class */ (function () { - function RouteService(route, router, store) { - this.route = route; - this.router = router; - this.store = store; - this.subscribeToRouterParams(); - } - /** - * Retrieves all query parameter values based on a parameter name - * @param paramName The name of the parameter to look for - */ - RouteService.prototype.getQueryParameterValues = function (paramName) { - return this.getQueryParamMap().pipe(map(function (params) { return params.getAll(paramName).slice(); }), distinctUntilChanged(function (a, b) { return JSON.stringify(a) === JSON.stringify(b); })); - }; - /** - * Retrieves a single query parameter values based on a parameter name - * @param paramName The name of the parameter to look for - */ - RouteService.prototype.getQueryParameterValue = function (paramName) { - return this.getQueryParamMap().pipe(map(function (params) { return params.get(paramName); }), distinctUntilChanged()); - }; - /** - * Checks if the query parameter currently exists in the route - * @param paramName The name of the parameter to look for - */ - RouteService.prototype.hasQueryParam = function (paramName) { - return this.getQueryParamMap().pipe(map(function (params) { return params.has(paramName); }), distinctUntilChanged()); - }; - /** - * Checks if the query parameter with a specific value currently exists in the route - * @param paramName The name of the parameter to look for - * @param paramValue The value of the parameter to look for - */ - RouteService.prototype.hasQueryParamWithValue = function (paramName, paramValue) { - return this.getQueryParamMap().pipe(map(function (params) { return params.getAll(paramName).indexOf(paramValue) > -1; }), distinctUntilChanged()); - }; - RouteService.prototype.getRouteParameterValue = function (paramName) { - return this.params.pipe(map(function (params) { return params[paramName]; }), distinctUntilChanged()); - }; - RouteService.prototype.getRouteDataValue = function (datafield) { - return this.route.data.pipe(map(function (data) { return data[datafield]; }), distinctUntilChanged()); - }; - /** - * Retrieves all query parameters of which the parameter name starts with the given prefix - * @param prefix The prefix of the parameter name to look for - */ - RouteService.prototype.getQueryParamsWithPrefix = function (prefix) { - return this.getQueryParamMap().pipe(map(function (qparams) { - var params = {}; - qparams.keys - .filter(function (key) { return key.startsWith(prefix); }) - .forEach(function (key) { - params[key] = qparams.getAll(key).slice(); - }); - return params; - }), distinctUntilChanged(function (a, b) { return JSON.stringify(a) === JSON.stringify(b); })); - }; - RouteService.prototype.getQueryParamMap = function () { - var _this = this; - return this.route.queryParamMap.pipe(map(function (paramMap) { - var snapshot = _this.router.routerState.snapshot; - // Due to an Angular bug, sometimes change of QueryParam is not detected so double checks with route snapshot - if (!isEqual(paramMap, snapshot.root.queryParamMap)) { - return snapshot.root.queryParamMap; - } - else { - return paramMap; - } - })); - }; - RouteService.prototype.saveRouting = function () { - var _this = this; - this.router.events - .pipe(filter(function (event) { return event instanceof NavigationEnd; })) - .subscribe(function (_a) { - var urlAfterRedirects = _a.urlAfterRedirects; - _this.store.dispatch(new AddUrlToHistoryAction(urlAfterRedirects)); - }); - }; - RouteService.prototype.subscribeToRouterParams = function () { - var _this = this; - this.params = this.router.events.pipe(mergeMap(function (event) { - var active = _this.route; - while (active.firstChild) { - active = active.firstChild; - } - return active.params; - })); - }; - RouteService.prototype.getHistory = function () { - return this.store.pipe(select(historySelector)); - }; - RouteService.prototype.getPreviousUrl = function () { - return this.getHistory().pipe(map(function (history) { return history[history.length - 2] || ''; })); - }; - RouteService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [ActivatedRoute, Router, Store]) - ], RouteService); - return RouteService; -}()); -export { RouteService }; -//# sourceMappingURL=route.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/route.service.js.map b/src/app/shared/services/route.service.js.map deleted file mode 100644 index dc5b08a762..0000000000 --- a/src/app/shared/services/route.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"route.service.js","sourceRoot":"","sources":["route.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/services/server-cookie.service.js b/src/app/shared/services/server-cookie.service.js deleted file mode 100644 index 44512df6c0..0000000000 --- a/src/app/shared/services/server-cookie.service.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { CookieService } from './cookie.service'; -var ServerCookieService = /** @class */ (function (_super) { - tslib_1.__extends(ServerCookieService, _super); - function ServerCookieService() { - return _super !== null && _super.apply(this, arguments) || this; - } - ServerCookieService.prototype.set = function (name, value, options) { - return; - }; - ServerCookieService.prototype.remove = function (name, options) { - return; - }; - ServerCookieService.prototype.get = function (name) { - try { - return JSON.parse(this.req.cookies[name]); - } - catch (err) { - return this.req ? this.req.cookies[name] : undefined; - } - }; - ServerCookieService.prototype.getAll = function () { - if (this.req) { - return this.req.cookies; - } - }; - ServerCookieService = tslib_1.__decorate([ - Injectable() - ], ServerCookieService); - return ServerCookieService; -}(CookieService)); -export { ServerCookieService }; -//# sourceMappingURL=server-cookie.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/server-cookie.service.js.map b/src/app/shared/services/server-cookie.service.js.map deleted file mode 100644 index 1638d226bf..0000000000 --- a/src/app/shared/services/server-cookie.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-cookie.service.js","sourceRoot":"","sources":["server-cookie.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,OAAO,EAAE,aAAa,EAAkB,MAAM,kBAAkB,CAAC;AAGjE;IAAyC,+CAAa;IAAtD;;IAuBA,CAAC;IArBQ,iCAAG,GAAV,UAAW,IAAY,EAAE,KAAU,EAAE,OAA0B;QAC7D,OAAM;IACR,CAAC;IAEM,oCAAM,GAAb,UAAc,IAAY,EAAE,OAA0B;QACpD,OAAM;IACR,CAAC;IAEM,iCAAG,GAAV,UAAW,IAAY;QACrB,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;SAC1C;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;SACrD;IACH,CAAC;IAEM,oCAAM,GAAb;QACE,IAAI,IAAI,CAAC,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAA;SACxB;IACH,CAAC;IAtBU,mBAAmB;QAD/B,UAAU,EAAE;OACA,mBAAmB,CAuB/B;IAAD,0BAAC;CAAA,AAvBD,CAAyC,aAAa,GAuBrD;SAvBY,mBAAmB"} \ No newline at end of file diff --git a/src/app/shared/services/server-response.service.js b/src/app/shared/services/server-response.service.js deleted file mode 100644 index d8be5626e8..0000000000 --- a/src/app/shared/services/server-response.service.js +++ /dev/null @@ -1,29 +0,0 @@ -import * as tslib_1 from "tslib"; -import { RESPONSE } from '@nguniversal/express-engine/tokens'; -import { Inject, Injectable, Optional } from '@angular/core'; -var ServerResponseService = /** @class */ (function () { - function ServerResponseService(response) { - this.response = response; - } - ServerResponseService.prototype.setStatus = function (code, message) { - if (this.response) { - this.response.statusCode = code; - if (message) { - this.response.statusMessage = message; - } - } - return this; - }; - ServerResponseService.prototype.setNotFound = function (message) { - if (message === void 0) { message = 'Not found'; } - return this.setStatus(404, message); - }; - ServerResponseService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Optional()), tslib_1.__param(0, Inject(RESPONSE)), - tslib_1.__metadata("design:paramtypes", [Object]) - ], ServerResponseService); - return ServerResponseService; -}()); -export { ServerResponseService }; -//# sourceMappingURL=server-response.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/server-response.service.js.map b/src/app/shared/services/server-response.service.js.map deleted file mode 100644 index aef0de2b97..0000000000 --- a/src/app/shared/services/server-response.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-response.service.js","sourceRoot":"","sources":["server-response.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAI7D;IAGE,+BAA0C,QAAa;QACrD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,yCAAS,GAAT,UAAU,IAAY,EAAE,OAAgB;QACtC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC;YAChC,IAAI,OAAO,EAAE;gBACX,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,OAAO,CAAC;aACvC;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2CAAW,GAAX,UAAY,OAAqB;QAArB,wBAAA,EAAA,qBAAqB;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACrC,CAAC;IAnBU,qBAAqB;QADjC,UAAU,EAAE;QAIE,mBAAA,QAAQ,EAAE,CAAA,EAAE,mBAAA,MAAM,CAAC,QAAQ,CAAC,CAAA;;OAH9B,qBAAqB,CAoBjC;IAAD,4BAAC;CAAA,AApBD,IAoBC;SApBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/services/window.service.js b/src/app/shared/services/window.service.js deleted file mode 100644 index 5adbaf64e4..0000000000 --- a/src/app/shared/services/window.service.js +++ /dev/null @@ -1,24 +0,0 @@ -import { InjectionToken } from '@angular/core'; -export var NativeWindowService = new InjectionToken('NativeWindowService'); -var NativeWindowRef = /** @class */ (function () { - function NativeWindowRef() { - } - Object.defineProperty(NativeWindowRef.prototype, "nativeWindow", { - get: function () { - if (typeof window !== 'undefined') { - return window; - } - else { - return false; - } - }, - enumerable: true, - configurable: true - }); - return NativeWindowRef; -}()); -export { NativeWindowRef }; -export function NativeWindowFactory() { - return new NativeWindowRef(); -} -//# sourceMappingURL=window.service.js.map \ No newline at end of file diff --git a/src/app/shared/services/window.service.js.map b/src/app/shared/services/window.service.js.map deleted file mode 100644 index 6653f09be2..0000000000 --- a/src/app/shared/services/window.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"window.service.js","sourceRoot":"","sources":["window.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,CAAC,IAAM,mBAAmB,GAAG,IAAI,cAAc,CAAC,qBAAqB,CAAC,CAAC;AAE7E;IAAA;IAQA,CAAC;IAPC,sBAAI,yCAAY;aAAhB;YACE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;gBACjC,OAAO,MAAM,CAAC;aACf;iBAAM;gBACL,OAAO,KAAK,CAAC;aACd;QACH,CAAC;;;OAAA;IACH,sBAAC;AAAD,CAAC,AARD,IAQC;;AAED,MAAM;IACJ,OAAO,IAAI,eAAe,EAAE,CAAC;AAC/B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/shared.module.js b/src/app/shared/shared.module.js deleted file mode 100644 index 3e53dae222..0000000000 --- a/src/app/shared/shared.module.js +++ /dev/null @@ -1,350 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { RouterModule } from '@angular/router'; -import { FormsModule, ReactiveFormsModule } from '@angular/forms'; -import { NouisliderModule } from 'ng2-nouislider'; -import { NgbDatepickerModule, NgbModule, NgbTimepickerModule, NgbTypeaheadModule } from '@ng-bootstrap/ng-bootstrap'; -import { TranslateModule } from '@ngx-translate/core'; -import { NgxPaginationModule } from 'ngx-pagination'; -import { ItemTypeSwitcherComponent } from './items/switcher/item-type-switcher.component'; -import { OrgUnitMetadataListElementComponent } from './object-list/item-list-element/item-types/orgunit/orgunit-metadata-list-element.component'; -import { TypedItemSearchResultListElementComponent } from './object-list/item-list-element/item-types/typed-item-search-result-list-element.component'; -import { PublicationListElementComponent } from './object-list/item-list-element/item-types/publication/publication-list-element.component'; -import { OrgUnitListElementComponent } from './object-list/item-list-element/item-types/orgunit/orgunit-list-element.component'; -import { PersonListElementComponent } from './object-list/item-list-element/item-types/person/person-list-element.component'; -import { ProjectListElementComponent } from './object-list/item-list-element/item-types/project/project-list-element.component'; -import { JournalListElementComponent } from './object-list/item-list-element/item-types/journal/journal-list-element.component'; -import { JournalVolumeListElementComponent } from './object-list/item-list-element/item-types/journal-volume/journal-volume-list-element.component'; -import { JournalIssueListElementComponent } from './object-list/item-list-element/item-types/journal-issue/journal-issue-list-element.component'; -import { FileUploadModule } from 'ng2-file-upload'; -import { InfiniteScrollModule } from 'ngx-infinite-scroll'; -import { EnumKeysPipe } from './utils/enum-keys-pipe'; -import { FileSizePipe } from './utils/file-size-pipe'; -import { SafeUrlPipe } from './utils/safe-url-pipe'; -import { ConsolePipe } from './utils/console.pipe'; -import { CollectionListElementComponent } from './object-list/collection-list-element/collection-list-element.component'; -import { CommunityListElementComponent } from './object-list/community-list-element/community-list-element.component'; -import { ItemListElementComponent } from './object-list/item-list-element/item-list-element.component'; -import { SearchResultListElementComponent } from './object-list/search-result-list-element/search-result-list-element.component'; -import { WrapperListElementComponent } from './object-list/wrapper-list-element/wrapper-list-element.component'; -import { ObjectListComponent } from './object-list/object-list.component'; -import { CollectionGridElementComponent } from './object-grid/collection-grid-element/collection-grid-element.component'; -import { CommunityGridElementComponent } from './object-grid/community-grid-element/community-grid-element.component'; -import { ItemGridElementComponent } from './object-grid/item-grid-element/item-grid-element.component'; -import { AbstractListableElementComponent } from './object-collection/shared/object-collection-element/abstract-listable-element.component'; -import { WrapperGridElementComponent } from './object-grid/wrapper-grid-element/wrapper-grid-element.component'; -import { ObjectGridComponent } from './object-grid/object-grid.component'; -import { ObjectCollectionComponent } from './object-collection/object-collection.component'; -import { ComcolPageContentComponent } from './comcol-page-content/comcol-page-content.component'; -import { ComcolPageHeaderComponent } from './comcol-page-header/comcol-page-header.component'; -import { ComcolPageLogoComponent } from './comcol-page-logo/comcol-page-logo.component'; -import { ErrorComponent } from './error/error.component'; -import { LoadingComponent } from './loading/loading.component'; -import { PaginationComponent } from './pagination/pagination.component'; -import { ThumbnailComponent } from '../thumbnail/thumbnail.component'; -import { SearchFormComponent } from './search-form/search-form.component'; -import { SearchResultGridElementComponent } from './object-grid/search-result-grid-element/search-result-grid-element.component'; -import { ViewModeSwitchComponent } from './view-mode-switch/view-mode-switch.component'; -import { GridThumbnailComponent } from './object-grid/grid-thumbnail/grid-thumbnail.component'; -import { VarDirective } from './utils/var.directive'; -import { LogInComponent } from './log-in/log-in.component'; -import { AuthNavMenuComponent } from './auth-nav-menu/auth-nav-menu.component'; -import { LogOutComponent } from './log-out/log-out.component'; -import { FormComponent } from './form/form.component'; -import { DsDynamicTypeaheadComponent } from './form/builder/ds-dynamic-form-ui/models/typeahead/dynamic-typeahead.component'; -import { DsDynamicScrollableDropdownComponent } from './form/builder/ds-dynamic-form-ui/models/scrollable-dropdown/dynamic-scrollable-dropdown.component'; -import { DsDynamicFormControlContainerComponent, dsDynamicFormControlMapFn } from './form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component'; -import { DsDynamicFormComponent } from './form/builder/ds-dynamic-form-ui/ds-dynamic-form.component'; -import { DYNAMIC_FORM_CONTROL_MAP_FN, DynamicFormsCoreModule } from '@ng-dynamic-forms/core'; -import { DynamicFormsNGBootstrapUIModule } from '@ng-dynamic-forms/ui-ng-bootstrap'; -import { TextMaskModule } from 'angular2-text-mask'; -import { DragClickDirective } from './utils/drag-click.directive'; -import { TruncatePipe } from './utils/truncate.pipe'; -import { TruncatableComponent } from './truncatable/truncatable.component'; -import { TruncatableService } from './truncatable/truncatable.service'; -import { TruncatablePartComponent } from './truncatable/truncatable-part/truncatable-part.component'; -import { UploaderComponent } from './uploader/uploader.component'; -import { ChipsComponent } from './chips/chips.component'; -import { DsDynamicTagComponent } from './form/builder/ds-dynamic-form-ui/models/tag/dynamic-tag.component'; -import { DsDynamicListComponent } from './form/builder/ds-dynamic-form-ui/models/list/dynamic-list.component'; -import { DsDynamicFormGroupComponent } from './form/builder/ds-dynamic-form-ui/models/form-group/dynamic-form-group.component'; -import { DsDynamicFormArrayComponent } from './form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component'; -import { DsDynamicRelationGroupComponent } from './form/builder/ds-dynamic-form-ui/models/relation-group/dynamic-relation-group.components'; -import { DsDatePickerInlineComponent } from './form/builder/ds-dynamic-form-ui/models/date-picker-inline/dynamic-date-picker-inline.component'; -import { SortablejsModule } from 'angular-sortablejs'; -import { NumberPickerComponent } from './number-picker/number-picker.component'; -import { DsDatePickerComponent } from './form/builder/ds-dynamic-form-ui/models/date-picker/date-picker.component'; -import { DsDynamicLookupComponent } from './form/builder/ds-dynamic-form-ui/models/lookup/dynamic-lookup.component'; -import { MockAdminGuard } from './mocks/mock-admin-guard.service'; -import { AlertComponent } from './alert/alert.component'; -import { MyDSpaceResultListElementComponent } from './object-list/my-dspace-result-list-element/my-dspace-result-list-element.component'; -import { MyDSpaceResultDetailElementComponent } from './object-detail/my-dspace-result-detail-element/my-dspace-result-detail-element.component'; -import { ClaimedTaskActionsComponent } from './mydspace-actions/claimed-task/claimed-task-actions.component'; -import { PoolTaskActionsComponent } from './mydspace-actions/pool-task/pool-task-actions.component'; -import { ObjectDetailComponent } from './object-detail/object-detail.component'; -import { WrapperDetailElementComponent } from './object-detail/wrapper-detail-element/wrapper-detail-element.component'; -import { ItemDetailPreviewComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview.component'; -import { MyDSpaceItemStatusComponent } from './object-collection/shared/mydspace-item-status/my-dspace-item-status.component'; -import { WorkspaceitemActionsComponent } from './mydspace-actions/workspaceitem/workspaceitem-actions.component'; -import { WorkflowitemActionsComponent } from './mydspace-actions/workflowitem/workflowitem-actions.component'; -import { ItemSubmitterComponent } from './object-collection/shared/mydspace-item-submitter/item-submitter.component'; -import { ItemActionsComponent } from './mydspace-actions/item/item-actions.component'; -import { ClaimedTaskActionsApproveComponent } from './mydspace-actions/claimed-task/approve/claimed-task-actions-approve.component'; -import { ClaimedTaskActionsRejectComponent } from './mydspace-actions/claimed-task/reject/claimed-task-actions-reject.component'; -import { ObjNgFor } from './utils/object-ngfor.pipe'; -import { BrowseByComponent } from './browse-by/browse-by.component'; -import { BrowseEntryListElementComponent } from './object-list/browse-entry-list-element/browse-entry-list-element.component'; -import { DebounceDirective } from './utils/debounce.directive'; -import { ClickOutsideDirective } from './utils/click-outside.directive'; -import { EmphasizePipe } from './utils/emphasize.pipe'; -import { InputSuggestionsComponent } from './input-suggestions/input-suggestions.component'; -import { CapitalizePipe } from './utils/capitalize.pipe'; -import { ObjectKeysPipe } from './utils/object-keys-pipe'; -import { MomentModule } from 'ngx-moment'; -import { AuthorityConfidenceStateDirective } from './authority-confidence/authority-confidence-state.directive'; -import { MenuModule } from './menu/menu.module'; -import { LangSwitchComponent } from './lang-switch/lang-switch.component'; -import { PlainTextMetadataListElementComponent } from './object-list/metadata-representation-list-element/plain-text/plain-text-metadata-list-element.component'; -import { ItemMetadataListElementComponent } from './object-list/metadata-representation-list-element/item/item-metadata-list-element.component'; -import { TooltipModule } from 'ngx-bootstrap'; -import { PersonMetadataListElementComponent } from './object-list/item-list-element/item-types/person/person-metadata-list-element.component'; -import { MetadataRepresentationListElementComponent } from './object-list/metadata-representation-list-element/metadata-representation-list-element.component'; -import { ComColFormComponent } from './comcol-forms/comcol-form/comcol-form.component'; -import { CreateComColPageComponent } from './comcol-forms/create-comcol-page/create-comcol-page.component'; -import { EditComColPageComponent } from './comcol-forms/edit-comcol-page/edit-comcol-page.component'; -import { DeleteComColPageComponent } from './comcol-forms/delete-comcol-page/delete-comcol-page.component'; -import { ObjectValuesPipe } from './utils/object-values-pipe'; -import { InListValidator } from './utils/in-list-validator.directive'; -import { AutoFocusDirective } from './utils/auto-focus.directive'; -import { ComcolPageBrowseByComponent } from './comcol-page-browse-by/comcol-page-browse-by.component'; -import { StartsWithDateComponent } from './starts-with/date/starts-with-date.component'; -import { StartsWithTextComponent } from './starts-with/text/starts-with-text.component'; -import { DSOSelectorComponent } from './dso-selector/dso-selector/dso-selector.component'; -import { CreateCommunityParentSelectorComponent } from './dso-selector/modal-wrappers/create-community-parent-selector/create-community-parent-selector.component'; -import { CreateItemParentSelectorComponent } from './dso-selector/modal-wrappers/create-item-parent-selector/create-item-parent-selector.component'; -import { CreateCollectionParentSelectorComponent } from './dso-selector/modal-wrappers/create-collection-parent-selector/create-collection-parent-selector.component'; -import { CommunitySearchResultListElementComponent } from './object-list/search-result-list-element/community-search-result/community-search-result-list-element.component'; -import { CollectionSearchResultListElementComponent } from './object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component'; -import { ItemSearchResultListElementComponent } from './object-list/search-result-list-element/item-search-result/item-search-result-list-element.component'; -import { EditItemSelectorComponent } from './dso-selector/modal-wrappers/edit-item-selector/edit-item-selector.component'; -import { EditCommunitySelectorComponent } from './dso-selector/modal-wrappers/edit-community-selector/edit-community-selector.component'; -import { EditCollectionSelectorComponent } from './dso-selector/modal-wrappers/edit-collection-selector/edit-collection-selector.component'; -import { ItemListPreviewComponent } from './object-list/my-dspace-result-list-element/item-list-preview/item-list-preview.component'; -import { MetadataFieldWrapperComponent } from '../+item-page/field-components/metadata-field-wrapper/metadata-field-wrapper.component'; -import { MetadataValuesComponent } from '../+item-page/field-components/metadata-values/metadata-values.component'; -import { RoleDirective } from './roles/role.directive'; -import { UserMenuComponent } from './auth-nav-menu/user-menu/user-menu.component'; -import { ClaimedTaskActionsReturnToPoolComponent } from './mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component'; -import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component'; -var MODULES = [ - // Do NOT include UniversalModule, HttpModule, or JsonpModule here - CommonModule, - SortablejsModule, - DynamicFormsCoreModule, - DynamicFormsNGBootstrapUIModule, - FileUploadModule, - FormsModule, - InfiniteScrollModule, - NgbModule, - NgbDatepickerModule, - NgbTimepickerModule, - NgbTypeaheadModule, - NgxPaginationModule, - ReactiveFormsModule, - RouterModule, - TranslateModule, - NouisliderModule, - MomentModule, - TextMaskModule, - MenuModule -]; -var ROOT_MODULES = [ - TooltipModule.forRoot() -]; -var PIPES = [ - // put shared pipes here - EnumKeysPipe, - FileSizePipe, - SafeUrlPipe, - TruncatePipe, - EmphasizePipe, - CapitalizePipe, - ObjectKeysPipe, - ObjectValuesPipe, - ConsolePipe, - ObjNgFor -]; -var COMPONENTS = [ - // put shared components here - AlertComponent, - AuthNavMenuComponent, - UserMenuComponent, - ChipsComponent, - ComcolPageContentComponent, - ComcolPageHeaderComponent, - ComcolPageLogoComponent, - ComColFormComponent, - CreateComColPageComponent, - EditComColPageComponent, - DeleteComColPageComponent, - ComcolPageBrowseByComponent, - DsDynamicFormComponent, - DsDynamicFormControlContainerComponent, - DsDynamicListComponent, - DsDynamicLookupComponent, - DsDynamicScrollableDropdownComponent, - DsDynamicTagComponent, - DsDynamicTypeaheadComponent, - DsDynamicRelationGroupComponent, - DsDatePickerComponent, - DsDynamicFormGroupComponent, - DsDynamicFormArrayComponent, - DsDatePickerInlineComponent, - ErrorComponent, - FormComponent, - LangSwitchComponent, - LoadingComponent, - LogInComponent, - LogOutComponent, - NumberPickerComponent, - ObjectListComponent, - ObjectDetailComponent, - ObjectGridComponent, - AbstractListableElementComponent, - WrapperListElementComponent, - WrapperDetailElementComponent, - WrapperGridElementComponent, - ObjectCollectionComponent, - PaginationComponent, - SearchFormComponent, - ThumbnailComponent, - GridThumbnailComponent, - UploaderComponent, - WrapperListElementComponent, - ItemListPreviewComponent, - MyDSpaceItemStatusComponent, - ItemSubmitterComponent, - ItemDetailPreviewComponent, - ItemDetailPreviewFieldComponent, - ClaimedTaskActionsComponent, - ClaimedTaskActionsApproveComponent, - ClaimedTaskActionsRejectComponent, - ClaimedTaskActionsReturnToPoolComponent, - ItemActionsComponent, - PoolTaskActionsComponent, - WorkflowitemActionsComponent, - WorkspaceitemActionsComponent, - ViewModeSwitchComponent, - TruncatableComponent, - TruncatablePartComponent, - BrowseByComponent, - InputSuggestionsComponent, - DSOSelectorComponent, - CreateCommunityParentSelectorComponent, - CreateCollectionParentSelectorComponent, - CreateItemParentSelectorComponent, - EditCommunitySelectorComponent, - EditCollectionSelectorComponent, - EditItemSelectorComponent, - CommunitySearchResultListElementComponent, - CollectionSearchResultListElementComponent, - ItemSearchResultListElementComponent, - TypedItemSearchResultListElementComponent, - ItemTypeSwitcherComponent, - BrowseByComponent -]; -var ENTRY_COMPONENTS = [ - // put shared entry components (components that are created dynamically) here - ItemListElementComponent, - CollectionListElementComponent, - CommunityListElementComponent, - MyDSpaceResultListElementComponent, - SearchResultListElementComponent, - CommunitySearchResultListElementComponent, - CollectionSearchResultListElementComponent, - ItemSearchResultListElementComponent, - ItemGridElementComponent, - CollectionGridElementComponent, - CommunityGridElementComponent, - SearchResultGridElementComponent, - PublicationListElementComponent, - PersonListElementComponent, - PersonMetadataListElementComponent, - OrgUnitMetadataListElementComponent, - OrgUnitListElementComponent, - ProjectListElementComponent, - JournalListElementComponent, - JournalVolumeListElementComponent, - JournalIssueListElementComponent, - BrowseEntryListElementComponent, - MyDSpaceResultDetailElementComponent, - SearchResultGridElementComponent, - DsDynamicListComponent, - DsDynamicLookupComponent, - DsDynamicScrollableDropdownComponent, - DsDynamicTagComponent, - DsDynamicTypeaheadComponent, - DsDynamicRelationGroupComponent, - DsDatePickerComponent, - DsDynamicFormGroupComponent, - DsDynamicFormArrayComponent, - DsDatePickerInlineComponent, - StartsWithDateComponent, - StartsWithTextComponent, - DSOSelectorComponent, - CreateCommunityParentSelectorComponent, - CreateCollectionParentSelectorComponent, - CreateItemParentSelectorComponent, - EditCommunitySelectorComponent, - EditCollectionSelectorComponent, - EditItemSelectorComponent, - StartsWithTextComponent, - PlainTextMetadataListElementComponent, - ItemMetadataListElementComponent, - MetadataRepresentationListElementComponent -]; -var SHARED_ITEM_PAGE_COMPONENTS = [ - MetadataFieldWrapperComponent, - MetadataValuesComponent, -]; -var PROVIDERS = [ - TruncatableService, - MockAdminGuard, - { - provide: DYNAMIC_FORM_CONTROL_MAP_FN, - useValue: dsDynamicFormControlMapFn - } -]; -var DIRECTIVES = [ - VarDirective, - DragClickDirective, - DebounceDirective, - ClickOutsideDirective, - AuthorityConfidenceStateDirective, - InListValidator, - AutoFocusDirective, - RoleDirective -]; -var SharedModule = /** @class */ (function () { - /** - * This module handles all components and pipes that need to be shared among multiple other modules - */ - function SharedModule() { - } - SharedModule = tslib_1.__decorate([ - NgModule({ - imports: MODULES.concat(ROOT_MODULES), - declarations: PIPES.concat(COMPONENTS, DIRECTIVES, ENTRY_COMPONENTS, SHARED_ITEM_PAGE_COMPONENTS), - providers: PROVIDERS.slice(), - exports: MODULES.concat(PIPES, COMPONENTS, SHARED_ITEM_PAGE_COMPONENTS, DIRECTIVES), - entryComponents: ENTRY_COMPONENTS.slice() - }) - /** - * This module handles all components and pipes that need to be shared among multiple other modules - */ - ], SharedModule); - return SharedModule; -}()); -export { SharedModule }; -//# sourceMappingURL=shared.module.js.map \ No newline at end of file diff --git a/src/app/shared/shared.module.js.map b/src/app/shared/shared.module.js.map deleted file mode 100644 index bd5ebff6ef..0000000000 --- a/src/app/shared/shared.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"shared.module.js","sourceRoot":"","sources":["shared.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/starts-with/date/starts-with-date.component.js b/src/app/shared/starts-with/date/starts-with-date.component.js deleted file mode 100644 index 67e408e086..0000000000 --- a/src/app/shared/starts-with/date/starts-with-date.component.js +++ /dev/null @@ -1,133 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderStartsWithFor, StartsWithType } from '../starts-with-decorator'; -import { StartsWithAbstractComponent } from '../starts-with-abstract.component'; -import { hasValue } from '../../empty.util'; -/** - * A switchable component rendering StartsWith options for the type "Date". - * The options are rendered in a dropdown with an input field (of type number) next to it. - */ -var StartsWithDateComponent = /** @class */ (function (_super) { - tslib_1.__extends(StartsWithDateComponent, _super); - function StartsWithDateComponent() { - var _this = _super !== null && _super.apply(this, arguments) || this; - /** - * Currently selected month - */ - _this.startsWithMonth = 'none'; - return _this; - } - StartsWithDateComponent.prototype.ngOnInit = function () { - this.monthOptions = [ - 'none', - 'january', - 'february', - 'march', - 'april', - 'may', - 'june', - 'july', - 'august', - 'september', - 'october', - 'november', - 'december' - ]; - _super.prototype.ngOnInit.call(this); - }; - /** - * Set the startsWith by event - * @param event - */ - StartsWithDateComponent.prototype.setStartsWithYearEvent = function (event) { - this.startsWithYear = +event.target.value; - this.setStartsWithYearMonth(); - this.setStartsWithParam(); - }; - /** - * Set the startsWithMonth by event - * @param event - */ - StartsWithDateComponent.prototype.setStartsWithMonthEvent = function (event) { - this.startsWithMonth = event.target.value; - this.setStartsWithYearMonth(); - this.setStartsWithParam(); - }; - /** - * Get startsWith year combined with month; - * Returned value: "{{year}}-{{month}}" - */ - StartsWithDateComponent.prototype.getStartsWith = function () { - var month = this.getStartsWithMonth(); - if (month > 0 && hasValue(this.startsWithYear) && this.startsWithYear !== -1) { - var twoDigitMonth = '' + month; - if (month < 10) { - twoDigitMonth = "0" + month; - } - return this.startsWithYear + "-" + twoDigitMonth; - } - else { - if (hasValue(this.startsWithYear) && this.startsWithYear > 0) { - return '' + this.startsWithYear; - } - else { - return undefined; - } - } - }; - /** - * Set startsWith year combined with month; - */ - StartsWithDateComponent.prototype.setStartsWithYearMonth = function () { - this.startsWith = this.getStartsWith(); - }; - /** - * Set the startsWith by string - * This method also sets startsWithYear and startsWithMonth correctly depending on the received value - * - When startsWith contains a "-", the first part is considered the year, the second part the month - * - When startsWith doesn't contain a "-", the whole string is expected to be the year - * startsWithMonth will be set depending on the index received after the "-" - * @param startsWith - */ - StartsWithDateComponent.prototype.setStartsWith = function (startsWith) { - this.startsWith = startsWith; - if (hasValue(startsWith) && startsWith.indexOf('-') > -1) { - var split = startsWith.split('-'); - this.startsWithYear = +split[0]; - var month = +split[1]; - if (month < this.monthOptions.length) { - this.startsWithMonth = this.monthOptions[month]; - } - else { - this.startsWithMonth = this.monthOptions[0]; - } - } - else { - this.startsWithYear = +startsWith; - } - this.setStartsWithParam(); - }; - /** - * Get startsWithYear as a number; - */ - StartsWithDateComponent.prototype.getStartsWithYear = function () { - return this.startsWithYear; - }; - /** - * Get startsWithMonth as a number; - */ - StartsWithDateComponent.prototype.getStartsWithMonth = function () { - return this.monthOptions.indexOf(this.startsWithMonth); - }; - StartsWithDateComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-starts-with-date', - styleUrls: ['./starts-with-date.component.scss'], - templateUrl: './starts-with-date.component.html' - }), - renderStartsWithFor(StartsWithType.date) - ], StartsWithDateComponent); - return StartsWithDateComponent; -}(StartsWithAbstractComponent)); -export { StartsWithDateComponent }; -//# sourceMappingURL=starts-with-date.component.js.map \ No newline at end of file diff --git a/src/app/shared/starts-with/date/starts-with-date.component.js.map b/src/app/shared/starts-with/date/starts-with-date.component.js.map deleted file mode 100644 index e3c2e0b67c..0000000000 --- a/src/app/shared/starts-with/date/starts-with-date.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"starts-with-date.component.js","sourceRoot":"","sources":["starts-with-date.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/starts-with/starts-with-abstract.component.js b/src/app/shared/starts-with/starts-with-abstract.component.js deleted file mode 100644 index 31e65afc24..0000000000 --- a/src/app/shared/starts-with/starts-with-abstract.component.js +++ /dev/null @@ -1,83 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { FormControl, FormGroup } from '@angular/forms'; -import { hasValue } from '../empty.util'; -/** - * An abstract component to render StartsWith options - */ -var StartsWithAbstractComponent = /** @class */ (function () { - function StartsWithAbstractComponent(startsWithOptions, route, router) { - this.startsWithOptions = startsWithOptions; - this.route = route; - this.router = router; - /** - * List of subscriptions - */ - this.subs = []; - } - StartsWithAbstractComponent.prototype.ngOnInit = function () { - var _this = this; - this.subs.push(this.route.queryParams.subscribe(function (params) { - if (hasValue(params.startsWith)) { - _this.setStartsWith(params.startsWith); - } - })); - this.formData = new FormGroup({ - startsWith: new FormControl() - }); - }; - /** - * Get startsWith - */ - StartsWithAbstractComponent.prototype.getStartsWith = function () { - return this.startsWith; - }; - /** - * Set the startsWith by event - * @param event - */ - StartsWithAbstractComponent.prototype.setStartsWithEvent = function (event) { - this.startsWith = event.target.value; - this.setStartsWithParam(); - }; - /** - * Set the startsWith by string - * @param startsWith - */ - StartsWithAbstractComponent.prototype.setStartsWith = function (startsWith) { - this.startsWith = startsWith; - this.setStartsWithParam(); - }; - /** - * Add/Change the url query parameter startsWith using the local variable - */ - StartsWithAbstractComponent.prototype.setStartsWithParam = function () { - if (this.startsWith === '-1') { - this.startsWith = undefined; - } - this.router.navigate([], { - queryParams: Object.assign({ startsWith: this.startsWith }), - queryParamsHandling: 'merge' - }); - }; - /** - * Submit the form data. Called when clicking a submit button on the form. - * @param data - */ - StartsWithAbstractComponent.prototype.submitForm = function (data) { - this.startsWith = data.startsWith; - this.setStartsWithParam(); - }; - StartsWithAbstractComponent.prototype.ngOnDestroy = function () { - this.subs.filter(function (sub) { return hasValue(sub); }).forEach(function (sub) { return sub.unsubscribe(); }); - }; - StartsWithAbstractComponent = tslib_1.__decorate([ - tslib_1.__param(0, Inject('startsWithOptions')), - tslib_1.__metadata("design:paramtypes", [Array, ActivatedRoute, - Router]) - ], StartsWithAbstractComponent); - return StartsWithAbstractComponent; -}()); -export { StartsWithAbstractComponent }; -//# sourceMappingURL=starts-with-abstract.component.js.map \ No newline at end of file diff --git a/src/app/shared/starts-with/starts-with-abstract.component.js.map b/src/app/shared/starts-with/starts-with-abstract.component.js.map deleted file mode 100644 index ce1c7e265e..0000000000 --- a/src/app/shared/starts-with/starts-with-abstract.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"starts-with-abstract.component.js","sourceRoot":"","sources":["starts-with-abstract.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;GAEG;AACH;IAgBE,qCAAuD,iBAAwB,EAClD,KAAqB,EACrB,MAAc;QAFY,sBAAiB,GAAjB,iBAAiB,CAAO;QAClD,UAAK,GAAL,KAAK,CAAgB;QACrB,WAAM,GAAN,MAAM,CAAQ;QAP3C;;WAEG;QACH,SAAI,GAAmB,EAAE,CAAC;IAK1B,CAAC;IAED,8CAAQ,GAAR;QAAA,iBAWC;QAVC,IAAI,CAAC,IAAI,CAAC,IAAI,CACZ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,UAAC,MAAM;YACtC,IAAI,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;gBAC/B,KAAI,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aACvC;QACH,CAAC,CAAC,CACH,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC;YAC5B,UAAU,EAAE,IAAI,WAAW,EAAE;SAC9B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,mDAAa,GAAb;QACE,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,wDAAkB,GAAlB,UAAmB,KAAY;QAC7B,IAAI,CAAC,UAAU,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;QAC3D,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,mDAAa,GAAb,UAAc,UAAkB;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,wDAAkB,GAAlB;QACE,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE;YAC5B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;SAC7B;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE;YACvB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3D,mBAAmB,EAAE,OAAO;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,gDAAU,GAAV,UAAW,IAAI;QACb,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED,iDAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,GAAG,CAAC,EAAb,CAAa,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,WAAW,EAAE,EAAjB,CAAiB,CAAC,CAAC;IAC/E,CAAC;IAnFU,2BAA2B;QAgBlB,mBAAA,MAAM,CAAC,mBAAmB,CAAC,CAAA;wDACX,cAAc;YACb,MAAM;OAlBhC,2BAA2B,CAoFvC;IAAD,kCAAC;CAAA,AApFD,IAoFC;SApFY,2BAA2B"} \ No newline at end of file diff --git a/src/app/shared/starts-with/starts-with-decorator.js b/src/app/shared/starts-with/starts-with-decorator.js deleted file mode 100644 index 520883b3f7..0000000000 --- a/src/app/shared/starts-with/starts-with-decorator.js +++ /dev/null @@ -1,29 +0,0 @@ -var startsWithMap = new Map(); -/** - * An enum that defines the type of StartsWith options - */ -export var StartsWithType; -(function (StartsWithType) { - StartsWithType["text"] = "Text"; - StartsWithType["date"] = "Date"; -})(StartsWithType || (StartsWithType = {})); -/** - * Fetch a decorator to render a StartsWith component for type - * @param type - */ -export function renderStartsWithFor(type) { - return function decorator(objectElement) { - if (!objectElement) { - return; - } - startsWithMap.set(type, objectElement); - }; -} -/** - * Get the correct component depending on the StartsWith type - * @param type - */ -export function getStartsWithComponent(type) { - return startsWithMap.get(type); -} -//# sourceMappingURL=starts-with-decorator.js.map \ No newline at end of file diff --git a/src/app/shared/starts-with/starts-with-decorator.js.map b/src/app/shared/starts-with/starts-with-decorator.js.map deleted file mode 100644 index 3e84c0b3e8..0000000000 --- a/src/app/shared/starts-with/starts-with-decorator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"starts-with-decorator.js","sourceRoot":"","sources":["starts-with-decorator.ts"],"names":[],"mappings":"AAAA,IAAM,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;AAEhC;;GAEG;AACH,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED;;;GAGG;AACH,MAAM,8BAA8B,IAAoB;IACtD,OAAO,mBAAmB,aAAkB;QAC1C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,iCAAiC,IAAoB;IACzD,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/starts-with/text/starts-with-text.component.js b/src/app/shared/starts-with/text/starts-with-text.component.js deleted file mode 100644 index e6b4014239..0000000000 --- a/src/app/shared/starts-with/text/starts-with-text.component.js +++ /dev/null @@ -1,55 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component } from '@angular/core'; -import { renderStartsWithFor, StartsWithType } from '../starts-with-decorator'; -import { StartsWithAbstractComponent } from '../starts-with-abstract.component'; -import { hasValue } from '../../empty.util'; -/** - * A switchable component rendering StartsWith options for the type "Text". - */ -var StartsWithTextComponent = /** @class */ (function (_super) { - tslib_1.__extends(StartsWithTextComponent, _super); - function StartsWithTextComponent() { - return _super !== null && _super.apply(this, arguments) || this; - } - /** - * Get startsWith as text; - */ - StartsWithTextComponent.prototype.getStartsWith = function () { - if (hasValue(this.startsWith)) { - return this.startsWith; - } - else { - return ''; - } - }; - /** - * Add/Change the url query parameter startsWith using the local variable - */ - StartsWithTextComponent.prototype.setStartsWithParam = function () { - if (this.startsWith === '0-9') { - this.startsWith = '0'; - } - _super.prototype.setStartsWithParam.call(this); - }; - /** - * Checks whether the provided option is equal to the current startsWith - * @param option - */ - StartsWithTextComponent.prototype.isSelectedOption = function (option) { - if (this.startsWith === '0' && option === '0-9') { - return true; - } - return option === this.startsWith; - }; - StartsWithTextComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-starts-with-text', - styleUrls: ['./starts-with-text.component.scss'], - templateUrl: './starts-with-text.component.html' - }), - renderStartsWithFor(StartsWithType.text) - ], StartsWithTextComponent); - return StartsWithTextComponent; -}(StartsWithAbstractComponent)); -export { StartsWithTextComponent }; -//# sourceMappingURL=starts-with-text.component.js.map \ No newline at end of file diff --git a/src/app/shared/starts-with/text/starts-with-text.component.js.map b/src/app/shared/starts-with/text/starts-with-text.component.js.map deleted file mode 100644 index 4e975cb963..0000000000 --- a/src/app/shared/starts-with/text/starts-with-text.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"starts-with-text.component.js","sourceRoot":"","sources":["starts-with-text.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C;;GAEG;AAOH;IAA6C,mDAA2B;IAAxE;;IAkCA,CAAC;IAhCC;;OAEG;IACH,+CAAa,GAAb;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC,UAAU,CAAC;SACxB;aAAM;YACL,OAAO,EAAE,CAAC;SACX;IACH,CAAC;IAED;;OAEG;IACH,oDAAkB,GAAlB;QACE,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE;YAC7B,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;SACvB;QACD,iBAAM,kBAAkB,WAAE,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,kDAAgB,GAAhB,UAAiB,MAAc;QAC7B,IAAI,IAAI,CAAC,UAAU,KAAK,GAAG,IAAI,MAAM,KAAK,KAAK,EAAE;YAC/C,OAAO,IAAI,CAAC;SACb;QACD,OAAO,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC;IACpC,CAAC;IAhCU,uBAAuB;QANnC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,mCAAmC,CAAC;YAChD,WAAW,EAAE,mCAAmC;SACjD,CAAC;QACD,mBAAmB,CAAC,cAAc,CAAC,IAAI,CAAC;OAC5B,uBAAuB,CAkCnC;IAAD,8BAAC;CAAA,AAlCD,CAA6C,2BAA2B,GAkCvE;SAlCY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/testing/active-router-stub.js b/src/app/shared/testing/active-router-stub.js deleted file mode 100644 index 32e831461e..0000000000 --- a/src/app/shared/testing/active-router-stub.js +++ /dev/null @@ -1,46 +0,0 @@ -import { map } from 'rxjs/operators'; -import { convertToParamMap } from '@angular/router'; -import { BehaviorSubject } from 'rxjs'; -var ActivatedRouteStub = /** @class */ (function () { - function ActivatedRouteStub(params) { - // ActivatedRoute.params is Observable - this.subject = new BehaviorSubject(this.testParams); - this.params = this.subject.asObservable(); - this.queryParams = this.subject.asObservable(); - this.paramMap = this.subject.asObservable().pipe(map(function (params) { return convertToParamMap(params); })); - this.queryParamMap = this.subject.asObservable().pipe(map(function (params) { return convertToParamMap(params); })); - if (params) { - this.testParams = params; - } - else { - this.testParams = {}; - } - } - ; - Object.defineProperty(ActivatedRouteStub.prototype, "testParams", { - // Test parameters - get: function () { - return this._testParams; - }, - set: function (params) { - this._testParams = params; - this.subject.next(params); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ActivatedRouteStub.prototype, "snapshot", { - // ActivatedRoute.snapshot.params - get: function () { - return { - params: this.testParams, - queryParamMap: convertToParamMap(this.testParams) - }; - }, - enumerable: true, - configurable: true - }); - return ActivatedRouteStub; -}()); -export { ActivatedRouteStub }; -//# sourceMappingURL=active-router-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/active-router-stub.js.map b/src/app/shared/testing/active-router-stub.js.map deleted file mode 100644 index 25c7e620f2..0000000000 --- a/src/app/shared/testing/active-router-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"active-router-stub.js","sourceRoot":"","sources":["active-router-stub.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAoB,MAAM,iBAAiB,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEvC;IAWE,4BAAY,MAAe;QAR3B,sCAAsC;QAC9B,YAAO,GAA0B,IAAI,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE9E,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACrC,gBAAW,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1C,aAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,MAAc,IAAK,OAAA,iBAAiB,CAAC,MAAM,CAAC,EAAzB,CAAyB,CAAC,CAAC,CAAC;QAChG,kBAAa,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,MAAc,IAAK,OAAA,iBAAiB,CAAC,MAAM,CAAC,EAAzB,CAAyB,CAAC,CAAC,CAAC;QAGnG,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;SACtB;IACH,CAAC;IAT+F,CAAC;IAYjG,sBAAI,0CAAU;QADd,kBAAkB;aAClB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aAED,UAAe,MAAU;YACvB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;;;OALA;IAQD,sBAAI,wCAAQ;QADZ,iCAAiC;aACjC;YACE,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,UAAU;gBACvB,aAAa,EAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC;aAClD,CAAA;QACH,CAAC;;;OAAA;IACH,yBAAC;AAAD,CAAC,AApCD,IAoCC"} \ No newline at end of file diff --git a/src/app/shared/testing/auth-request-service-stub.js b/src/app/shared/testing/auth-request-service-stub.js deleted file mode 100644 index fa8528198c..0000000000 --- a/src/app/shared/testing/auth-request-service-stub.js +++ /dev/null @@ -1,74 +0,0 @@ -import { of as observableOf } from 'rxjs'; -import { AuthStatus } from '../../core/auth/models/auth-status.model'; -import { AuthTokenInfo } from '../../core/auth/models/auth-token-info.model'; -import { isNotEmpty } from '../empty.util'; -import { EPersonMock } from './eperson-mock'; -import { RemoteData } from '../../core/data/remote-data'; -var AuthRequestServiceStub = /** @class */ (function () { - function AuthRequestServiceStub() { - this.mockUser = EPersonMock; - this.mockTokenInfo = new AuthTokenInfo('test_token'); - } - AuthRequestServiceStub.prototype.postToEndpoint = function (method, body, options) { - var authStatusStub = new AuthStatus(); - if (isNotEmpty(body)) { - var parsedBody = this.parseQueryString(body); - authStatusStub.okay = true; - if (parsedBody.user === 'user' && parsedBody.password === 'password') { - authStatusStub.authenticated = true; - authStatusStub.token = this.mockTokenInfo; - } - else { - authStatusStub.authenticated = false; - } - } - else { - var token = options.headers.lazyUpdate[1].value; - if (this.validateToken(token)) { - authStatusStub.authenticated = true; - authStatusStub.token = this.mockTokenInfo; - authStatusStub.eperson = observableOf(new RemoteData(false, false, true, undefined, this.mockUser)); - } - else { - authStatusStub.authenticated = false; - } - } - return observableOf(authStatusStub); - }; - AuthRequestServiceStub.prototype.getRequest = function (method, options) { - var authStatusStub = new AuthStatus(); - switch (method) { - case 'logout': - authStatusStub.authenticated = false; - break; - case 'status': - var token = options.headers.lazyUpdate[1].value; - if (this.validateToken(token)) { - authStatusStub.authenticated = true; - authStatusStub.token = this.mockTokenInfo; - authStatusStub.eperson = observableOf(new RemoteData(false, false, true, undefined, this.mockUser)); - } - else { - authStatusStub.authenticated = false; - } - break; - } - return observableOf(authStatusStub); - }; - AuthRequestServiceStub.prototype.validateToken = function (token) { - return (token === 'Bearer test_token'); - }; - AuthRequestServiceStub.prototype.parseQueryString = function (query) { - var obj = Object.create({}); - var vars = query.split('&'); - for (var _i = 0, vars_1 = vars; _i < vars_1.length; _i++) { - var param = vars_1[_i]; - var pair = param.split('='); - obj[pair[0]] = pair[1]; - } - return obj; - }; - return AuthRequestServiceStub; -}()); -export { AuthRequestServiceStub }; -//# sourceMappingURL=auth-request-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/auth-request-service-stub.js.map b/src/app/shared/testing/auth-request-service-stub.js.map deleted file mode 100644 index b7d02f20d5..0000000000 --- a/src/app/shared/testing/auth-request-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-request-service-stub.js","sourceRoot":"","sources":["auth-request-service-stub.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/testing/auth-service-stub.js b/src/app/shared/testing/auth-service-stub.js deleted file mode 100644 index 371d2ebecc..0000000000 --- a/src/app/shared/testing/auth-service-stub.js +++ /dev/null @@ -1,85 +0,0 @@ -import { of as observableOf } from 'rxjs'; -import { AuthStatus } from '../../core/auth/models/auth-status.model'; -import { AuthTokenInfo } from '../../core/auth/models/auth-token-info.model'; -import { EPersonMock } from './eperson-mock'; -import { RemoteData } from '../../core/data/remote-data'; -var AuthServiceStub = /** @class */ (function () { - function AuthServiceStub() { - this.token = new AuthTokenInfo('token_test'); - this._tokenExpired = false; - this.token.expires = Date.now() + (1000 * 60 * 60); - } - AuthServiceStub.prototype.authenticate = function (user, password) { - if (user === 'user' && password === 'password') { - var authStatus = new AuthStatus(); - authStatus.okay = true; - authStatus.authenticated = true; - authStatus.token = this.token; - authStatus.eperson = observableOf(new RemoteData(false, false, true, undefined, EPersonMock)); - return observableOf(authStatus); - } - else { - console.log('error'); - throw (new Error('Message Error test')); - } - }; - AuthServiceStub.prototype.authenticatedUser = function (token) { - if (token.accessToken === 'token_test') { - return observableOf(EPersonMock); - } - else { - throw (new Error('Message Error test')); - } - }; - AuthServiceStub.prototype.buildAuthHeader = function (token) { - return "Bearer " + token.accessToken; - }; - AuthServiceStub.prototype.getToken = function () { - return this.token; - }; - AuthServiceStub.prototype.hasValidAuthenticationToken = function () { - return observableOf(this.token); - }; - AuthServiceStub.prototype.logout = function () { - return observableOf(true); - }; - AuthServiceStub.prototype.isTokenExpired = function (token) { - return this._tokenExpired; - }; - /** - * This method is used to ease testing - */ - AuthServiceStub.prototype.setTokenAsExpired = function () { - this._tokenExpired = true; - }; - /** - * This method is used to ease testing - */ - AuthServiceStub.prototype.setTokenAsNotExpired = function () { - this._tokenExpired = false; - }; - AuthServiceStub.prototype.isTokenExpiring = function () { - return observableOf(false); - }; - AuthServiceStub.prototype.refreshAuthenticationToken = function (token) { - return observableOf(this.token); - }; - AuthServiceStub.prototype.redirectToPreviousUrl = function () { - return; - }; - AuthServiceStub.prototype.removeToken = function () { - return; - }; - AuthServiceStub.prototype.setRedirectUrl = function (url) { - return; - }; - AuthServiceStub.prototype.storeToken = function (token) { - return; - }; - AuthServiceStub.prototype.isAuthenticated = function () { - return observableOf(true); - }; - return AuthServiceStub; -}()); -export { AuthServiceStub }; -//# sourceMappingURL=auth-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/auth-service-stub.js.map b/src/app/shared/testing/auth-service-stub.js.map deleted file mode 100644 index 1787839899..0000000000 --- a/src/app/shared/testing/auth-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auth-service-stub.js","sourceRoot":"","sources":["auth-service-stub.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/shared/testing/authority-service-stub.js b/src/app/shared/testing/authority-service-stub.js deleted file mode 100644 index 40e630c55e..0000000000 --- a/src/app/shared/testing/authority-service-stub.js +++ /dev/null @@ -1,21 +0,0 @@ -import { of as observableOf } from 'rxjs'; -import { IntegrationData } from '../../core/integration/integration-data'; -import { PageInfo } from '../../core/shared/page-info.model'; -import { AuthorityValue } from '../../core/integration/models/authority.value'; -var AuthorityServiceStub = /** @class */ (function () { - function AuthorityServiceStub() { - this._payload = [ - Object.assign(new AuthorityValue(), { id: 1, display: 'one', value: 1 }), - Object.assign(new AuthorityValue(), { id: 2, display: 'two', value: 2 }), - ]; - } - AuthorityServiceStub.prototype.setNewPayload = function (payload) { - this._payload = payload; - }; - AuthorityServiceStub.prototype.getEntriesByName = function (options) { - return observableOf(new IntegrationData(new PageInfo(), this._payload)); - }; - return AuthorityServiceStub; -}()); -export { AuthorityServiceStub }; -//# sourceMappingURL=authority-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/authority-service-stub.js.map b/src/app/shared/testing/authority-service-stub.js.map deleted file mode 100644 index a3e08627c4..0000000000 --- a/src/app/shared/testing/authority-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"authority-service-stub.js","sourceRoot":"","sources":["authority-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAE/E;IAAA;QAEU,aAAQ,GAAG;YACjB,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAC,EAAC,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAC,CAAC;YACrE,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAC,EAAC,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAC,CAAC;SACtE,CAAC;IASJ,CAAC;IAPC,4CAAa,GAAb,UAAc,OAAO;QACnB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,+CAAgB,GAAhB,UAAiB,OAAiC;QAChD,OAAO,YAAY,CAAC,IAAI,eAAe,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1E,CAAC;IACH,2BAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/shared/testing/css-variable-service-stub.js b/src/app/shared/testing/css-variable-service-stub.js deleted file mode 100644 index 314ee7f542..0000000000 --- a/src/app/shared/testing/css-variable-service-stub.js +++ /dev/null @@ -1,23 +0,0 @@ -import { of as observableOf } from 'rxjs'; -var variables = { - smMin: '576px,', - mdMin: '768px,', - lgMin: '992px', - xlMin: '1200px', -}; -var CSSVariableServiceStub = /** @class */ (function () { - function CSSVariableServiceStub() { - } - CSSVariableServiceStub.prototype.getVariable = function (name) { - return observableOf('500px'); - }; - CSSVariableServiceStub.prototype.getAllVariables = function (name) { - return observableOf(variables); - }; - CSSVariableServiceStub.prototype.addCSSVariable = function (name, value) { - /**/ - }; - return CSSVariableServiceStub; -}()); -export { CSSVariableServiceStub }; -//# sourceMappingURL=css-variable-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/css-variable-service-stub.js.map b/src/app/shared/testing/css-variable-service-stub.js.map deleted file mode 100644 index a7a452b5c1..0000000000 --- a/src/app/shared/testing/css-variable-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"css-variable-service-stub.js","sourceRoot":"","sources":["css-variable-service-stub.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C,IAAM,SAAS,GAAG;IAChB,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,QAAQ;CACT,CAAC;AAET;IAAA;IAYA,CAAC;IAXC,4CAAW,GAAX,UAAY,IAAY;QACtB,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,gDAAe,GAAf,UAAgB,IAAY;QAC1B,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED,+CAAc,GAAd,UAAe,IAAY,EAAE,KAAa;QACxC,IAAI;IACN,CAAC;IACH,6BAAC;AAAD,CAAC,AAZD,IAYC"} \ No newline at end of file diff --git a/src/app/shared/testing/eperson-mock.js b/src/app/shared/testing/eperson-mock.js deleted file mode 100644 index d189e33c8e..0000000000 --- a/src/app/shared/testing/eperson-mock.js +++ /dev/null @@ -1,42 +0,0 @@ -import { EPerson } from '../../core/eperson/models/eperson.model'; -export var EPersonMock = Object.assign(new EPerson(), { - handle: null, - groups: [], - netid: 'test@test.com', - lastActive: '2018-05-14T12:25:42.411+0000', - canLogIn: true, - email: 'test@test.com', - requireCertificate: false, - selfRegistered: false, - self: 'https://dspace.4science.it/dspace-spring-rest/api/eperson/epersons/testid', - id: 'testid', - uuid: 'testid', - type: 'eperson', - metadata: { - 'dc.title': [ - { - language: null, - value: 'User Test' - } - ], - 'eperson.firstname': [ - { - language: null, - value: 'User' - } - ], - 'eperson.lastname': [ - { - language: null, - value: 'Test' - }, - ], - 'eperson.language': [ - { - language: null, - value: 'en' - }, - ] - } -}); -//# sourceMappingURL=eperson-mock.js.map \ No newline at end of file diff --git a/src/app/shared/testing/eperson-mock.js.map b/src/app/shared/testing/eperson-mock.js.map deleted file mode 100644 index 4614e04850..0000000000 --- a/src/app/shared/testing/eperson-mock.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"eperson-mock.js","sourceRoot":"","sources":["eperson-mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yCAAyC,CAAC;AAElE,MAAM,CAAC,IAAM,WAAW,GAAY,MAAM,CAAC,MAAM,CAAC,IAAI,OAAO,EAAE,EAAC;IAC9D,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,eAAe;IACtB,UAAU,EAAE,8BAA8B;IAC1C,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,eAAe;IACtB,kBAAkB,EAAE,KAAK;IACzB,cAAc,EAAE,KAAK;IACrB,IAAI,EAAE,2EAA2E;IACjF,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE;QACR,UAAU,EAAE;YACV;gBACE,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,WAAW;aACnB;SACF;QACD,mBAAmB,EAAE;YACnB;gBACE,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,MAAM;aACd;SACF;QACD,kBAAkB,EAAE;YAClB;gBACE,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,MAAM;aACd;SACF;QACD,kBAAkB,EAAE;YAClB;gBACE,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,IAAI;aACZ;SACF;KACF;CACF,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/shared/testing/hal-endpoint-service-stub.js b/src/app/shared/testing/hal-endpoint-service-stub.js deleted file mode 100644 index 9462df0309..0000000000 --- a/src/app/shared/testing/hal-endpoint-service-stub.js +++ /dev/null @@ -1,13 +0,0 @@ -import { of as observableOf } from 'rxjs'; -var HALEndpointServiceStub = /** @class */ (function () { - function HALEndpointServiceStub(url) { - this.url = url; - } - ; - HALEndpointServiceStub.prototype.getEndpoint = function (path) { - return observableOf(this.url + '/' + path); - }; - return HALEndpointServiceStub; -}()); -export { HALEndpointServiceStub }; -//# sourceMappingURL=hal-endpoint-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/hal-endpoint-service-stub.js.map b/src/app/shared/testing/hal-endpoint-service-stub.js.map deleted file mode 100644 index f1fe0c6810..0000000000 --- a/src/app/shared/testing/hal-endpoint-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"hal-endpoint-service-stub.js","sourceRoot":"","sources":["hal-endpoint-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAE1C;IAEE,gCAAoB,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;IAAG,CAAC;IAAA,CAAC;IACpC,4CAAW,GAAX,UAAY,IAAY;QACtB,OAAO,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;IACH,6BAAC;AAAD,CAAC,AAND,IAMC"} \ No newline at end of file diff --git a/src/app/shared/testing/host-window-service-stub.js b/src/app/shared/testing/host-window-service-stub.js deleted file mode 100644 index 3fd93aae41..0000000000 --- a/src/app/shared/testing/host-window-service-stub.js +++ /dev/null @@ -1,19 +0,0 @@ -import { of as observableOf } from 'rxjs'; -// declare a stub service -var HostWindowServiceStub = /** @class */ (function () { - function HostWindowServiceStub(width) { - this.setWidth(width); - } - HostWindowServiceStub.prototype.setWidth = function (width) { - this.width = width; - }; - HostWindowServiceStub.prototype.isXs = function () { - return observableOf(this.width < 576); - }; - HostWindowServiceStub.prototype.isXsOrSm = function () { - return this.isXs(); - }; - return HostWindowServiceStub; -}()); -export { HostWindowServiceStub }; -//# sourceMappingURL=host-window-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/host-window-service-stub.js.map b/src/app/shared/testing/host-window-service-stub.js.map deleted file mode 100644 index 9ee176b21a..0000000000 --- a/src/app/shared/testing/host-window-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"host-window-service-stub.js","sourceRoot":"","sources":["host-window-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtD,yBAAyB;AACzB;IAIE,+BAAY,KAAK;QACf,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,wCAAQ,GAAR,UAAS,KAAK;QACZ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,oCAAI,GAAJ;QACE,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,wCAAQ,GAAR;QACE,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IACH,4BAAC;AAAD,CAAC,AAnBD,IAmBC"} \ No newline at end of file diff --git a/src/app/shared/testing/menu-service-stub.js b/src/app/shared/testing/menu-service-stub.js deleted file mode 100644 index 0ef5a4aea5..0000000000 --- a/src/app/shared/testing/menu-service-stub.js +++ /dev/null @@ -1,94 +0,0 @@ -import { of as observableOf } from 'rxjs'; -var MenuServiceStub = /** @class */ (function () { - function MenuServiceStub() { - this.visibleSection1 = { - id: 'section', - visible: true, - active: false - }; - this.visibleSection2 = { - id: 'section_2', - visible: true - }; - this.hiddenSection3 = { - id: 'section_3', - visible: false - }; - this.subSection4 = { - id: 'section_4', - visible: true, - parentID: 'section1' - }; - } - MenuServiceStub.prototype.toggleMenu = function () { - }; - ; - MenuServiceStub.prototype.expandMenu = function () { - }; - ; - MenuServiceStub.prototype.collapseMenu = function () { - }; - ; - MenuServiceStub.prototype.showMenu = function () { - }; - ; - MenuServiceStub.prototype.hideMenu = function () { - }; - ; - MenuServiceStub.prototype.expandMenuPreview = function () { - }; - ; - MenuServiceStub.prototype.collapseMenuPreview = function () { - }; - ; - MenuServiceStub.prototype.toggleActiveSection = function () { - }; - ; - MenuServiceStub.prototype.activateSection = function () { - }; - ; - MenuServiceStub.prototype.deactivateSection = function () { - }; - ; - MenuServiceStub.prototype.addSection = function () { - }; - ; - MenuServiceStub.prototype.removeSection = function () { - }; - ; - MenuServiceStub.prototype.isMenuVisible = function (id) { - return observableOf(true); - }; - ; - MenuServiceStub.prototype.isMenuCollapsed = function (id) { - return observableOf(false); - }; - ; - MenuServiceStub.prototype.isMenuPreviewCollapsed = function (id) { - return observableOf(true); - }; - ; - MenuServiceStub.prototype.hasSubSections = function (id, sectionID) { - return observableOf(true); - }; - ; - MenuServiceStub.prototype.getMenuTopSections = function (id) { - return observableOf([this.visibleSection1, this.visibleSection2]); - }; - ; - MenuServiceStub.prototype.getSubSectionsByParentID = function (id) { - return observableOf([this.subSection4]); - }; - ; - MenuServiceStub.prototype.isSectionActive = function (id, sectionID) { - return observableOf(true); - }; - ; - MenuServiceStub.prototype.isSectionVisible = function (id, sectionID) { - return observableOf(true); - }; - ; - return MenuServiceStub; -}()); -export { MenuServiceStub }; -//# sourceMappingURL=menu-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/menu-service-stub.js.map b/src/app/shared/testing/menu-service-stub.js.map deleted file mode 100644 index c99889fc81..0000000000 --- a/src/app/shared/testing/menu-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"menu-service-stub.js","sourceRoot":"","sources":["menu-service-stub.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAI1C;IAAA;QACE,oBAAe,GAAG;YAChB,EAAE,EAAE,SAAS;YACb,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,KAAK;SACP,CAAC;QACT,oBAAe,GAAG;YAChB,EAAE,EAAE,WAAW;YACf,OAAO,EAAE,IAAI;SACP,CAAC;QACT,mBAAc,GAAG;YACf,EAAE,EAAE,WAAW;YACf,OAAO,EAAE,KAAK;SACR,CAAC;QACT,gBAAW,GAAG;YACZ,EAAE,EAAE,WAAW;YACf,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,UAAU;SACd,CAAC;IAqEX,CAAC;IAnEC,oCAAU,GAAV;IACA,CAAC;IAAA,CAAC;IAEF,oCAAU,GAAV;IACA,CAAC;IAAA,CAAC;IAEF,sCAAY,GAAZ;IACA,CAAC;IAAA,CAAC;IAEF,kCAAQ,GAAR;IACA,CAAC;IAAA,CAAC;IAEF,kCAAQ,GAAR;IACA,CAAC;IAAA,CAAC;IAEF,2CAAiB,GAAjB;IACA,CAAC;IAAA,CAAC;IAEF,6CAAmB,GAAnB;IACA,CAAC;IAAA,CAAC;IAEF,6CAAmB,GAAnB;IACA,CAAC;IAAA,CAAC;IAEF,yCAAe,GAAf;IACA,CAAC;IAAA,CAAC;IAEF,2CAAiB,GAAjB;IACA,CAAC;IAAA,CAAC;IAEF,oCAAU,GAAV;IACA,CAAC;IAAA,CAAC;IAEF,uCAAa,GAAb;IACA,CAAC;IAAA,CAAC;IAEF,uCAAa,GAAb,UAAc,EAAU;QACtB,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IAEF,yCAAe,GAAf,UAAgB,EAAU;QACxB,OAAO,YAAY,CAAC,KAAK,CAAC,CAAA;IAC5B,CAAC;IAAA,CAAC;IAEF,gDAAsB,GAAtB,UAAuB,EAAU;QAC/B,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IAEF,wCAAc,GAAd,UAAe,EAAU,EAAE,SAAiB;QAC1C,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IAEF,4CAAkB,GAAlB,UAAmB,EAAU;QAC3B,OAAO,YAAY,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAA;IACnE,CAAC;IAAA,CAAC;IAEF,kDAAwB,GAAxB,UAAyB,EAAU;QACjC,OAAO,YAAY,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAA;IACzC,CAAC;IAAA,CAAC;IAEF,yCAAe,GAAf,UAAgB,EAAU,EAAE,SAAiB;QAC3C,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IAEF,0CAAgB,GAAhB,UAAiB,EAAU,EAAE,SAAiB;QAC5C,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAAA,CAAC;IACJ,sBAAC;AAAD,CAAC,AAvFD,IAuFC"} \ No newline at end of file diff --git a/src/app/shared/testing/mock-action.js b/src/app/shared/testing/mock-action.js deleted file mode 100644 index eb52581277..0000000000 --- a/src/app/shared/testing/mock-action.js +++ /dev/null @@ -1,8 +0,0 @@ -var MockAction = /** @class */ (function () { - function MockAction() { - this.type = null; - } - return MockAction; -}()); -export { MockAction }; -//# sourceMappingURL=mock-action.js.map \ No newline at end of file diff --git a/src/app/shared/testing/mock-action.js.map b/src/app/shared/testing/mock-action.js.map deleted file mode 100644 index def2870f4d..0000000000 --- a/src/app/shared/testing/mock-action.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-action.js","sourceRoot":"","sources":["mock-action.ts"],"names":[],"mappings":"AAEA;IAAA;QACE,SAAI,GAAG,IAAI,CAAC;IAEd,CAAC;IAAD,iBAAC;AAAD,CAAC,AAHD,IAGC"} \ No newline at end of file diff --git a/src/app/shared/testing/mock-store.js b/src/app/shared/testing/mock-store.js deleted file mode 100644 index cfcbeac3bc..0000000000 --- a/src/app/shared/testing/mock-store.js +++ /dev/null @@ -1,25 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { ActionsSubject, ReducerManager, StateObservable, Store } from '@ngrx/store'; -import { BehaviorSubject } from 'rxjs/internal/BehaviorSubject'; -var MockStore = /** @class */ (function (_super) { - tslib_1.__extends(MockStore, _super); - function MockStore(state$, actionsObserver, reducerManager) { - var _this = _super.call(this, state$, actionsObserver, reducerManager) || this; - _this.stateSubject = new BehaviorSubject({}); - _this.source = _this.stateSubject.asObservable(); - return _this; - } - MockStore.prototype.nextState = function (nextState) { - this.stateSubject.next(nextState); - }; - MockStore = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [StateObservable, - ActionsSubject, - ReducerManager]) - ], MockStore); - return MockStore; -}(Store)); -export { MockStore }; -//# sourceMappingURL=mock-store.js.map \ No newline at end of file diff --git a/src/app/shared/testing/mock-store.js.map b/src/app/shared/testing/mock-store.js.map deleted file mode 100644 index 5fde29ed0f..0000000000 --- a/src/app/shared/testing/mock-store.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-store.js","sourceRoot":"","sources":["mock-store.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE;IAAkC,qCAAQ;IAGxC,mBACE,MAAuB,EACvB,eAA+B,EAC/B,cAA8B;QAHhC,YAKE,kBAAM,MAAM,EAAE,eAAe,EAAE,cAAc,CAAC,SAE/C;QATO,kBAAY,GAAG,IAAI,eAAe,CAAI,EAAO,CAAC,CAAC;QAQrD,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;;IACjD,CAAC;IAED,6BAAS,GAAT,UAAU,SAAY;QACpB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAdU,SAAS;QADrB,UAAU,EAAE;iDAKD,eAAe;YACN,cAAc;YACf,cAAc;OANrB,SAAS,CAerB;IAAD,gBAAC;CAAA,AAfD,CAAkC,KAAK,GAetC;SAfY,SAAS"} \ No newline at end of file diff --git a/src/app/shared/testing/mock-submission-config.js b/src/app/shared/testing/mock-submission-config.js deleted file mode 100644 index f222dac593..0000000000 --- a/src/app/shared/testing/mock-submission-config.js +++ /dev/null @@ -1,51 +0,0 @@ -export var MOCK_SUBMISSION_CONFIG = { - submission: { - autosave: { - // NOTE: which metadata trigger an autosave - metadata: ['dc.title', 'dc.identifier.doi', 'dc.identifier.pmid', 'dc.identifier.arxiv'], - // NOTE: every how many minutes submission is saved automatically - timer: 5 - }, - icons: { - metadata: [ - { - name: 'mainField', - style: 'fas fa-user' - }, - { - name: 'relatedField', - style: 'fas fa-university' - }, - { - name: 'otherRelatedField', - style: 'fas fa-circle' - }, - { - name: 'default', - style: '' - } - ], - authority: { - confidence: [ - { - value: 600, - style: 'text-success' - }, - { - value: 500, - style: 'text-info' - }, - { - value: 400, - style: 'text-warning' - }, - { - value: 'default', - style: 'text-muted' - }, - ] - } - } - } -}; -//# sourceMappingURL=mock-submission-config.js.map \ No newline at end of file diff --git a/src/app/shared/testing/mock-submission-config.js.map b/src/app/shared/testing/mock-submission-config.js.map deleted file mode 100644 index 4d6b01ec93..0000000000 --- a/src/app/shared/testing/mock-submission-config.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-submission-config.js","sourceRoot":"","sources":["mock-submission-config.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,IAAM,sBAAsB,GAAG;IACpC,UAAU,EAAE;QACV,QAAQ,EAAE;YACR,2CAA2C;YAC3C,QAAQ,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,qBAAqB,CAAC;YACxF,iEAAiE;YACjE,KAAK,EAAE,CAAC;SACT;QACD,KAAK,EAAE;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,aAAa;iBACrB;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,mBAAmB;iBAC3B;gBACD;oBACE,IAAI,EAAE,mBAAmB;oBACzB,KAAK,EAAE,eAAe;iBACvB;gBACD;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,EAAE;iBACV;aACF;YACD,SAAS,EAAE;gBACT,UAAU,EAAE;oBACV;wBACE,KAAK,EAAE,GAAG;wBACV,KAAK,EAAE,cAAc;qBACtB;oBACD;wBACE,KAAK,EAAE,GAAG;wBACV,KAAK,EAAE,WAAW;qBACnB;oBACD;wBACE,KAAK,EAAE,GAAG;wBACV,KAAK,EAAE,cAAc;qBACtB;oBACD;wBACE,KAAK,EAAE,SAAS;wBAChB,KAAK,EAAE,YAAY;qBACpB;iBAEF;aACF;SACF;KACkB;CACN,CAAC"} \ No newline at end of file diff --git a/src/app/shared/testing/mock-translate-loader.js b/src/app/shared/testing/mock-translate-loader.js deleted file mode 100644 index ca38a45bda..0000000000 --- a/src/app/shared/testing/mock-translate-loader.js +++ /dev/null @@ -1,11 +0,0 @@ -import { of as observableOf } from 'rxjs'; -var MockTranslateLoader = /** @class */ (function () { - function MockTranslateLoader() { - } - MockTranslateLoader.prototype.getTranslation = function (lang) { - return observableOf({}); - }; - return MockTranslateLoader; -}()); -export { MockTranslateLoader }; -//# sourceMappingURL=mock-translate-loader.js.map \ No newline at end of file diff --git a/src/app/shared/testing/mock-translate-loader.js.map b/src/app/shared/testing/mock-translate-loader.js.map deleted file mode 100644 index 6cb163d59e..0000000000 --- a/src/app/shared/testing/mock-translate-loader.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"mock-translate-loader.js","sourceRoot":"","sources":["mock-translate-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAe,MAAM,MAAM,CAAC;AAGtD;IAAA;IAIA,CAAC;IAHC,4CAAc,GAAd,UAAe,IAAY;QACzB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACH,0BAAC;AAAD,CAAC,AAJD,IAIC"} \ No newline at end of file diff --git a/src/app/shared/testing/ng-component-outlet-directive-stub.js b/src/app/shared/testing/ng-component-outlet-directive-stub.js deleted file mode 100644 index 57ea748ce3..0000000000 --- a/src/app/shared/testing/ng-component-outlet-directive-stub.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, Input } from '@angular/core'; -/* tslint:disable:directive-class-suffix */ -var NgComponentOutletDirectiveStub = /** @class */ (function () { - function NgComponentOutletDirectiveStub() { - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], NgComponentOutletDirectiveStub.prototype, "ngComponentOutlet", void 0); - NgComponentOutletDirectiveStub = tslib_1.__decorate([ - Directive({ - // tslint:disable-next-line:directive-selector - selector: '[ngComponentOutlet]', - }) - ], NgComponentOutletDirectiveStub); - return NgComponentOutletDirectiveStub; -}()); -export { NgComponentOutletDirectiveStub }; -//# sourceMappingURL=ng-component-outlet-directive-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/ng-component-outlet-directive-stub.js.map b/src/app/shared/testing/ng-component-outlet-directive-stub.js.map deleted file mode 100644 index 0b96804a9a..0000000000 --- a/src/app/shared/testing/ng-component-outlet-directive-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ng-component-outlet-directive-stub.js","sourceRoot":"","sources":["ng-component-outlet-directive-stub.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,2CAA2C;AAK3C;IAAA;IAEA,CAAC;IADU;QAAR,KAAK,EAAE;;6EAAwB;IADrB,8BAA8B;QAJ1C,SAAS,CAAC;YACT,8CAA8C;YAC9C,QAAQ,EAAE,qBAAqB;SAChC,CAAC;OACW,8BAA8B,CAE1C;IAAD,qCAAC;CAAA,AAFD,IAEC;SAFY,8BAA8B"} \ No newline at end of file diff --git a/src/app/shared/testing/notifications-service-stub.js b/src/app/shared/testing/notifications-service-stub.js deleted file mode 100644 index 049616e1cc..0000000000 --- a/src/app/shared/testing/notifications-service-stub.js +++ /dev/null @@ -1,17 +0,0 @@ -import { NotificationOptions } from '../notifications/models/notification-options.model'; -var NotificationsServiceStub = /** @class */ (function () { - function NotificationsServiceStub() { - this.success = jasmine.createSpy('success'); - this.error = jasmine.createSpy('error'); - this.info = jasmine.createSpy('info'); - this.warning = jasmine.createSpy('warning'); - this.remove = jasmine.createSpy('remove'); - this.removeAll = jasmine.createSpy('removeAll'); - } - NotificationsServiceStub.prototype.getDefaultOptions = function () { - return new NotificationOptions(); - }; - return NotificationsServiceStub; -}()); -export { NotificationsServiceStub }; -//# sourceMappingURL=notifications-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/notifications-service-stub.js.map b/src/app/shared/testing/notifications-service-stub.js.map deleted file mode 100644 index e7850dc04d..0000000000 --- a/src/app/shared/testing/notifications-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notifications-service-stub.js","sourceRoot":"","sources":["notifications-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAEzF;IAAA;QAEE,YAAO,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACvC,UAAK,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACnC,SAAI,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACjC,YAAO,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACvC,WAAM,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACrC,cAAS,GAAG,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAK7C,CAAC;IAHS,oDAAiB,GAAzB;QACE,OAAO,IAAI,mBAAmB,EAAE,CAAC;IACnC,CAAC;IACH,+BAAC;AAAD,CAAC,AAZD,IAYC"} \ No newline at end of file diff --git a/src/app/shared/testing/query-params-directive-stub.js b/src/app/shared/testing/query-params-directive-stub.js deleted file mode 100644 index f730ae0638..0000000000 --- a/src/app/shared/testing/query-params-directive-stub.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, Input } from '@angular/core'; -/* tslint:disable:directive-class-suffix */ -var QueryParamsDirectiveStub = /** @class */ (function () { - function QueryParamsDirectiveStub() { - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], QueryParamsDirectiveStub.prototype, "queryParams", void 0); - QueryParamsDirectiveStub = tslib_1.__decorate([ - Directive({ - // tslint:disable-next-line:directive-selector - selector: '[queryParams]', - }) - ], QueryParamsDirectiveStub); - return QueryParamsDirectiveStub; -}()); -export { QueryParamsDirectiveStub }; -//# sourceMappingURL=query-params-directive-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/query-params-directive-stub.js.map b/src/app/shared/testing/query-params-directive-stub.js.map deleted file mode 100644 index 0a575fda00..0000000000 --- a/src/app/shared/testing/query-params-directive-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-params-directive-stub.js","sourceRoot":"","sources":["query-params-directive-stub.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,2CAA2C;AAK3C;IAAA;IAEA,CAAC;IADU;QAAR,KAAK,EAAE;;iEAAkB;IADf,wBAAwB;QAJpC,SAAS,CAAC;YACT,8CAA8C;YAC9C,QAAQ,EAAE,eAAe;SAC1B,CAAC;OACW,wBAAwB,CAEpC;IAAD,+BAAC;CAAA,AAFD,IAEC;SAFY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/testing/route-service-stub.js b/src/app/shared/testing/route-service-stub.js deleted file mode 100644 index 5cfd37ea72..0000000000 --- a/src/app/shared/testing/route-service-stub.js +++ /dev/null @@ -1,32 +0,0 @@ -import { of as observableOf } from 'rxjs/internal/observable/of'; -export var routeServiceStub = { - /* tslint:disable:no-empty */ - hasQueryParamWithValue: function (param, value) { - }, - hasQueryParam: function (param) { - }, - removeQueryParameterValue: function (param, value) { - }, - addQueryParameterValue: function (param, value) { - }, - getQueryParameterValues: function (param) { - return observableOf({}); - }, - getQueryParamsWithPrefix: function (param) { - return observableOf({}); - }, - getQueryParamMap: function () { - return observableOf(new Map()); - }, - getQueryParameterValue: function () { - return observableOf({}); - }, - getRouteParameterValue: function (param) { - return observableOf(''); - }, - getRouteDataValue: function (param) { - return observableOf({}); - } - /* tslint:enable:no-empty */ -}; -//# sourceMappingURL=route-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/route-service-stub.js.map b/src/app/shared/testing/route-service-stub.js.map deleted file mode 100644 index e60d85a830..0000000000 --- a/src/app/shared/testing/route-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"route-service-stub.js","sourceRoot":"","sources":["route-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,CAAC,IAAM,gBAAgB,GAAQ;IACnC,6BAA6B;IAC7B,sBAAsB,EAAE,UAAC,KAAa,EAAE,KAAa;IACrD,CAAC;IACD,aAAa,EAAE,UAAC,KAAa;IAC7B,CAAC;IACD,yBAAyB,EAAE,UAAC,KAAa,EAAE,KAAa;IACxD,CAAC;IACD,sBAAsB,EAAE,UAAC,KAAa,EAAE,KAAa;IACrD,CAAC;IACD,uBAAuB,EAAE,UAAC,KAAa;QACrC,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,wBAAwB,EAAE,UAAC,KAAa;QACtC,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,gBAAgB,EAAE;QAChB,OAAO,YAAY,CAAC,IAAI,GAAG,EAAE,CAAC,CAAA;IAChC,CAAC;IACD,sBAAsB,EAAE;QACtB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAA;IACzB,CAAC;IACD,sBAAsB,EAAE,UAAC,KAAK;QAC5B,OAAO,YAAY,CAAC,EAAE,CAAC,CAAA;IACzB,CAAC;IACD,iBAAiB,EAAE,UAAC,KAAK;QACvB,OAAO,YAAY,CAAC,EAAE,CAAC,CAAA;IACzB,CAAC;IACD,4BAA4B;CAC7B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/testing/router-link-directive-stub.js b/src/app/shared/testing/router-link-directive-stub.js deleted file mode 100644 index 2a3d1740be..0000000000 --- a/src/app/shared/testing/router-link-directive-stub.js +++ /dev/null @@ -1,20 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, Input } from '@angular/core'; -/* tslint:disable:directive-class-suffix */ -var RouterLinkDirectiveStub = /** @class */ (function () { - function RouterLinkDirectiveStub() { - } - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], RouterLinkDirectiveStub.prototype, "routerLink", void 0); - RouterLinkDirectiveStub = tslib_1.__decorate([ - Directive({ - // tslint:disable-next-line:directive-selector - selector: '[routerLink]', - }) - ], RouterLinkDirectiveStub); - return RouterLinkDirectiveStub; -}()); -export { RouterLinkDirectiveStub }; -//# sourceMappingURL=router-link-directive-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/router-link-directive-stub.js.map b/src/app/shared/testing/router-link-directive-stub.js.map deleted file mode 100644 index 1ea94bbf2c..0000000000 --- a/src/app/shared/testing/router-link-directive-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"router-link-directive-stub.js","sourceRoot":"","sources":["router-link-directive-stub.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEjD,2CAA2C;AAK3C;IAAA;IAEA,CAAC;IADU;QAAR,KAAK,EAAE;;+DAAiB;IADd,uBAAuB;QAJnC,SAAS,CAAC;YACT,8CAA8C;YAC9C,QAAQ,EAAE,cAAc;SACzB,CAAC;OACW,uBAAuB,CAEnC;IAAD,8BAAC;CAAA,AAFD,IAEC;SAFY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/testing/router-stub.js b/src/app/shared/testing/router-stub.js deleted file mode 100644 index 792f985661..0000000000 --- a/src/app/shared/testing/router-stub.js +++ /dev/null @@ -1,16 +0,0 @@ -import { of as observableOf } from 'rxjs'; -var RouterStub = /** @class */ (function () { - function RouterStub() { - this.routeReuseStrategy = { shouldReuseRoute: {} }; - //noinspection TypeScriptUnresolvedFunction - this.navigate = jasmine.createSpy('navigate'); - this.parseUrl = jasmine.createSpy('parseUrl'); - this.events = observableOf({}); - } - RouterStub.prototype.navigateByUrl = function (url) { - this.url = url; - }; - return RouterStub; -}()); -export { RouterStub }; -//# sourceMappingURL=router-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/router-stub.js.map b/src/app/shared/testing/router-stub.js.map deleted file mode 100644 index 1df9c126c9..0000000000 --- a/src/app/shared/testing/router-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"router-stub.js","sourceRoot":"","sources":["router-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C;IAAA;QAEE,uBAAkB,GAAG,EAAC,gBAAgB,EAAE,EAAE,EAAC,CAAC;QAC5C,2CAA2C;QAC3C,aAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACzC,aAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACzC,WAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAI5B,CAAC;IAHC,kCAAa,GAAb,UAAc,GAAG;QACf,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IACH,iBAAC;AAAD,CAAC,AAVD,IAUC"} \ No newline at end of file diff --git a/src/app/shared/testing/search-configuration-service-stub.js b/src/app/shared/testing/search-configuration-service-stub.js deleted file mode 100644 index 6215ab340f..0000000000 --- a/src/app/shared/testing/search-configuration-service-stub.js +++ /dev/null @@ -1,19 +0,0 @@ -import { BehaviorSubject, of as observableOf } from 'rxjs'; -var SearchConfigurationServiceStub = /** @class */ (function () { - function SearchConfigurationServiceStub() { - this.searchOptions = new BehaviorSubject({}); - this.paginatedSearchOptions = new BehaviorSubject({}); - } - SearchConfigurationServiceStub.prototype.getCurrentFrontendFilters = function () { - return observableOf([]); - }; - SearchConfigurationServiceStub.prototype.getCurrentScope = function (a) { - return observableOf('test-id'); - }; - SearchConfigurationServiceStub.prototype.getCurrentConfiguration = function (a) { - return observableOf(a); - }; - return SearchConfigurationServiceStub; -}()); -export { SearchConfigurationServiceStub }; -//# sourceMappingURL=search-configuration-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/search-configuration-service-stub.js.map b/src/app/shared/testing/search-configuration-service-stub.js.map deleted file mode 100644 index 1fd5e692b9..0000000000 --- a/src/app/shared/testing/search-configuration-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-configuration-service-stub.js","sourceRoot":"","sources":["search-configuration-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAE3D;IAAA;QAEU,kBAAa,GAAyB,IAAI,eAAe,CAAM,EAAE,CAAC,CAAC;QACnE,2BAAsB,GAAyB,IAAI,eAAe,CAAM,EAAE,CAAC,CAAC;IAatF,CAAC;IAXC,kEAAyB,GAAzB;QACE,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,wDAAe,GAAf,UAAgB,CAAC;QACf,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED,gEAAuB,GAAvB,UAAwB,CAAC;QACvB,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IACH,qCAAC;AAAD,CAAC,AAhBD,IAgBC"} \ No newline at end of file diff --git a/src/app/shared/testing/search-service-stub.js b/src/app/shared/testing/search-service-stub.js deleted file mode 100644 index d4551ef2e5..0000000000 --- a/src/app/shared/testing/search-service-stub.js +++ /dev/null @@ -1,43 +0,0 @@ -import { of as observableOf, BehaviorSubject } from 'rxjs'; -import { SetViewMode } from '../view-mode'; -var SearchServiceStub = /** @class */ (function () { - function SearchServiceStub(searchLink) { - if (searchLink === void 0) { searchLink = '/search'; } - this.searchLink = searchLink; - this.subject = new BehaviorSubject(this.testViewMode); - this.viewMode = this.subject.asObservable(); - this.setViewMode(SetViewMode.List); - } - SearchServiceStub.prototype.getViewMode = function () { - return this.viewMode; - }; - SearchServiceStub.prototype.setViewMode = function (viewMode) { - this.testViewMode = viewMode; - }; - SearchServiceStub.prototype.getFacetValuesFor = function () { - return null; - }; - Object.defineProperty(SearchServiceStub.prototype, "testViewMode", { - get: function () { - return this._viewMode; - }, - set: function (viewMode) { - this._viewMode = viewMode; - this.subject.next(viewMode); - }, - enumerable: true, - configurable: true - }); - SearchServiceStub.prototype.getSearchLink = function () { - return this.searchLink; - }; - SearchServiceStub.prototype.getFilterLabels = function () { - return observableOf([]); - }; - SearchServiceStub.prototype.search = function () { - return observableOf({}); - }; - return SearchServiceStub; -}()); -export { SearchServiceStub }; -//# sourceMappingURL=search-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/search-service-stub.js.map b/src/app/shared/testing/search-service-stub.js.map deleted file mode 100644 index cb3cc5ca40..0000000000 --- a/src/app/shared/testing/search-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"search-service-stub.js","sourceRoot":"","sources":["search-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,IAAI,YAAY,EAAiB,eAAe,EAAE,MAAM,MAAM,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;IAOE,2BAAoB,UAA8B;QAA9B,2BAAA,EAAA,sBAA8B;QAA9B,eAAU,GAAV,UAAU,CAAoB;QAJ1C,YAAO,GAA0B,IAAI,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEhF,aAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAGrC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,uCAAW,GAAX;QACE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,uCAAW,GAAX,UAAY,QAAqB;QAC/B,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED,6CAAiB,GAAjB;QACE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sBAAI,2CAAY;aAAhB;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aAED,UAAiB,QAAqB;YACpC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC;;;OALA;IAOD,yCAAa,GAAb;QACE,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,2CAAe,GAAf;QACE,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,kCAAM,GAAN;QACE,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACH,wBAAC;AAAD,CAAC,AA3CD,IA2CC"} \ No newline at end of file diff --git a/src/app/shared/testing/sections-service-stub.js b/src/app/shared/testing/sections-service-stub.js deleted file mode 100644 index fc23b29ac8..0000000000 --- a/src/app/shared/testing/sections-service-stub.js +++ /dev/null @@ -1,21 +0,0 @@ -var SectionsServiceStub = /** @class */ (function () { - function SectionsServiceStub() { - this.checkSectionErrors = jasmine.createSpy('checkSectionErrors'); - this.dispatchRemoveSectionErrors = jasmine.createSpy('dispatchRemoveSectionErrors'); - this.getSectionData = jasmine.createSpy('getSectionData'); - this.getSectionErrors = jasmine.createSpy('getSectionErrors'); - this.getSectionState = jasmine.createSpy('getSectionState'); - this.isSectionValid = jasmine.createSpy('isSectionValid'); - this.isSectionEnabled = jasmine.createSpy('isSectionEnabled'); - this.isSectionReadOnly = jasmine.createSpy('isSectionReadOnly'); - this.isSectionAvailable = jasmine.createSpy('isSectionAvailable'); - this.addSection = jasmine.createSpy('addSection'); - this.removeSection = jasmine.createSpy('removeSection'); - this.updateSectionData = jasmine.createSpy('updateSectionData'); - this.setSectionError = jasmine.createSpy('setSectionError'); - this.setSectionStatus = jasmine.createSpy('setSectionStatus'); - } - return SectionsServiceStub; -}()); -export { SectionsServiceStub }; -//# sourceMappingURL=sections-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/sections-service-stub.js.map b/src/app/shared/testing/sections-service-stub.js.map deleted file mode 100644 index a22b409bb2..0000000000 --- a/src/app/shared/testing/sections-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sections-service-stub.js","sourceRoot":"","sources":["sections-service-stub.ts"],"names":[],"mappings":"AAAA;IAAA;QAEE,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,gCAA2B,GAAG,OAAO,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QAC/E,mBAAc,GAAG,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrD,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,mBAAc,GAAG,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrD,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,sBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3D,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,eAAU,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC7C,kBAAa,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACnD,sBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3D,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAE3D,CAAC;IAAD,0BAAC;AAAD,CAAC,AAjBD,IAiBC"} \ No newline at end of file diff --git a/src/app/shared/testing/submission-json-patch-operations-service-stub.js b/src/app/shared/testing/submission-json-patch-operations-service-stub.js deleted file mode 100644 index f7fd708ccc..0000000000 --- a/src/app/shared/testing/submission-json-patch-operations-service-stub.js +++ /dev/null @@ -1,10 +0,0 @@ -var SubmissionJsonPatchOperationsServiceStub = /** @class */ (function () { - function SubmissionJsonPatchOperationsServiceStub() { - this.linkPath = 'workspaceitems'; - this.jsonPatchByResourceType = jasmine.createSpy('jsonPatchByResourceType'); - this.jsonPatchByResourceID = jasmine.createSpy('jsonPatchByResourceID'); - } - return SubmissionJsonPatchOperationsServiceStub; -}()); -export { SubmissionJsonPatchOperationsServiceStub }; -//# sourceMappingURL=submission-json-patch-operations-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/submission-json-patch-operations-service-stub.js.map b/src/app/shared/testing/submission-json-patch-operations-service-stub.js.map deleted file mode 100644 index 1e583bd6e7..0000000000 --- a/src/app/shared/testing/submission-json-patch-operations-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-json-patch-operations-service-stub.js","sourceRoot":"","sources":["submission-json-patch-operations-service-stub.ts"],"names":[],"mappings":"AAEA;IAAA;QACY,aAAQ,GAAG,gBAAgB,CAAC;QAGtC,4BAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACvE,0BAAqB,GAAG,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;IAErE,CAAC;IAAD,+CAAC;AAAD,CAAC,AAPD,IAOC"} \ No newline at end of file diff --git a/src/app/shared/testing/submission-rest-service-stub.js b/src/app/shared/testing/submission-rest-service-stub.js deleted file mode 100644 index f8d794d0f1..0000000000 --- a/src/app/shared/testing/submission-rest-service-stub.js +++ /dev/null @@ -1,17 +0,0 @@ -import { of as observableOf } from 'rxjs'; -var SubmissionRestServiceStub = /** @class */ (function () { - function SubmissionRestServiceStub() { - this.linkPath = 'workspaceitems'; - this.deleteById = jasmine.createSpy('deleteById'); - this.fetchRequest = jasmine.createSpy('fetchRequest'); - this.getDataById = jasmine.createSpy('getDataById'); - this.getDataByHref = jasmine.createSpy('getDataByHref'); - this.getEndpointByIDHref = jasmine.createSpy('getEndpointByIDHref'); - this.patchToEndpoint = jasmine.createSpy('patchToEndpoint'); - this.postToEndpoint = jasmine.createSpy('postToEndpoint').and.returnValue(observableOf({})); - this.submitData = jasmine.createSpy('submitData'); - } - return SubmissionRestServiceStub; -}()); -export { SubmissionRestServiceStub }; -//# sourceMappingURL=submission-rest-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/submission-rest-service-stub.js.map b/src/app/shared/testing/submission-rest-service-stub.js.map deleted file mode 100644 index bddd22432c..0000000000 --- a/src/app/shared/testing/submission-rest-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-rest-service-stub.js","sourceRoot":"","sources":["submission-rest-service-stub.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAO1C;IAAA;QACY,aAAQ,GAAG,gBAAgB,CAAC;QAKtC,eAAU,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC7C,iBAAY,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACjD,gBAAW,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC/C,kBAAa,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACnD,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,mBAAc,GAAG,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;QACvF,eAAU,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC/C,CAAC;IAAD,gCAAC;AAAD,CAAC,AAdD,IAcC"} \ No newline at end of file diff --git a/src/app/shared/testing/submission-service-stub.js b/src/app/shared/testing/submission-service-stub.js deleted file mode 100644 index 2a9f4c3413..0000000000 --- a/src/app/shared/testing/submission-service-stub.js +++ /dev/null @@ -1,36 +0,0 @@ -var SubmissionServiceStub = /** @class */ (function () { - function SubmissionServiceStub() { - this.changeSubmissionCollection = jasmine.createSpy('changeSubmissionCollection'); - this.createSubmission = jasmine.createSpy('createSubmission'); - this.depositSubmission = jasmine.createSpy('depositSubmission'); - this.discardSubmission = jasmine.createSpy('discardSubmission'); - this.dispatchInit = jasmine.createSpy('dispatchInit'); - this.dispatchDeposit = jasmine.createSpy('dispatchDeposit'); - this.dispatchDiscard = jasmine.createSpy('dispatchDiscard'); - this.dispatchSave = jasmine.createSpy('dispatchSave'); - this.dispatchSaveForLater = jasmine.createSpy('dispatchSaveForLater'); - this.dispatchSaveSection = jasmine.createSpy('dispatchSaveSection'); - this.getActiveSectionId = jasmine.createSpy('getActiveSectionId'); - this.getSubmissionObject = jasmine.createSpy('getSubmissionObject'); - this.getSubmissionSections = jasmine.createSpy('getSubmissionSections'); - this.getDisabledSectionsList = jasmine.createSpy('getDisabledSectionsList'); - this.getSubmissionObjectLinkName = jasmine.createSpy('getSubmissionObjectLinkName'); - this.getSubmissionScope = jasmine.createSpy('getSubmissionScope'); - this.getSubmissionStatus = jasmine.createSpy('getSubmissionStatus'); - this.getSubmissionSaveProcessingStatus = jasmine.createSpy('getSubmissionSaveProcessingStatus'); - this.getSubmissionDepositProcessingStatus = jasmine.createSpy('getSubmissionDepositProcessingStatus'); - this.isSectionHidden = jasmine.createSpy('isSectionHidden'); - this.isSubmissionLoading = jasmine.createSpy('isSubmissionLoading'); - this.notifyNewSection = jasmine.createSpy('notifyNewSection'); - this.redirectToMyDSpace = jasmine.createSpy('redirectToMyDSpace'); - this.resetAllSubmissionObjects = jasmine.createSpy('resetAllSubmissionObjects'); - this.resetSubmissionObject = jasmine.createSpy('resetSubmissionObject'); - this.retrieveSubmission = jasmine.createSpy('retrieveSubmission'); - this.setActiveSection = jasmine.createSpy('setActiveSection'); - this.startAutoSave = jasmine.createSpy('startAutoSave'); - this.stopAutoSave = jasmine.createSpy('stopAutoSave'); - } - return SubmissionServiceStub; -}()); -export { SubmissionServiceStub }; -//# sourceMappingURL=submission-service-stub.js.map \ No newline at end of file diff --git a/src/app/shared/testing/submission-service-stub.js.map b/src/app/shared/testing/submission-service-stub.js.map deleted file mode 100644 index 56993567c4..0000000000 --- a/src/app/shared/testing/submission-service-stub.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-service-stub.js","sourceRoot":"","sources":["submission-service-stub.ts"],"names":[],"mappings":"AAAA;IAAA;QAEE,+BAA0B,GAAG,OAAO,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;QAC7E,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,sBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3D,sBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAC3D,iBAAY,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACjD,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,iBAAY,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACjD,yBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QACjE,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,0BAAqB,GAAG,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACnE,4BAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QACvE,gCAA2B,GAAG,OAAO,CAAC,SAAS,CAAC,6BAA6B,CAAC,CAAC;QAC/E,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,sCAAiC,GAAG,OAAO,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;QAC3F,yCAAoC,GAAG,OAAO,CAAC,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACjG,oBAAe,GAAG,OAAO,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACvD,wBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,8BAAyB,GAAG,OAAO,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAC3E,0BAAqB,GAAG,OAAO,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACnE,uBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC7D,qBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACzD,kBAAa,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACnD,iBAAY,GAAG,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAEnD,CAAC;IAAD,4BAAC;AAAD,CAAC,AAhCD,IAgCC"} \ No newline at end of file diff --git a/src/app/shared/testing/test-module.js b/src/app/shared/testing/test-module.js deleted file mode 100644 index a701db1869..0000000000 --- a/src/app/shared/testing/test-module.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core'; -import { QueryParamsDirectiveStub } from './query-params-directive-stub'; -import { MySimpleItemActionComponent } from '../../+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec'; -import { CommonModule } from '@angular/common'; -import { SharedModule } from '../shared.module'; -import { RouterLinkDirectiveStub } from './router-link-directive-stub'; -import { NgComponentOutletDirectiveStub } from './ng-component-outlet-directive-stub'; -/** - * This module isn't used. It serves to prevent the AoT compiler - * complaining about components/pipes/directives that were - * created only for use in tests. - * See https://github.com/angular/angular/issues/13590 - */ -var TestModule = /** @class */ (function () { - function TestModule() { - } - TestModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - SharedModule - ], - declarations: [ - QueryParamsDirectiveStub, - MySimpleItemActionComponent, - RouterLinkDirectiveStub, - NgComponentOutletDirectiveStub - ], schemas: [ - CUSTOM_ELEMENTS_SCHEMA - ] - }) - ], TestModule); - return TestModule; -}()); -export { TestModule }; -//# sourceMappingURL=test-module.js.map \ No newline at end of file diff --git a/src/app/shared/testing/test-module.js.map b/src/app/shared/testing/test-module.js.map deleted file mode 100644 index 2d72bbf16c..0000000000 --- a/src/app/shared/testing/test-module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"test-module.js","sourceRoot":"","sources":["test-module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,sBAAsB,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+FAA+F,CAAC;AAC5I,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAEtF;;;;;GAKG;AAeH;IAAA;IAAyB,CAAC;IAAb,UAAU;QAdtB,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,YAAY;aACb;YACD,YAAY,EAAE;gBACZ,wBAAwB;gBACxB,2BAA2B;gBAC3B,uBAAuB;gBACvB,8BAA8B;aAC/B,EAAE,OAAO,EAAE;gBACV,sBAAsB;aACvB;SACF,CAAC;OACW,UAAU,CAAG;IAAD,iBAAC;CAAA,AAA1B,IAA0B;SAAb,UAAU"} \ No newline at end of file diff --git a/src/app/shared/testing/utils.js b/src/app/shared/testing/utils.js deleted file mode 100644 index 0bb159c359..0000000000 --- a/src/app/shared/testing/utils.js +++ /dev/null @@ -1,48 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -/** - * Returns true if a Native Element has a specified css class. - * - * @param element - * the Native Element - * @param className - * the class name to find - */ -export var hasClass = function (element, className) { - var classes = element.getAttribute('class'); - return classes.split(' ').indexOf(className) !== -1; -}; -/** - * Creates an instance of a component and returns test fixture. - * - * @param html - * the component's template as html - * @param type - * the type of the component to instantiate - */ -export var createTestComponent = function (html, type) { - TestBed.overrideComponent(type, { - set: { template: html } - }); - var fixture = TestBed.createComponent(type); - fixture.detectChanges(); - return fixture; -}; -/** - * Allows you to spy on a read only property - * - * @param obj - * The object to spy on - * @param prop - * The property to spy on - */ -export function spyOnOperator(obj, prop) { - var oldProp = obj[prop]; - Object.defineProperty(obj, prop, { - configurable: true, - enumerable: true, - value: oldProp, - writable: true - }); - return spyOn(obj, prop); -} -//# sourceMappingURL=utils.js.map \ No newline at end of file diff --git a/src/app/shared/testing/utils.js.map b/src/app/shared/testing/utils.js.map deleted file mode 100644 index 16f9c73dd5..0000000000 --- a/src/app/shared/testing/utils.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAElE;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,QAAQ,GAAG,UAAC,OAAY,EAAE,SAAiB;IACtD,IAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAAI,IAAY,EAAE,IAAgC;IACnF,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE;QAC9B,GAAG,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC;KACtB,CAAC,CAAC;IACH,IAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAE9C,OAAO,CAAC,aAAa,EAAE,CAAC;IACxB,OAAO,OAA8B,CAAC;AACxC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,wBAAwB,GAAQ,EAAE,IAAY;IAClD,IAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE;QAC/B,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC1B,CAAC"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js b/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js deleted file mode 100644 index 95df0bd9ca..0000000000 --- a/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js +++ /dev/null @@ -1,81 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { TruncatableService } from '../truncatable.service'; -import { hasValue } from '../../empty.util'; -var TruncatablePartComponent = /** @class */ (function () { - function TruncatablePartComponent(service) { - this.service = service; - /** - * Number of lines shown when the part is expanded. -1 indicates no limit - */ - this.maxLines = -1; - /** - * True if the minimal height of the part should at least be as high as it's minimum amount of lines - */ - this.fixedHeight = false; - } - /** - * Initialize lines variable - */ - TruncatablePartComponent.prototype.ngOnInit = function () { - this.setLines(); - }; - /** - * Subscribe to the current state to determine how much lines should be shown of this part - */ - TruncatablePartComponent.prototype.setLines = function () { - var _this = this; - this.sub = this.service.isCollapsed(this.id).subscribe(function (collapsed) { - if (collapsed) { - _this.lines = _this.minLines.toString(); - } - else { - _this.lines = _this.maxLines < 0 ? 'none' : _this.maxLines.toString(); - } - }); - }; - /** - * Unsubscribe from the subscription - */ - TruncatablePartComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sub)) { - this.sub.unsubscribe(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], TruncatablePartComponent.prototype, "minLines", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], TruncatablePartComponent.prototype, "maxLines", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], TruncatablePartComponent.prototype, "id", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], TruncatablePartComponent.prototype, "type", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], TruncatablePartComponent.prototype, "fixedHeight", void 0); - TruncatablePartComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-truncatable-part', - templateUrl: './truncatable-part.component.html', - styleUrls: ['./truncatable-part.component.scss'] - }) - /** - * Component that truncates/clamps a piece of text - * It needs a TruncatableComponent parent to identify it's current state - */ - , - tslib_1.__metadata("design:paramtypes", [TruncatableService]) - ], TruncatablePartComponent); - return TruncatablePartComponent; -}()); -export { TruncatablePartComponent }; -//# sourceMappingURL=truncatable-part.component.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js.map b/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js.map deleted file mode 100644 index 130071dbdc..0000000000 --- a/src/app/shared/truncatable/truncatable-part/truncatable-part.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"truncatable-part.component.js","sourceRoot":"","sources":["truncatable-part.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAY5C;IAoCE,kCAA2B,OAA2B;QAA3B,YAAO,GAAP,OAAO,CAAoB;QA9BtD;;WAEG;QACM,aAAQ,GAAG,CAAC,CAAC,CAAC;QAYvB;;WAEG;QACM,gBAAW,GAAG,KAAK,CAAC;IAa7B,CAAC;IAED;;OAEG;IACH,2CAAQ,GAAR;QACE,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAED;;OAEG;IACK,2CAAQ,GAAhB;QAAA,iBAQC;QAPC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,UAAC,SAAkB;YACxE,IAAI,SAAS,EAAE;gBACb,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;aACvC;iBAAM;gBACL,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;aACpE;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,8CAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IA9DQ;QAAR,KAAK,EAAE;;8DAAkB;IAKjB;QAAR,KAAK,EAAE;;8DAAe;IAKd;QAAR,KAAK,EAAE;;wDAAY;IAKX;QAAR,KAAK,EAAE;;0DAAc;IAKb;QAAR,KAAK,EAAE;;iEAAqB;IAxBlB,wBAAwB;QAVpC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,WAAW,EAAE,mCAAmC;YAChD,SAAS,EAAE,CAAC,mCAAmC,CAAC;SACjD,CAAC;QAEF;;;WAGG;;iDAqCmC,kBAAkB;OApC3C,wBAAwB,CAmEpC;IAAD,+BAAC;CAAA,AAnED,IAmEC;SAnEY,wBAAwB"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.actions.js b/src/app/shared/truncatable/truncatable.actions.js deleted file mode 100644 index 05ae73c58a..0000000000 --- a/src/app/shared/truncatable/truncatable.actions.js +++ /dev/null @@ -1,68 +0,0 @@ -import * as tslib_1 from "tslib"; -import { type } from '../ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var TruncatableActionTypes = { - TOGGLE: type('dspace/truncatable/TOGGLE'), - COLLAPSE: type('dspace/truncatable/COLLAPSE'), - EXPAND: type('dspace/truncatable/EXPAND'), -}; -var TruncatableAction = /** @class */ (function () { - /** - * Initialize with the truncatable component's UUID - * @param {string} id of the filter - */ - function TruncatableAction(id) { - this.id = id; - } - return TruncatableAction; -}()); -export { TruncatableAction }; -/* tslint:disable:max-classes-per-file */ -/** - * Used to collapse a truncatable component when it's expanded and expand it when it's collapsed - */ -var TruncatableToggleAction = /** @class */ (function (_super) { - tslib_1.__extends(TruncatableToggleAction, _super); - function TruncatableToggleAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = TruncatableActionTypes.TOGGLE; - return _this; - } - return TruncatableToggleAction; -}(TruncatableAction)); -export { TruncatableToggleAction }; -/** - * Used to collapse a truncatable component - */ -var TruncatableCollapseAction = /** @class */ (function (_super) { - tslib_1.__extends(TruncatableCollapseAction, _super); - function TruncatableCollapseAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = TruncatableActionTypes.COLLAPSE; - return _this; - } - return TruncatableCollapseAction; -}(TruncatableAction)); -export { TruncatableCollapseAction }; -/** - * Used to expand a truncatable component - */ -var TruncatableExpandAction = /** @class */ (function (_super) { - tslib_1.__extends(TruncatableExpandAction, _super); - function TruncatableExpandAction() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.type = TruncatableActionTypes.EXPAND; - return _this; - } - return TruncatableExpandAction; -}(TruncatableAction)); -export { TruncatableExpandAction }; -/* tslint:enable:max-classes-per-file */ -//# sourceMappingURL=truncatable.actions.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.actions.js.map b/src/app/shared/truncatable/truncatable.actions.js.map deleted file mode 100644 index 0483a73578..0000000000 --- a/src/app/shared/truncatable/truncatable.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"truncatable.actions.js","sourceRoot":"","sources":["truncatable.actions.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC;;;;;;;GAOG;AACH,MAAM,CAAC,IAAM,sBAAsB,GAAG;IACpC,MAAM,EAAE,IAAI,CAAC,2BAA2B,CAAC;IACzC,QAAQ,EAAE,IAAI,CAAC,6BAA6B,CAAC;IAC7C,MAAM,EAAE,IAAI,CAAC,2BAA2B,CAAC;CAC1C,CAAC;AAEF;IAWE;;;OAGG;IACH,2BAAY,EAAU;QACpB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IACH,wBAAC;AAAD,CAAC,AAlBD,IAkBC;;AAED,yCAAyC;AACzC;;GAEG;AACH;IAA6C,mDAAiB;IAA9D;QAAA,qEAEC;QADC,UAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC;;IACvC,CAAC;IAAD,8BAAC;AAAD,CAAC,AAFD,CAA6C,iBAAiB,GAE7D;;AAED;;GAEG;AACH;IAA+C,qDAAiB;IAAhE;QAAA,qEAEC;QADC,UAAI,GAAG,sBAAsB,CAAC,QAAQ,CAAC;;IACzC,CAAC;IAAD,gCAAC;AAAD,CAAC,AAFD,CAA+C,iBAAiB,GAE/D;;AAED;;GAEG;AACH;IAA6C,mDAAiB;IAA9D;QAAA,qEAEC;QADC,UAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC;;IACvC,CAAC;IAAD,8BAAC;AAAD,CAAC,AAFD,CAA6C,iBAAiB,GAE7D;;AAED,wCAAwC"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.component.js b/src/app/shared/truncatable/truncatable.component.js deleted file mode 100644 index 0cc791dc02..0000000000 --- a/src/app/shared/truncatable/truncatable.component.js +++ /dev/null @@ -1,76 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { TruncatableService } from './truncatable.service'; -var TruncatableComponent = /** @class */ (function () { - function TruncatableComponent(service) { - this.service = service; - /** - * Is true when all truncatable parts in this truncatable should be expanded on loading - */ - this.initialExpand = false; - /** - * Is true when the truncatable should expand on both hover as click - */ - this.onHover = false; - } - /** - * Set the initial state - */ - TruncatableComponent.prototype.ngOnInit = function () { - if (this.initialExpand) { - this.service.expand(this.id); - } - else { - this.service.collapse(this.id); - } - }; - /** - * If onHover is true, collapses the truncatable - */ - TruncatableComponent.prototype.hoverCollapse = function () { - if (this.onHover) { - this.service.collapse(this.id); - } - }; - /** - * If onHover is true, expands the truncatable - */ - TruncatableComponent.prototype.hoverExpand = function () { - if (this.onHover) { - this.service.expand(this.id); - } - }; - /** - * Expands the truncatable when it's collapsed, collapses it when it's expanded - */ - TruncatableComponent.prototype.toggle = function () { - this.service.toggle(this.id); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], TruncatableComponent.prototype, "initialExpand", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], TruncatableComponent.prototype, "id", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], TruncatableComponent.prototype, "onHover", void 0); - TruncatableComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-truncatable', - templateUrl: './truncatable.component.html', - styleUrls: ['./truncatable.component.scss'], - }) - /** - * Component that represents a section with one or more truncatable parts that all listen to this state - */ - , - tslib_1.__metadata("design:paramtypes", [TruncatableService]) - ], TruncatableComponent); - return TruncatableComponent; -}()); -export { TruncatableComponent }; -//# sourceMappingURL=truncatable.component.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.component.js.map b/src/app/shared/truncatable/truncatable.component.js.map deleted file mode 100644 index 5a19b385d1..0000000000 --- a/src/app/shared/truncatable/truncatable.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"truncatable.component.js","sourceRoot":"","sources":["truncatable.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EAAE,KAAK,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAY3D;IAgBE,8BAA2B,OAA2B;QAA3B,YAAO,GAAP,OAAO,CAAoB;QAftD;;WAEG;QACM,kBAAa,GAAG,KAAK,CAAC;QAO/B;;WAEG;QACM,YAAO,GAAG,KAAK,CAAC;IAGzB,CAAC;IAED;;OAEG;IACH,uCAAQ,GAAR;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAChC;IACH,CAAC;IAED;;OAEG;IACI,4CAAa,GAApB;QACE,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAChC;IACH,CAAC;IAED;;OAEG;IACI,0CAAW,GAAlB;QACE,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC9B;IACH,CAAC;IAED;;OAEG;IACI,qCAAM,GAAb;QACE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAjDQ;QAAR,KAAK,EAAE;;+DAAuB;IAKtB;QAAR,KAAK,EAAE;;oDAAY;IAKX;QAAR,KAAK,EAAE;;yDAAiB;IAdd,oBAAoB;QAVhC,SAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,WAAW,EAAE,8BAA8B;YAC3C,SAAS,EAAE,CAAC,8BAA8B,CAAC;SAE5C,CAAC;QAEF;;WAEG;;iDAiBmC,kBAAkB;OAhB3C,oBAAoB,CAuDhC;IAAD,2BAAC;CAAA,AAvDD,IAuDC;SAvDY,oBAAoB"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.reducer.js b/src/app/shared/truncatable/truncatable.reducer.js deleted file mode 100644 index 86a1b4cae7..0000000000 --- a/src/app/shared/truncatable/truncatable.reducer.js +++ /dev/null @@ -1,42 +0,0 @@ -import { TruncatableActionTypes } from './truncatable.actions'; -var initialState = Object.create(null); -/** - * Performs a truncatable action on the current state - * @param {TruncatablesState} state The state before the action is performed - * @param {TruncatableAction} action The action that should be performed - * @returns {TruncatablesState} The state after the action is performed - */ -export function truncatableReducer(state, action) { - if (state === void 0) { state = initialState; } - var _a, _b, _c; - switch (action.type) { - case TruncatableActionTypes.COLLAPSE: { - return Object.assign({}, state, (_a = {}, - _a[action.id] = { - collapsed: true, - }, - _a)); - } - case TruncatableActionTypes.EXPAND: { - return Object.assign({}, state, (_b = {}, - _b[action.id] = { - collapsed: false, - }, - _b)); - } - case TruncatableActionTypes.TOGGLE: { - if (!state[action.id]) { - state[action.id] = { collapsed: false }; - } - return Object.assign({}, state, (_c = {}, - _c[action.id] = { - collapsed: !state[action.id].collapsed, - }, - _c)); - } - default: { - return state; - } - } -} -//# sourceMappingURL=truncatable.reducer.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.reducer.js.map b/src/app/shared/truncatable/truncatable.reducer.js.map deleted file mode 100644 index cb7da1cf4d..0000000000 --- a/src/app/shared/truncatable/truncatable.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"truncatable.reducer.js","sourceRoot":"","sources":["truncatable.reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAgBlF,IAAM,YAAY,GAAsB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,6BAA6B,KAAoB,EAAE,MAAyB;IAA/C,sBAAA,EAAA,oBAAoB;;IAErD,QAAQ,MAAM,CAAC,IAAI,EAAE;QAEnB,KAAK,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,EAAE,IAAG;oBACX,SAAS,EAAE,IAAI;iBAChB;oBACD,CAAC;SACJ;QAAC,KAAK,sBAAsB,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,EAAE,IAAG;oBACX,SAAS,EAAE,KAAK;iBACjB;oBACD,CAAC;SACJ;QAAC,KAAK,sBAAsB,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;gBACrB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAC,SAAS,EAAE,KAAK,EAAC,CAAC;aACvC;YACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK;gBAC5B,GAAC,MAAM,CAAC,EAAE,IAAG;oBACX,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS;iBACvC;oBACD,CAAC;SACJ;QACD,OAAO,CAAC,CAAC;YACP,OAAO,KAAK,CAAC;SACd;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.service.js b/src/app/shared/truncatable/truncatable.service.js deleted file mode 100644 index fa27e455f7..0000000000 --- a/src/app/shared/truncatable/truncatable.service.js +++ /dev/null @@ -1,71 +0,0 @@ -import * as tslib_1 from "tslib"; -import { map } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { createSelector, select, Store } from '@ngrx/store'; -import { TruncatableExpandAction, TruncatableToggleAction, TruncatableCollapseAction } from './truncatable.actions'; -import { hasValue } from '../empty.util'; -var truncatableStateSelector = function (state) { return state.truncatable; }; -/** - * Service responsible for truncating/clamping text and performing actions on truncatable elements - */ -var TruncatableService = /** @class */ (function () { - function TruncatableService(store) { - this.store = store; - } - /** - * Checks if a trunctable component should currently be collapsed - * @param {string} id The UUID of the truncatable component - * @returns {Observable} Emits true if the state in the store is currently collapsed for the given truncatable component - */ - TruncatableService.prototype.isCollapsed = function (id) { - return this.store.pipe(select(truncatableByIdSelector(id)), map(function (object) { - if (object) { - return object.collapsed; - } - else { - return false; - } - })); - }; - /** - * Dispatches a toggle action to the store for a given truncatable component - * @param {string} id The identifier of the truncatable for which the action is dispatched - */ - TruncatableService.prototype.toggle = function (id) { - this.store.dispatch(new TruncatableToggleAction(id)); - }; - /** - * Dispatches a collapse action to the store for a given truncatable component - * @param {string} id The identifier of the truncatable for which the action is dispatched - */ - TruncatableService.prototype.collapse = function (id) { - this.store.dispatch(new TruncatableCollapseAction(id)); - }; - /** - * Dispatches an expand action to the store for a given truncatable component - * @param {string} id The identifier of the truncatable for which the action is dispatched - */ - TruncatableService.prototype.expand = function (id) { - this.store.dispatch(new TruncatableExpandAction(id)); - }; - TruncatableService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store]) - ], TruncatableService); - return TruncatableService; -}()); -export { TruncatableService }; -function truncatableByIdSelector(id) { - return keySelector(id); -} -export function keySelector(key) { - return createSelector(truncatableStateSelector, function (state) { - if (hasValue(state)) { - return state[key]; - } - else { - return undefined; - } - }); -} -//# sourceMappingURL=truncatable.service.js.map \ No newline at end of file diff --git a/src/app/shared/truncatable/truncatable.service.js.map b/src/app/shared/truncatable/truncatable.service.js.map deleted file mode 100644 index c7357bee07..0000000000 --- a/src/app/shared/truncatable/truncatable.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"truncatable.service.js","sourceRoot":"","sources":["truncatable.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAoB,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAG9E,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,IAAM,wBAAwB,GAAG,UAAC,KAAwB,IAAK,OAAA,KAAK,CAAC,WAAW,EAAjB,CAAiB,CAAC;AAEjF;;GAEG;AAEH;IAEE,4BAAoB,KAA+B;QAA/B,UAAK,GAAL,KAAK,CAA0B;IACnD,CAAC;IAED;;;;OAIG;IACH,wCAAW,GAAX,UAAY,EAAU;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CACpB,MAAM,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,EACnC,GAAG,CAAC,UAAC,MAAwB;YAC3B,IAAI,MAAM,EAAE;gBACV,OAAO,MAAM,CAAC,SAAS,CAAC;aACzB;iBAAM;gBACL,OAAO,KAAK,CAAC;aACd;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,mCAAM,GAAb,UAAc,EAAU;QACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACI,qCAAQ,GAAf,UAAgB,EAAU;QACxB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;IAED;;;OAGG;IACI,mCAAM,GAAb,UAAc,EAAU;QACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IA7CU,kBAAkB;QAD9B,UAAU,EAAE;iDAGgB,KAAK;OAFrB,kBAAkB,CA8C9B;IAAD,yBAAC;CAAA,AA9CD,IA8CC;SA9CY,kBAAkB;AAgD/B,iCAAiC,EAAU;IACzC,OAAO,WAAW,CAAmB,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,sBAAyB,GAAW;IACxC,OAAO,cAAc,CAAC,wBAAwB,EAAE,UAAC,KAAuB;QACtE,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;SACnB;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;AACL,CAAC"} \ No newline at end of file diff --git a/src/app/shared/uploader/uploader-options.model.js b/src/app/shared/uploader/uploader-options.model.js deleted file mode 100644 index 275cb21456..0000000000 --- a/src/app/shared/uploader/uploader-options.model.js +++ /dev/null @@ -1,8 +0,0 @@ -var UploaderOptions = /** @class */ (function () { - function UploaderOptions() { - this.disableMultipart = false; - } - return UploaderOptions; -}()); -export { UploaderOptions }; -//# sourceMappingURL=uploader-options.model.js.map \ No newline at end of file diff --git a/src/app/shared/uploader/uploader-options.model.js.map b/src/app/shared/uploader/uploader-options.model.js.map deleted file mode 100644 index 1c509cd187..0000000000 --- a/src/app/shared/uploader/uploader-options.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"uploader-options.model.js","sourceRoot":"","sources":["uploader-options.model.ts"],"names":[],"mappings":"AACA;IAAA;QAQE,qBAAgB,GAAG,KAAK,CAAC;IAG3B,CAAC;IAAD,sBAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/app/shared/uploader/uploader.component.js b/src/app/shared/uploader/uploader.component.js deleted file mode 100644 index 08dc78d757..0000000000 --- a/src/app/shared/uploader/uploader.component.js +++ /dev/null @@ -1,169 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostListener, Input, Output, ViewEncapsulation, } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { FileUploader } from 'ng2-file-upload'; -import { uniqueId } from 'lodash'; -import { ScrollToService } from '@nicky-lenaers/ngx-scroll-to'; -import { UploaderOptions } from './uploader-options.model'; -import { isNotEmpty, isUndefined } from '../empty.util'; -import { UploaderService } from './uploader.service'; -var UploaderComponent = /** @class */ (function () { - function UploaderComponent(cdr, scrollToService, uploaderService) { - this.cdr = cdr; - this.scrollToService = scrollToService; - this.uploaderService = uploaderService; - /** - * The function to call when upload is completed - */ - this.onCompleteItem = new EventEmitter(); - /** - * The function to call on error occurred - */ - this.onUploadError = new EventEmitter(); - this.isOverBaseDropZone = observableOf(false); - this.isOverDocumentDropZone = observableOf(false); - } - UploaderComponent.prototype.onDragOver = function (event) { - if (this.enableDragOverDocument && this.uploaderService.isAllowedDragOverPage()) { - // Show drop area on the page - event.preventDefault(); - if (event.target.tagName !== 'HTML') { - this.isOverDocumentDropZone = observableOf(true); - } - } - }; - /** - * Method provided by Angular. Invoked after the constructor. - */ - UploaderComponent.prototype.ngOnInit = function () { - this.uploaderId = 'ds-drag-and-drop-uploader' + uniqueId(); - this.checkConfig(this.uploadFilesOptions); - this.uploader = new FileUploader({ - url: this.uploadFilesOptions.url, - authToken: this.uploadFilesOptions.authToken, - disableMultipart: this.uploadFilesOptions.disableMultipart, - itemAlias: this.uploadFilesOptions.itemAlias, - removeAfterUpload: true, - autoUpload: true - }); - if (isUndefined(this.enableDragOverDocument)) { - this.enableDragOverDocument = false; - } - if (isUndefined(this.dropMsg)) { - this.dropMsg = 'uploader.drag-message'; - } - if (isUndefined(this.dropOverDocumentMsg)) { - this.dropOverDocumentMsg = 'uploader.drag-message'; - } - }; - UploaderComponent.prototype.ngAfterViewInit = function () { - var _this = this; - // Maybe to remove: needed to avoid CORS issue with our temp upload server - this.uploader.onAfterAddingFile = (function (item) { - item.withCredentials = false; - }); - if (isUndefined(this.onBeforeUpload)) { - this.onBeforeUpload = function () { return; }; - } - this.uploader.onBeforeUploadItem = function () { - _this.onBeforeUpload(); - _this.isOverDocumentDropZone = observableOf(false); - // Move page target to the uploader - var config = { - target: _this.uploaderId - }; - _this.scrollToService.scrollTo(config); - }; - this.uploader.onCompleteItem = function (item, response, status, headers) { - if (isNotEmpty(response)) { - var responsePath = JSON.parse(response); - _this.onCompleteItem.emit(responsePath); - } - }; - this.uploader.onErrorItem = function (item, response, status, headers) { - _this.onUploadError.emit(null); - _this.uploader.cancelAll(); - }; - this.uploader.onProgressAll = function () { return _this.onProgress(); }; - this.uploader.onProgressItem = function () { return _this.onProgress(); }; - }; - /** - * Called when files are dragged on the base drop area. - */ - UploaderComponent.prototype.fileOverBase = function (isOver) { - this.isOverBaseDropZone = observableOf(isOver); - }; - /** - * Called when files are dragged on the window document drop area. - */ - UploaderComponent.prototype.fileOverDocument = function (isOver) { - if (!isOver) { - this.isOverDocumentDropZone = observableOf(isOver); - } - }; - UploaderComponent.prototype.onProgress = function () { - this.cdr.detectChanges(); - }; - /** - * Ensure options passed contains the required properties. - * - * @param fileUploadOptions - * The upload-files options object. - */ - UploaderComponent.prototype.checkConfig = function (fileUploadOptions) { - var required = ['url', 'authToken', 'disableMultipart', 'itemAlias']; - var missing = required.filter(function (prop) { - return !((prop in fileUploadOptions) && fileUploadOptions[prop] !== ''); - }); - if (0 < missing.length) { - throw new Error('UploadFiles: Argument is missing the following required properties: ' + missing.join(', ')); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], UploaderComponent.prototype, "dropMsg", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], UploaderComponent.prototype, "dropOverDocumentMsg", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Boolean) - ], UploaderComponent.prototype, "enableDragOverDocument", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Function) - ], UploaderComponent.prototype, "onBeforeUpload", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", UploaderOptions) - ], UploaderComponent.prototype, "uploadFilesOptions", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], UploaderComponent.prototype, "onCompleteItem", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], UploaderComponent.prototype, "onUploadError", void 0); - tslib_1.__decorate([ - HostListener('window:dragover', ['$event']), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object]), - tslib_1.__metadata("design:returntype", void 0) - ], UploaderComponent.prototype, "onDragOver", null); - UploaderComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-uploader', - templateUrl: 'uploader.component.html', - styleUrls: ['uploader.component.scss'], - changeDetection: ChangeDetectionStrategy.Default, - encapsulation: ViewEncapsulation.Emulated - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, ScrollToService, UploaderService]) - ], UploaderComponent); - return UploaderComponent; -}()); -export { UploaderComponent }; -//# sourceMappingURL=uploader.component.js.map \ No newline at end of file diff --git a/src/app/shared/uploader/uploader.component.js.map b/src/app/shared/uploader/uploader.component.js.map deleted file mode 100644 index 4c877e4536..0000000000 --- a/src/app/shared/uploader/uploader.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"uploader.component.js","sourceRoot":"","sources":["uploader.component.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,MAAM,EACN,iBAAiB,GAClB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAyB,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEtF,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAUrD;IAsDE,2BAAoB,GAAsB,EAAU,eAAgC,EAAU,eAAgC;QAA1G,QAAG,GAAH,GAAG,CAAmB;QAAU,oBAAe,GAAf,eAAe,CAAiB;QAAU,oBAAe,GAAf,eAAe,CAAiB;QA3B9H;;WAEG;QACO,mBAAc,GAAsB,IAAI,YAAY,EAAO,CAAC;QAEtE;;WAEG;QACO,kBAAa,GAAsB,IAAI,YAAY,EAAO,CAAC;QAI9D,uBAAkB,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACzC,2BAAsB,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAepD,CAAC;IAZD,sCAAU,GAAV,UAAW,KAAU;QAEnB,IAAI,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,EAAE;YAC/E,6BAA6B;YAC7B,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAK,KAAK,CAAC,MAAc,CAAC,OAAO,KAAK,MAAM,EAAE;gBAC5C,IAAI,CAAC,sBAAsB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;aAClD;SACF;IACH,CAAC;IAKD;;OAEG;IACH,oCAAQ,GAAR;QACE,IAAI,CAAC,UAAU,GAAG,2BAA2B,GAAG,QAAQ,EAAE,CAAC;QAC3D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,YAAY,CAAC;YAC/B,GAAG,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG;YAChC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS;YAC5C,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,CAAC,gBAAgB;YAC1D,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS;YAC5C,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,IAAI,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE;YAC5C,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;SACrC;QACD,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC7B,IAAI,CAAC,OAAO,GAAG,uBAAuB,CAAC;SACxC;QACD,IAAI,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE;YACzC,IAAI,CAAC,mBAAmB,GAAG,uBAAuB,CAAC;SACpD;IACH,CAAC;IAED,2CAAe,GAAf;QAAA,iBA8BC;QA7BC,0EAA0E;QAC1E,IAAI,CAAC,QAAQ,CAAC,iBAAiB,GAAG,CAAC,UAAC,IAAI;YACtC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE;YACpC,IAAI,CAAC,cAAc,GAAG,cAAO,OAAM,CAAA,CAAC,CAAC;SACtC;QACD,IAAI,CAAC,QAAQ,CAAC,kBAAkB,GAAG;YACjC,KAAI,CAAC,cAAc,EAAE,CAAC;YACtB,KAAI,CAAC,sBAAsB,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YAElD,mCAAmC;YACnC,IAAM,MAAM,GAA0B;gBACpC,MAAM,EAAE,KAAI,CAAC,UAAU;aACxB,CAAC;YACF,KAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,UAAC,IAAS,EAAE,QAAa,EAAE,MAAW,EAAE,OAAY;YACjF,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;gBACxB,IAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC1C,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;aACxC;QACH,CAAC,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,WAAW,GAAG,UAAC,IAAS,EAAE,QAAa,EAAE,MAAW,EAAE,OAAY;YAC9E,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9B,KAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC5B,CAAC,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,cAAM,OAAA,KAAI,CAAC,UAAU,EAAE,EAAjB,CAAiB,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,cAAM,OAAA,KAAI,CAAC,UAAU,EAAE,EAAjB,CAAiB,CAAC;IACzD,CAAC;IAED;;OAEG;IACI,wCAAY,GAAnB,UAAoB,MAAe;QACjC,IAAI,CAAC,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACI,4CAAgB,GAAvB,UAAwB,MAAe;QACrC,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,CAAC,sBAAsB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;SACpD;IACH,CAAC;IAEO,sCAAU,GAAlB;QACE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;OAKG;IACK,uCAAW,GAAnB,UAAoB,iBAAsB;QACxC,IAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;QACvE,IAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAC,IAAI;YACnC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,iBAAiB,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,sEAAsE,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SAC9G;IACH,CAAC;IAhJQ;QAAR,KAAK,EAAE;;sDAAiB;IAKhB;QAAR,KAAK,EAAE;;kEAA6B;IAK5B;QAAR,KAAK,EAAE;;qEAAiC;IAKhC;QAAR,KAAK,EAAE;;6DAA4B;IAK3B;QAAR,KAAK,EAAE;0CAAqB,eAAe;iEAAC;IAKnC;QAAT,MAAM,EAAE;0CAAiB,YAAY;6DAAgC;IAK5D;QAAT,MAAM,EAAE;0CAAgB,YAAY;4DAAgC;IAQrE;QADC,YAAY,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;uDAU3C;IApDU,iBAAiB;QAR7B,SAAS,CAAC;YACT,QAAQ,EAAE,aAAa;YACvB,WAAW,EAAE,yBAAyB;YACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;YACtC,eAAe,EAAE,uBAAuB,CAAC,OAAO;YAChD,aAAa,EAAE,iBAAiB,CAAC,QAAQ;SAC1C,CAAC;iDAwDyB,iBAAiB,EAA2B,eAAe,EAA2B,eAAe;OAtDnH,iBAAiB,CAuJ7B;IAAD,wBAAC;CAAA,AAvJD,IAuJC;SAvJY,iBAAiB"} \ No newline at end of file diff --git a/src/app/shared/uploader/uploader.service.js b/src/app/shared/uploader/uploader.service.js deleted file mode 100644 index 0fa0663809..0000000000 --- a/src/app/shared/uploader/uploader.service.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -var UploaderService = /** @class */ (function () { - function UploaderService() { - this._overrideDragOverPage = false; - } - UploaderService.prototype.overrideDragOverPage = function () { - this._overrideDragOverPage = true; - }; - UploaderService.prototype.allowDragOverPage = function () { - this._overrideDragOverPage = false; - }; - UploaderService.prototype.isAllowedDragOverPage = function () { - return !this._overrideDragOverPage; - }; - UploaderService = tslib_1.__decorate([ - Injectable() - ], UploaderService); - return UploaderService; -}()); -export { UploaderService }; -//# sourceMappingURL=uploader.service.js.map \ No newline at end of file diff --git a/src/app/shared/uploader/uploader.service.js.map b/src/app/shared/uploader/uploader.service.js.map deleted file mode 100644 index b055bea6a7..0000000000 --- a/src/app/shared/uploader/uploader.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"uploader.service.js","sourceRoot":"","sources":["uploader.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;IADA;QAEU,0BAAqB,GAAG,KAAK,CAAC;IAaxC,CAAC;IAXQ,8CAAoB,GAA3B;QACE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;IACpC,CAAC;IAEM,2CAAiB,GAAxB;QACE,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;IACrC,CAAC;IAEM,+CAAqB,GAA5B;QACE,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC;IACrC,CAAC;IAbU,eAAe;QAD3B,UAAU,EAAE;OACA,eAAe,CAc3B;IAAD,sBAAC;CAAA,AAdD,IAcC;SAdY,eAAe"} \ No newline at end of file diff --git a/src/app/shared/utils/auto-focus.directive.js b/src/app/shared/utils/auto-focus.directive.js deleted file mode 100644 index ac441f58cf..0000000000 --- a/src/app/shared/utils/auto-focus.directive.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, ElementRef, Input } from '@angular/core'; -import { isNotEmpty } from '../empty.util'; -/** - * Directive to set focus on an element when it is rendered - */ -var AutoFocusDirective = /** @class */ (function () { - function AutoFocusDirective(el) { - this.el = el; - /** - * Optional input to specify which element in a component should get the focus - * If left empty, the component itself will get the focus - */ - this.autoFocusSelector = undefined; - } - AutoFocusDirective.prototype.ngAfterViewInit = function () { - if (isNotEmpty(this.autoFocusSelector)) { - return this.el.nativeElement.querySelector(this.autoFocusSelector).focus(); - } - else { - return this.el.nativeElement.focus(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], AutoFocusDirective.prototype, "autoFocusSelector", void 0); - AutoFocusDirective = tslib_1.__decorate([ - Directive({ - selector: '[dsAutoFocus]' - }), - tslib_1.__metadata("design:paramtypes", [ElementRef]) - ], AutoFocusDirective); - return AutoFocusDirective; -}()); -export { AutoFocusDirective }; -//# sourceMappingURL=auto-focus.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/auto-focus.directive.js.map b/src/app/shared/utils/auto-focus.directive.js.map deleted file mode 100644 index 408250c221..0000000000 --- a/src/app/shared/utils/auto-focus.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auto-focus.directive.js","sourceRoot":"","sources":["auto-focus.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAiB,UAAU,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C;;GAEG;AAIH;IAQE,4BAAoB,EAAc;QAAd,OAAE,GAAF,EAAE,CAAY;QANlC;;;WAGG;QACM,sBAAiB,GAAW,SAAS,CAAC;IAG/C,CAAC;IAED,4CAAe,GAAf;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;YACtC,OAAO,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC;SAC5E;aAAM;YACL,OAAO,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;SACtC;IACH,CAAC;IAXQ;QAAR,KAAK,EAAE;;iEAAuC;IANpC,kBAAkB;QAH9B,SAAS,CAAC;YACT,QAAQ,EAAE,eAAe;SAC1B,CAAC;iDASwB,UAAU;OARvB,kBAAkB,CAkB9B;IAAD,yBAAC;CAAA,AAlBD,IAkBC;SAlBY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/utils/capitalize.pipe.js b/src/app/shared/utils/capitalize.pipe.js deleted file mode 100644 index d9d0b0df5b..0000000000 --- a/src/app/shared/utils/capitalize.pipe.js +++ /dev/null @@ -1,30 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -var CapitalizePipe = /** @class */ (function () { - /** - * Pipe for capizalizing a string - */ - function CapitalizePipe() { - } - /** - * @param {string} value String to be capitalized - * @returns {string} Capitalized version of the input value - */ - CapitalizePipe.prototype.transform = function (value) { - if (value) { - return value.charAt(0).toUpperCase() + value.slice(1); - } - return value; - }; - CapitalizePipe = tslib_1.__decorate([ - Pipe({ - name: 'dsCapitalize' - }) - /** - * Pipe for capizalizing a string - */ - ], CapitalizePipe); - return CapitalizePipe; -}()); -export { CapitalizePipe }; -//# sourceMappingURL=capitalize.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/capitalize.pipe.js.map b/src/app/shared/utils/capitalize.pipe.js.map deleted file mode 100644 index f909234e8a..0000000000 --- a/src/app/shared/utils/capitalize.pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"capitalize.pipe.js","sourceRoot":"","sources":["capitalize.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAA;AASnD;IAHA;;OAEG;IACH;IAYA,CAAC;IAXC;;;OAGG;IACH,kCAAS,GAAT,UAAU,KAAa;QACrB,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACvD;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAVU,cAAc;QAP1B,IAAI,CAAC;YACJ,IAAI,EAAE,cAAc;SACrB,CAAC;QAEF;;WAEG;OACU,cAAc,CAY1B;IAAD,qBAAC;CAAA,AAZD,IAYC;SAZY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/utils/click-outside.directive.js b/src/app/shared/utils/click-outside.directive.js deleted file mode 100644 index 4ba5d449a1..0000000000 --- a/src/app/shared/utils/click-outside.directive.js +++ /dev/null @@ -1,42 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, ElementRef, Output, EventEmitter, HostListener } from '@angular/core'; -var ClickOutsideDirective = /** @class */ (function () { - function ClickOutsideDirective(_elementRef) { - this._elementRef = _elementRef; - /** - * Emits null when the user clicks outside of the element - */ - this.dsClickOutside = new EventEmitter(); - } - ClickOutsideDirective.prototype.onClick = function () { - var hostElement = this._elementRef.nativeElement; - var focusElement = hostElement.ownerDocument.activeElement; - var clickedInside = hostElement.contains(focusElement); - if (!clickedInside) { - this.dsClickOutside.emit(null); - } - }; - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], ClickOutsideDirective.prototype, "dsClickOutside", void 0); - tslib_1.__decorate([ - HostListener('document:click'), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", []), - tslib_1.__metadata("design:returntype", void 0) - ], ClickOutsideDirective.prototype, "onClick", null); - ClickOutsideDirective = tslib_1.__decorate([ - Directive({ - selector: '[dsClickOutside]' - }) - /** - * Directive to detect when the users clicks outside of the element the directive was put on - */ - , - tslib_1.__metadata("design:paramtypes", [ElementRef]) - ], ClickOutsideDirective); - return ClickOutsideDirective; -}()); -export { ClickOutsideDirective }; -//# sourceMappingURL=click-outside.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/click-outside.directive.js.map b/src/app/shared/utils/click-outside.directive.js.map deleted file mode 100644 index 7897d896a4..0000000000 --- a/src/app/shared/utils/click-outside.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"click-outside.directive.js","sourceRoot":"","sources":["click-outside.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAQ1F;IAOE,+BAAoB,WAAuB;QAAvB,gBAAW,GAAX,WAAW,CAAY;QAN3C;;WAEG;QAEI,mBAAc,GAAG,IAAI,YAAY,EAAE,CAAC;IAG3C,CAAC;IAGM,uCAAO,GAAd;QACE,IAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;QACnD,IAAM,YAAY,GAAG,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC;QAC7D,IAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,EAAE;YAClB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAChC;IACH,CAAC;IAbD;QADC,MAAM,EAAE;;iEACkC;IAM3C;QADC,YAAY,CAAC,gBAAgB,CAAC;;;;wDAQ9B;IAlBU,qBAAqB;QANjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;SAC7B,CAAC;QACF;;WAEG;;iDAQgC,UAAU;OAPhC,qBAAqB,CAmBjC;IAAD,4BAAC;CAAA,AAnBD,IAmBC;SAnBY,qBAAqB"} \ No newline at end of file diff --git a/src/app/shared/utils/console.pipe.js b/src/app/shared/utils/console.pipe.js deleted file mode 100644 index cab3e142a2..0000000000 --- a/src/app/shared/utils/console.pipe.js +++ /dev/null @@ -1,18 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -var ConsolePipe = /** @class */ (function () { - function ConsolePipe() { - } - ConsolePipe.prototype.transform = function (value) { - console.log(value); - return ''; - }; - ConsolePipe = tslib_1.__decorate([ - Pipe({ - name: 'dsConsole' - }) - ], ConsolePipe); - return ConsolePipe; -}()); -export { ConsolePipe }; -//# sourceMappingURL=console.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/console.pipe.js.map b/src/app/shared/utils/console.pipe.js.map deleted file mode 100644 index f5a70c45d2..0000000000 --- a/src/app/shared/utils/console.pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"console.pipe.js","sourceRoot":"","sources":["console.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAKpD;IAAA;IAKA,CAAC;IAJC,+BAAS,GAAT,UAAU,KAAU;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,EAAE,CAAC;IACZ,CAAC;IAJU,WAAW;QAHvB,IAAI,CAAC;YACJ,IAAI,EAAE,WAAW;SAClB,CAAC;OACW,WAAW,CAKvB;IAAD,kBAAC;CAAA,AALD,IAKC;SALY,WAAW"} \ No newline at end of file diff --git a/src/app/shared/utils/debounce.directive.js b/src/app/shared/utils/debounce.directive.js deleted file mode 100644 index da9ea0b0d3..0000000000 --- a/src/app/shared/utils/debounce.directive.js +++ /dev/null @@ -1,64 +0,0 @@ -import * as tslib_1 from "tslib"; -import { distinctUntilChanged, debounceTime, takeUntil } from 'rxjs/operators'; -import { Directive, Input, Output, EventEmitter } from '@angular/core'; -import { NgControl } from '@angular/forms'; -import { Subject } from 'rxjs'; -var DebounceDirective = /** @class */ (function () { - function DebounceDirective(model) { - this.model = model; - /** - * Emits a value when nothing has changed in dsDebounce milliseconds - */ - this.onDebounce = new EventEmitter(); - /** - * The debounce time in milliseconds - */ - this.dsDebounce = 500; - /** - * Subject to unsubscribe from - */ - this.subject = new Subject(); - } - /** - * Start listening to changes of the input field's value changes - * Emit it when the debounceTime is over without new changes - */ - DebounceDirective.prototype.ngOnInit = function () { - var _this = this; - this.model.valueChanges.pipe(takeUntil(this.subject), debounceTime(this.dsDebounce), distinctUntilChanged()) - .subscribe(function (modelValue) { - if (_this.model.dirty) { - _this.onDebounce.emit(modelValue); - } - }); - }; - /** - * Close subject - */ - DebounceDirective.prototype.ngOnDestroy = function () { - this.subject.next(); - this.subject.complete(); - }; - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], DebounceDirective.prototype, "onDebounce", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], DebounceDirective.prototype, "dsDebounce", void 0); - DebounceDirective = tslib_1.__decorate([ - Directive({ - selector: '[ngModel][dsDebounce]', - }) - /** - * Directive for setting a debounce time on an input field - * It will emit the input field's value when no changes were made to this value in a given debounce time - */ - , - tslib_1.__metadata("design:paramtypes", [NgControl]) - ], DebounceDirective); - return DebounceDirective; -}()); -export { DebounceDirective }; -//# sourceMappingURL=debounce.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/debounce.directive.js.map b/src/app/shared/utils/debounce.directive.js.map deleted file mode 100644 index 3c77363a04..0000000000 --- a/src/app/shared/utils/debounce.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"debounce.directive.js","sourceRoot":"","sources":["debounce.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAE,YAAY,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAqB,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAS/B;IAmBE,2BAAmB,KAAgB;QAAhB,UAAK,GAAL,KAAK,CAAW;QAjBnC;;WAEG;QAEI,eAAU,GAAG,IAAI,YAAY,EAAO,CAAC;QAE5C;;WAEG;QAEI,eAAU,GAAG,GAAG,CAAC;QAExB;;WAEG;QACK,YAAO,GAAkB,IAAI,OAAO,EAAQ,CAAC;IAGrD,CAAC;IAED;;;OAGG;IACH,oCAAQ,GAAR;QAAA,iBAUC;QATC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAC1B,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EACvB,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,EAC7B,oBAAoB,EAAE,CAAC;aACtB,SAAS,CAAC,UAAC,UAAU;YACpB,IAAI,KAAI,CAAC,KAAK,CAAC,KAAK,EAAE;gBACpB,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAClC;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,uCAAW,GAAX;QACE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAtCD;QADC,MAAM,EAAE;;yDACmC;IAM5C;QADC,KAAK,EAAE;;yDACgB;IAZb,iBAAiB;QAP7B,SAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;SAClC,CAAC;QACF;;;WAGG;;iDAoByB,SAAS;OAnBxB,iBAAiB,CA6C7B;IAAD,wBAAC;CAAA,AA7CD,IA6CC;SA7CY,iBAAiB"} \ No newline at end of file diff --git a/src/app/shared/utils/drag-click.directive.js b/src/app/shared/utils/drag-click.directive.js deleted file mode 100644 index 1856c7fedb..0000000000 --- a/src/app/shared/utils/drag-click.directive.js +++ /dev/null @@ -1,57 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, EventEmitter, HostListener, Output } from '@angular/core'; -var DragClickDirective = /** @class */ (function () { - function DragClickDirective() { - /** - * Emits a click event when the click is perceived as an actual click and not a drag - */ - this.actualClick = new EventEmitter(); - } - /** - * When the mouse button is pushed down, register the start time - * @param event Mouse down event - */ - DragClickDirective.prototype.mousedownEvent = function (event) { - this.start = new Date(); - }; - /** - * When the mouse button is let go of, check how long if it was down for - * If the mouse button was down for more than 250ms, don't emit a click event - * @param event Mouse down event - */ - DragClickDirective.prototype.mouseupEvent = function (event) { - var end = new Date(); - var clickTime = end - this.start; - if (clickTime < 250) { - this.actualClick.emit(event); - } - }; - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", Object) - ], DragClickDirective.prototype, "actualClick", void 0); - tslib_1.__decorate([ - HostListener('mousedown', ['$event']), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object]), - tslib_1.__metadata("design:returntype", void 0) - ], DragClickDirective.prototype, "mousedownEvent", null); - tslib_1.__decorate([ - HostListener('mouseup', ['$event']), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object]), - tslib_1.__metadata("design:returntype", void 0) - ], DragClickDirective.prototype, "mouseupEvent", null); - DragClickDirective = tslib_1.__decorate([ - Directive({ - selector: '[dsDragClick]' - }) - /** - * Directive for preventing drag events being misinterpret as clicks - * The difference is made using the time the mouse button is pushed down - */ - ], DragClickDirective); - return DragClickDirective; -}()); -export { DragClickDirective }; -//# sourceMappingURL=drag-click.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/drag-click.directive.js.map b/src/app/shared/utils/drag-click.directive.js.map deleted file mode 100644 index c3ec7a57a0..0000000000 --- a/src/app/shared/utils/drag-click.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"drag-click.directive.js","sourceRoot":"","sources":["drag-click.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAU9E;IARA;QAcE;;WAEG;QACO,gBAAW,GAAG,IAAI,YAAY,EAAE,CAAC;IAwB7C,CAAC;IAtBC;;;OAGG;IAEH,2CAAc,GAAd,UAAe,KAAK;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IAEH,yCAAY,GAAZ,UAAa,KAAK;QAChB,IAAM,GAAG,GAAQ,IAAI,IAAI,EAAE,CAAC;QAC5B,IAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;QACnC,IAAI,SAAS,GAAG,GAAG,EAAE;YACnB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SAC7B;IACH,CAAC;IAvBS;QAAT,MAAM,EAAE;;2DAAkC;IAO3C;QADC,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;4DAGrC;IAQD;QADC,YAAY,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAC;;;;0DAOnC;IAhCU,kBAAkB;QAR9B,SAAS,CAAC;YACT,QAAQ,EAAE,eAAe;SAC1B,CAAC;QAEF;;;WAGG;OACU,kBAAkB,CAiC9B;IAAD,yBAAC;CAAA,AAjCD,IAiCC;SAjCY,kBAAkB"} \ No newline at end of file diff --git a/src/app/shared/utils/emphasize.pipe.js b/src/app/shared/utils/emphasize.pipe.js deleted file mode 100644 index 0d2484196a..0000000000 --- a/src/app/shared/utils/emphasize.pipe.js +++ /dev/null @@ -1,62 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -var EmphasizePipe = /** @class */ (function () { - function EmphasizePipe() { - /** - * Characters that should be escaped - */ - this.specials = [ - // order matters for these - '-', - '[', - ']' - // order doesn't matter for any of these - , - '/', - '{', - '}', - '(', - ')', - '*', - '+', - '?', - '.', - '\\', - '^', - '$', - '|' - ]; - /** - * Regular expression for escaping the string we're trying to find - */ - this.regex = RegExp('[' + this.specials.join('\\') + ']', 'g'); - } - /** - * - * @param haystack The string which we want to partly highlight - * @param needle The string that should become emphasized in the haystack string - * @returns {any} Transformed haystack with the needle emphasized - */ - EmphasizePipe.prototype.transform = function (haystack, needle) { - var escaped = this.escapeRegExp(needle); - var reg = new RegExp(escaped, 'gi'); - return haystack.replace(reg, '$&'); - }; - /** - * - * @param str Escape special characters in the string we're looking for - * @returns {any} The escaped version of the input string - */ - EmphasizePipe.prototype.escapeRegExp = function (str) { - return str.replace(this.regex, '\\$&'); - }; - EmphasizePipe = tslib_1.__decorate([ - Pipe({ name: 'dsEmphasize' }) - /** - * Pipe for emphasizing a part of a string by surrounding it with tags - */ - ], EmphasizePipe); - return EmphasizePipe; -}()); -export { EmphasizePipe }; -//# sourceMappingURL=emphasize.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/emphasize.pipe.js.map b/src/app/shared/utils/emphasize.pipe.js.map deleted file mode 100644 index fbdd8cf5df..0000000000 --- a/src/app/shared/utils/emphasize.pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"emphasize.pipe.js","sourceRoot":"","sources":["emphasize.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAMpD;IAJA;QAKE;;WAEG;QACH,aAAQ,GAAG;YACT,0BAA0B;YAC1B,GAAG;YACD,GAAG;YACH,GAAG;YACL,wCAAwC;;YACtC,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,IAAI;YACJ,GAAG;YACH,GAAG;YACH,GAAG;SACN,CAAC;QACF;;WAEG;QACH,UAAK,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;IAsB5D,CAAC;IApBC;;;;;OAKG;IACH,iCAAS,GAAT,UAAU,QAAQ,EAAE,MAAM;QACxB,IAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAM,GAAG,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACF,oCAAY,GAAZ,UAAa,GAAG;QACf,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAhDU,aAAa;QAJzB,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QAC9B;;WAEG;OACU,aAAa,CAiDzB;IAAD,oBAAC;CAAA,AAjDD,IAiDC;SAjDY,aAAa"} \ No newline at end of file diff --git a/src/app/shared/utils/encode-decode.util.js b/src/app/shared/utils/encode-decode.util.js deleted file mode 100644 index 8c5bb712c9..0000000000 --- a/src/app/shared/utils/encode-decode.util.js +++ /dev/null @@ -1,11 +0,0 @@ -/** - * use this to make a Base64 encoded string URL friendly, - * i.e. '+' and '/' are replaced with special percent-encoded hexadecimal sequences - * - * @param {String} str the encoded string - * @returns {String} the URL friendly encoded String - */ -export function Base64EncodeUrl(str) { - return str.replace(/\+/g, '%2B').replace(/\//g, '%2F').replace(/\=/g, '%3D'); -} -//# sourceMappingURL=encode-decode.util.js.map \ No newline at end of file diff --git a/src/app/shared/utils/encode-decode.util.js.map b/src/app/shared/utils/encode-decode.util.js.map deleted file mode 100644 index b9925f9b88..0000000000 --- a/src/app/shared/utils/encode-decode.util.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"encode-decode.util.js","sourceRoot":"","sources":["encode-decode.util.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,0BAA0B,GAAG;IACjC,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/E,CAAC"} \ No newline at end of file diff --git a/src/app/shared/utils/enum-keys-pipe.js b/src/app/shared/utils/enum-keys-pipe.js deleted file mode 100644 index 99fc6f1d6b..0000000000 --- a/src/app/shared/utils/enum-keys-pipe.js +++ /dev/null @@ -1,34 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -var EnumKeysPipe = /** @class */ (function () { - /** - * Pipe for parsing all values of an enumeration to an array of key-value pairs - */ - function EnumKeysPipe() { - } - /** - * @param value An enumeration - * @returns {any} Array with all keys and values of the input enumeration - */ - EnumKeysPipe.prototype.transform = function (value) { - var keys = []; - for (var enumMember in value) { - if (!isNaN(parseInt(enumMember, 10))) { - keys.push({ key: +enumMember, value: value[enumMember] }); - } - else { - keys.push({ key: enumMember, value: value[enumMember] }); - } - } - return keys; - }; - EnumKeysPipe = tslib_1.__decorate([ - Pipe({ name: 'dsKeys' }) - /** - * Pipe for parsing all values of an enumeration to an array of key-value pairs - */ - ], EnumKeysPipe); - return EnumKeysPipe; -}()); -export { EnumKeysPipe }; -//# sourceMappingURL=enum-keys-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/enum-keys-pipe.js.map b/src/app/shared/utils/enum-keys-pipe.js.map deleted file mode 100644 index becc3ab614..0000000000 --- a/src/app/shared/utils/enum-keys-pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"enum-keys-pipe.js","sourceRoot":"","sources":["enum-keys-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAMpD;IAHA;;OAEG;IACH;IAiBA,CAAC;IAfC;;;OAGG;IACH,gCAAS,GAAT,UAAU,KAAK;QACb,IAAM,IAAI,GAAG,EAAE,CAAC;QAChB,KAAK,IAAM,UAAU,IAAI,KAAK,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,EAAE;gBACpC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;aAC3D;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;aAC1D;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAhBU,YAAY;QAJxB,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QACzB;;WAEG;OACU,YAAY,CAiBxB;IAAD,mBAAC;CAAA,AAjBD,IAiBC;SAjBY,YAAY"} \ No newline at end of file diff --git a/src/app/shared/utils/file-size-pipe.js b/src/app/shared/utils/file-size-pipe.js deleted file mode 100644 index 89b893d0de..0000000000 --- a/src/app/shared/utils/file-size-pipe.js +++ /dev/null @@ -1,46 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -/* - * Convert bytes into largest possible unit. - * Takes an precision argument that defaults to 2. - * Usage: - * bytes | fileSize:precision - * Example: - * {{ 1024 | fileSize}} - * formats to: 1 KB - */ -var FileSizePipe = /** @class */ (function () { - function FileSizePipe() { - this.units = [ - 'bytes', - 'KiB', - 'MiB', - 'GiB', - 'TiB', - 'PiB' - ]; - } - FileSizePipe.prototype.transform = function (bytes, precision) { - if (bytes === void 0) { bytes = 0; } - if (precision === void 0) { precision = 2; } - var result; - if (isNaN(parseFloat(String(bytes))) || !isFinite(bytes)) { - result = '?'; - } - else { - var unit = 0; - while (bytes >= 1024) { - bytes /= 1024; - unit++; - } - result = bytes.toFixed(+precision) + ' ' + this.units[unit]; - } - return result; - }; - FileSizePipe = tslib_1.__decorate([ - Pipe({ name: 'dsFileSize' }) - ], FileSizePipe); - return FileSizePipe; -}()); -export { FileSizePipe }; -//# sourceMappingURL=file-size-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/file-size-pipe.js.map b/src/app/shared/utils/file-size-pipe.js.map deleted file mode 100644 index 15d74e29d4..0000000000 --- a/src/app/shared/utils/file-size-pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"file-size-pipe.js","sourceRoot":"","sources":["file-size-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAEpD;;;;;;;;GAQG;AAGH;IADA;QAGU,UAAK,GAAa;YACxB,OAAO;YACP,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK;SACN,CAAC;IAkBJ,CAAC;IAhBC,gCAAS,GAAT,UAAU,KAAiB,EAAE,SAAqB;QAAxC,sBAAA,EAAA,SAAiB;QAAE,0BAAA,EAAA,aAAqB;QAChD,IAAI,MAAc,CAAC;QACnB,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACxD,MAAM,GAAG,GAAG,CAAC;SACd;aAAM;YACL,IAAI,IAAI,GAAG,CAAC,CAAC;YAEb,OAAO,KAAK,IAAI,IAAI,EAAE;gBACpB,KAAK,IAAI,IAAI,CAAC;gBACd,IAAI,EAAE,CAAC;aACR;YAED,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAE,SAAS,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC9D;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IA1BU,YAAY;QADxB,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;OAChB,YAAY,CA2BxB;IAAD,mBAAC;CAAA,AA3BD,IA2BC;SA3BY,YAAY"} \ No newline at end of file diff --git a/src/app/shared/utils/in-list-validator.directive.js b/src/app/shared/utils/in-list-validator.directive.js deleted file mode 100644 index 47f7bb563b..0000000000 --- a/src/app/shared/utils/in-list-validator.directive.js +++ /dev/null @@ -1,36 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, Input } from '@angular/core'; -import { NG_VALIDATORS } from '@angular/forms'; -import { inListValidator } from './validator.functions'; -/** - * Directive for validating if a ngModel value is in a given list - */ -var InListValidator = /** @class */ (function () { - function InListValidator() { - } - InListValidator_1 = InListValidator; - /** - * The function that checks if the form control's value is currently valid - * @param c The FormControl - */ - InListValidator.prototype.validate = function (c) { - return inListValidator(this.dsInListValidator)(c); - }; - var InListValidator_1; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], InListValidator.prototype, "dsInListValidator", void 0); - InListValidator = InListValidator_1 = tslib_1.__decorate([ - Directive({ - selector: '[ngModel][dsInListValidator]', - // We add our directive to the list of existing validators - providers: [ - { provide: NG_VALIDATORS, useExisting: InListValidator_1, multi: true } - ] - }) - ], InListValidator); - return InListValidator; -}()); -export { InListValidator }; -//# sourceMappingURL=in-list-validator.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/in-list-validator.directive.js.map b/src/app/shared/utils/in-list-validator.directive.js.map deleted file mode 100644 index ae0c1ef916..0000000000 --- a/src/app/shared/utils/in-list-validator.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"in-list-validator.directive.js","sourceRoot":"","sources":["in-list-validator.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAe,aAAa,EAA+B,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;GAEG;AAQH;IAAA;IAcA,CAAC;wBAdY,eAAe;IAO1B;;;OAGG;IACH,kCAAQ,GAAR,UAAS,CAAc;QACrB,OAAO,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;;IARD;QADC,KAAK,EAAE;;8DACoB;IALjB,eAAe;QAP3B,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,0DAA0D;YAC1D,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,iBAAe,EAAE,KAAK,EAAE,IAAI,EAAE;aACtE;SACF,CAAC;OACW,eAAe,CAc3B;IAAD,sBAAC;CAAA,AAdD,IAcC;SAdY,eAAe"} \ No newline at end of file diff --git a/src/app/shared/utils/object-keys-pipe.js b/src/app/shared/utils/object-keys-pipe.js deleted file mode 100644 index 7417d87598..0000000000 --- a/src/app/shared/utils/object-keys-pipe.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -var ObjectKeysPipe = /** @class */ (function () { - /** - * Pipe for parsing all keys of an object to an array of key-value pairs - */ - function ObjectKeysPipe() { - } - /** - * @param value An object - * @returns {any} Array with all keys the input object - */ - ObjectKeysPipe.prototype.transform = function (value, args) { - var keys = []; - Object.keys(value).forEach(function (k) { return keys.push(k); }); - return keys; - }; - ObjectKeysPipe = tslib_1.__decorate([ - Pipe({ name: 'dsObjectKeys' }) - /** - * Pipe for parsing all keys of an object to an array of key-value pairs - */ - ], ObjectKeysPipe); - return ObjectKeysPipe; -}()); -export { ObjectKeysPipe }; -//# sourceMappingURL=object-keys-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/object-keys-pipe.js.map b/src/app/shared/utils/object-keys-pipe.js.map deleted file mode 100644 index e4c657683f..0000000000 --- a/src/app/shared/utils/object-keys-pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-keys-pipe.js","sourceRoot":"","sources":["object-keys-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAiB,IAAI,EAAE,MAAM,eAAe,CAAC;AAMpD;IAHA;;OAEG;IACH;IAWA,CAAC;IATC;;;OAGG;IACH,kCAAS,GAAT,UAAU,KAAK,EAAE,IAAa;QAC5B,IAAM,IAAI,GAAG,EAAE,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAZ,CAAY,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAVU,cAAc;QAJ1B,IAAI,CAAC,EAAC,IAAI,EAAE,cAAc,EAAC,CAAC;QAC7B;;WAEG;OACU,cAAc,CAW1B;IAAD,qBAAC;CAAA,AAXD,IAWC;SAXY,cAAc"} \ No newline at end of file diff --git a/src/app/shared/utils/object-ngfor.pipe.js b/src/app/shared/utils/object-ngfor.pipe.js deleted file mode 100644 index b59199c1f9..0000000000 --- a/src/app/shared/utils/object-ngfor.pipe.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -/** - * Pipe that allows to iterate over an object and to access to entry key and value : - * - *
- * {{obj.key}} - {{obj.value}} - *
- * - */ -var ObjNgFor = /** @class */ (function () { - function ObjNgFor() { - } - ObjNgFor.prototype.transform = function (value, args) { - if (args === void 0) { args = null; } - return Object.keys(value).map(function (key) { return Object.assign({ key: key }, { value: value[key] }); }); - }; - ObjNgFor = tslib_1.__decorate([ - Pipe({ - name: 'dsObjNgFor' - }) - ], ObjNgFor); - return ObjNgFor; -}()); -export { ObjNgFor }; -//# sourceMappingURL=object-ngfor.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/object-ngfor.pipe.js.map b/src/app/shared/utils/object-ngfor.pipe.js.map deleted file mode 100644 index dd83e440ce..0000000000 --- a/src/app/shared/utils/object-ngfor.pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-ngfor.pipe.js","sourceRoot":"","sources":["object-ngfor.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAEpD;;;;;;;GAOG;AAIH;IAAA;IAIA,CAAC;IAHC,4BAAS,GAAT,UAAU,KAAU,EAAE,IAAkB;QAAlB,qBAAA,EAAA,WAAkB;QACtC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAA,EAAE,EAAE,EAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAC,CAAC,EAA3C,CAA2C,CAAC,CAAC;IACtF,CAAC;IAHU,QAAQ;QAHpB,IAAI,CAAC;YACJ,IAAI,EAAE,YAAY;SACnB,CAAC;OACW,QAAQ,CAIpB;IAAD,eAAC;CAAA,AAJD,IAIC;SAJY,QAAQ"} \ No newline at end of file diff --git a/src/app/shared/utils/object-values-pipe.js b/src/app/shared/utils/object-values-pipe.js deleted file mode 100644 index 1e0f8123c4..0000000000 --- a/src/app/shared/utils/object-values-pipe.js +++ /dev/null @@ -1,27 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -var ObjectValuesPipe = /** @class */ (function () { - /** - * Pipe for parsing all values of an object to an array of values - */ - function ObjectValuesPipe() { - } - /** - * @param value An object - * @returns {any} Array with all values of the input object - */ - ObjectValuesPipe.prototype.transform = function (value, args) { - var values = []; - Object.values(value).forEach(function (v) { return values.push(v); }); - return values; - }; - ObjectValuesPipe = tslib_1.__decorate([ - Pipe({ name: 'dsObjectValues' }) - /** - * Pipe for parsing all values of an object to an array of values - */ - ], ObjectValuesPipe); - return ObjectValuesPipe; -}()); -export { ObjectValuesPipe }; -//# sourceMappingURL=object-values-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/object-values-pipe.js.map b/src/app/shared/utils/object-values-pipe.js.map deleted file mode 100644 index efbc43b95c..0000000000 --- a/src/app/shared/utils/object-values-pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"object-values-pipe.js","sourceRoot":"","sources":["object-values-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAiB,IAAI,EAAE,MAAM,eAAe,CAAC;AAMpD;IAHA;;OAEG;IACH;IAWA,CAAC;IATC;;;OAGG;IACH,oCAAS,GAAT,UAAU,KAAK,EAAE,IAAa;QAC5B,IAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAd,CAAc,CAAC,CAAC;QACpD,OAAO,MAAM,CAAC;IAChB,CAAC;IAVU,gBAAgB;QAJ5B,IAAI,CAAC,EAAC,IAAI,EAAE,gBAAgB,EAAC,CAAC;QAC/B;;WAEG;OACU,gBAAgB,CAW5B;IAAD,uBAAC;CAAA,AAXD,IAWC;SAXY,gBAAgB"} \ No newline at end of file diff --git a/src/app/shared/utils/safe-url-pipe.js b/src/app/shared/utils/safe-url-pipe.js deleted file mode 100644 index f7351c1bc9..0000000000 --- a/src/app/shared/utils/safe-url-pipe.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -import { DomSanitizer } from '@angular/platform-browser'; -/** - * This pipe explicitly escapes the sanitization of a URL, - * only use this when you are sure the URL is indeed safe - */ -var SafeUrlPipe = /** @class */ (function () { - function SafeUrlPipe(domSanitizer) { - this.domSanitizer = domSanitizer; - } - SafeUrlPipe.prototype.transform = function (url) { - return this.domSanitizer.bypassSecurityTrustResourceUrl(url); - }; - SafeUrlPipe = tslib_1.__decorate([ - Pipe({ name: 'dsSafeUrl' }), - tslib_1.__metadata("design:paramtypes", [DomSanitizer]) - ], SafeUrlPipe); - return SafeUrlPipe; -}()); -export { SafeUrlPipe }; -//# sourceMappingURL=safe-url-pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/safe-url-pipe.js.map b/src/app/shared/utils/safe-url-pipe.js.map deleted file mode 100644 index a60fd2ab30..0000000000 --- a/src/app/shared/utils/safe-url-pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"safe-url-pipe.js","sourceRoot":"","sources":["safe-url-pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;GAGG;AAGH;IACE,qBAAoB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAI,CAAC;IACnD,+BAAS,GAAT,UAAU,GAAG;QACX,OAAO,IAAI,CAAC,YAAY,CAAC,8BAA8B,CAAC,GAAG,CAAC,CAAC;IAC/D,CAAC;IAJU,WAAW;QADvB,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;iDAEQ,YAAY;OADnC,WAAW,CAKvB;IAAD,kBAAC;CAAA,AALD,IAKC;SALY,WAAW"} \ No newline at end of file diff --git a/src/app/shared/utils/truncate.pipe.js b/src/app/shared/utils/truncate.pipe.js deleted file mode 100644 index 62eff60c12..0000000000 --- a/src/app/shared/utils/truncate.pipe.js +++ /dev/null @@ -1,31 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Pipe } from '@angular/core'; -import { hasValue } from '../empty.util'; -/** - * Pipe to truncate a value in Angular. (Take a substring, starting at 0) - * Default value: 10 - */ -var TruncatePipe = /** @class */ (function () { - function TruncatePipe() { - } - /** - * - */ - TruncatePipe.prototype.transform = function (value, args) { - if (hasValue(value)) { - var limit = (args && args.length > 0) ? parseInt(args[0], 10) : 10; // 10 as default truncate value - return value.length > limit ? value.substring(0, limit) + '...' : value; - } - else { - return value; - } - }; - TruncatePipe = tslib_1.__decorate([ - Pipe({ - name: 'dsTruncate' - }) - ], TruncatePipe); - return TruncatePipe; -}()); -export { TruncatePipe }; -//# sourceMappingURL=truncate.pipe.js.map \ No newline at end of file diff --git a/src/app/shared/utils/truncate.pipe.js.map b/src/app/shared/utils/truncate.pipe.js.map deleted file mode 100644 index 684ba54aaa..0000000000 --- a/src/app/shared/utils/truncate.pipe.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"truncate.pipe.js","sourceRoot":"","sources":["truncate.pipe.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;;GAGG;AAIH;IAAA;IAcA,CAAC;IAZC;;OAEG;IACH,gCAAS,GAAT,UAAU,KAAa,EAAE,IAAc;QACrC,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,IAAM,KAAK,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,+BAA+B;YACrG,OAAO,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;SACzE;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAZU,YAAY;QAHxB,IAAI,CAAC;YACJ,IAAI,EAAE,YAAY;SACnB,CAAC;OACW,YAAY,CAcxB;IAAD,mBAAC;CAAA,AAdD,IAcC;SAdY,YAAY"} \ No newline at end of file diff --git a/src/app/shared/utils/validator.functions.js b/src/app/shared/utils/validator.functions.js deleted file mode 100644 index 399e00380b..0000000000 --- a/src/app/shared/utils/validator.functions.js +++ /dev/null @@ -1,16 +0,0 @@ -import { isNotEmpty } from '../empty.util'; -/** - * Returns a validator function to check if the control's value is in a given list - * @param list The list to look in - */ -export function inListValidator(list) { - return function (control) { - var hasValue = isNotEmpty(control.value); - var inList = true; - if (isNotEmpty(list)) { - inList = list.indexOf(control.value) > -1; - } - return (hasValue && inList) ? null : { inList: { value: control.value } }; - }; -} -//# sourceMappingURL=validator.functions.js.map \ No newline at end of file diff --git a/src/app/shared/utils/validator.functions.js.map b/src/app/shared/utils/validator.functions.js.map deleted file mode 100644 index 2946ebd51e..0000000000 --- a/src/app/shared/utils/validator.functions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"validator.functions.js","sourceRoot":"","sources":["validator.functions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C;;;GAGG;AACH,MAAM,0BAA0B,IAAc;IAC5C,OAAO,UAAC,OAAwB;QAC9B,IAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;YACpB,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3C;QACD,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAA;IAC3E,CAAC,CAAC;AACJ,CAAC"} \ No newline at end of file diff --git a/src/app/shared/utils/var.directive.js b/src/app/shared/utils/var.directive.js deleted file mode 100644 index d1f9c34878..0000000000 --- a/src/app/shared/utils/var.directive.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core'; -/* tslint:disable:directive-selector */ -var VarDirective = /** @class */ (function () { - function VarDirective(vcRef, templateRef) { - this.vcRef = vcRef; - this.templateRef = templateRef; - this.context = {}; - } - Object.defineProperty(VarDirective.prototype, "ngVar", { - set: function (context) { - this.context.$implicit = this.context.ngVar = context; - this.updateView(); - }, - enumerable: true, - configurable: true - }); - VarDirective.prototype.updateView = function () { - this.vcRef.clear(); - this.vcRef.createEmbeddedView(this.templateRef, this.context); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object), - tslib_1.__metadata("design:paramtypes", [Object]) - ], VarDirective.prototype, "ngVar", null); - VarDirective = tslib_1.__decorate([ - Directive({ - selector: '[ngVar]', - }), - tslib_1.__metadata("design:paramtypes", [ViewContainerRef, TemplateRef]) - ], VarDirective); - return VarDirective; -}()); -export { VarDirective }; -/* tslint:enable:directive-selector */ -//# sourceMappingURL=var.directive.js.map \ No newline at end of file diff --git a/src/app/shared/utils/var.directive.js.map b/src/app/shared/utils/var.directive.js.map deleted file mode 100644 index 96d6ffa8e4..0000000000 --- a/src/app/shared/utils/var.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"var.directive.js","sourceRoot":"","sources":["var.directive.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEhF,uCAAuC;AAIvC;IASE,sBAAoB,KAAuB,EAAU,WAA6B;QAA9D,UAAK,GAAL,KAAK,CAAkB;QAAU,gBAAW,GAAX,WAAW,CAAkB;QAFlF,YAAO,GAAQ,EAAE,CAAC;IAEmE,CAAC;IAPtF,sBAAI,+BAAK;aAAT,UAAU,OAAY;YACpB,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;YACtD,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;;;OAAA;IAMD,iCAAU,GAAV;QACE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAChE,CAAC;IAZD;QADC,KAAK,EAAE;;;6CAIP;IALU,YAAY;QAHxB,SAAS,CAAC;YACT,QAAQ,EAAE,SAAS;SACpB,CAAC;iDAU2B,gBAAgB,EAAuB,WAAW;OATlE,YAAY,CAexB;IAAD,mBAAC;CAAA,AAfD,IAeC;SAfY,YAAY;AAgBzB,sCAAsC"} \ No newline at end of file diff --git a/src/app/shared/view-mode-switch/view-mode-switch.component.js b/src/app/shared/view-mode-switch/view-mode-switch.component.js deleted file mode 100644 index d87a82c253..0000000000 --- a/src/app/shared/view-mode-switch/view-mode-switch.component.js +++ /dev/null @@ -1,72 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { SearchService } from '../../+search-page/search-service/search.service'; -import { ViewMode } from '../../core/shared/view-mode.model'; -import { isEmpty } from '../empty.util'; -/** - * Component to switch between list and grid views. - */ -var ViewModeSwitchComponent = /** @class */ (function () { - function ViewModeSwitchComponent(searchService) { - this.searchService = searchService; - this.currentMode = ViewMode.List; - this.viewModeEnum = ViewMode; - } - ViewModeSwitchComponent.prototype.ngOnInit = function () { - var _this = this; - if (isEmpty(this.viewModeList)) { - this.viewModeList = [ViewMode.List, ViewMode.Grid]; - } - this.sub = this.searchService.getViewMode().subscribe(function (viewMode) { - _this.currentMode = viewMode; - }); - }; - ViewModeSwitchComponent.prototype.switchViewTo = function (viewMode) { - this.searchService.setViewMode(viewMode, this.getSearchLinkParts()); - }; - ViewModeSwitchComponent.prototype.ngOnDestroy = function () { - if (this.sub !== undefined) { - this.sub.unsubscribe(); - } - }; - ViewModeSwitchComponent.prototype.isToShow = function (viewMode) { - return this.viewModeList && this.viewModeList.includes(viewMode); - }; - /** - * @returns {string} The base path to the search page, or the current page when inPlaceSearch is true - */ - ViewModeSwitchComponent.prototype.getSearchLink = function () { - if (this.inPlaceSearch) { - return './'; - } - return this.searchService.getSearchLink(); - }; - /** - * @returns {string[]} The base path to the search page, or the current page when inPlaceSearch is true, split in separate pieces - */ - ViewModeSwitchComponent.prototype.getSearchLinkParts = function () { - if (this.searchService) { - return []; - } - return this.getSearchLink().split('/'); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], ViewModeSwitchComponent.prototype, "viewModeList", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ViewModeSwitchComponent.prototype, "inPlaceSearch", void 0); - ViewModeSwitchComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-view-mode-switch', - styleUrls: ['./view-mode-switch.component.scss'], - templateUrl: './view-mode-switch.component.html' - }), - tslib_1.__metadata("design:paramtypes", [SearchService]) - ], ViewModeSwitchComponent); - return ViewModeSwitchComponent; -}()); -export { ViewModeSwitchComponent }; -//# sourceMappingURL=view-mode-switch.component.js.map \ No newline at end of file diff --git a/src/app/shared/view-mode-switch/view-mode-switch.component.js.map b/src/app/shared/view-mode-switch/view-mode-switch.component.js.map deleted file mode 100644 index b99873a402..0000000000 --- a/src/app/shared/view-mode-switch/view-mode-switch.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"view-mode-switch.component.js","sourceRoot":"","sources":["view-mode-switch.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,MAAM,eAAe,CAAC;AAIpE,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AAMH;IAYE,iCAAoB,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QAJhD,gBAAW,GAAa,QAAQ,CAAC,IAAI,CAAC;QACtC,iBAAY,GAAG,QAAQ,CAAC;IAIxB,CAAC;IAED,0CAAQ,GAAR;QAAA,iBAQC;QAPC,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC9B,IAAI,CAAC,YAAY,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;SACpD;QAED,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,UAAC,QAAkB;YACvE,KAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,8CAAY,GAAZ,UAAa,QAAkB;QAC7B,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,6CAAW,GAAX;QACE,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE;YAC1B,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SACxB;IACH,CAAC;IAED,0CAAQ,GAAR,UAAS,QAAkB;QACzB,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACI,+CAAa,GAApB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,oDAAkB,GAAzB;QACE,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAxDQ;QAAR,KAAK,EAAE;;iEAA0B;IAKzB;QAAR,KAAK,EAAE;;kEAAe;IANZ,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,SAAS,EAAE,CAAC,mCAAmC,CAAC;YAChD,WAAW,EAAE,mCAAmC;SACjD,CAAC;iDAamC,aAAa;OAZrC,uBAAuB,CA2DnC;IAAD,8BAAC;CAAA,AA3DD,IA2DC;SA3DY,uBAAuB"} \ No newline at end of file diff --git a/src/app/shared/view-mode.js b/src/app/shared/view-mode.js deleted file mode 100644 index e0388064ad..0000000000 --- a/src/app/shared/view-mode.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * Enum used for defining the view-mode of a set of elements - * List Display the elements in a (vertical) list - * Grid Display the elements in a grid - */ -export var SetViewMode; -(function (SetViewMode) { - SetViewMode["List"] = "list"; - SetViewMode["Grid"] = "grid"; - SetViewMode["Detail"] = "detail"; -})(SetViewMode || (SetViewMode = {})); -//# sourceMappingURL=view-mode.js.map \ No newline at end of file diff --git a/src/app/shared/view-mode.js.map b/src/app/shared/view-mode.js.map deleted file mode 100644 index f3ad498e92..0000000000 --- a/src/app/shared/view-mode.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"view-mode.js","sourceRoot":"","sources":["view-mode.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,gCAAiB,CAAA;AACnB,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB"} \ No newline at end of file diff --git a/src/app/store.actions.js b/src/app/store.actions.js deleted file mode 100644 index 4ea7d6d1df..0000000000 --- a/src/app/store.actions.js +++ /dev/null @@ -1,15 +0,0 @@ -import { type } from './shared/ngrx/type'; -export var StoreActionTypes = { - REHYDRATE: type('dspace/ngrx/REHYDRATE'), - REPLAY: type('dspace/ngrx/REPLAY') -}; -var StoreAction = /** @class */ (function () { - // tslint:disable-next-line:no-shadowed-variable - function StoreAction(type, payload) { - this.type = type; - this.payload = payload; - } - return StoreAction; -}()); -export { StoreAction }; -//# sourceMappingURL=store.actions.js.map \ No newline at end of file diff --git a/src/app/store.actions.js.map b/src/app/store.actions.js.map deleted file mode 100644 index d50b60afed..0000000000 --- a/src/app/store.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"store.actions.js","sourceRoot":"","sources":["store.actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAI1C,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC9B,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC;IACxC,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC;CACnC,CAAC;AAEF;IAGE,gDAAgD;IAChD,qBAAY,IAAY,EAAE,OAA4B;QACpD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IACH,kBAAC;AAAD,CAAC,AARD,IAQC"} \ No newline at end of file diff --git a/src/app/store.effects.js b/src/app/store.effects.js deleted file mode 100644 index e0f28cf43c..0000000000 --- a/src/app/store.effects.js +++ /dev/null @@ -1,37 +0,0 @@ -import * as tslib_1 from "tslib"; -import { of as observableOf } from 'rxjs'; -import { map } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { Store } from '@ngrx/store'; -import { Actions, Effect, ofType } from '@ngrx/effects'; -import { StoreActionTypes } from './store.actions'; -import { HostWindowResizeAction } from './shared/host-window.actions'; -var StoreEffects = /** @class */ (function () { - function StoreEffects(actions, store) { - this.actions = actions; - this.store = store; - this.replay = this.actions.pipe(ofType(StoreActionTypes.REPLAY), map(function (replayAction) { - // TODO: should be able to replay all actions before the browser attempts to - // replayAction.payload.forEach((action: Action) => { - // this.store.dispatch(action); - // }); - return observableOf({}); - })); - this.resize = this.actions.pipe(ofType(StoreActionTypes.REPLAY, StoreActionTypes.REHYDRATE), map(function () { return new HostWindowResizeAction(window.innerWidth, window.innerHeight); })); - } - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], StoreEffects.prototype, "replay", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], StoreEffects.prototype, "resize", void 0); - StoreEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions, Store]) - ], StoreEffects); - return StoreEffects; -}()); -export { StoreEffects }; -//# sourceMappingURL=store.effects.js.map \ No newline at end of file diff --git a/src/app/store.effects.js.map b/src/app/store.effects.js.map deleted file mode 100644 index 19d4491819..0000000000 --- a/src/app/store.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"store.effects.js","sourceRoot":"","sources":["store.effects.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAU,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAGtE;IAiBE,sBAAoB,OAAgB,EAAU,KAAsB;QAAhD,YAAO,GAAP,OAAO,CAAS;QAAU,UAAK,GAAL,KAAK,CAAiB;QAfvC,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CACrD,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAC/B,GAAG,CAAC,UAAC,YAAoB;YACvB,4EAA4E;YAC5E,qDAAqD;YACrD,iCAAiC;YACjC,MAAM;YACN,OAAO,YAAY,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC,CAAC;QAEI,WAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAClC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,SAAS,CAAC,EAC3D,GAAG,CAAC,cAAM,OAAA,IAAI,sBAAsB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,EAAjE,CAAiE,CAAC,CAC7E,CAAC;IAIF,CAAC;IAjB4B;QAA5B,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;;gDAQtB;IAEI;QAAT,MAAM,EAAE;;gDAGP;IAfS,YAAY;QADxB,UAAU,EAAE;iDAkBkB,OAAO,EAAiB,KAAK;OAjB/C,YAAY,CAqBxB;IAAD,mBAAC;CAAA,AArBD,IAqBC;SArBY,YAAY"} \ No newline at end of file diff --git a/src/app/submission/edit/submission-edit.component.js b/src/app/submission/edit/submission-edit.component.js deleted file mode 100644 index 7b15c66572..0000000000 --- a/src/app/submission/edit/submission-edit.component.js +++ /dev/null @@ -1,91 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component } from '@angular/core'; -import { ActivatedRoute, Router } from '@angular/router'; -import { filter, switchMap } from 'rxjs/operators'; -import { TranslateService } from '@ngx-translate/core'; -import { hasValue, isEmpty, isNotNull } from '../../shared/empty.util'; -import { SubmissionService } from '../submission.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -/** - * This component allows to edit an existing workspaceitem/workflowitem. - */ -var SubmissionEditComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} changeDetectorRef - * @param {NotificationsService} notificationsService - * @param {ActivatedRoute} route - * @param {Router} router - * @param {SubmissionService} submissionService - * @param {TranslateService} translate - */ - function SubmissionEditComponent(changeDetectorRef, notificationsService, route, router, submissionService, translate) { - this.changeDetectorRef = changeDetectorRef; - this.notificationsService = notificationsService; - this.route = route; - this.router = router; - this.submissionService = submissionService; - this.translate = translate; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subs = []; - } - /** - * Retrieve workspaceitem/workflowitem from server and initialize all instance variables - */ - SubmissionEditComponent.prototype.ngOnInit = function () { - var _this = this; - this.subs.push(this.route.paramMap.pipe(switchMap(function (params) { return _this.submissionService.retrieveSubmission(params.get('id')); }), - // NOTE new submission is retrieved on the browser side only, so get null on server side rendering - filter(function (submissionObjectRD) { return isNotNull(submissionObjectRD); })).subscribe(function (submissionObjectRD) { - if (submissionObjectRD.hasSucceeded) { - if (isEmpty(submissionObjectRD.payload)) { - _this.notificationsService.info(null, _this.translate.get('submission.general.cannot_submit')); - _this.router.navigate(['/mydspace']); - } - else { - _this.submissionId = submissionObjectRD.payload.id.toString(); - _this.collectionId = submissionObjectRD.payload.collection.id; - _this.selfUrl = submissionObjectRD.payload.self; - _this.sections = submissionObjectRD.payload.sections; - _this.submissionDefinition = submissionObjectRD.payload.submissionDefinition; - _this.changeDetectorRef.detectChanges(); - } - } - else { - if (submissionObjectRD.error.statusCode === 404) { - // redirect to not found page - _this.router.navigate(['/404'], { skipLocationChange: true }); - } - // TODO handle generic error - } - })); - }; - /** - * Unsubscribe from all subscriptions - */ - SubmissionEditComponent.prototype.ngOnDestroy = function () { - this.subs - .filter(function (sub) { return hasValue(sub); }) - .forEach(function (sub) { return sub.unsubscribe(); }); - }; - SubmissionEditComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-edit', - styleUrls: ['./submission-edit.component.scss'], - templateUrl: './submission-edit.component.html' - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - NotificationsService, - ActivatedRoute, - Router, - SubmissionService, - TranslateService]) - ], SubmissionEditComponent); - return SubmissionEditComponent; -}()); -export { SubmissionEditComponent }; -//# sourceMappingURL=submission-edit.component.js.map \ No newline at end of file diff --git a/src/app/submission/edit/submission-edit.component.js.map b/src/app/submission/edit/submission-edit.component.js.map deleted file mode 100644 index 7cd5c8b0f2..0000000000 --- a/src/app/submission/edit/submission-edit.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-edit.component.js","sourceRoot":"","sources":["submission-edit.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAqB,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,cAAc,EAAY,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGnE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AAKxF;;GAEG;AAMH;IAsCE;;;;;;;;;OASG;IACH,iCAAoB,iBAAoC,EACpC,oBAA0C,EAC1C,KAAqB,EACrB,MAAc,EACd,iBAAoC,EACpC,SAA2B;QAL3B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,UAAK,GAAL,KAAK,CAAgB;QACrB,WAAM,GAAN,MAAM,CAAQ;QACd,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,cAAS,GAAT,SAAS,CAAkB;QArB/C;;;WAGG;QACK,SAAI,GAAmB,EAAE,CAAC;IAkBlC,CAAC;IAED;;OAEG;IACH,0CAAQ,GAAR;QAAA,iBA0BC;QAzBC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CACrC,SAAS,CAAC,UAAC,MAAgB,IAAK,OAAA,KAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAA3D,CAA2D,CAAC;QAC5F,kGAAkG;QAClG,MAAM,CAAC,UAAC,kBAAgD,IAAK,OAAA,SAAS,CAAC,kBAAkB,CAAC,EAA7B,CAA6B,CAAC,CAC5F,CAAC,SAAS,CAAC,UAAC,kBAAgD;YAC3D,IAAI,kBAAkB,CAAC,YAAY,EAAE;gBACnC,IAAI,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE;oBACvC,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC,CAAC;oBAC7F,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;iBACrC;qBAAM;oBACL,KAAI,CAAC,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;oBAC7D,KAAI,CAAC,YAAY,GAAI,kBAAkB,CAAC,OAAO,CAAC,UAAyB,CAAC,EAAE,CAAC;oBAC7E,KAAI,CAAC,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC;oBAC/C,KAAI,CAAC,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC;oBACpD,KAAI,CAAC,oBAAoB,GAAI,kBAAkB,CAAC,OAAO,CAAC,oBAAmD,CAAC;oBAC5G,KAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;iBACxC;aACF;iBAAM;gBACL,IAAI,kBAAkB,CAAC,KAAK,CAAC,UAAU,KAAK,GAAG,EAAE;oBAC/C,6BAA6B;oBAC7B,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC9D;gBACD,4BAA4B;aAC7B;QACH,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,6CAAW,GAAX;QACE,IAAI,CAAC,IAAI;aACN,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,GAAG,CAAC,EAAb,CAAa,CAAC;aAC9B,OAAO,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,WAAW,EAAE,EAAjB,CAAiB,CAAC,CAAC;IACzC,CAAC;IA9FU,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,SAAS,EAAE,CAAC,kCAAkC,CAAC;YAC/C,WAAW,EAAE,kCAAkC;SAChD,CAAC;iDAiDuC,iBAAiB;YACd,oBAAoB;YACnC,cAAc;YACb,MAAM;YACK,iBAAiB;YACzB,gBAAgB;OArDpC,uBAAuB,CA+FnC;IAAD,8BAAC;CAAA,AA/FD,IA+FC;SA/FY,uBAAuB"} \ No newline at end of file diff --git a/src/app/submission/form/collection/submission-form-collection.component.js b/src/app/submission/form/collection/submission-form-collection.component.js deleted file mode 100644 index 654917ebd0..0000000000 --- a/src/app/submission/form/collection/submission-form-collection.component.js +++ /dev/null @@ -1,206 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, EventEmitter, HostListener, Input, Output } from '@angular/core'; -import { FormControl } from '@angular/forms'; -import { BehaviorSubject, combineLatest, of as observableOf } from 'rxjs'; -import { debounceTime, distinctUntilChanged, filter, find, flatMap, map, mergeMap, reduce, startWith } from 'rxjs/operators'; -import { CommunityDataService } from '../../../core/data/community-data.service'; -import { hasValue, isEmpty, isNotEmpty } from '../../../shared/empty.util'; -import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner'; -import { JsonPatchOperationsBuilder } from '../../../core/json-patch/builder/json-patch-operations-builder'; -import { SubmissionService } from '../../submission.service'; -import { SubmissionJsonPatchOperationsService } from '../../../core/submission/submission-json-patch-operations.service'; -/** - * This component allows to show the current collection the submission belonging to and to change it. - */ -var SubmissionFormCollectionComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} cdr - * @param {CommunityDataService} communityDataService - * @param {JsonPatchOperationsBuilder} operationsBuilder - * @param {SubmissionJsonPatchOperationsService} operationsService - * @param {SubmissionService} submissionService - */ - function SubmissionFormCollectionComponent(cdr, communityDataService, operationsBuilder, operationsService, submissionService) { - this.cdr = cdr; - this.communityDataService = communityDataService; - this.operationsBuilder = operationsBuilder; - this.operationsService = operationsService; - this.submissionService = submissionService; - /** - * An event fired when a different collection is selected. - * Event's payload equals to new SubmissionObject. - */ - this.collectionChange = new EventEmitter(); - /** - * A boolean representing if this dropdown button is disabled - * @type {BehaviorSubject} - */ - this.disabled$ = new BehaviorSubject(true); - /** - * The search form control - * @type {FormControl} - */ - this.searchField = new FormControl(); - /** - * A boolean representing if dropdown list is scrollable to the bottom - * @type {boolean} - */ - this.scrollableBottom = false; - /** - * A boolean representing if dropdown list is scrollable to the top - * @type {boolean} - */ - this.scrollableTop = false; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subs = []; - } - /** - * Method called on mousewheel event, it prevent the page scroll - * when arriving at the top/bottom of dropdown menu - * - * @param event - * mousewheel event - */ - SubmissionFormCollectionComponent.prototype.onMousewheel = function (event) { - if (event.wheelDelta > 0 && this.scrollableTop) { - event.preventDefault(); - } - if (event.wheelDelta < 0 && this.scrollableBottom) { - event.preventDefault(); - } - }; - /** - * Check if dropdown scrollbar is at the top or bottom of the dropdown list - * - * @param event - */ - SubmissionFormCollectionComponent.prototype.onScroll = function (event) { - this.scrollableBottom = (event.target.scrollTop + event.target.clientHeight === event.target.scrollHeight); - this.scrollableTop = (event.target.scrollTop === 0); - }; - /** - * Initialize collection list - */ - SubmissionFormCollectionComponent.prototype.ngOnChanges = function (changes) { - var _this = this; - if (hasValue(changes.currentCollectionId) - && hasValue(changes.currentCollectionId.currentValue)) { - this.selectedCollectionId = this.currentCollectionId; - // @TODO replace with search/top browse endpoint - // @TODO implement community/subcommunity hierarchy - var communities$ = this.communityDataService.findAll().pipe(find(function (communities) { return isNotEmpty(communities.payload); }), mergeMap(function (communities) { return communities.payload.page; })); - var listCollection$ = communities$.pipe(flatMap(function (communityData) { - return communityData.collections.pipe(find(function (collections) { return !collections.isResponsePending && collections.hasSucceeded; }), mergeMap(function (collections) { return collections.payload.page; }), filter(function (collectionData) { return isNotEmpty(collectionData); }), map(function (collectionData) { return ({ - communities: [{ id: communityData.id, name: communityData.name }], - collection: { id: collectionData.id, name: collectionData.name } - }); })); - }), reduce(function (acc, value) { return acc.concat(value); }, []), startWith([])); - this.selectedCollectionName$ = communities$.pipe(flatMap(function (communityData) { - return communityData.collections.pipe(find(function (collections) { return !collections.isResponsePending && collections.hasSucceeded; }), mergeMap(function (collections) { return collections.payload.page; }), filter(function (collectionData) { return isNotEmpty(collectionData); }), filter(function (collectionData) { return collectionData.id === _this.selectedCollectionId; }), map(function (collectionData) { return collectionData.name; })); - }), startWith('')); - var searchTerm$ = this.searchField.valueChanges.pipe(debounceTime(200), distinctUntilChanged(), startWith('')); - this.searchListCollection$ = combineLatest(searchTerm$, listCollection$).pipe(map(function (_a) { - var searchTerm = _a[0], listCollection = _a[1]; - _this.disabled$.next(isEmpty(listCollection)); - if (isEmpty(searchTerm)) { - return listCollection; - } - else { - return listCollection.filter(function (v) { return v.collection.name.toLowerCase().indexOf(searchTerm.toLowerCase()) > -1; }).slice(0, 5); - } - })); - } - }; - /** - * Initialize all instance variables - */ - SubmissionFormCollectionComponent.prototype.ngOnInit = function () { - this.pathCombiner = new JsonPatchOperationPathCombiner('sections', 'collection'); - }; - /** - * Unsubscribe from all subscriptions - */ - SubmissionFormCollectionComponent.prototype.ngOnDestroy = function () { - this.subs.filter(function (sub) { return hasValue(sub); }).forEach(function (sub) { return sub.unsubscribe(); }); - }; - /** - * Emit a [collectionChange] event when a new collection is selected from list - * - * @param event - * the selected [CollectionListEntryItem] - */ - SubmissionFormCollectionComponent.prototype.onSelect = function (event) { - var _this = this; - this.searchField.reset(); - this.disabled$.next(true); - this.operationsBuilder.replace(this.pathCombiner.getPath(), event.collection.id, true); - this.subs.push(this.operationsService.jsonPatchByResourceID(this.submissionService.getSubmissionObjectLinkName(), this.submissionId, 'sections', 'collection') - .subscribe(function (submissionObject) { - _this.selectedCollectionId = event.collection.id; - _this.selectedCollectionName$ = observableOf(event.collection.name); - _this.collectionChange.emit(submissionObject[0]); - _this.submissionService.changeSubmissionCollection(_this.submissionId, event.collection.id); - _this.disabled$.next(false); - _this.cdr.detectChanges(); - })); - }; - /** - * Reset search form control on dropdown menu close - */ - SubmissionFormCollectionComponent.prototype.onClose = function () { - this.searchField.reset(); - }; - /** - * Reset search form control when dropdown menu is closed - * - * @param isOpen - * Representing if the dropdown menu is open or not. - */ - SubmissionFormCollectionComponent.prototype.toggled = function (isOpen) { - if (!isOpen) { - this.searchField.reset(); - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionFormCollectionComponent.prototype, "currentCollectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionFormCollectionComponent.prototype, "currentDefinition", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SubmissionFormCollectionComponent.prototype, "submissionId", void 0); - tslib_1.__decorate([ - Output(), - tslib_1.__metadata("design:type", EventEmitter) - ], SubmissionFormCollectionComponent.prototype, "collectionChange", void 0); - tslib_1.__decorate([ - HostListener('mousewheel', ['$event']), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object]), - tslib_1.__metadata("design:returntype", void 0) - ], SubmissionFormCollectionComponent.prototype, "onMousewheel", null); - SubmissionFormCollectionComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-form-collection', - styleUrls: ['./submission-form-collection.component.scss'], - templateUrl: './submission-form-collection.component.html' - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - CommunityDataService, - JsonPatchOperationsBuilder, - SubmissionJsonPatchOperationsService, - SubmissionService]) - ], SubmissionFormCollectionComponent); - return SubmissionFormCollectionComponent; -}()); -export { SubmissionFormCollectionComponent }; -//# sourceMappingURL=submission-form-collection.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/collection/submission-form-collection.component.js.map b/src/app/submission/form/collection/submission-form-collection.component.js.map deleted file mode 100644 index 8ceb4bbb25..0000000000 --- a/src/app/submission/form/collection/submission-form-collection.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-form-collection.component.js","sourceRoot":"","sources":["submission-form-collection.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/form/footer/submission-form-footer.component.js b/src/app/submission/form/footer/submission-form-footer.component.js deleted file mode 100644 index 5deed53113..0000000000 --- a/src/app/submission/form/footer/submission-form-footer.component.js +++ /dev/null @@ -1,88 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { map } from 'rxjs/operators'; -import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; -import { SubmissionRestService } from '../../../core/submission/submission-rest.service'; -import { SubmissionService } from '../../submission.service'; -import { SubmissionScopeType } from '../../../core/submission/submission-scope-type'; -import { isNotEmpty } from '../../../shared/empty.util'; -/** - * This component represents submission form footer bar. - */ -var SubmissionFormFooterComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {NgbModal} modalService - * @param {SubmissionRestService} restService - * @param {SubmissionService} submissionService - */ - function SubmissionFormFooterComponent(modalService, restService, submissionService) { - this.modalService = modalService; - this.restService = restService; - this.submissionService = submissionService; - /** - * A boolean representing if submission form is valid or not - * @type {Observable} - */ - this.submissionIsInvalid = observableOf(true); - } - /** - * Initialize all instance variables - */ - SubmissionFormFooterComponent.prototype.ngOnChanges = function (changes) { - if (isNotEmpty(this.submissionId)) { - this.submissionIsInvalid = this.submissionService.getSubmissionStatus(this.submissionId).pipe(map(function (isValid) { return isValid === false; })); - this.processingSaveStatus = this.submissionService.getSubmissionSaveProcessingStatus(this.submissionId); - this.processingDepositStatus = this.submissionService.getSubmissionDepositProcessingStatus(this.submissionId); - this.showDepositAndDiscard = observableOf(this.submissionService.getSubmissionScope() === SubmissionScopeType.WorkspaceItem); - } - }; - /** - * Dispatch a submission save action - */ - SubmissionFormFooterComponent.prototype.save = function (event) { - this.submissionService.dispatchSave(this.submissionId); - }; - /** - * Dispatch a submission save for later action - */ - SubmissionFormFooterComponent.prototype.saveLater = function (event) { - this.submissionService.dispatchSaveForLater(this.submissionId); - }; - /** - * Dispatch a submission deposit action - */ - SubmissionFormFooterComponent.prototype.deposit = function (event) { - this.submissionService.dispatchDeposit(this.submissionId); - }; - /** - * Dispatch a submission discard action - */ - SubmissionFormFooterComponent.prototype.confirmDiscard = function (content) { - var _this = this; - this.modalService.open(content).result.then(function (result) { - if (result === 'ok') { - _this.submissionService.dispatchDiscard(_this.submissionId); - } - }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionFormFooterComponent.prototype, "submissionId", void 0); - SubmissionFormFooterComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-form-footer', - styleUrls: ['./submission-form-footer.component.scss'], - templateUrl: './submission-form-footer.component.html' - }), - tslib_1.__metadata("design:paramtypes", [NgbModal, - SubmissionRestService, - SubmissionService]) - ], SubmissionFormFooterComponent); - return SubmissionFormFooterComponent; -}()); -export { SubmissionFormFooterComponent }; -//# sourceMappingURL=submission-form-footer.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/footer/submission-form-footer.component.js.map b/src/app/submission/form/footer/submission-form-footer.component.js.map deleted file mode 100644 index 18e2f2d481..0000000000 --- a/src/app/submission/form/footer/submission-form-footer.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-form-footer.component.js","sourceRoot":"","sources":["submission-form-footer.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAA4B,MAAM,eAAe,CAAC;AAE3E,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kDAAkD,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD;;GAEG;AAMH;IAgCE;;;;;;OAMG;IACH,uCAAoB,YAAsB,EACtB,WAAkC,EAClC,iBAAoC;QAFpC,iBAAY,GAAZ,YAAY,CAAU;QACtB,gBAAW,GAAX,WAAW,CAAuB;QAClC,sBAAiB,GAAjB,iBAAiB,CAAmB;QAfxD;;;WAGG;QACK,wBAAmB,GAAwB,YAAY,CAAC,IAAI,CAAC,CAAC;IAYtE,CAAC;IAED;;OAEG;IACH,mDAAW,GAAX,UAAY,OAAsB;QAChC,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YACjC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAC3F,GAAG,CAAC,UAAC,OAAgB,IAAK,OAAA,OAAO,KAAK,KAAK,EAAjB,CAAiB,CAAC,CAC7C,CAAC;YAEF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,iCAAiC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACxG,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,CAAC,oCAAoC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC9G,IAAI,CAAC,qBAAqB,GAAG,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,KAAK,mBAAmB,CAAC,aAAa,CAAC,CAAC;SAC9H;IACH,CAAC;IAED;;OAEG;IACH,4CAAI,GAAJ,UAAK,KAAK;QACR,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,iDAAS,GAAT,UAAU,KAAK;QACb,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACI,+CAAO,GAAd,UAAe,KAAK;QAClB,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACI,sDAAc,GAArB,UAAsB,OAAO;QAA7B,iBAQC;QAPC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CACzC,UAAC,MAAM;YACL,IAAI,MAAM,KAAK,IAAI,EAAE;gBACnB,KAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,KAAI,CAAC,YAAY,CAAC,CAAA;aAC1D;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IArFQ;QAAR,KAAK,EAAE;;uEAAsB;IANnB,6BAA6B;QALzC,SAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,CAAC,yCAAyC,CAAC;YACtD,WAAW,EAAE,yCAAyC;SACvD,CAAC;iDAwCkC,QAAQ;YACT,qBAAqB;YACf,iBAAiB;OAzC7C,6BAA6B,CA4FzC;IAAD,oCAAC;CAAA,AA5FD,IA4FC;SA5FY,6BAA6B"} \ No newline at end of file diff --git a/src/app/submission/form/section-add/submission-form-section-add.component.js b/src/app/submission/form/section-add/submission-form-section-add.component.js deleted file mode 100644 index 86caab8914..0000000000 --- a/src/app/submission/form/section-add/submission-form-section-add.component.js +++ /dev/null @@ -1,57 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input, } from '@angular/core'; -import { map } from 'rxjs/operators'; -import { SectionsService } from '../../sections/sections.service'; -import { HostWindowService } from '../../../shared/host-window.service'; -import { SubmissionService } from '../../submission.service'; -/** - * This component allow to add any new section to submission form - */ -var SubmissionFormSectionAddComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {SectionsService} sectionService - * @param {SubmissionService} submissionService - * @param {HostWindowService} windowService - */ - function SubmissionFormSectionAddComponent(sectionService, submissionService, windowService) { - this.sectionService = sectionService; - this.submissionService = submissionService; - this.windowService = windowService; - } - /** - * Initialize all instance variables - */ - SubmissionFormSectionAddComponent.prototype.ngOnInit = function () { - this.sectionList$ = this.submissionService.getDisabledSectionsList(this.submissionId); - this.hasSections$ = this.sectionList$.pipe(map(function (list) { return list.length > 0; })); - }; - /** - * Dispatch an action to add a new section - */ - SubmissionFormSectionAddComponent.prototype.addSection = function (sectionId) { - this.sectionService.addSection(this.submissionId, sectionId); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionFormSectionAddComponent.prototype, "collectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionFormSectionAddComponent.prototype, "submissionId", void 0); - SubmissionFormSectionAddComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-form-section-add', - styleUrls: ['./submission-form-section-add.component.scss'], - templateUrl: './submission-form-section-add.component.html' - }), - tslib_1.__metadata("design:paramtypes", [SectionsService, - SubmissionService, - HostWindowService]) - ], SubmissionFormSectionAddComponent); - return SubmissionFormSectionAddComponent; -}()); -export { SubmissionFormSectionAddComponent }; -//# sourceMappingURL=submission-form-section-add.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/section-add/submission-form-section-add.component.js.map b/src/app/submission/form/section-add/submission-form-section-add.component.js.map deleted file mode 100644 index a31408c7fd..0000000000 --- a/src/app/submission/form/section-add/submission-form-section-add.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-form-section-add.component.js","sourceRoot":"","sources":["submission-form-section-add.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,GAAW,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D;;GAEG;AAMH;IA0BE;;;;;;OAMG;IACH,2CAAoB,cAA+B,EAC/B,iBAAoC,EACrC,aAAgC;QAF/B,mBAAc,GAAd,cAAc,CAAiB;QAC/B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACrC,kBAAa,GAAb,aAAa,CAAmB;IACnD,CAAC;IAED;;OAEG;IACH,oDAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CACxC,GAAG,CAAC,UAAC,IAAyB,IAAK,OAAA,IAAI,CAAC,MAAM,GAAG,CAAC,EAAf,CAAe,CAAC,CACpD,CAAA;IACH,CAAC;IAED;;OAEG;IACH,sDAAU,GAAV,UAAW,SAAS;QAClB,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IA/CQ;QAAR,KAAK,EAAE;;2EAAsB;IAMrB;QAAR,KAAK,EAAE;;2EAAsB;IAZnB,iCAAiC;QAL7C,SAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,SAAS,EAAE,CAAE,8CAA8C,CAAE;YAC7D,WAAW,EAAE,8CAA8C;SAC5D,CAAC;iDAkCoC,eAAe;YACZ,iBAAiB;YACtB,iBAAiB;OAnCxC,iCAAiC,CAsD7C;IAAD,wCAAC;CAAA,AAtDD,IAsDC;SAtDY,iCAAiC"} \ No newline at end of file diff --git a/src/app/submission/form/submission-form.component.js b/src/app/submission/form/submission-form.component.js deleted file mode 100644 index 086421219a..0000000000 --- a/src/app/submission/form/submission-form.component.js +++ /dev/null @@ -1,158 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, Input } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { distinctUntilChanged, filter, flatMap, map } from 'rxjs/operators'; -import { hasValue, isNotEmpty } from '../../shared/empty.util'; -import { WorkspaceitemSectionsObject } from '../../core/submission/models/workspaceitem-sections.model'; -import { SubmissionDefinitionsModel } from '../../core/config/models/config-submission-definitions.model'; -import { SubmissionService } from '../submission.service'; -import { AuthService } from '../../core/auth/auth.service'; -import { HALEndpointService } from '../../core/shared/hal-endpoint.service'; -/** - * This component represents the submission form. - */ -var SubmissionFormComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {AuthService} authService - * @param {ChangeDetectorRef} changeDetectorRef - * @param {HALEndpointService} halService - * @param {SubmissionService} submissionService - */ - function SubmissionFormComponent(authService, changeDetectorRef, halService, submissionService) { - this.authService = authService; - this.changeDetectorRef = changeDetectorRef; - this.halService = halService; - this.submissionService = submissionService; - /** - * A boolean representing if a submission form is pending - * @type {Observable} - */ - this.loading = observableOf(true); - /** - * The uploader configuration options - * @type {UploaderOptions} - */ - this.uploadFilesOptions = { - url: '', - authToken: null, - disableMultipart: false, - itemAlias: null - }; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subs = []; - this.isActive = true; - } - /** - * Initialize all instance variables and retrieve form configuration - */ - SubmissionFormComponent.prototype.ngOnChanges = function (changes) { - var _this = this; - if (this.collectionId && this.submissionId) { - this.isActive = true; - // retrieve submission's section list - this.submissionSections = this.submissionService.getSubmissionObject(this.submissionId).pipe(filter(function () { return _this.isActive; }), map(function (submission) { return submission.isLoading; }), map(function (isLoading) { return isLoading; }), distinctUntilChanged(), flatMap(function (isLoading) { - if (!isLoading) { - return _this.getSectionsList(); - } - else { - return observableOf([]); - } - })); - // check if is submission loading - this.loading = this.submissionService.getSubmissionObject(this.submissionId).pipe(filter(function () { return _this.isActive; }), map(function (submission) { return submission.isLoading; }), map(function (isLoading) { return isLoading; }), distinctUntilChanged()); - // init submission state - this.subs.push(this.halService.getEndpoint('workspaceitems').pipe(filter(function (href) { return isNotEmpty(href); }), distinctUntilChanged()) - .subscribe(function (endpointURL) { - _this.uploadFilesOptions.authToken = _this.authService.buildAuthHeader(); - _this.uploadFilesOptions.url = endpointURL.concat("/" + _this.submissionId); - _this.definitionId = _this.submissionDefinition.name; - _this.submissionService.dispatchInit(_this.collectionId, _this.submissionId, _this.selfUrl, _this.submissionDefinition, _this.sections, null); - _this.changeDetectorRef.detectChanges(); - })); - // start auto save - this.submissionService.startAutoSave(this.submissionId); - } - }; - /** - * Unsubscribe from all subscriptions, destroy instance variables - * and reset submission state - */ - SubmissionFormComponent.prototype.ngOnDestroy = function () { - this.isActive = false; - this.submissionService.stopAutoSave(); - this.submissionService.resetAllSubmissionObjects(); - this.subs - .filter(function (subscription) { return hasValue(subscription); }) - .forEach(function (subscription) { return subscription.unsubscribe(); }); - }; - /** - * On collection change reset submission state in case of it has a different - * submission definition - * - * @param submissionObject - * new submission object - */ - SubmissionFormComponent.prototype.onCollectionChange = function (submissionObject) { - this.collectionId = submissionObject.collection.id; - if (this.definitionId !== submissionObject.submissionDefinition.name) { - this.sections = submissionObject.sections; - this.submissionDefinition = submissionObject.submissionDefinition; - this.definitionId = this.submissionDefinition.name; - this.submissionService.resetSubmissionObject(this.collectionId, this.submissionId, submissionObject.self, this.submissionDefinition, this.sections); - } - else { - this.changeDetectorRef.detectChanges(); - } - }; - /** - * Check if submission form is loading - */ - SubmissionFormComponent.prototype.isLoading = function () { - return this.loading; - }; - /** - * Check if submission form is loading - */ - SubmissionFormComponent.prototype.getSectionsList = function () { - return this.submissionService.getSubmissionSections(this.submissionId).pipe(filter(function (sections) { return isNotEmpty(sections); }), map(function (sections) { return sections; })); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionFormComponent.prototype, "collectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", WorkspaceitemSectionsObject) - ], SubmissionFormComponent.prototype, "sections", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionFormComponent.prototype, "selfUrl", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SubmissionDefinitionsModel) - ], SubmissionFormComponent.prototype, "submissionDefinition", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionFormComponent.prototype, "submissionId", void 0); - SubmissionFormComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-form', - styleUrls: ['./submission-form.component.scss'], - templateUrl: './submission-form.component.html', - }), - tslib_1.__metadata("design:paramtypes", [AuthService, - ChangeDetectorRef, - HALEndpointService, - SubmissionService]) - ], SubmissionFormComponent); - return SubmissionFormComponent; -}()); -export { SubmissionFormComponent }; -//# sourceMappingURL=submission-form.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/submission-form.component.js.map b/src/app/submission/form/submission-form.component.js.map deleted file mode 100644 index 0632de842a..0000000000 --- a/src/app/submission/form/submission-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-form.component.js","sourceRoot":"","sources":["submission-form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/form/submission-upload-files/submission-upload-files.component.js b/src/app/submission/form/submission-upload-files/submission-upload-files.component.js deleted file mode 100644 index f65c017f5e..0000000000 --- a/src/app/submission/form/submission-upload-files/submission-upload-files.component.js +++ /dev/null @@ -1,155 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { TranslateService } from '@ngx-translate/core'; -import { of as observableOf } from 'rxjs'; -import { first } from 'rxjs/operators'; -import { SectionsService } from '../../sections/sections.service'; -import { hasValue, isEmpty, isNotEmpty } from '../../../shared/empty.util'; -import { normalizeSectionData } from '../../../core/submission/submission-response-parsing.service'; -import { SubmissionService } from '../../submission.service'; -import { NotificationsService } from '../../../shared/notifications/notifications.service'; -import { UploaderOptions } from '../../../shared/uploader/uploader-options.model'; -import parseSectionErrors from '../../utils/parseSectionErrors'; -import { SubmissionJsonPatchOperationsService } from '../../../core/submission/submission-json-patch-operations.service'; -/** - * This component represents the drop zone that provides to add files to the submission. - */ -var SubmissionUploadFilesComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {NotificationsService} notificationsService - * @param {SubmissionJsonPatchOperationsService} operationsService - * @param {SectionsService} sectionService - * @param {SubmissionService} submissionService - * @param {TranslateService} translate - */ - function SubmissionUploadFilesComponent(notificationsService, operationsService, sectionService, submissionService, translate) { - var _this = this; - this.notificationsService = notificationsService; - this.operationsService = operationsService; - this.sectionService = sectionService; - this.submissionService = submissionService; - this.translate = translate; - /** - * A boolean representing if is possible to active drop zone over the document page - * @type {boolean} - */ - this.enableDragOverDocument = true; - /** - * i18n message label - * @type {string} - */ - this.dropOverDocumentMsg = 'submission.sections.upload.drop-message'; - /** - * i18n message label - * @type {string} - */ - this.dropMsg = 'submission.sections.upload.drop-message'; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subs = []; - /** - * A boolean representing if upload functionality is enabled - * @type {boolean} - */ - this.uploadEnabled = observableOf(false); - /** - * Save submission before to upload a file - */ - this.onBeforeUpload = function () { - var sub = _this.operationsService.jsonPatchByResourceType(_this.submissionService.getSubmissionObjectLinkName(), _this.submissionId, 'sections') - .subscribe(); - _this.subs.push(sub); - return sub; - }; - } - /** - * Check if upload functionality is enabled - */ - SubmissionUploadFilesComponent.prototype.ngOnChanges = function () { - this.uploadEnabled = this.sectionService.isSectionAvailable(this.submissionId, this.sectionId); - }; - /** - * Parse the submission object retrieved from REST after upload - * - * @param workspaceitem - * The submission object retrieved from REST - */ - SubmissionUploadFilesComponent.prototype.onCompleteItem = function (workspaceitem) { - var _this = this; - // Checks if upload section is enabled so do upload - this.subs.push(this.uploadEnabled - .pipe(first()) - .subscribe(function (isUploadEnabled) { - if (isUploadEnabled) { - var sections_1 = workspaceitem.sections; - var errors = workspaceitem.errors; - var errorsList_1 = parseSectionErrors(errors); - if (sections_1 && isNotEmpty(sections_1)) { - Object.keys(sections_1) - .forEach(function (sectionId) { - var sectionData = normalizeSectionData(sections_1[sectionId]); - var sectionErrors = errorsList_1[sectionId]; - if (sectionId === 'upload') { - // Look for errors on upload - if ((isEmpty(sectionErrors))) { - _this.notificationsService.success(null, _this.translate.get('submission.sections.upload.upload-successful')); - } - else { - _this.notificationsService.error(null, _this.translate.get('submission.sections.upload.upload-failed')); - } - } - _this.sectionService.updateSectionData(_this.submissionId, sectionId, sectionData, sectionErrors); - }); - } - } - })); - }; - /** - * Show error notification on upload fails - */ - SubmissionUploadFilesComponent.prototype.onUploadError = function () { - this.notificationsService.error(null, this.translate.get('submission.sections.upload.upload-failed')); - }; - /** - * Unsubscribe from all subscriptions - */ - SubmissionUploadFilesComponent.prototype.ngOnDestroy = function () { - this.subs - .filter(function (subscription) { return hasValue(subscription); }) - .forEach(function (subscription) { return subscription.unsubscribe(); }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionUploadFilesComponent.prototype, "collectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionUploadFilesComponent.prototype, "submissionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionUploadFilesComponent.prototype, "sectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", UploaderOptions) - ], SubmissionUploadFilesComponent.prototype, "uploadFilesOptions", void 0); - SubmissionUploadFilesComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-upload-files', - templateUrl: './submission-upload-files.component.html', - }), - tslib_1.__metadata("design:paramtypes", [NotificationsService, - SubmissionJsonPatchOperationsService, - SectionsService, - SubmissionService, - TranslateService]) - ], SubmissionUploadFilesComponent); - return SubmissionUploadFilesComponent; -}()); -export { SubmissionUploadFilesComponent }; -//# sourceMappingURL=submission-upload-files.component.js.map \ No newline at end of file diff --git a/src/app/submission/form/submission-upload-files/submission-upload-files.component.js.map b/src/app/submission/form/submission-upload-files/submission-upload-files.component.js.map deleted file mode 100644 index b34e999553..0000000000 --- a/src/app/submission/form/submission-upload-files/submission-upload-files.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-upload-files.component.js","sourceRoot":"","sources":["submission-upload-files.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.actions.js b/src/app/submission/objects/submission-objects.actions.js deleted file mode 100644 index 34cf2a3b7f..0000000000 --- a/src/app/submission/objects/submission-objects.actions.js +++ /dev/null @@ -1,588 +0,0 @@ -import { type } from '../../shared/ngrx/type'; -/** - * For each action type in an action group, make a simple - * enum object for all of this group's action types. - * - * The 'type' utility function coerces strings into string - * literal types and runs a simple check to guarantee all - * action types in the application are unique. - */ -export var SubmissionObjectActionTypes = { - // Section types - INIT_SUBMISSION_FORM: type('dspace/submission/INIT_SUBMISSION_FORM'), - RESET_SUBMISSION_FORM: type('dspace/submission/RESET_SUBMISSION_FORM'), - CANCEL_SUBMISSION_FORM: type('dspace/submission/CANCEL_SUBMISSION_FORM'), - COMPLETE_INIT_SUBMISSION_FORM: type('dspace/submission/COMPLETE_INIT_SUBMISSION_FORM'), - SAVE_FOR_LATER_SUBMISSION_FORM: type('dspace/submission/SAVE_FOR_LATER_SUBMISSION_FORM'), - SAVE_FOR_LATER_SUBMISSION_FORM_SUCCESS: type('dspace/submission/SAVE_FOR_LATER_SUBMISSION_FORM_SUCCESS'), - SAVE_FOR_LATER_SUBMISSION_FORM_ERROR: type('dspace/submission/SAVE_FOR_LATER_SUBMISSION_FORM_ERROR'), - SAVE_SUBMISSION_FORM: type('dspace/submission/SAVE_SUBMISSION_FORM'), - SAVE_SUBMISSION_FORM_SUCCESS: type('dspace/submission/SAVE_SUBMISSION_FORM_SUCCESS'), - SAVE_SUBMISSION_FORM_ERROR: type('dspace/submission/SAVE_SUBMISSION_FORM_ERROR'), - SAVE_SUBMISSION_SECTION_FORM: type('dspace/submission/SAVE_SUBMISSION_SECTION_FORM'), - SAVE_SUBMISSION_SECTION_FORM_SUCCESS: type('dspace/submission/SAVE_SUBMISSION_SECTION_FORM_SUCCESS'), - SAVE_SUBMISSION_SECTION_FORM_ERROR: type('dspace/submission/SAVE_SUBMISSION_SECTION_FORM_ERROR'), - CHANGE_SUBMISSION_COLLECTION: type('dspace/submission/CHANGE_SUBMISSION_COLLECTION'), - SET_ACTIVE_SECTION: type('dspace/submission/SET_ACTIVE_SECTION'), - INIT_SECTION: type('dspace/submission/INIT_SECTION'), - ENABLE_SECTION: type('dspace/submission/ENABLE_SECTION'), - DISABLE_SECTION: type('dspace/submission/DISABLE_SECTION'), - SECTION_STATUS_CHANGE: type('dspace/submission/SECTION_STATUS_CHANGE'), - SECTION_LOADING_STATUS_CHANGE: type('dspace/submission/SECTION_LOADING_STATUS_CHANGE'), - UPLOAD_SECTION_DATA: type('dspace/submission/UPLOAD_SECTION_DATA'), - SAVE_AND_DEPOSIT_SUBMISSION: type('dspace/submission/SAVE_AND_DEPOSIT_SUBMISSION'), - DEPOSIT_SUBMISSION: type('dspace/submission/DEPOSIT_SUBMISSION'), - DEPOSIT_SUBMISSION_SUCCESS: type('dspace/submission/DEPOSIT_SUBMISSION_SUCCESS'), - DEPOSIT_SUBMISSION_ERROR: type('dspace/submission/DEPOSIT_SUBMISSION_ERROR'), - DISCARD_SUBMISSION: type('dspace/submission/DISCARD_SUBMISSION'), - DISCARD_SUBMISSION_SUCCESS: type('dspace/submission/DISCARD_SUBMISSION_SUCCESS'), - DISCARD_SUBMISSION_ERROR: type('dspace/submission/DISCARD_SUBMISSION_ERROR'), - // Upload file types - NEW_FILE: type('dspace/submission/NEW_FILE'), - EDIT_FILE_DATA: type('dspace/submission/EDIT_FILE_DATA'), - DELETE_FILE: type('dspace/submission/DELETE_FILE'), - // Errors - ADD_SECTION_ERROR: type('dspace/submission/ADD_SECTION_ERROR'), - DELETE_SECTION_ERROR: type('dspace/submission/DELETE_SECTION_ERROR'), - REMOVE_SECTION_ERRORS: type('dspace/submission/REMOVE_SECTION_ERRORS'), -}; -/* tslint:disable:max-classes-per-file */ -/** - * Insert a new error of type SubmissionSectionError into the given section - * @param {string} submissionId - * @param {string} sectionId - * @param {SubmissionSectionError} error - */ -var InertSectionErrorsAction = /** @class */ (function () { - function InertSectionErrorsAction(submissionId, sectionId, error) { - this.type = SubmissionObjectActionTypes.ADD_SECTION_ERROR; - this.payload = { submissionId: submissionId, sectionId: sectionId, error: error }; - } - return InertSectionErrorsAction; -}()); -export { InertSectionErrorsAction }; -/** - * Delete a SubmissionSectionError from the given section - * @param {string} submissionId - * @param {string} sectionId - * @param {string | SubmissionSectionError} error - */ -var DeleteSectionErrorsAction = /** @class */ (function () { - function DeleteSectionErrorsAction(submissionId, sectionId, errors) { - this.type = SubmissionObjectActionTypes.DELETE_SECTION_ERROR; - this.payload = { submissionId: submissionId, sectionId: sectionId, errors: errors }; - } - return DeleteSectionErrorsAction; -}()); -export { DeleteSectionErrorsAction }; -// Section actions -var InitSectionAction = /** @class */ (function () { - /** - * Create a new InitSectionAction - * - * @param submissionId - * the submission's ID to remove - * @param sectionId - * the section's ID to add - * @param header - * the section's header - * @param config - * the section's config - * @param mandatory - * the section's mandatory - * @param sectionType - * the section's type - * @param visibility - * the section's visibility - * @param enabled - * the section's enabled state - * @param data - * the section's data - * @param errors - * the section's errors - */ - function InitSectionAction(submissionId, sectionId, header, config, mandatory, sectionType, visibility, enabled, data, errors) { - this.type = SubmissionObjectActionTypes.INIT_SECTION; - this.payload = { submissionId: submissionId, sectionId: sectionId, header: header, config: config, mandatory: mandatory, sectionType: sectionType, visibility: visibility, enabled: enabled, data: data, errors: errors }; - } - return InitSectionAction; -}()); -export { InitSectionAction }; -var EnableSectionAction = /** @class */ (function () { - /** - * Create a new EnableSectionAction - * - * @param submissionId - * the submission's ID to remove - * @param sectionId - * the section's ID to add - */ - function EnableSectionAction(submissionId, sectionId) { - this.type = SubmissionObjectActionTypes.ENABLE_SECTION; - this.payload = { submissionId: submissionId, sectionId: sectionId }; - } - return EnableSectionAction; -}()); -export { EnableSectionAction }; -var DisableSectionAction = /** @class */ (function () { - /** - * Create a new DisableSectionAction - * - * @param submissionId - * the submission's ID to remove - * @param sectionId - * the section's ID to remove - */ - function DisableSectionAction(submissionId, sectionId) { - this.type = SubmissionObjectActionTypes.DISABLE_SECTION; - this.payload = { submissionId: submissionId, sectionId: sectionId }; - } - return DisableSectionAction; -}()); -export { DisableSectionAction }; -var UpdateSectionDataAction = /** @class */ (function () { - /** - * Create a new EnableSectionAction - * - * @param submissionId - * the submission's ID to remove - * @param sectionId - * the section's ID to add - * @param data - * the section's data - * @param errors - * the section's errors - */ - function UpdateSectionDataAction(submissionId, sectionId, data, errors) { - this.type = SubmissionObjectActionTypes.UPLOAD_SECTION_DATA; - this.payload = { submissionId: submissionId, sectionId: sectionId, data: data, errors: errors }; - } - return UpdateSectionDataAction; -}()); -export { UpdateSectionDataAction }; -var RemoveSectionErrorsAction = /** @class */ (function () { - /** - * Create a new RemoveSectionErrorsAction - * - * @param submissionId - * the submission's ID to remove - * @param sectionId - * the section's ID to add - */ - function RemoveSectionErrorsAction(submissionId, sectionId) { - this.type = SubmissionObjectActionTypes.REMOVE_SECTION_ERRORS; - this.payload = { submissionId: submissionId, sectionId: sectionId }; - } - return RemoveSectionErrorsAction; -}()); -export { RemoveSectionErrorsAction }; -// Submission actions -var CompleteInitSubmissionFormAction = /** @class */ (function () { - /** - * Create a new CompleteInitSubmissionFormAction - * - * @param submissionId - * the submission's ID - */ - function CompleteInitSubmissionFormAction(submissionId) { - this.type = SubmissionObjectActionTypes.COMPLETE_INIT_SUBMISSION_FORM; - this.payload = { submissionId: submissionId }; - } - return CompleteInitSubmissionFormAction; -}()); -export { CompleteInitSubmissionFormAction }; -var InitSubmissionFormAction = /** @class */ (function () { - /** - * Create a new InitSubmissionFormAction - * - * @param collectionId - * the collection's Id where to deposit - * @param submissionId - * the submission's ID - * @param selfUrl - * the submission object url - * @param submissionDefinition - * the submission's sections definition - * @param sections - * the submission's sections - * @param errors - * the submission's sections errors - */ - function InitSubmissionFormAction(collectionId, submissionId, selfUrl, submissionDefinition, sections, errors) { - this.type = SubmissionObjectActionTypes.INIT_SUBMISSION_FORM; - this.payload = { collectionId: collectionId, submissionId: submissionId, selfUrl: selfUrl, submissionDefinition: submissionDefinition, sections: sections, errors: errors }; - } - return InitSubmissionFormAction; -}()); -export { InitSubmissionFormAction }; -var SaveForLaterSubmissionFormAction = /** @class */ (function () { - /** - * Create a new SaveForLaterSubmissionFormAction - * - * @param submissionId - * the submission's ID - */ - function SaveForLaterSubmissionFormAction(submissionId) { - this.type = SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM; - this.payload = { submissionId: submissionId }; - } - return SaveForLaterSubmissionFormAction; -}()); -export { SaveForLaterSubmissionFormAction }; -var SaveForLaterSubmissionFormSuccessAction = /** @class */ (function () { - /** - * Create a new SaveForLaterSubmissionFormSuccessAction - * - * @param submissionId - * the submission's ID - * @param submissionObject - * the submission's Object - */ - function SaveForLaterSubmissionFormSuccessAction(submissionId, submissionObject) { - this.type = SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM_SUCCESS; - this.payload = { submissionId: submissionId, submissionObject: submissionObject }; - } - return SaveForLaterSubmissionFormSuccessAction; -}()); -export { SaveForLaterSubmissionFormSuccessAction }; -var SaveForLaterSubmissionFormErrorAction = /** @class */ (function () { - /** - * Create a new SaveForLaterSubmissionFormErrorAction - * - * @param submissionId - * the submission's ID - */ - function SaveForLaterSubmissionFormErrorAction(submissionId) { - this.type = SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM_ERROR; - this.payload = { submissionId: submissionId }; - } - return SaveForLaterSubmissionFormErrorAction; -}()); -export { SaveForLaterSubmissionFormErrorAction }; -var SaveSubmissionFormAction = /** @class */ (function () { - /** - * Create a new SaveSubmissionFormAction - * - * @param submissionId - * the submission's ID - */ - function SaveSubmissionFormAction(submissionId) { - this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM; - this.payload = { submissionId: submissionId }; - } - return SaveSubmissionFormAction; -}()); -export { SaveSubmissionFormAction }; -var SaveSubmissionFormSuccessAction = /** @class */ (function () { - /** - * Create a new SaveSubmissionFormSuccessAction - * - * @param submissionId - * the submission's ID - * @param submissionObject - * the submission's Object - */ - function SaveSubmissionFormSuccessAction(submissionId, submissionObject) { - this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_SUCCESS; - this.payload = { submissionId: submissionId, submissionObject: submissionObject }; - } - return SaveSubmissionFormSuccessAction; -}()); -export { SaveSubmissionFormSuccessAction }; -var SaveSubmissionFormErrorAction = /** @class */ (function () { - /** - * Create a new SaveSubmissionFormErrorAction - * - * @param submissionId - * the submission's ID - */ - function SaveSubmissionFormErrorAction(submissionId) { - this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_ERROR; - this.payload = { submissionId: submissionId }; - } - return SaveSubmissionFormErrorAction; -}()); -export { SaveSubmissionFormErrorAction }; -var SaveSubmissionSectionFormAction = /** @class */ (function () { - /** - * Create a new SaveSubmissionSectionFormAction - * - * @param submissionId - * the submission's ID - * @param sectionId - * the section's ID - */ - function SaveSubmissionSectionFormAction(submissionId, sectionId) { - this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM; - this.payload = { submissionId: submissionId, sectionId: sectionId }; - } - return SaveSubmissionSectionFormAction; -}()); -export { SaveSubmissionSectionFormAction }; -var SaveSubmissionSectionFormSuccessAction = /** @class */ (function () { - /** - * Create a new SaveSubmissionSectionFormSuccessAction - * - * @param submissionId - * the submission's ID - * @param submissionObject - * the submission's Object - */ - function SaveSubmissionSectionFormSuccessAction(submissionId, submissionObject) { - this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_SUCCESS; - this.payload = { submissionId: submissionId, submissionObject: submissionObject }; - } - return SaveSubmissionSectionFormSuccessAction; -}()); -export { SaveSubmissionSectionFormSuccessAction }; -var SaveSubmissionSectionFormErrorAction = /** @class */ (function () { - /** - * Create a new SaveSubmissionFormErrorAction - * - * @param submissionId - * the submission's ID - */ - function SaveSubmissionSectionFormErrorAction(submissionId) { - this.type = SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_ERROR; - this.payload = { submissionId: submissionId }; - } - return SaveSubmissionSectionFormErrorAction; -}()); -export { SaveSubmissionSectionFormErrorAction }; -var ResetSubmissionFormAction = /** @class */ (function () { - /** - * Create a new ResetSubmissionFormAction - * - * @param collectionId - * the collection's Id where to deposit - * @param submissionId - * the submission's ID - * @param selfUrl - * the submission object url - * @param sections - * the submission's sections - * @param submissionDefinition - * the submission's form definition - */ - function ResetSubmissionFormAction(collectionId, submissionId, selfUrl, sections, submissionDefinition) { - this.type = SubmissionObjectActionTypes.RESET_SUBMISSION_FORM; - this.payload = { collectionId: collectionId, submissionId: submissionId, selfUrl: selfUrl, sections: sections, submissionDefinition: submissionDefinition }; - } - return ResetSubmissionFormAction; -}()); -export { ResetSubmissionFormAction }; -var CancelSubmissionFormAction = /** @class */ (function () { - function CancelSubmissionFormAction() { - this.type = SubmissionObjectActionTypes.CANCEL_SUBMISSION_FORM; - } - return CancelSubmissionFormAction; -}()); -export { CancelSubmissionFormAction }; -var ChangeSubmissionCollectionAction = /** @class */ (function () { - /** - * Create a new ChangeSubmissionCollectionAction - * - * @param submissionId - * the submission's ID - * @param collectionId - * the new collection's ID - */ - function ChangeSubmissionCollectionAction(submissionId, collectionId) { - this.type = SubmissionObjectActionTypes.CHANGE_SUBMISSION_COLLECTION; - this.payload = { submissionId: submissionId, collectionId: collectionId }; - } - return ChangeSubmissionCollectionAction; -}()); -export { ChangeSubmissionCollectionAction }; -var SaveAndDepositSubmissionAction = /** @class */ (function () { - /** - * Create a new SaveAndDepositSubmissionAction - * - * @param submissionId - * the submission's ID to deposit - */ - function SaveAndDepositSubmissionAction(submissionId) { - this.type = SubmissionObjectActionTypes.SAVE_AND_DEPOSIT_SUBMISSION; - this.payload = { submissionId: submissionId }; - } - return SaveAndDepositSubmissionAction; -}()); -export { SaveAndDepositSubmissionAction }; -var DepositSubmissionAction = /** @class */ (function () { - /** - * Create a new DepositSubmissionAction - * - * @param submissionId - * the submission's ID to deposit - */ - function DepositSubmissionAction(submissionId) { - this.type = SubmissionObjectActionTypes.DEPOSIT_SUBMISSION; - this.payload = { submissionId: submissionId }; - } - return DepositSubmissionAction; -}()); -export { DepositSubmissionAction }; -var DepositSubmissionSuccessAction = /** @class */ (function () { - /** - * Create a new DepositSubmissionSuccessAction - * - * @param submissionId - * the submission's ID to deposit - */ - function DepositSubmissionSuccessAction(submissionId) { - this.type = SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_SUCCESS; - this.payload = { submissionId: submissionId }; - } - return DepositSubmissionSuccessAction; -}()); -export { DepositSubmissionSuccessAction }; -var DepositSubmissionErrorAction = /** @class */ (function () { - /** - * Create a new DepositSubmissionErrorAction - * - * @param submissionId - * the submission's ID to deposit - */ - function DepositSubmissionErrorAction(submissionId) { - this.type = SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_ERROR; - this.payload = { submissionId: submissionId }; - } - return DepositSubmissionErrorAction; -}()); -export { DepositSubmissionErrorAction }; -var DiscardSubmissionAction = /** @class */ (function () { - /** - * Create a new DiscardSubmissionAction - * - * @param submissionId - * the submission's ID to discard - */ - function DiscardSubmissionAction(submissionId) { - this.type = SubmissionObjectActionTypes.DISCARD_SUBMISSION; - this.payload = { submissionId: submissionId }; - } - return DiscardSubmissionAction; -}()); -export { DiscardSubmissionAction }; -var DiscardSubmissionSuccessAction = /** @class */ (function () { - /** - * Create a new DiscardSubmissionSuccessAction - * - * @param submissionId - * the submission's ID to discard - */ - function DiscardSubmissionSuccessAction(submissionId) { - this.type = SubmissionObjectActionTypes.DISCARD_SUBMISSION_SUCCESS; - this.payload = { submissionId: submissionId }; - } - return DiscardSubmissionSuccessAction; -}()); -export { DiscardSubmissionSuccessAction }; -var DiscardSubmissionErrorAction = /** @class */ (function () { - /** - * Create a new DiscardSubmissionErrorAction - * - * @param submissionId - * the submission's ID to discard - */ - function DiscardSubmissionErrorAction(submissionId) { - this.type = SubmissionObjectActionTypes.DISCARD_SUBMISSION_ERROR; - this.payload = { submissionId: submissionId }; - } - return DiscardSubmissionErrorAction; -}()); -export { DiscardSubmissionErrorAction }; -var SectionStatusChangeAction = /** @class */ (function () { - /** - * Change the section validity status - * - * @param submissionId - * the submission's ID - * @param sectionId - * the section's ID to change - * @param status - * the section validity status (true if is valid) - */ - function SectionStatusChangeAction(submissionId, sectionId, status) { - this.type = SubmissionObjectActionTypes.SECTION_STATUS_CHANGE; - this.payload = { submissionId: submissionId, sectionId: sectionId, status: status }; - } - return SectionStatusChangeAction; -}()); -export { SectionStatusChangeAction }; -var SetActiveSectionAction = /** @class */ (function () { - /** - * Create a new SetActiveSectionAction - * - * @param submissionId - * the submission's ID - * @param sectionId - * the section's ID to active - */ - function SetActiveSectionAction(submissionId, sectionId) { - this.type = SubmissionObjectActionTypes.SET_ACTIVE_SECTION; - this.payload = { submissionId: submissionId, sectionId: sectionId }; - } - return SetActiveSectionAction; -}()); -export { SetActiveSectionAction }; -// Upload file actions -var NewUploadedFileAction = /** @class */ (function () { - /** - * Add a new uploaded file - * - * @param submissionId - * the submission's ID - * @param sectionId - * the section's ID - * @param fileId - * the file's ID - * @param data - * the metadata of the new bitstream - */ - function NewUploadedFileAction(submissionId, sectionId, fileId, data) { - this.type = SubmissionObjectActionTypes.NEW_FILE; - this.payload = { submissionId: submissionId, sectionId: sectionId, fileId: fileId, data: data }; - } - return NewUploadedFileAction; -}()); -export { NewUploadedFileAction }; -var EditFileDataAction = /** @class */ (function () { - /** - * Edit a file data - * - * @param submissionId - * the submission's ID - * @param sectionId - * the section's ID - * @param fileId - * the file's ID - * @param data - * the metadata of the new bitstream - */ - function EditFileDataAction(submissionId, sectionId, fileId, data) { - this.type = SubmissionObjectActionTypes.EDIT_FILE_DATA; - this.payload = { submissionId: submissionId, sectionId: sectionId, fileId: fileId, data: data }; - } - return EditFileDataAction; -}()); -export { EditFileDataAction }; -var DeleteUploadedFileAction = /** @class */ (function () { - /** - * Delete a uploaded file - * - * @param submissionId - * the submission's ID - * @param sectionId - * the section's ID - * @param fileId - * the file's ID - */ - function DeleteUploadedFileAction(submissionId, sectionId, fileId) { - this.type = SubmissionObjectActionTypes.DELETE_FILE; - this.payload = { submissionId: submissionId, sectionId: sectionId, fileId: fileId }; - } - return DeleteUploadedFileAction; -}()); -export { DeleteUploadedFileAction }; -//# sourceMappingURL=submission-objects.actions.js.map \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.actions.js.map b/src/app/submission/objects/submission-objects.actions.js.map deleted file mode 100644 index d4c512a1c4..0000000000 --- a/src/app/submission/objects/submission-objects.actions.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-objects.actions.js","sourceRoot":"","sources":["submission-objects.actions.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.effects.js b/src/app/submission/objects/submission-objects.effects.js deleted file mode 100644 index f9cbab38f8..0000000000 --- a/src/app/submission/objects/submission-objects.effects.js +++ /dev/null @@ -1,273 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Actions, Effect, ofType } from '@ngrx/effects'; -import { from as observableFrom, of as observableOf } from 'rxjs'; -import { catchError, map, mergeMap, switchMap, tap, withLatestFrom } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; -import { union } from 'lodash'; -import { CompleteInitSubmissionFormAction, DepositSubmissionAction, DepositSubmissionErrorAction, DepositSubmissionSuccessAction, DiscardSubmissionErrorAction, DiscardSubmissionSuccessAction, InitSectionAction, InitSubmissionFormAction, SaveForLaterSubmissionFormSuccessAction, SaveSubmissionFormErrorAction, SaveSubmissionFormSuccessAction, SaveSubmissionSectionFormErrorAction, SaveSubmissionSectionFormSuccessAction, SubmissionObjectActionTypes, UpdateSectionDataAction } from './submission-objects.actions'; -import { SectionsService } from '../sections/sections.service'; -import { isEmpty, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; -import { SubmissionService } from '../submission.service'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { TranslateService } from '@ngx-translate/core'; -import parseSectionErrors from '../utils/parseSectionErrors'; -import { SectionsType } from '../sections/sections-type'; -import { SubmissionJsonPatchOperationsService } from '../../core/submission/submission-json-patch-operations.service'; -var SubmissionObjectEffects = /** @class */ (function () { - function SubmissionObjectEffects(actions$, notificationsService, operationsService, sectionService, store$, submissionService, translate) { - var _this = this; - this.actions$ = actions$; - this.notificationsService = notificationsService; - this.operationsService = operationsService; - this.sectionService = sectionService; - this.store$ = store$; - this.submissionService = submissionService; - this.translate = translate; - /** - * Dispatch a [InitSectionAction] for every submission sections and dispatch a [CompleteInitSubmissionFormAction] - */ - this.loadForm$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.INIT_SUBMISSION_FORM), map(function (action) { - var definition = action.payload.submissionDefinition; - var mappedActions = []; - definition.sections.page.forEach(function (sectionDefinition) { - var sectionId = sectionDefinition._links.self.substr(sectionDefinition._links.self.lastIndexOf('/') + 1); - var config = sectionDefinition._links.config || ''; - var enabled = (sectionDefinition.mandatory) || (isNotEmpty(action.payload.sections) && action.payload.sections.hasOwnProperty(sectionId)); - var sectionData = (isNotUndefined(action.payload.sections) && isNotUndefined(action.payload.sections[sectionId])) ? action.payload.sections[sectionId] : Object.create(null); - var sectionErrors = null; - mappedActions.push(new InitSectionAction(action.payload.submissionId, sectionId, sectionDefinition.header, config, sectionDefinition.mandatory, sectionDefinition.sectionType, sectionDefinition.visibility, enabled, sectionData, sectionErrors)); - }); - return { action: action, definition: definition, mappedActions: mappedActions }; - }), mergeMap(function (result) { - return observableFrom(result.mappedActions.concat(new CompleteInitSubmissionFormAction(result.action.payload.submissionId))); - })); - /** - * Dispatch a [InitSubmissionFormAction] - */ - this.resetForm$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.RESET_SUBMISSION_FORM), map(function (action) { - return new InitSubmissionFormAction(action.payload.collectionId, action.payload.submissionId, action.payload.selfUrl, action.payload.submissionDefinition, action.payload.sections, null); - })); - /** - * Dispatch a [SaveSubmissionFormSuccessAction] or a [SaveSubmissionFormErrorAction] on error - */ - this.saveSubmission$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM), switchMap(function (action) { - return _this.operationsService.jsonPatchByResourceType(_this.submissionService.getSubmissionObjectLinkName(), action.payload.submissionId, 'sections').pipe(map(function (response) { return new SaveSubmissionFormSuccessAction(action.payload.submissionId, response); }), catchError(function () { return observableOf(new SaveSubmissionFormErrorAction(action.payload.submissionId)); })); - })); - /** - * Dispatch a [SaveForLaterSubmissionFormSuccessAction] or a [SaveSubmissionFormErrorAction] on error - */ - this.saveForLaterSubmission$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM), switchMap(function (action) { - return _this.operationsService.jsonPatchByResourceType(_this.submissionService.getSubmissionObjectLinkName(), action.payload.submissionId, 'sections').pipe(map(function (response) { return new SaveForLaterSubmissionFormSuccessAction(action.payload.submissionId, response); }), catchError(function () { return observableOf(new SaveSubmissionFormErrorAction(action.payload.submissionId)); })); - })); - /** - * Call parseSaveResponse and dispatch actions - */ - this.saveSubmissionSuccess$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_SUCCESS, SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_SUCCESS), withLatestFrom(this.store$), map(function (_a) { - var action = _a[0], currentState = _a[1]; - return _this.parseSaveResponse(currentState.submission.objects[action.payload.submissionId], action.payload.submissionObject, action.payload.submissionId); - }), mergeMap(function (actions) { return observableFrom(actions); })); - /** - * Dispatch a [SaveSubmissionSectionFormSuccessAction] or a [SaveSubmissionSectionFormErrorAction] on error - */ - this.saveSection$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM), switchMap(function (action) { - return _this.operationsService.jsonPatchByResourceID(_this.submissionService.getSubmissionObjectLinkName(), action.payload.submissionId, 'sections', action.payload.sectionId).pipe(map(function (response) { return new SaveSubmissionSectionFormSuccessAction(action.payload.submissionId, response); }), catchError(function () { return observableOf(new SaveSubmissionSectionFormErrorAction(action.payload.submissionId)); })); - })); - /** - * Show a notification on error - */ - this.saveError$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_ERROR, SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_ERROR), withLatestFrom(this.store$), tap(function () { return _this.notificationsService.error(null, _this.translate.get('submission.sections.general.save_error_notice')); })); - /** - * Call parseSaveResponse and dispatch actions or dispatch [SaveSubmissionFormErrorAction] on error - */ - this.saveAndDeposit$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_AND_DEPOSIT_SUBMISSION), withLatestFrom(this.store$), switchMap(function (_a) { - var action = _a[0], currentState = _a[1]; - return _this.operationsService.jsonPatchByResourceType(_this.submissionService.getSubmissionObjectLinkName(), action.payload.submissionId, 'sections').pipe(map(function (response) { - if (_this.canDeposit(response)) { - return new DepositSubmissionAction(action.payload.submissionId); - } - else { - _this.notificationsService.warning(null, _this.translate.get('submission.sections.general.sections_not_valid')); - return _this.parseSaveResponse(currentState.submission.objects[action.payload.submissionId], response, action.payload.submissionId); - } - }), catchError(function () { return observableOf(new SaveSubmissionFormErrorAction(action.payload.submissionId)); })); - })); - /** - * Dispatch a [DepositSubmissionSuccessAction] or a [DepositSubmissionErrorAction] on error - */ - this.depositSubmission$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DEPOSIT_SUBMISSION), withLatestFrom(this.store$), switchMap(function (_a) { - var action = _a[0], state = _a[1]; - return _this.submissionService.depositSubmission(state.submission.objects[action.payload.submissionId].selfUrl).pipe(map(function () { return new DepositSubmissionSuccessAction(action.payload.submissionId); }), catchError(function () { return observableOf(new DepositSubmissionErrorAction(action.payload.submissionId)); })); - })); - /** - * Show a notification on success and redirect to MyDSpace page - */ - this.saveForLaterSubmissionSuccess$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM_SUCCESS), tap(function () { return _this.notificationsService.success(null, _this.translate.get('submission.sections.general.save_success_notice')); }), tap(function () { return _this.submissionService.redirectToMyDSpace(); })); - /** - * Show a notification on success and redirect to MyDSpace page - */ - this.depositSubmissionSuccess$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_SUCCESS), tap(function () { return _this.notificationsService.success(null, _this.translate.get('submission.sections.general.deposit_success_notice')); }), tap(function () { return _this.submissionService.redirectToMyDSpace(); })); - /** - * Show a notification on error - */ - this.depositSubmissionError$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_ERROR), tap(function () { return _this.notificationsService.error(null, _this.translate.get('submission.sections.general.deposit_error_notice')); })); - /** - * Dispatch a [DiscardSubmissionSuccessAction] or a [DiscardSubmissionErrorAction] on error - */ - this.discardSubmission$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DISCARD_SUBMISSION), switchMap(function (action) { - return _this.submissionService.discardSubmission(action.payload.submissionId).pipe(map(function () { return new DiscardSubmissionSuccessAction(action.payload.submissionId); }), catchError(function () { return observableOf(new DiscardSubmissionErrorAction(action.payload.submissionId)); })); - })); - /** - * Show a notification on success and redirect to MyDSpace page - */ - this.discardSubmissionSuccess$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DISCARD_SUBMISSION_SUCCESS), tap(function () { return _this.notificationsService.success(null, _this.translate.get('submission.sections.general.discard_success_notice')); }), tap(function () { return _this.submissionService.redirectToMyDSpace(); })); - /** - * Show a notification on error - */ - this.discardSubmissionError$ = this.actions$.pipe(ofType(SubmissionObjectActionTypes.DISCARD_SUBMISSION_ERROR), tap(function () { return _this.notificationsService.error(null, _this.translate.get('submission.sections.general.discard_error_notice')); })); - } - /** - * Check if the submission object retrieved from REST haven't section errors - * - * @param response - * The submission object retrieved from REST - */ - SubmissionObjectEffects.prototype.canDeposit = function (response) { - var canDeposit = true; - if (isNotEmpty(response)) { - response.forEach(function (item) { - var errors = item.errors; - if (errors && !isEmpty(errors)) { - canDeposit = false; - } - }); - } - return canDeposit; - }; - /** - * Parse the submission object retrieved from REST and return actions to dispatch - * - * @param currentState - * The current SubmissionObjectEntry - * @param response - * The submission object retrieved from REST - * @param submissionId - * The submission id - * @param notify - * A boolean that indicate if show notification or not - * @return SubmissionObjectAction[] - * List of SubmissionObjectAction to dispatch - */ - SubmissionObjectEffects.prototype.parseSaveResponse = function (currentState, response, submissionId, notify) { - var _this = this; - if (notify === void 0) { notify = true; } - var mappedActions = []; - if (isNotEmpty(response)) { - if (notify) { - this.notificationsService.success(null, this.translate.get('submission.sections.general.save_success_notice')); - } - response.forEach(function (item) { - var errorsList = Object.create({}); - var errors = item.errors; - if (errors && !isEmpty(errors)) { - // to avoid dispatching an action for every error, create an array of errors per section - errorsList = parseSectionErrors(errors); - if (notify) { - _this.notificationsService.warning(null, _this.translate.get('submission.sections.general.sections_not_valid')); - } - } - var sections = (item.sections && isNotEmpty(item.sections)) ? item.sections : {}; - var sectionsKeys = union(Object.keys(sections), Object.keys(errorsList)); - for (var _i = 0, sectionsKeys_1 = sectionsKeys; _i < sectionsKeys_1.length; _i++) { - var sectionId = sectionsKeys_1[_i]; - var sectionErrors = errorsList[sectionId] || []; - var sectionData = sections[sectionId] || {}; - // When Upload section is disabled, add to submission only if there are files - if (currentState.sections[sectionId].sectionType === SectionsType.Upload - && isEmpty(sectionData.files) - && !currentState.sections[sectionId].enabled) { - continue; - } - if (notify && !currentState.sections[sectionId].enabled) { - _this.submissionService.notifyNewSection(submissionId, sectionId, currentState.sections[sectionId].sectionType); - } - mappedActions.push(new UpdateSectionDataAction(submissionId, sectionId, sectionData, sectionErrors)); - } - }); - } - return mappedActions; - }; - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "loadForm$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "resetForm$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "saveSubmission$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "saveForLaterSubmission$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "saveSubmissionSuccess$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "saveSection$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "saveError$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "saveAndDeposit$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "depositSubmission$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "saveForLaterSubmissionSuccess$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "depositSubmissionSuccess$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "depositSubmissionError$", void 0); - tslib_1.__decorate([ - Effect(), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "discardSubmission$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "discardSubmissionSuccess$", void 0); - tslib_1.__decorate([ - Effect({ dispatch: false }), - tslib_1.__metadata("design:type", Object) - ], SubmissionObjectEffects.prototype, "discardSubmissionError$", void 0); - SubmissionObjectEffects = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Actions, - NotificationsService, - SubmissionJsonPatchOperationsService, - SectionsService, - Store, - SubmissionService, - TranslateService]) - ], SubmissionObjectEffects); - return SubmissionObjectEffects; -}()); -export { SubmissionObjectEffects }; -//# sourceMappingURL=submission-objects.effects.js.map \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.effects.js.map b/src/app/submission/objects/submission-objects.effects.js.map deleted file mode 100644 index 5b7289d37b..0000000000 --- a/src/app/submission/objects/submission-objects.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-objects.effects.js","sourceRoot":"","sources":["submission-objects.effects.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.reducer.js b/src/app/submission/objects/submission-objects.reducer.js deleted file mode 100644 index efb0d114d0..0000000000 --- a/src/app/submission/objects/submission-objects.reducer.js +++ /dev/null @@ -1,617 +0,0 @@ -import { hasValue, isNotEmpty, isNotNull, isUndefined } from '../../shared/empty.util'; -import { differenceWith, findKey, isEqual, uniqWith } from 'lodash'; -import { SubmissionObjectActionTypes } from './submission-objects.actions'; -var initialState = Object.create({}); -export function submissionObjectReducer(state, action) { - if (state === void 0) { state = initialState; } - switch (action.type) { - // submission form actions - case SubmissionObjectActionTypes.COMPLETE_INIT_SUBMISSION_FORM: { - return completeInit(state, action); - } - case SubmissionObjectActionTypes.INIT_SUBMISSION_FORM: { - return initSubmission(state, action); - } - case SubmissionObjectActionTypes.RESET_SUBMISSION_FORM: { - return resetSubmission(state, action); - } - case SubmissionObjectActionTypes.CANCEL_SUBMISSION_FORM: { - return initialState; - } - case SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM: - case SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM: - case SubmissionObjectActionTypes.SAVE_AND_DEPOSIT_SUBMISSION: - case SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM: { - return saveSubmission(state, action); - } - case SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_SUCCESS: - case SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_SUCCESS: - case SubmissionObjectActionTypes.SAVE_SUBMISSION_FORM_ERROR: - case SubmissionObjectActionTypes.SAVE_FOR_LATER_SUBMISSION_FORM_ERROR: - case SubmissionObjectActionTypes.SAVE_SUBMISSION_SECTION_FORM_ERROR: { - return completeSave(state, action); - } - case SubmissionObjectActionTypes.CHANGE_SUBMISSION_COLLECTION: { - return changeCollection(state, action); - } - case SubmissionObjectActionTypes.DEPOSIT_SUBMISSION: { - return startDeposit(state, action); - } - case SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_SUCCESS: { - return initialState; - } - case SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_ERROR: { - return endDeposit(state, action); - } - case SubmissionObjectActionTypes.DISCARD_SUBMISSION: { - return state; - } - case SubmissionObjectActionTypes.DISCARD_SUBMISSION_SUCCESS: { - return initialState; - } - case SubmissionObjectActionTypes.DISCARD_SUBMISSION_ERROR: { - return state; - } - case SubmissionObjectActionTypes.SET_ACTIVE_SECTION: { - return setActiveSection(state, action); - } - // Section actions - case SubmissionObjectActionTypes.INIT_SECTION: { - return initSection(state, action); - } - case SubmissionObjectActionTypes.ENABLE_SECTION: { - return changeSectionState(state, action, true); - } - case SubmissionObjectActionTypes.UPLOAD_SECTION_DATA: { - return updateSectionData(state, action); - } - case SubmissionObjectActionTypes.DISABLE_SECTION: { - return changeSectionState(state, action, false); - } - case SubmissionObjectActionTypes.SECTION_STATUS_CHANGE: { - return setIsValid(state, action); - } - // Files actions - case SubmissionObjectActionTypes.NEW_FILE: { - return newFile(state, action); - } - case SubmissionObjectActionTypes.EDIT_FILE_DATA: { - return editFileData(state, action); - } - case SubmissionObjectActionTypes.DELETE_FILE: { - return deleteFile(state, action); - } - // errors actions - case SubmissionObjectActionTypes.ADD_SECTION_ERROR: { - return addError(state, action); - } - case SubmissionObjectActionTypes.DELETE_SECTION_ERROR: { - return removeError(state, action); - } - case SubmissionObjectActionTypes.REMOVE_SECTION_ERRORS: { - return removeSectionErrors(state, action); - } - default: { - return state; - } - } -} -// ------ Submission error functions ------ // -var removeError = function (state, action) { - var _a, _b; - var _c = action.payload, submissionId = _c.submissionId, sectionId = _c.sectionId, errors = _c.errors; - if (hasValue(state[submissionId].sections[sectionId])) { - var filteredErrors = void 0; - if (Array.isArray(errors)) { - filteredErrors = differenceWith(errors, errors, isEqual); - } - else { - filteredErrors = state[submissionId].sections[sectionId].errors - .filter(function (currentError) { return currentError.path !== errors.path || !isEqual(currentError, errors); }); - } - return Object.assign({}, state, (_a = {}, - _a[submissionId] = Object.assign({}, state[submissionId], { - sections: Object.assign({}, state[submissionId].sections, (_b = {}, - _b[sectionId] = Object.assign({}, state[submissionId].sections[sectionId], { - errors: filteredErrors - }), - _b)) - }), - _a)); - } - else { - return state; - } -}; -var addError = function (state, action) { - var _a, _b; - var _c = action.payload, submissionId = _c.submissionId, sectionId = _c.sectionId, error = _c.error; - if (hasValue(state[submissionId].sections[sectionId])) { - var errors = uniqWith(state[submissionId].sections[sectionId].errors.concat(error), isEqual); - return Object.assign({}, state, (_a = {}, - _a[submissionId] = Object.assign({}, state[submissionId], { - activeSection: state[action.payload.submissionId].activeSection, sections: Object.assign({}, state[submissionId].sections, (_b = {}, - _b[sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { - errors: errors - }), - _b)), - }), - _a)); - } - else { - return state; - } -}; -/** - * Remove all section's errors. - * - * @param state - * the current state - * @param action - * an RemoveSectionErrorsAction - * @return SubmissionObjectState - * the new state, with the section's errors updated. - */ -function removeSectionErrors(state, action) { - var _a, _b; - if (isNotEmpty(state[action.payload.submissionId]) - && isNotEmpty(state[action.payload.submissionId].sections[action.payload.sectionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, - _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { - errors: [] - }), - _b)) - }), - _a)); - } - else { - return state; - } -} -// ------ Submission functions ------ // -/** - * Init a SubmissionObjectState. - * - * @param state - * the current state - * @param action - * an InitSubmissionFormAction | ResetSubmissionFormAction - * @return SubmissionObjectState - * the new state, with the section removed. - */ -function initSubmission(state, action) { - var newState = Object.assign({}, state); - newState[action.payload.submissionId] = { - collection: action.payload.collectionId, - definition: action.payload.submissionDefinition.name, - selfUrl: action.payload.selfUrl, - activeSection: null, - sections: Object.create(null), - isLoading: true, - savePending: false, - depositPending: false, - }; - return newState; -} -/** - * Reset submission. - * - * @param state - * the current state - * @param action - * an ResetSubmissionFormAction - * @return SubmissionObjectState - * the new state, with the section removed. - */ -function resetSubmission(state, action) { - var _a; - if (hasValue(state[action.payload.submissionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - sections: Object.create(null), - isLoading: true - }), - _a)); - } - else { - return state; - } -} -/** - * Set submission loading to false. - * - * @param state - * the current state - * @param action - * an CompleteInitSubmissionFormAction - * @return SubmissionObjectState - * the new state, with the section removed. - */ -function completeInit(state, action) { - var _a; - if (hasValue(state[action.payload.submissionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - isLoading: false - }), - _a)); - } - else { - return state; - } -} -/** - * Set submission save flag to true - * - * @param state - * the current state - * @param action - * an SaveSubmissionFormAction | SaveSubmissionSectionFormAction - * | SaveForLaterSubmissionFormAction | SaveAndDepositSubmissionAction - * @return SubmissionObjectState - * the new state, with the flag set to true. - */ -function saveSubmission(state, action) { - var _a; - if (hasValue(state[action.payload.submissionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - activeSection: state[action.payload.submissionId].activeSection, - sections: state[action.payload.submissionId].sections, - isLoading: state[action.payload.submissionId].isLoading, - savePending: true, - }), - _a)); - } - else { - return state; - } -} -/** - * Set submission save flag to false. - * - * @param state - * the current state - * @param action - * an SaveSubmissionFormSuccessAction | SaveForLaterSubmissionFormSuccessAction - * | SaveSubmissionSectionFormSuccessAction | SaveSubmissionFormErrorAction - * | SaveForLaterSubmissionFormErrorAction | SaveSubmissionSectionFormErrorAction - * @return SubmissionObjectState - * the new state, with the flag set to false. - */ -function completeSave(state, action) { - var _a; - if (hasValue(state[action.payload.submissionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - savePending: false, - }), - _a)); - } - else { - return state; - } -} -/** - * Set deposit flag to true - * - * @param state - * the current state - * @param action - * an DepositSubmissionAction - * @return SubmissionObjectState - * the new state, with the deposit flag changed. - */ -function startDeposit(state, action) { - var _a; - if (hasValue(state[action.payload.submissionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - savePending: false, - depositPending: true, - }), - _a)); - } - else { - return state; - } -} -/** - * Set deposit flag to false - * - * @param state - * the current state - * @param action - * an DepositSubmissionSuccessAction or DepositSubmissionErrorAction - * @return SubmissionObjectState - * the new state, with the deposit flag changed. - */ -function endDeposit(state, action) { - var _a; - if (hasValue(state[action.payload.submissionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - depositPending: false, - }), - _a)); - } - else { - return state; - } -} -/** - * Init a SubmissionObjectState. - * - * @param state - * the current state - * @param action - * an InitSubmissionFormAction - * @return SubmissionObjectState - * the new state, with the section removed. - */ -function changeCollection(state, action) { - var _a; - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - collection: action.payload.collectionId - }), - _a)); -} -// ------ Section functions ------ // -/** - * Set submission active section. - * - * @param state - * the current state - * @param action - * an SetActiveSectionAction - * @return SubmissionObjectState - * the new state, with the active section. - */ -function setActiveSection(state, action) { - var _a; - if (hasValue(state[action.payload.submissionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - activeSection: action.payload.sectionId, - sections: state[action.payload.submissionId].sections, - isLoading: state[action.payload.submissionId].isLoading, - savePending: state[action.payload.submissionId].savePending, - }), - _a)); - } - else { - return state; - } -} -/** - * Set a section enabled. - * - * @param state - * the current state - * @param action - * an InitSectionAction - * @return SubmissionObjectState - * the new state, with the section removed. - */ -function initSection(state, action) { - var _a, _b; - if (hasValue(state[action.payload.submissionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, - _b[action.payload.sectionId] = { - header: action.payload.header, - config: action.payload.config, - mandatory: action.payload.mandatory, - sectionType: action.payload.sectionType, - visibility: action.payload.visibility, - collapsed: false, - enabled: action.payload.enabled, - data: action.payload.data, - errors: action.payload.errors || [], - isLoading: false, - isValid: false - }, - _b)) - }), - _a)); - } - else { - return state; - } -} -/** - * Update section's data. - * - * @param state - * the current state - * @param action - * an UpdateSectionDataAction - * @return SubmissionObjectState - * the new state, with the section's data updated. - */ -function updateSectionData(state, action) { - var _a, _b; - if (isNotEmpty(state[action.payload.submissionId]) - && isNotEmpty(state[action.payload.submissionId].sections[action.payload.sectionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, - _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { - enabled: true, - data: action.payload.data, - errors: action.payload.errors - }), - _b)) - }), - _a)); - } - else { - return state; - } -} -/** - * Set a section state. - * - * @param state - * the current state - * @param action - * an DisableSectionAction - * @param enabled - * enabled or disabled section. - * @return SubmissionObjectState - * the new state, with the section removed. - */ -function changeSectionState(state, action, enabled) { - var _a, _b; - if (hasValue(state[action.payload.submissionId].sections[action.payload.sectionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - // sections: deleteProperty(state[ action.payload.submissionId ].sections, action.payload.sectionId), - sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, - _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { - enabled: enabled - }), - _b)) - }), - _a)); - } - else { - return state; - } -} -/** - * Set the section validity. - * - * @param state - * the current state - * @param action - * an SectionStatusChangeAction - * @return SubmissionObjectState - * the new state, with the section new validity status. - */ -function setIsValid(state, action) { - var _a, _b; - if (isNotEmpty(state[action.payload.submissionId]) && hasValue(state[action.payload.submissionId].sections[action.payload.sectionId])) { - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - sections: Object.assign({}, state[action.payload.submissionId].sections, Object.assign({}, (_b = {}, - _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { - isValid: action.payload.status - }), - _b))) - }), - _a)); - } - else { - return state; - } -} -// ------ Upload file functions ------ // -/** - * Set a new file. - * - * @param state - * the current state - * @param action - * a NewUploadedFileAction action - * @return SubmissionObjectState - * the new state, with the new file. - */ -function newFile(state, action) { - var _a, _b; - var filesData = state[action.payload.submissionId].sections[action.payload.sectionId].data; - var newData; - if (isUndefined(filesData.files)) { - newData = { - files: [action.payload.data] - }; - } - else { - newData = filesData; - newData.files.push(action.payload.data); - } - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - sections: Object.assign({}, state[action.payload.submissionId].sections, (_b = {}, - _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { - enabled: true, - data: newData - }), - _b)) - }), - _a)); -} -/** - * Edit a file. - * - * @param state - * the current state - * @param action - * a EditFileDataAction action - * @return SubmissionObjectState - * the new state, with the edited file. - */ -function editFileData(state, action) { - var _a, _b; - var filesData = state[action.payload.submissionId].sections[action.payload.sectionId].data; - if (hasValue(filesData.files)) { - var fileIndex = findKey(filesData.files, { uuid: action.payload.fileId }); - if (isNotNull(fileIndex)) { - var newData = Array.from(filesData.files); - newData[fileIndex] = action.payload.data; - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - activeSection: state[action.payload.submissionId].activeSection, - sections: Object.assign({}, state[action.payload.submissionId].sections, Object.assign({}, (_b = {}, - _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { - data: Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId].data, { - files: newData - }) - }), - _b))), - isLoading: state[action.payload.submissionId].isLoading, - savePending: state[action.payload.submissionId].savePending, - }), - _a)); - } - } - return state; -} -/** - * Delete a file. - * - * @param state - * the current state - * @param action - * a DeleteUploadedFileAction action - * @return SubmissionObjectState - * the new state, with the file removed. - */ -function deleteFile(state, action) { - var _a, _b; - var filesData = state[action.payload.submissionId].sections[action.payload.sectionId].data; - if (hasValue(filesData.files)) { - var fileIndex = findKey(filesData.files, { uuid: action.payload.fileId }); - if (isNotNull(fileIndex)) { - var newData = Array.from(filesData.files); - newData.splice(fileIndex, 1); - return Object.assign({}, state, (_a = {}, - _a[action.payload.submissionId] = Object.assign({}, state[action.payload.submissionId], { - sections: Object.assign({}, state[action.payload.submissionId].sections, Object.assign({}, (_b = {}, - _b[action.payload.sectionId] = Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId], { - data: Object.assign({}, state[action.payload.submissionId].sections[action.payload.sectionId].data, { - files: newData - }) - }), - _b))) - }), - _a)); - } - } - return state; -} -//# sourceMappingURL=submission-objects.reducer.js.map \ No newline at end of file diff --git a/src/app/submission/objects/submission-objects.reducer.js.map b/src/app/submission/objects/submission-objects.reducer.js.map deleted file mode 100644 index c27d97f32b..0000000000 --- a/src/app/submission/objects/submission-objects.reducer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-objects.reducer.js","sourceRoot":"","sources":["submission-objects.reducer.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/container/section-container.component.js b/src/app/submission/sections/container/section-container.component.js deleted file mode 100644 index 3434aaef2c..0000000000 --- a/src/app/submission/sections/container/section-container.component.js +++ /dev/null @@ -1,81 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Injector, Input, ViewChild } from '@angular/core'; -import { SectionsDirective } from '../sections.directive'; -import { rendersSectionType } from '../sections-decorator'; -import { AlertType } from '../../../shared/alert/aletr-type'; -/** - * This component represents a section that contains the submission license form. - */ -var SubmissionSectionContainerComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {Injector} injector - */ - function SubmissionSectionContainerComponent(injector) { - this.injector = injector; - /** - * The AlertType enumeration - * @type {AlertType} - */ - this.AlertTypeEnum = AlertType; - } - /** - * Initialize all instance variables - */ - SubmissionSectionContainerComponent.prototype.ngOnInit = function () { - var _this = this; - this.objectInjector = Injector.create({ - providers: [ - { provide: 'collectionIdProvider', useFactory: function () { return (_this.collectionId); }, deps: [] }, - { provide: 'sectionDataProvider', useFactory: function () { return (_this.sectionData); }, deps: [] }, - { provide: 'submissionIdProvider', useFactory: function () { return (_this.submissionId); }, deps: [] }, - ], - parent: this.injector - }); - }; - /** - * Remove section from submission form - * - * @param event - * the event emitted - */ - SubmissionSectionContainerComponent.prototype.removeSection = function (event) { - event.preventDefault(); - event.stopPropagation(); - this.sectionRef.removeSection(this.submissionId, this.sectionData.id); - }; - /** - * Find the correct component based on the section's type - */ - SubmissionSectionContainerComponent.prototype.getSectionContent = function () { - return rendersSectionType(this.sectionData.sectionType); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionContainerComponent.prototype, "collectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SubmissionSectionContainerComponent.prototype, "sectionData", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionContainerComponent.prototype, "submissionId", void 0); - tslib_1.__decorate([ - ViewChild('sectionRef'), - tslib_1.__metadata("design:type", SectionsDirective) - ], SubmissionSectionContainerComponent.prototype, "sectionRef", void 0); - SubmissionSectionContainerComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-section-container', - templateUrl: './section-container.component.html', - styleUrls: ['./section-container.component.scss'] - }), - tslib_1.__metadata("design:paramtypes", [Injector]) - ], SubmissionSectionContainerComponent); - return SubmissionSectionContainerComponent; -}()); -export { SubmissionSectionContainerComponent }; -//# sourceMappingURL=section-container.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/container/section-container.component.js.map b/src/app/submission/sections/container/section-container.component.js.map deleted file mode 100644 index 798d209204..0000000000 --- a/src/app/submission/sections/container/section-container.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-container.component.js","sourceRoot":"","sources":["section-container.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAU,SAAS,EAAE,MAAM,eAAe,CAAC;AAE9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAE7D;;GAEG;AAMH;IAqCE;;;;OAIG;IACH,6CAAoB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;QAtBtC;;;WAGG;QACI,kBAAa,GAAG,SAAS,CAAC;IAmBjC,CAAC;IAED;;OAEG;IACH,sDAAQ,GAAR;QAAA,iBASC;QARC,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;YACpC,SAAS,EAAE;gBACT,EAAC,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,YAAY,CAAC,EAAnB,CAAmB,EAAE,IAAI,EAAE,EAAE,EAAC;gBAClF,EAAC,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,WAAW,CAAC,EAAlB,CAAkB,EAAE,IAAI,EAAE,EAAE,EAAC;gBAChF,EAAC,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,cAAM,OAAA,CAAC,KAAI,CAAC,YAAY,CAAC,EAAnB,CAAmB,EAAE,IAAI,EAAE,EAAE,EAAC;aACnF;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;SACtB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,2DAAa,GAApB,UAAqB,KAAK;QACxB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,+DAAiB,GAAjB;QACE,OAAO,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;IAtEQ;QAAR,KAAK,EAAE;;6EAAsB;IAMrB;QAAR,KAAK,EAAE;;4EAAgC;IAM/B;QAAR,KAAK,EAAE;;6EAAsB;IAiBL;QAAxB,SAAS,CAAC,YAAY,CAAC;0CAAa,iBAAiB;2EAAC;IAnC5C,mCAAmC;QAL/C,SAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,WAAW,EAAE,oCAAoC;YACjD,SAAS,EAAE,CAAC,oCAAoC,CAAC;SAClD,CAAC;iDA2C8B,QAAQ;OA1C3B,mCAAmC,CA6E/C;IAAD,0CAAC;CAAA,AA7ED,IA6EC;SA7EY,mCAAmC"} \ No newline at end of file diff --git a/src/app/submission/sections/form/section-form-operations.service.js b/src/app/submission/sections/form/section-form-operations.service.js deleted file mode 100644 index 03f5238222..0000000000 --- a/src/app/submission/sections/form/section-form-operations.service.js +++ /dev/null @@ -1,372 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { isEqual, isObject } from 'lodash'; -import { DYNAMIC_FORM_CONTROL_TYPE_ARRAY, DYNAMIC_FORM_CONTROL_TYPE_GROUP } from '@ng-dynamic-forms/core'; -import { isNotEmpty, isNotNull, isNotUndefined, isNull, isUndefined } from '../../../shared/empty.util'; -import { JsonPatchOperationsBuilder } from '../../../core/json-patch/builder/json-patch-operations-builder'; -import { FormFieldLanguageValueObject } from '../../../shared/form/builder/models/form-field-language-value.model'; -import { AuthorityValue } from '../../../core/integration/models/authority.value'; -import { FormBuilderService } from '../../../shared/form/builder/form-builder.service'; -import { FormFieldMetadataValueObject } from '../../../shared/form/builder/models/form-field-metadata-value.model'; -/** - * The service handling all form section operations - */ -var SectionFormOperationsService = /** @class */ (function () { - /** - * Initialize service variables - * - * @param {FormBuilderService} formBuilder - * @param {JsonPatchOperationsBuilder} operationsBuilder - */ - function SectionFormOperationsService(formBuilder, operationsBuilder) { - this.formBuilder = formBuilder; - this.operationsBuilder = operationsBuilder; - } - /** - * Dispatch properly method based on form operation type - * - * @param pathCombiner - * the [[JsonPatchOperationPathCombiner]] object for the specified operation - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @param previousValue - * the [[FormFieldPreviousValueObject]] for the specified operation - * @param hasStoredValue - * representing if field value related to the specified operation has stored value - */ - SectionFormOperationsService.prototype.dispatchOperationsFromEvent = function (pathCombiner, event, previousValue, hasStoredValue) { - switch (event.type) { - case 'remove': - this.dispatchOperationsFromRemoveEvent(pathCombiner, event, previousValue); - break; - case 'change': - this.dispatchOperationsFromChangeEvent(pathCombiner, event, previousValue, hasStoredValue); - break; - default: - break; - } - }; - /** - * Return index if specified field is part of fields array - * - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @return number - * the array index is part of array, zero otherwise - */ - SectionFormOperationsService.prototype.getArrayIndexFromEvent = function (event) { - var fieldIndex; - if (isNotEmpty(event)) { - if (isNull(event.context)) { - // Check whether model is part of an Array of group - if (this.isPartOfArrayOfGroup(event.model)) { - fieldIndex = event.model.parent.parent.index; - } - } - else { - fieldIndex = event.context.index; - } - } - // if field index is undefined model is not part of array of fields - return isNotUndefined(fieldIndex) ? fieldIndex : 0; - }; - /** - * Check if specified model is part of array of group - * - * @param model - * the [[DynamicFormControlModel]] model - * @return boolean - * true if is part of array, false otherwise - */ - SectionFormOperationsService.prototype.isPartOfArrayOfGroup = function (model) { - return (isNotNull(model.parent) - && model.parent.type === DYNAMIC_FORM_CONTROL_TYPE_GROUP - && model.parent.parent - && model.parent.parent.context - && model.parent.parent.context.type === DYNAMIC_FORM_CONTROL_TYPE_ARRAY); - }; - /** - * Return a map for the values of a Qualdrop field - * - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @return Map - * the map of values - */ - SectionFormOperationsService.prototype.getQualdropValueMap = function (event) { - var metadataValueMap = new Map(); - var context = this.formBuilder.isQualdropGroup(event.model) - ? event.model.parent.context - : event.model.parent.parent.context; - context.groups.forEach(function (arrayModel) { - var groupModel = arrayModel.group[0]; - var metadataValueList = metadataValueMap.get(groupModel.qualdropId) ? metadataValueMap.get(groupModel.qualdropId) : []; - if (groupModel.value) { - metadataValueList.push(groupModel.value); - metadataValueMap.set(groupModel.qualdropId, metadataValueList); - } - }); - return metadataValueMap; - }; - /** - * Return the absolute path for the field interesting in the specified operation - * - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @return string - * the field path - */ - SectionFormOperationsService.prototype.getFieldPathFromEvent = function (event) { - var fieldIndex = this.getArrayIndexFromEvent(event); - var fieldId = this.getFieldPathSegmentedFromChangeEvent(event); - return (isNotUndefined(fieldIndex)) ? fieldId + '/' + fieldIndex : fieldId; - }; - /** - * Return the absolute path for the Qualdrop field interesting in the specified operation - * - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @return string - * the field path - */ - SectionFormOperationsService.prototype.getQualdropItemPathFromEvent = function (event) { - var fieldIndex = this.getArrayIndexFromEvent(event); - var metadataValueMap = new Map(); - var path = null; - var context = this.formBuilder.isQualdropGroup(event.model) - ? event.model.parent.context - : event.model.parent.parent.context; - context.groups.forEach(function (arrayModel, index) { - var groupModel = arrayModel.group[0]; - var metadataValueList = metadataValueMap.get(groupModel.qualdropId) ? metadataValueMap.get(groupModel.qualdropId) : []; - if (groupModel.value) { - metadataValueList.push(groupModel.value); - metadataValueMap.set(groupModel.qualdropId, metadataValueList); - } - if (index === fieldIndex) { - path = groupModel.qualdropId + '/' + (metadataValueMap.get(groupModel.qualdropId).length - 1); - } - }); - return path; - }; - /** - * Return the segmented path for the field interesting in the specified change operation - * - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @return string - * the field path - */ - SectionFormOperationsService.prototype.getFieldPathSegmentedFromChangeEvent = function (event) { - var fieldId; - if (this.formBuilder.isQualdropGroup(event.model)) { - fieldId = event.model.qualdropId; - } - else if (this.formBuilder.isQualdropGroup(event.model.parent)) { - fieldId = event.model.parent.qualdropId; - } - else { - fieldId = this.formBuilder.getId(event.model); - } - return fieldId; - }; - /** - * Return the value of the field interesting in the specified change operation - * - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @return any - * the field value - */ - SectionFormOperationsService.prototype.getFieldValueFromChangeEvent = function (event) { - var fieldValue; - var value = event.model.value; - if (this.formBuilder.isModelInCustomGroup(event.model)) { - fieldValue = event.model.parent.value; - } - else if (this.formBuilder.isRelationGroup(event.model)) { - fieldValue = event.model.getGroupValue(); - } - else if (event.model.hasLanguages) { - var language_1 = event.model.language; - if (event.model.hasAuthority) { - if (Array.isArray(value)) { - value.forEach(function (authority, index) { - authority = Object.assign(new AuthorityValue(), authority, { language: language_1 }); - value[index] = authority; - }); - fieldValue = value; - } - else { - fieldValue = Object.assign(new AuthorityValue(), value, { language: language_1 }); - } - } - else { - // Language without Authority (input, textArea) - fieldValue = new FormFieldMetadataValueObject(value, language_1); - } - } - else if (value instanceof FormFieldLanguageValueObject || value instanceof AuthorityValue || isObject(value)) { - fieldValue = value; - } - else { - fieldValue = new FormFieldMetadataValueObject(value); - } - return fieldValue; - }; - /** - * Return a map for the values of an array of field - * - * @param items - * the list of items - * @return Map - * the map of values - */ - SectionFormOperationsService.prototype.getValueMap = function (items) { - var metadataValueMap = new Map(); - items.forEach(function (item) { - Object.keys(item) - .forEach(function (key) { - var metadataValueList = metadataValueMap.get(key) ? metadataValueMap.get(key) : []; - metadataValueList.push(item[key]); - metadataValueMap.set(key, metadataValueList); - }); - }); - return metadataValueMap; - }; - /** - * Handle form remove operations - * - * @param pathCombiner - * the [[JsonPatchOperationPathCombiner]] object for the specified operation - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @param previousValue - * the [[FormFieldPreviousValueObject]] for the specified operation - */ - SectionFormOperationsService.prototype.dispatchOperationsFromRemoveEvent = function (pathCombiner, event, previousValue) { - var path = this.getFieldPathFromEvent(event); - var value = this.getFieldValueFromChangeEvent(event); - if (this.formBuilder.isQualdropGroup(event.model)) { - this.dispatchOperationsFromMap(this.getQualdropValueMap(event), pathCombiner, event, previousValue); - } - else if (isNotEmpty(value)) { - this.operationsBuilder.remove(pathCombiner.getPath(path)); - } - }; - /** - * Handle form change operations - * - * @param pathCombiner - * the [[JsonPatchOperationPathCombiner]] object for the specified operation - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @param previousValue - * the [[FormFieldPreviousValueObject]] for the specified operation - * @param hasStoredValue - * representing if field value related to the specified operation has stored value - */ - SectionFormOperationsService.prototype.dispatchOperationsFromChangeEvent = function (pathCombiner, event, previousValue, hasStoredValue) { - var path = this.getFieldPathFromEvent(event); - var segmentedPath = this.getFieldPathSegmentedFromChangeEvent(event); - var value = this.getFieldValueFromChangeEvent(event); - // Detect which operation must be dispatched - if (this.formBuilder.isQualdropGroup(event.model.parent)) { - // It's a qualdrup model - this.dispatchOperationsFromMap(this.getQualdropValueMap(event), pathCombiner, event, previousValue); - } - else if (this.formBuilder.isRelationGroup(event.model)) { - // It's a relation model - this.dispatchOperationsFromMap(this.getValueMap(value), pathCombiner, event, previousValue); - } - else if (this.formBuilder.hasArrayGroupValue(event.model)) { - // Model has as value an array, so dispatch an add operation with entire block of values - this.operationsBuilder.add(pathCombiner.getPath(segmentedPath), value, true); - } - else if (previousValue.isPathEqual(this.formBuilder.getPath(event.model)) || hasStoredValue) { - // Here model has a previous value changed or stored in the server - if (!value.hasValue()) { - // New value is empty, so dispatch a remove operation - if (this.getArrayIndexFromEvent(event) === 0) { - this.operationsBuilder.remove(pathCombiner.getPath(segmentedPath)); - } - else { - this.operationsBuilder.remove(pathCombiner.getPath(path)); - } - } - else { - // New value is not equal from the previous one, so dispatch a replace operation - this.operationsBuilder.replace(pathCombiner.getPath(path), value); - } - previousValue.delete(); - } - else if (value.hasValue()) { - // Here model has no previous value but a new one - if (isUndefined(this.getArrayIndexFromEvent(event)) - || this.getArrayIndexFromEvent(event) === 0) { - // Model is single field or is part of an array model but is the first item, - // so dispatch an add operation that initialize the values of a specific metadata - this.operationsBuilder.add(pathCombiner.getPath(segmentedPath), value, true); - } - else { - // Model is part of an array model but is not the first item, - // so dispatch an add operation that add a value to an existent metadata - this.operationsBuilder.add(pathCombiner.getPath(path), value); - } - } - }; - /** - * Handle form operations interesting a field with a map as value - * - * @param valueMap - * map of values - * @param pathCombiner - * the [[JsonPatchOperationPathCombiner]] object for the specified operation - * @param event - * the [[DynamicFormControlEvent]] for the specified operation - * @param previousValue - * the [[FormFieldPreviousValueObject]] for the specified operation - */ - SectionFormOperationsService.prototype.dispatchOperationsFromMap = function (valueMap, pathCombiner, event, previousValue) { - var _this = this; - var currentValueMap = valueMap; - if (event.type === 'remove') { - var path = this.getQualdropItemPathFromEvent(event); - this.operationsBuilder.remove(pathCombiner.getPath(path)); - } - else { - if (previousValue.isPathEqual(this.formBuilder.getPath(event.model))) { - previousValue.value.forEach(function (entry, index) { - var currentValue = currentValueMap.get(index); - if (currentValue) { - if (!isEqual(entry, currentValue)) { - _this.operationsBuilder.add(pathCombiner.getPath(index), currentValue, true); - } - currentValueMap.delete(index); - } - else if (!currentValue) { - _this.operationsBuilder.remove(pathCombiner.getPath(index)); - } - }); - } - currentValueMap.forEach(function (entry, index) { - if (entry.length === 1 && isNull(entry[0])) { - // The last item of the group has been deleted so make a remove op - _this.operationsBuilder.remove(pathCombiner.getPath(index)); - } - else { - _this.operationsBuilder.add(pathCombiner.getPath(index), entry, true); - } - }); - } - previousValue.delete(); - }; - SectionFormOperationsService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [FormBuilderService, - JsonPatchOperationsBuilder]) - ], SectionFormOperationsService); - return SectionFormOperationsService; -}()); -export { SectionFormOperationsService }; -//# sourceMappingURL=section-form-operations.service.js.map \ No newline at end of file diff --git a/src/app/submission/sections/form/section-form-operations.service.js.map b/src/app/submission/sections/form/section-form-operations.service.js.map deleted file mode 100644 index 32d8584381..0000000000 --- a/src/app/submission/sections/form/section-form-operations.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-form-operations.service.js","sourceRoot":"","sources":["section-form-operations.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAIhC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAGxG,OAAO,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAC;AAC5G,OAAO,EAAE,4BAA4B,EAAE,MAAM,qEAAqE,CAAC;AAEnH,OAAO,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EAAE,4BAA4B,EAAE,MAAM,qEAAqE,CAAC;AAInH;;GAEG;AAEH;IAEE;;;;;OAKG;IACH,sCACU,WAA+B,EAC/B,iBAA6C;QAD7C,gBAAW,GAAX,WAAW,CAAoB;QAC/B,sBAAiB,GAAjB,iBAAiB,CAA4B;IACvD,CAAC;IAED;;;;;;;;;;;OAWG;IACI,kEAA2B,GAAlC,UAAmC,YAA4C,EAC5C,KAA8B,EAC9B,aAA2C,EAC3C,cAAuB;QACxD,QAAQ,KAAK,CAAC,IAAI,EAAE;YAClB,KAAK,QAAQ;gBACX,IAAI,CAAC,iCAAiC,CAAC,YAAY,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;gBAC3E,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,iCAAiC,CAAC,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;gBAC3F,MAAM;YACR;gBACE,MAAM;SACT;IACH,CAAC;IAED;;;;;;;OAOG;IACI,6DAAsB,GAA7B,UAA8B,KAA8B;QAC1D,IAAI,UAAkB,CAAC;QACvB,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;YACrB,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;gBACzB,mDAAmD;gBACnD,IAAI,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;oBAC1C,UAAU,GAAI,KAAK,CAAC,KAAK,CAAC,MAAc,CAAC,MAAM,CAAC,KAAK,CAAC;iBACvD;aACF;iBAAM;gBACL,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;aAClC;SACF;QAED,mEAAmE;QACnE,OAAO,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;OAOG;IACI,2DAAoB,GAA3B,UAA4B,KAA8B;QACxD,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC;eACzB,KAAK,CAAC,MAAc,CAAC,IAAI,KAAK,+BAA+B;eAC7D,KAAK,CAAC,MAAc,CAAC,MAAM;eAC3B,KAAK,CAAC,MAAc,CAAC,MAAM,CAAC,OAAO;eACnC,KAAK,CAAC,MAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,+BAA+B,CAAC,CAAC;IACtF,CAAC;IAED;;;;;;;OAOG;IACI,0DAAmB,GAA1B,UAA2B,KAA8B;QACvD,IAAM,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;QAEnC,IAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;YAC3D,CAAC,CAAE,KAAK,CAAC,KAAK,CAAC,MAAqC,CAAC,OAAO;YAC5D,CAAC,CAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAqC,CAAC,OAAO,CAAC;QAEtE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,UAAC,UAAsC;YAC5D,IAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAyB,CAAC;YAC/D,IAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACzH,IAAI,UAAU,CAAC,KAAK,EAAE;gBACpB,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBACzC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;aAChE;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;;;;;;OAOG;IACI,4DAAqB,GAA5B,UAA6B,KAA8B;QACzD,IAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACtD,IAAM,OAAO,GAAG,IAAI,CAAC,oCAAoC,CAAC,KAAK,CAAC,CAAC;QACjE,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;IAC7E,CAAC;IAED;;;;;;;OAOG;IACI,mEAA4B,GAAnC,UAAoC,KAA8B;QAChE,IAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACtD,IAAM,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;QACnC,IAAI,IAAI,GAAG,IAAI,CAAC;QAEhB,IAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;YAC3D,CAAC,CAAE,KAAK,CAAC,KAAK,CAAC,MAAqC,CAAC,OAAO;YAC5D,CAAC,CAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAqC,CAAC,OAAO,CAAC;QAEtE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,UAAC,UAAsC,EAAE,KAAa;YAC3E,IAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAyB,CAAC;YAC/D,IAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACzH,IAAI,UAAU,CAAC,KAAK,EAAE;gBACpB,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBACzC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;aAChE;YACD,IAAI,KAAK,KAAK,UAAU,EAAE;gBACxB,IAAI,GAAG,UAAU,CAAC,UAAU,GAAG,GAAG,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;aAC9F;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACI,2EAAoC,GAA3C,UAA4C,KAA8B;QACxE,IAAI,OAAO,CAAC;QACZ,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAgC,CAAC,EAAE;YAC5E,OAAO,GAAI,KAAK,CAAC,KAAa,CAAC,UAAU,CAAC;SAC3C;aAAM,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,MAAiC,CAAC,EAAE;YAC1F,OAAO,GAAI,KAAK,CAAC,KAAK,CAAC,MAAc,CAAC,UAAU,CAAC;SAClD;aAAM;YACL,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAC/C;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACI,mEAA4B,GAAnC,UAAoC,KAA8B;QAChE,IAAI,UAAU,CAAC;QACf,IAAM,KAAK,GAAI,KAAK,CAAC,KAAa,CAAC,KAAK,CAAC;QAEzC,IAAI,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACtD,UAAU,GAAI,KAAK,CAAC,KAAK,CAAC,MAAc,CAAC,KAAK,CAAC;SAChD;aAAM,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACxD,UAAU,GAAI,KAAK,CAAC,KAAmC,CAAC,aAAa,EAAE,CAAC;SACzE;aAAM,IAAK,KAAK,CAAC,KAAa,CAAC,YAAY,EAAE;YAC5C,IAAM,UAAQ,GAAI,KAAK,CAAC,KAAa,CAAC,QAAQ,CAAC;YAC/C,IAAK,KAAK,CAAC,KAA6B,CAAC,YAAY,EAAE;gBACrD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACxB,KAAK,CAAC,OAAO,CAAC,UAAC,SAAS,EAAE,KAAK;wBAC7B,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAE,SAAS,EAAE,EAAE,QAAQ,YAAA,EAAE,CAAC,CAAC;wBACzE,KAAK,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;oBAC3B,CAAC,CAAC,CAAC;oBACH,UAAU,GAAG,KAAK,CAAC;iBACpB;qBAAM;oBACL,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,YAAA,EAAE,CAAC,CAAC;iBACvE;aACF;iBAAM;gBACL,+CAA+C;gBAC/C,UAAU,GAAG,IAAI,4BAA4B,CAAC,KAAK,EAAE,UAAQ,CAAC,CAAC;aAChE;SACF;aAAM,IAAI,KAAK,YAAY,4BAA4B,IAAI,KAAK,YAAY,cAAc,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC9G,UAAU,GAAG,KAAK,CAAC;SACpB;aAAM;YACL,UAAU,GAAG,IAAI,4BAA4B,CAAC,KAAK,CAAC,CAAC;SACtD;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;;;;OAOG;IACI,kDAAW,GAAlB,UAAmB,KAAY;QAC7B,IAAM,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;QAEnC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;YACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;iBACd,OAAO,CAAC,UAAC,GAAG;gBACX,IAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrF,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClC,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;QAEP,CAAC,CAAC,CAAC;QACH,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;;;;;;;;OASG;IACO,wEAAiC,GAA3C,UAA4C,YAA4C,EAC5C,KAA8B,EAC9B,aAA2C;QACrF,IAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAM,KAAK,GAAG,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAgC,CAAC,EAAE;YAC5E,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;SACrG;aAAM,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;YAC5B,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;SAC3D;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACO,wEAAiC,GAA3C,UAA4C,YAA4C,EAC5C,KAA8B,EAC9B,aAA2C,EAC3C,cAAuB;QACjE,IAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAM,aAAa,GAAG,IAAI,CAAC,oCAAoC,CAAC,KAAK,CAAC,CAAC;QACvE,IAAM,KAAK,GAAG,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;QACvD,4CAA4C;QAC5C,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,MAAiC,CAAC,EAAE;YACnF,wBAAwB;YACxB,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;SACrG;aAAM,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACxD,wBAAwB;YACxB,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;SAC7F;aAAM,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YAC3D,wFAAwF;YACxF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,EACnC,KAAK,EAAE,IAAI,CAAC,CAAC;SAChB;aAAM,IAAI,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,cAAc,EAAE;YAC7F,kEAAkE;YAClE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE;gBACrB,qDAAqD;gBACrD,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;oBAC5C,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;iBACpE;qBAAM;oBACL,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC3D;aACF;iBAAM;gBACL,gFAAgF;gBAChF,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAC5B,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAC1B,KAAK,CAAC,CAAC;aACV;YACD,aAAa,CAAC,MAAM,EAAE,CAAC;SACxB;aAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE;YAC3B,iDAAiD;YACjD,IAAI,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;mBAC9C,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBAC7C,4EAA4E;gBAC5E,iFAAiF;gBACjF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,EACnC,KAAK,EAAE,IAAI,CAAC,CAAC;aAChB;iBAAM;gBACL,6DAA6D;gBAC7D,wEAAwE;gBACxE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAC1B,KAAK,CAAC,CAAC;aACV;SACF;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACO,gEAAyB,GAAnC,UAAoC,QAA0B,EAC1B,YAA4C,EAC5C,KAA8B,EAC9B,aAA2C;QAH/E,iBAiCC;QA7BC,IAAM,eAAe,GAAG,QAAQ,CAAC;QACjC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC3B,IAAM,IAAI,GAAG,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;SAC3D;aAAM;YACL,IAAI,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;gBACpE,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,KAAK;oBACvC,IAAM,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAChD,IAAI,YAAY,EAAE;wBAChB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE;4BACjC,KAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;yBAC7E;wBACD,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;qBAC/B;yBAAM,IAAI,CAAC,YAAY,EAAE;wBACxB,KAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;qBAC5D;gBACH,CAAC,CAAC,CAAC;aACJ;YACD,eAAe,CAAC,OAAO,CAAC,UAAC,KAAY,EAAE,KAAK;gBAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;oBAC1C,kEAAkE;oBAClE,KAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;iBAC5D;qBAAM;oBACL,KAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;iBACtE;YACH,CAAC,CAAC,CAAC;SACJ;QAED,aAAa,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC;IApXU,4BAA4B;QADxC,UAAU,EAAE;iDAUY,kBAAkB;YACZ,0BAA0B;OAV5C,4BAA4B,CAqXxC;IAAD,mCAAC;CAAA,AArXD,IAqXC;SArXY,4BAA4B"} \ No newline at end of file diff --git a/src/app/submission/sections/form/section-form.component.js b/src/app/submission/sections/form/section-form.component.js deleted file mode 100644 index 63ab31a6d0..0000000000 --- a/src/app/submission/sections/form/section-form.component.js +++ /dev/null @@ -1,319 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, Inject, ViewChild } from '@angular/core'; -import { distinctUntilChanged, filter, find, flatMap, map, take, tap } from 'rxjs/operators'; -import { TranslateService } from '@ngx-translate/core'; -import { isEqual } from 'lodash'; -import { FormBuilderService } from '../../../shared/form/builder/form-builder.service'; -import { FormComponent } from '../../../shared/form/form.component'; -import { FormService } from '../../../shared/form/form.service'; -import { SectionModelComponent } from '../models/section.model'; -import { SubmissionFormsConfigService } from '../../../core/config/submission-forms-config.service'; -import { hasValue, isNotEmpty, isUndefined } from '../../../shared/empty.util'; -import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner'; -import { FormFieldPreviousValueObject } from '../../../shared/form/builder/models/form-field-previous-value-object'; -import { GLOBAL_CONFIG } from '../../../../config'; -import { renderSectionFor } from '../sections-decorator'; -import { SectionsType } from '../sections-type'; -import { SubmissionService } from '../../submission.service'; -import { SectionFormOperationsService } from './section-form-operations.service'; -import { NotificationsService } from '../../../shared/notifications/notifications.service'; -import { SectionsService } from '../sections.service'; -import { difference } from '../../../shared/object.util'; -/** - * This component represents a section that contains a Form. - */ -var SubmissionSectionformComponent = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionSectionformComponent, _super); - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} cdr - * @param {FormBuilderService} formBuilderService - * @param {SectionFormOperationsService} formOperationsService - * @param {FormService} formService - * @param {SubmissionFormsConfigService} formConfigService - * @param {NotificationsService} notificationsService - * @param {SectionsService} sectionService - * @param {SubmissionService} submissionService - * @param {TranslateService} translate - * @param {GlobalConfig} EnvConfig - * @param {string} injectedCollectionId - * @param {SectionDataObject} injectedSectionData - * @param {string} injectedSubmissionId - */ - function SubmissionSectionformComponent(cdr, formBuilderService, formOperationsService, formService, formConfigService, notificationsService, sectionService, submissionService, translate, EnvConfig, injectedCollectionId, injectedSectionData, injectedSubmissionId) { - var _this = _super.call(this, injectedCollectionId, injectedSectionData, injectedSubmissionId) || this; - _this.cdr = cdr; - _this.formBuilderService = formBuilderService; - _this.formOperationsService = formOperationsService; - _this.formService = formService; - _this.formConfigService = formConfigService; - _this.notificationsService = notificationsService; - _this.sectionService = sectionService; - _this.submissionService = submissionService; - _this.translate = translate; - _this.EnvConfig = EnvConfig; - _this.injectedCollectionId = injectedCollectionId; - _this.injectedSectionData = injectedSectionData; - _this.injectedSubmissionId = injectedSubmissionId; - /** - * A boolean representing if this section is updating - * @type {boolean} - */ - _this.isUpdating = false; - /** - * A boolean representing if this section is loading - * @type {boolean} - */ - _this.isLoading = true; - /** - * The form data - * @type {any} - */ - _this.formData = Object.create({}); - /** - * The [FormFieldPreviousValueObject] object - * @type {FormFieldPreviousValueObject} - */ - _this.previousValue = new FormFieldPreviousValueObject(); - /** - * The list of Subscription - * @type {Array} - */ - _this.subs = []; - return _this; - } - /** - * Initialize all instance variables and retrieve form configuration - */ - SubmissionSectionformComponent.prototype.onSectionInit = function () { - var _this = this; - this.pathCombiner = new JsonPatchOperationPathCombiner('sections', this.sectionData.id); - this.formId = this.formService.getUniqueId(this.sectionData.id); - this.formConfigService.getConfigByHref(this.sectionData.config).pipe(map(function (configData) { return configData.payload; }), tap(function (config) { return _this.formConfig = config; }), flatMap(function () { return _this.sectionService.getSectionData(_this.submissionId, _this.sectionData.id); }), take(1)) - .subscribe(function (sectionData) { - if (isUndefined(_this.formModel)) { - _this.sectionData.errors = []; - // Is the first loading so init form - _this.initForm(sectionData); - _this.sectionData.data = sectionData; - _this.subscriptions(); - _this.isLoading = false; - _this.cdr.detectChanges(); - } - }); - }; - /** - * Unsubscribe from all subscriptions - */ - SubmissionSectionformComponent.prototype.onSectionDestroy = function () { - this.subs - .filter(function (subscription) { return hasValue(subscription); }) - .forEach(function (subscription) { return subscription.unsubscribe(); }); - }; - /** - * Get section status - * - * @return Observable - * the section status - */ - SubmissionSectionformComponent.prototype.getSectionStatus = function () { - return this.formService.isValid(this.formId); - }; - /** - * Check if the section data has been enriched by the server - * - * @param sectionData - * the section data retrieved from the server - */ - SubmissionSectionformComponent.prototype.hasMetadataEnrichment = function (sectionData) { - var diffResult = []; - // compare current form data state with section data retrieved from store - var diffObj = difference(sectionData, this.formData); - // iterate over differences to check whether they are actually different - Object.keys(diffObj) - .forEach(function (key) { - diffObj[key].forEach(function (value) { - if (value.hasOwnProperty('value')) { - diffResult.push(value); - } - }); - }); - return isNotEmpty(diffResult); - }; - /** - * Initialize form model - * - * @param sectionData - * the section data retrieved from the server - */ - SubmissionSectionformComponent.prototype.initForm = function (sectionData) { - try { - this.formModel = this.formBuilderService.modelFromConfiguration(this.formConfig, this.collectionId, sectionData, this.submissionService.getSubmissionScope()); - } - catch (e) { - var msg = this.translate.instant('error.submission.sections.init-form-error') + e.toString(); - var sectionError = { - message: msg, - path: '/sections/' + this.sectionData.id - }; - this.sectionService.setSectionError(this.submissionId, this.sectionData.id, sectionError); - } - }; - /** - * Update form model - * - * @param sectionData - * the section data retrieved from the server - * @param errors - * the section errors retrieved from the server - */ - SubmissionSectionformComponent.prototype.updateForm = function (sectionData, errors) { - if (isNotEmpty(sectionData) && !isEqual(sectionData, this.sectionData.data)) { - this.sectionData.data = sectionData; - if (this.hasMetadataEnrichment(sectionData)) { - var msg = this.translate.instant('submission.sections.general.metadata-extracted', { sectionId: this.sectionData.id }); - this.notificationsService.info(null, msg, null, true); - this.isUpdating = true; - this.formModel = null; - this.cdr.detectChanges(); - this.initForm(sectionData); - this.checksForErrors(errors); - this.isUpdating = false; - this.cdr.detectChanges(); - } - else if (isNotEmpty(errors) || isNotEmpty(this.sectionData.errors)) { - this.checksForErrors(errors); - } - } - else if (isNotEmpty(errors) || isNotEmpty(this.sectionData.errors)) { - this.checksForErrors(errors); - } - }; - /** - * Check if there are form validation error retrieved from server - * - * @param errors - * the section errors retrieved from the server - */ - SubmissionSectionformComponent.prototype.checksForErrors = function (errors) { - var _this = this; - this.formService.isFormInitialized(this.formId).pipe(find(function (status) { return status === true && !_this.isUpdating; })) - .subscribe(function () { - _this.sectionService.checkSectionErrors(_this.submissionId, _this.sectionData.id, _this.formId, errors, _this.sectionData.errors); - _this.sectionData.errors = errors; - _this.cdr.detectChanges(); - }); - }; - /** - * Initialize all subscriptions - */ - SubmissionSectionformComponent.prototype.subscriptions = function () { - var _this = this; - this.subs.push( - /** - * Subscribe to form's data - */ - this.formService.getFormData(this.formId).pipe(distinctUntilChanged()) - .subscribe(function (formData) { - _this.formData = formData; - }), - /** - * Subscribe to section state - */ - this.sectionService.getSectionState(this.submissionId, this.sectionData.id).pipe(filter(function (sectionState) { - return isNotEmpty(sectionState) && (isNotEmpty(sectionState.data) || isNotEmpty(sectionState.errors)); - }), distinctUntilChanged()) - .subscribe(function (sectionState) { - _this.updateForm(sectionState.data, sectionState.errors); - })); - }; - /** - * Method called when a form dfChange event is fired. - * Dispatch form operations based on changes. - * - * @param event - * the [[DynamicFormControlEvent]] emitted - */ - SubmissionSectionformComponent.prototype.onChange = function (event) { - this.formOperationsService.dispatchOperationsFromEvent(this.pathCombiner, event, this.previousValue, this.hasStoredValue(this.formBuilderService.getId(event.model), this.formOperationsService.getArrayIndexFromEvent(event))); - var metadata = this.formOperationsService.getFieldPathSegmentedFromChangeEvent(event); - var value = this.formOperationsService.getFieldValueFromChangeEvent(event); - if (this.EnvConfig.submission.autosave.metadata.indexOf(metadata) !== -1 && isNotEmpty(value)) { - this.submissionService.dispatchSave(this.submissionId); - } - }; - /** - * Method called when a form dfFocus event is fired. - * Initialize [FormFieldPreviousValueObject] instance. - * - * @param event - * the [[DynamicFormControlEvent]] emitted - */ - SubmissionSectionformComponent.prototype.onFocus = function (event) { - var value = this.formOperationsService.getFieldValueFromChangeEvent(event); - var path = this.formBuilderService.getPath(event.model); - if (this.formBuilderService.hasMappedGroupValue(event.model)) { - this.previousValue.path = path; - this.previousValue.value = this.formOperationsService.getQualdropValueMap(event); - } - else if (isNotEmpty(value) && ((typeof value === 'object' && isNotEmpty(value.value)) || (typeof value === 'string'))) { - this.previousValue.path = path; - this.previousValue.value = value; - } - }; - /** - * Method called when a form remove event is fired. - * Dispatch form operations based on changes. - * - * @param event - * the [[DynamicFormControlEvent]] emitted - */ - SubmissionSectionformComponent.prototype.onRemove = function (event) { - this.formOperationsService.dispatchOperationsFromEvent(this.pathCombiner, event, this.previousValue, this.hasStoredValue(this.formBuilderService.getId(event.model), this.formOperationsService.getArrayIndexFromEvent(event))); - }; - /** - * Check if the specified form field has already a value stored - * - * @param fieldId - * the section data retrieved from the serverù - * @param index - * the section data retrieved from the server - */ - SubmissionSectionformComponent.prototype.hasStoredValue = function (fieldId, index) { - if (isNotEmpty(this.sectionData.data)) { - return this.sectionData.data.hasOwnProperty(fieldId) && isNotEmpty(this.sectionData.data[fieldId][index]); - } - else { - return false; - } - }; - tslib_1.__decorate([ - ViewChild('formRef'), - tslib_1.__metadata("design:type", FormComponent) - ], SubmissionSectionformComponent.prototype, "formRef", void 0); - SubmissionSectionformComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-section-form', - styleUrls: ['./section-form.component.scss'], - templateUrl: './section-form.component.html', - }), - renderSectionFor(SectionsType.SubmissionForm), - tslib_1.__param(9, Inject(GLOBAL_CONFIG)), - tslib_1.__param(10, Inject('collectionIdProvider')), - tslib_1.__param(11, Inject('sectionDataProvider')), - tslib_1.__param(12, Inject('submissionIdProvider')), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - FormBuilderService, - SectionFormOperationsService, - FormService, - SubmissionFormsConfigService, - NotificationsService, - SectionsService, - SubmissionService, - TranslateService, Object, String, Object, String]) - ], SubmissionSectionformComponent); - return SubmissionSectionformComponent; -}(SectionModelComponent)); -export { SubmissionSectionformComponent }; -//# sourceMappingURL=section-form.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/form/section-form.component.js.map b/src/app/submission/sections/form/section-form.component.js.map deleted file mode 100644 index cf4ecd0805..0000000000 --- a/src/app/submission/sections/form/section-form.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-form.component.js","sourceRoot":"","sources":["section-form.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/license/section-license.component.js b/src/app/submission/sections/license/section-license.component.js deleted file mode 100644 index e76ada3324..0000000000 --- a/src/app/submission/sections/license/section-license.component.js +++ /dev/null @@ -1,180 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, Inject, ViewChild } from '@angular/core'; -import { distinctUntilChanged, filter, find, flatMap, map, startWith, take } from 'rxjs/operators'; -import { SectionModelComponent } from '../models/section.model'; -import { JsonPatchOperationsBuilder } from '../../../core/json-patch/builder/json-patch-operations-builder'; -import { CollectionDataService } from '../../../core/data/collection-data.service'; -import { hasValue, isNotEmpty, isNotNull, isNotUndefined } from '../../../shared/empty.util'; -import { SECTION_LICENSE_FORM_LAYOUT, SECTION_LICENSE_FORM_MODEL } from './section-license.model'; -import { FormBuilderService } from '../../../shared/form/builder/form-builder.service'; -import { FormService } from '../../../shared/form/form.service'; -import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner'; -import { SectionsType } from '../sections-type'; -import { renderSectionFor } from '../sections-decorator'; -import { SubmissionService } from '../../submission.service'; -import { SectionsService } from '../sections.service'; -import { SectionFormOperationsService } from '../form/section-form-operations.service'; -import { FormComponent } from '../../../shared/form/form.component'; -/** - * This component represents a section that contains the submission license form. - */ -var SubmissionSectionLicenseComponent = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionSectionLicenseComponent, _super); - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} changeDetectorRef - * @param {CollectionDataService} collectionDataService - * @param {FormBuilderService} formBuilderService - * @param {SectionFormOperationsService} formOperationsService - * @param {FormService} formService - * @param {JsonPatchOperationsBuilder} operationsBuilder - * @param {SectionsService} sectionService - * @param {SubmissionService} submissionService - * @param {string} injectedCollectionId - * @param {SectionDataObject} injectedSectionData - * @param {string} injectedSubmissionId - */ - function SubmissionSectionLicenseComponent(changeDetectorRef, collectionDataService, formBuilderService, formOperationsService, formService, operationsBuilder, sectionService, submissionService, injectedCollectionId, injectedSectionData, injectedSubmissionId) { - var _this = _super.call(this, injectedCollectionId, injectedSectionData, injectedSubmissionId) || this; - _this.changeDetectorRef = changeDetectorRef; - _this.collectionDataService = collectionDataService; - _this.formBuilderService = formBuilderService; - _this.formOperationsService = formOperationsService; - _this.formService = formService; - _this.operationsBuilder = operationsBuilder; - _this.sectionService = sectionService; - _this.submissionService = submissionService; - _this.injectedCollectionId = injectedCollectionId; - _this.injectedSectionData = injectedSectionData; - _this.injectedSubmissionId = injectedSubmissionId; - /** - * The [[DynamicFormLayout]] object - * @type {DynamicFormLayout} - */ - _this.formLayout = SECTION_LICENSE_FORM_LAYOUT; - /** - * A boolean representing if to show form submit and cancel buttons - * @type {boolean} - */ - _this.displaySubmit = false; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - _this.subs = []; - return _this; - } - /** - * Initialize all instance variables and retrieve submission license - */ - SubmissionSectionLicenseComponent.prototype.onSectionInit = function () { - var _this = this; - this.pathCombiner = new JsonPatchOperationPathCombiner('sections', this.sectionData.id); - this.formId = this.formService.getUniqueId(this.sectionData.id); - this.formModel = this.formBuilderService.fromJSON(SECTION_LICENSE_FORM_MODEL); - var model = this.formBuilderService.findById('granted', this.formModel); - // Retrieve license accepted status - if (this.sectionData.data.granted) { - model.valueUpdates.next(true); - } - else { - model.valueUpdates.next(false); - } - this.licenseText$ = this.collectionDataService.findById(this.collectionId).pipe(filter(function (collectionData) { return isNotUndefined((collectionData.payload)); }), flatMap(function (collectionData) { return collectionData.payload.license; }), find(function (licenseData) { return isNotUndefined((licenseData.payload)); }), map(function (licenseData) { return licenseData.payload.text; }), startWith('')); - this.subs.push( - // Disable checkbox whether it's in workflow or item scope - this.sectionService.isSectionReadOnly(this.submissionId, this.sectionData.id, this.submissionService.getSubmissionScope()).pipe(take(1), filter(function (isReadOnly) { return isReadOnly; })) - .subscribe(function () { - model.disabledUpdates.next(true); - }), this.sectionService.getSectionErrors(this.submissionId, this.sectionData.id).pipe(filter(function (errors) { return isNotEmpty(errors); }), distinctUntilChanged()) - .subscribe(function (errors) { - // parse errors - var newErrors = errors.map(function (error) { - // When the error path is only on the section, - // replace it with the path to the form field to display error also on the form - if (error.path === '/sections/license') { - // check whether license is not accepted - if (!model.checked) { - return Object.assign({}, error, { path: '/sections/license/granted' }); - } - else { - return null; - } - } - else { - return error; - } - }).filter(function (error) { return isNotNull(error); }); - if (isNotEmpty(newErrors)) { - _this.sectionService.checkSectionErrors(_this.submissionId, _this.sectionData.id, _this.formId, newErrors); - _this.sectionData.errors = errors; - } - else { - // Remove any section's errors - _this.sectionService.dispatchRemoveSectionErrors(_this.submissionId, _this.sectionData.id); - } - _this.changeDetectorRef.detectChanges(); - })); - }; - /** - * Get section status - * - * @return Observable - * the section status - */ - SubmissionSectionLicenseComponent.prototype.getSectionStatus = function () { - var model = this.formBuilderService.findById('granted', this.formModel); - return model.valueUpdates.pipe(map(function (value) { return value === true; }), startWith(model.value)); - }; - /** - * Method called when a form dfChange event is fired. - * Dispatch form operations based on changes. - */ - SubmissionSectionLicenseComponent.prototype.onChange = function (event) { - var path = this.formOperationsService.getFieldPathSegmentedFromChangeEvent(event); - var value = this.formOperationsService.getFieldValueFromChangeEvent(event); - if (value) { - this.operationsBuilder.add(this.pathCombiner.getPath(path), value.value.toString(), false, true); - // Remove any section's errors - this.sectionService.dispatchRemoveSectionErrors(this.submissionId, this.sectionData.id); - } - else { - this.operationsBuilder.remove(this.pathCombiner.getPath(path)); - } - }; - /** - * Unsubscribe from all subscriptions - */ - SubmissionSectionLicenseComponent.prototype.onSectionDestroy = function () { - this.subs - .filter(function (subscription) { return hasValue(subscription); }) - .forEach(function (subscription) { return subscription.unsubscribe(); }); - }; - tslib_1.__decorate([ - ViewChild('formRef'), - tslib_1.__metadata("design:type", FormComponent) - ], SubmissionSectionLicenseComponent.prototype, "formRef", void 0); - SubmissionSectionLicenseComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-section-license', - styleUrls: ['./section-license.component.scss'], - templateUrl: './section-license.component.html', - }), - renderSectionFor(SectionsType.License), - tslib_1.__param(8, Inject('collectionIdProvider')), - tslib_1.__param(9, Inject('sectionDataProvider')), - tslib_1.__param(10, Inject('submissionIdProvider')), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - CollectionDataService, - FormBuilderService, - SectionFormOperationsService, - FormService, - JsonPatchOperationsBuilder, - SectionsService, - SubmissionService, String, Object, String]) - ], SubmissionSectionLicenseComponent); - return SubmissionSectionLicenseComponent; -}(SectionModelComponent)); -export { SubmissionSectionLicenseComponent }; -//# sourceMappingURL=section-license.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/license/section-license.component.js.map b/src/app/submission/sections/license/section-license.component.js.map deleted file mode 100644 index 8903c8d5b8..0000000000 --- a/src/app/submission/sections/license/section-license.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-license.component.js","sourceRoot":"","sources":["section-license.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/license/section-license.model.js b/src/app/submission/sections/license/section-license.model.js deleted file mode 100644 index e1f3cb796c..0000000000 --- a/src/app/submission/sections/license/section-license.model.js +++ /dev/null @@ -1,26 +0,0 @@ -export var SECTION_LICENSE_FORM_LAYOUT = { - granted: { - element: { - container: 'custom-control custom-checkbox pl-1', - control: 'custom-control-input', - label: 'custom-control-label pt-1' - } - } -}; -export var SECTION_LICENSE_FORM_MODEL = [ - { - id: 'granted', - label: 'I confirm the license above', - required: true, - value: false, - validators: { - required: null - }, - errorMessages: { - required: 'You must accept the license', - notgranted: 'You must accept the license' - }, - type: 'CHECKBOX', - } -]; -//# sourceMappingURL=section-license.model.js.map \ No newline at end of file diff --git a/src/app/submission/sections/license/section-license.model.js.map b/src/app/submission/sections/license/section-license.model.js.map deleted file mode 100644 index 526cc61c58..0000000000 --- a/src/app/submission/sections/license/section-license.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-license.model.js","sourceRoot":"","sources":["section-license.model.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,IAAM,2BAA2B,GAAG;IAEzC,OAAO,EAAE;QACP,OAAO,EAAE;YACP,SAAS,EAAE,qCAAqC;YAChD,OAAO,EAAE,sBAAsB;YAC/B,KAAK,EAAE,2BAA2B;SACnC;KACF;CACF,CAAC;AAEF,MAAM,CAAC,IAAM,0BAA0B,GAAG;IACxC;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,6BAA6B;QACpC,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE;YACV,QAAQ,EAAE,IAAI;SACf;QACD,aAAa,EAAE;YACb,QAAQ,EAAE,6BAA6B;YACvC,UAAU,EAAE,6BAA6B;SAC1C;QACD,IAAI,EAAE,UAAU;KACjB;CACF,CAAC"} \ No newline at end of file diff --git a/src/app/submission/sections/models/section-data.model.js b/src/app/submission/sections/models/section-data.model.js deleted file mode 100644 index eb0b06de2e..0000000000 --- a/src/app/submission/sections/models/section-data.model.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=section-data.model.js.map \ No newline at end of file diff --git a/src/app/submission/sections/models/section-data.model.js.map b/src/app/submission/sections/models/section-data.model.js.map deleted file mode 100644 index 567af326b4..0000000000 --- a/src/app/submission/sections/models/section-data.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-data.model.js","sourceRoot":"","sources":["section-data.model.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/app/submission/sections/models/section.model.js b/src/app/submission/sections/models/section.model.js deleted file mode 100644 index 187cc4c306..0000000000 --- a/src/app/submission/sections/models/section.model.js +++ /dev/null @@ -1,59 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject } from '@angular/core'; -import { filter, startWith } from 'rxjs/operators'; -import { hasValue, isNotUndefined } from '../../../shared/empty.util'; -/** - * An abstract model class for a submission edit form section. - */ -var SectionModelComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {string} injectedCollectionId - * @param {SectionDataObject} injectedSectionData - * @param {string} injectedSubmissionId - */ - function SectionModelComponent(injectedCollectionId, injectedSectionData, injectedSubmissionId) { - this.injectedCollectionId = injectedCollectionId; - this.injectedSectionData = injectedSectionData; - this.injectedSubmissionId = injectedSubmissionId; - this.collectionId = injectedCollectionId; - this.sectionData = injectedSectionData; - this.submissionId = injectedSubmissionId; - } - /** - * Call abstract methods on component init - */ - SectionModelComponent.prototype.ngOnInit = function () { - this.onSectionInit(); - this.updateSectionStatus(); - }; - /** - * Subscribe to section status - */ - SectionModelComponent.prototype.updateSectionStatus = function () { - var _this = this; - this.sectionStatusSub = this.getSectionStatus().pipe(filter(function (sectionStatus) { return isNotUndefined(sectionStatus); }), startWith(true)) - .subscribe(function (sectionStatus) { - _this.sectionService.setSectionStatus(_this.submissionId, _this.sectionData.id, sectionStatus); - }); - }; - /** - * Unsubscribe from all subscriptions and Call abstract methods on component destroy - */ - SectionModelComponent.prototype.ngOnDestroy = function () { - if (hasValue(this.sectionStatusSub)) { - this.sectionStatusSub.unsubscribe(); - } - this.onSectionDestroy(); - }; - SectionModelComponent = tslib_1.__decorate([ - tslib_1.__param(0, Inject('collectionIdProvider')), - tslib_1.__param(1, Inject('sectionDataProvider')), - tslib_1.__param(2, Inject('submissionIdProvider')), - tslib_1.__metadata("design:paramtypes", [String, Object, String]) - ], SectionModelComponent); - return SectionModelComponent; -}()); -export { SectionModelComponent }; -//# sourceMappingURL=section.model.js.map \ No newline at end of file diff --git a/src/app/submission/sections/models/section.model.js.map b/src/app/submission/sections/models/section.model.js.map deleted file mode 100644 index 5ef727c430..0000000000 --- a/src/app/submission/sections/models/section.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section.model.js","sourceRoot":"","sources":["section.model.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAInD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAMtE;;GAEG;AACH;IAiCE;;;;;;OAMG;IACH,+BAA0D,oBAA4B,EAC7B,mBAAsC,EACrC,oBAA4B;QAF5B,yBAAoB,GAApB,oBAAoB,CAAQ;QAC7B,wBAAmB,GAAnB,mBAAmB,CAAmB;QACrC,yBAAoB,GAApB,oBAAoB,CAAQ;QACpF,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,mBAAmB,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,wCAAQ,GAAR;QACE,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IA4BD;;OAEG;IACO,mDAAmB,GAA7B;QAAA,iBAOC;QANC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAClD,MAAM,CAAC,UAAC,aAAsB,IAAK,OAAA,cAAc,CAAC,aAAa,CAAC,EAA7B,CAA6B,CAAC,EACjE,SAAS,CAAC,IAAI,CAAC,CAAC;aACf,SAAS,CAAC,UAAC,aAAsB;YAChC,KAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,KAAI,CAAC,YAAY,EAAE,KAAI,CAAC,WAAW,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAC9F,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,2CAAW,GAAX;QACE,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;YACnC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;SACrC;QACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAtGmB,qBAAqB;QAwCrB,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;QAC9B,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAC7B,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;;OA1C9B,qBAAqB,CAuG1C;IAAD,4BAAC;CAAA,AAvGD,IAuGC;SAvGqB,qBAAqB"} \ No newline at end of file diff --git a/src/app/submission/sections/sections-decorator.js b/src/app/submission/sections/sections-decorator.js deleted file mode 100644 index 05691450a1..0000000000 --- a/src/app/submission/sections/sections-decorator.js +++ /dev/null @@ -1,13 +0,0 @@ -var submissionSectionsMap = new Map(); -export function renderSectionFor(sectionType) { - return function decorator(objectElement) { - if (!objectElement) { - return; - } - submissionSectionsMap.set(sectionType, objectElement); - }; -} -export function rendersSectionType(sectionType) { - return submissionSectionsMap.get(sectionType); -} -//# sourceMappingURL=sections-decorator.js.map \ No newline at end of file diff --git a/src/app/submission/sections/sections-decorator.js.map b/src/app/submission/sections/sections-decorator.js.map deleted file mode 100644 index 7a701d3a29..0000000000 --- a/src/app/submission/sections/sections-decorator.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sections-decorator.js","sourceRoot":"","sources":["sections-decorator.ts"],"names":[],"mappings":"AAGA,IAAM,qBAAqB,GAAG,IAAI,GAAG,EAAE,CAAC;AACxC,MAAM,2BAA2B,WAAyB;IACxD,OAAO,mBAAmB,aAAkB;QAC1C,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,6BAA6B,WAAyB;IAC1D,OAAO,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AAChD,CAAC"} \ No newline at end of file diff --git a/src/app/submission/sections/sections-type.js b/src/app/submission/sections/sections-type.js deleted file mode 100644 index 571af6569e..0000000000 --- a/src/app/submission/sections/sections-type.js +++ /dev/null @@ -1,9 +0,0 @@ -export var SectionsType; -(function (SectionsType) { - SectionsType["SubmissionForm"] = "submission-form"; - SectionsType["Upload"] = "upload"; - SectionsType["License"] = "license"; - SectionsType["CcLicense"] = "cclicense"; - SectionsType["collection"] = "collection"; -})(SectionsType || (SectionsType = {})); -//# sourceMappingURL=sections-type.js.map \ No newline at end of file diff --git a/src/app/submission/sections/sections-type.js.map b/src/app/submission/sections/sections-type.js.map deleted file mode 100644 index b69fa60447..0000000000 --- a/src/app/submission/sections/sections-type.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sections-type.js","sourceRoot":"","sources":["sections-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,kDAAkC,CAAA;IAClC,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,uCAAuB,CAAA;IACvB,yCAAyB,CAAA;AAC3B,CAAC,EANW,YAAY,KAAZ,YAAY,QAMvB"} \ No newline at end of file diff --git a/src/app/submission/sections/sections.directive.js b/src/app/submission/sections/sections.directive.js deleted file mode 100644 index 852def2db5..0000000000 --- a/src/app/submission/sections/sections.directive.js +++ /dev/null @@ -1,255 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Directive, Input } from '@angular/core'; -import { map } from 'rxjs/operators'; -import { uniq } from 'lodash'; -import { SectionsService } from './sections.service'; -import { hasValue, isNotEmpty, isNotNull } from '../../shared/empty.util'; -import parseSectionErrorPaths from '../utils/parseSectionErrorPaths'; -import { SubmissionService } from '../submission.service'; -/** - * Directive for handling generic section functionality - */ -var SectionsDirective = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} changeDetectorRef - * @param {SubmissionService} submissionService - * @param {SectionsService} sectionService - */ - function SectionsDirective(changeDetectorRef, submissionService, sectionService) { - this.changeDetectorRef = changeDetectorRef; - this.submissionService = submissionService; - this.sectionService = sectionService; - /** - * A boolean representing if section is mandatory - * @type {boolean} - */ - this.mandatory = true; - /** - * The list of generic errors related to the section - * @type {Array} - */ - this.genericSectionErrors = []; - /** - * The list of all errors related to the element belonging to this section - * @type {Array} - */ - this.allSectionErrors = []; - /** - * A boolean representing if section is active - * @type {boolean} - */ - this.active = true; - /** - * A boolean representing the panel collapsible state: opened (true) or closed (false) - * @type {boolean} - */ - this.sectionState = this.mandatory; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subs = []; - } - /** - * Initialize instance variables - */ - SectionsDirective.prototype.ngOnInit = function () { - var _this = this; - this.valid = this.sectionService.isSectionValid(this.submissionId, this.sectionId).pipe(map(function (valid) { - if (valid) { - _this.resetErrors(); - } - return valid; - })); - this.subs.push(this.sectionService.getSectionState(this.submissionId, this.sectionId).pipe(map(function (state) { return state.errors; })) - .subscribe(function (errors) { - if (isNotEmpty(errors)) { - errors.forEach(function (errorItem) { - var parsedErrors = parseSectionErrorPaths(errorItem.path); - parsedErrors.forEach(function (error) { - if (!error.fieldId) { - _this.genericSectionErrors = uniq(_this.genericSectionErrors.concat(errorItem.message)); - } - else { - _this.allSectionErrors.push(errorItem.message); - } - }); - }); - } - else { - _this.resetErrors(); - } - }), this.submissionService.getActiveSectionId(this.submissionId) - .subscribe(function (activeSectionId) { - var previousActive = _this.active; - _this.active = (activeSectionId === _this.sectionId); - if (previousActive !== _this.active) { - _this.changeDetectorRef.detectChanges(); - // If section is no longer active dispatch save action - if (!_this.active && isNotNull(activeSectionId)) { - _this.submissionService.dispatchSave(_this.submissionId); - } - } - })); - this.enabled = this.sectionService.isSectionEnabled(this.submissionId, this.sectionId); - }; - /** - * Unsubscribe from all subscriptions - */ - SectionsDirective.prototype.ngOnDestroy = function () { - this.subs - .filter(function (subscription) { return hasValue(subscription); }) - .forEach(function (subscription) { return subscription.unsubscribe(); }); - }; - /** - * Change section state - * - * @param event - * the event emitted - */ - SectionsDirective.prototype.sectionChange = function (event) { - this.sectionState = event.nextState; - }; - /** - * Check if section panel is open - * - * @returns {boolean} - * Returns true when section panel is open - */ - SectionsDirective.prototype.isOpen = function () { - return this.sectionState; - }; - /** - * Check if section is mandatory - * - * @returns {boolean} - * Returns true when section is mandatory - */ - SectionsDirective.prototype.isMandatory = function () { - return this.mandatory; - }; - /** - * Check if section panel is active - * - * @returns {boolean} - * Returns true when section panel is active - */ - SectionsDirective.prototype.isSectionActive = function () { - return this.active; - }; - /** - * Check if section is enabled - * - * @returns {Observable} - * Emits true whenever section is enabled - */ - SectionsDirective.prototype.isEnabled = function () { - return this.enabled; - }; - /** - * Check if section is valid - * - * @returns {Observable} - * Emits true whenever section is valid - */ - SectionsDirective.prototype.isValid = function () { - return this.valid; - }; - /** - * Remove section panel from submission form - * - * @param submissionId - * the submission id - * @param sectionId - * the section id - * @returns {Observable} - * Emits true whenever section is valid - */ - SectionsDirective.prototype.removeSection = function (submissionId, sectionId) { - this.sectionService.removeSection(submissionId, sectionId); - }; - /** - * Check if section has only generic errors - * - * @returns {boolean} - * Returns true when section has only generic errors - */ - SectionsDirective.prototype.hasGenericErrors = function () { - return this.genericSectionErrors && this.genericSectionErrors.length > 0; - }; - /** - * Check if section has errors - * - * @returns {boolean} - * Returns true when section has errors - */ - SectionsDirective.prototype.hasErrors = function () { - return (this.genericSectionErrors && this.genericSectionErrors.length > 0) || - (this.allSectionErrors && this.allSectionErrors.length > 0); - }; - /** - * Return section errors - * - * @returns {Array} - * Returns section errors list - */ - SectionsDirective.prototype.getErrors = function () { - return this.genericSectionErrors; - }; - /** - * Set form focus to this section panel - * - * @param event - * The event emitted - */ - SectionsDirective.prototype.setFocus = function (event) { - if (!this.active) { - this.submissionService.setActiveSection(this.submissionId, this.sectionId); - } - }; - /** - * Remove error from list - * - * @param index - * The error array key - */ - SectionsDirective.prototype.removeError = function (index) { - this.genericSectionErrors.splice(index); - }; - /** - * Remove all errors from list - */ - SectionsDirective.prototype.resetErrors = function () { - if (isNotEmpty(this.genericSectionErrors)) { - this.sectionService.dispatchRemoveSectionErrors(this.submissionId, this.sectionId); - } - this.genericSectionErrors = []; - this.allSectionErrors = []; - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], SectionsDirective.prototype, "mandatory", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SectionsDirective.prototype, "sectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SectionsDirective.prototype, "submissionId", void 0); - SectionsDirective = tslib_1.__decorate([ - Directive({ - selector: '[dsSection]', - exportAs: 'sectionRef' - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - SubmissionService, - SectionsService]) - ], SectionsDirective); - return SectionsDirective; -}()); -export { SectionsDirective }; -//# sourceMappingURL=sections.directive.js.map \ No newline at end of file diff --git a/src/app/submission/sections/sections.directive.js.map b/src/app/submission/sections/sections.directive.js.map deleted file mode 100644 index 7fe4660110..0000000000 --- a/src/app/submission/sections/sections.directive.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sections.directive.js","sourceRoot":"","sources":["sections.directive.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/sections.service.js b/src/app/submission/sections/sections.service.js deleted file mode 100644 index 53c2a72c1f..0000000000 --- a/src/app/submission/sections/sections.service.js +++ /dev/null @@ -1,309 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { combineLatest } from 'rxjs'; -import { distinctUntilChanged, filter, map, take } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; -import { TranslateService } from '@ngx-translate/core'; -import { ScrollToService } from '@nicky-lenaers/ngx-scroll-to'; -import { isEqual } from 'lodash'; -import { hasValue, isEmpty, isNotEmpty, isNotUndefined } from '../../shared/empty.util'; -import { DisableSectionAction, EnableSectionAction, InertSectionErrorsAction, RemoveSectionErrorsAction, SectionStatusChangeAction, UpdateSectionDataAction } from '../objects/submission-objects.actions'; -import { submissionObjectFromIdSelector, submissionSectionDataFromIdSelector, submissionSectionErrorsFromIdSelector, submissionSectionFromIdSelector } from '../selectors'; -import { SubmissionScopeType } from '../../core/submission/submission-scope-type'; -import parseSectionErrorPaths from '../utils/parseSectionErrorPaths'; -import { FormAddError, FormClearErrorsAction, FormRemoveErrorAction } from '../../shared/form/form.actions'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { SubmissionService } from '../submission.service'; -/** - * A service that provides methods used in submission process. - */ -var SectionsService = /** @class */ (function () { - /** - * Initialize service variables - * @param {NotificationsService} notificationsService - * @param {ScrollToService} scrollToService - * @param {SubmissionService} submissionService - * @param {Store} store - * @param {TranslateService} translate - */ - function SectionsService(notificationsService, scrollToService, submissionService, store, translate) { - this.notificationsService = notificationsService; - this.scrollToService = scrollToService; - this.submissionService = submissionService; - this.store = store; - this.translate = translate; - } - /** - * Compare the list of the current section errors with the previous one, - * and dispatch actions to add/remove to/from the section state - * - * @param submissionId - * The submission id - * @param sectionId - * The workspaceitem self url - * @param formId - * The [SubmissionDefinitionsModel] that define submission configuration - * @param currentErrors - * The [SubmissionSectionError] that define submission sections init data - * @param prevErrors - * The [SubmissionSectionError] that define submission sections init errors - */ - SectionsService.prototype.checkSectionErrors = function (submissionId, sectionId, formId, currentErrors, prevErrors) { - var _this = this; - if (prevErrors === void 0) { prevErrors = []; } - // Remove previous error list if the current is empty - if (isEmpty(currentErrors)) { - this.store.dispatch(new RemoveSectionErrorsAction(submissionId, sectionId)); - this.store.dispatch(new FormClearErrorsAction(formId)); - } - else if (!isEqual(currentErrors, prevErrors)) { // compare previous error list with the current one - var dispatchedErrors_1 = []; - // Itereate over the current error list - currentErrors.forEach(function (error) { - var errorPaths = parseSectionErrorPaths(error.path); - errorPaths.forEach(function (path) { - if (path.fieldId) { - var fieldId = path.fieldId.replace(/\./g, '_'); - // Dispatch action to add form error to the state; - var formAddErrorAction = new FormAddError(formId, fieldId, path.fieldIndex, error.message); - _this.store.dispatch(formAddErrorAction); - dispatchedErrors_1.push(fieldId); - } - }); - }); - // Itereate over the previous error list - prevErrors.forEach(function (error) { - var errorPaths = parseSectionErrorPaths(error.path); - errorPaths.forEach(function (path) { - if (path.fieldId) { - var fieldId = path.fieldId.replace(/\./g, '_'); - if (!dispatchedErrors_1.includes(fieldId)) { - // Dispatch action to remove form error from the state; - var formRemoveErrorAction = new FormRemoveErrorAction(formId, fieldId, path.fieldIndex); - _this.store.dispatch(formRemoveErrorAction); - } - } - }); - }); - } - }; - /** - * Dispatch a new [RemoveSectionErrorsAction] - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - */ - SectionsService.prototype.dispatchRemoveSectionErrors = function (submissionId, sectionId) { - this.store.dispatch(new RemoveSectionErrorsAction(submissionId, sectionId)); - }; - /** - * Return the data object for the specified section - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @return Observable - * observable of [WorkspaceitemSectionDataType] - */ - SectionsService.prototype.getSectionData = function (submissionId, sectionId) { - return this.store.select(submissionSectionDataFromIdSelector(submissionId, sectionId)).pipe(distinctUntilChanged()); - }; - /** - * Return the error list object data for the specified section - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @return Observable - * observable of array of [SubmissionSectionError] - */ - SectionsService.prototype.getSectionErrors = function (submissionId, sectionId) { - return this.store.select(submissionSectionErrorsFromIdSelector(submissionId, sectionId)).pipe(distinctUntilChanged()); - }; - /** - * Return the state object for the specified section - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @return Observable - * observable of [SubmissionSectionObject] - */ - SectionsService.prototype.getSectionState = function (submissionId, sectionId) { - return this.store.select(submissionSectionFromIdSelector(submissionId, sectionId)).pipe(filter(function (sectionObj) { return hasValue(sectionObj); }), map(function (sectionObj) { return sectionObj; }), distinctUntilChanged()); - }; - /** - * Check if a given section is valid - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @return Observable - * Emits true whenever a given section should be valid - */ - SectionsService.prototype.isSectionValid = function (submissionId, sectionId) { - return this.store.select(submissionSectionFromIdSelector(submissionId, sectionId)).pipe(filter(function (sectionObj) { return hasValue(sectionObj); }), map(function (sectionObj) { return sectionObj.isValid; }), distinctUntilChanged()); - }; - /** - * Check if a given section is active - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @return Observable - * Emits true whenever a given section should be active - */ - SectionsService.prototype.isSectionActive = function (submissionId, sectionId) { - return this.submissionService.getActiveSectionId(submissionId).pipe(map(function (activeSectionId) { return sectionId === activeSectionId; }), distinctUntilChanged()); - }; - /** - * Check if a given section is enabled - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @return Observable - * Emits true whenever a given section should be enabled - */ - SectionsService.prototype.isSectionEnabled = function (submissionId, sectionId) { - return this.store.select(submissionSectionFromIdSelector(submissionId, sectionId)).pipe(filter(function (sectionObj) { return hasValue(sectionObj); }), map(function (sectionObj) { return sectionObj.enabled; }), distinctUntilChanged()); - }; - /** - * Check if a given section is a read only section - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param submissionScope - * The submission scope - * @return Observable - * Emits true whenever a given section should be read only - */ - SectionsService.prototype.isSectionReadOnly = function (submissionId, sectionId, submissionScope) { - return this.store.select(submissionSectionFromIdSelector(submissionId, sectionId)).pipe(filter(function (sectionObj) { return hasValue(sectionObj); }), map(function (sectionObj) { - return isNotEmpty(sectionObj.visibility) - && sectionObj.visibility.other === 'READONLY' - && submissionScope !== SubmissionScopeType.WorkspaceItem; - }), distinctUntilChanged()); - }; - /** - * Check if a given section is a read only available - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @return Observable - * Emits true whenever a given section should be available - */ - SectionsService.prototype.isSectionAvailable = function (submissionId, sectionId) { - return this.store.select(submissionObjectFromIdSelector(submissionId)).pipe(filter(function (submissionState) { return isNotUndefined(submissionState); }), map(function (submissionState) { - return isNotUndefined(submissionState.sections) && isNotUndefined(submissionState.sections[sectionId]); - }), distinctUntilChanged()); - }; - /** - * Dispatch a new [EnableSectionAction] to add a new section and move page target to it - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - */ - SectionsService.prototype.addSection = function (submissionId, sectionId) { - this.store.dispatch(new EnableSectionAction(submissionId, sectionId)); - var config = { - target: sectionId, - offset: -70 - }; - this.scrollToService.scrollTo(config); - }; - /** - * Dispatch a new [DisableSectionAction] to remove section - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - */ - SectionsService.prototype.removeSection = function (submissionId, sectionId) { - this.store.dispatch(new DisableSectionAction(submissionId, sectionId)); - }; - /** - * Dispatch a new [UpdateSectionDataAction] to update section state with new data and errors - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param data - * The section data - * @param errors - * The list of section errors - */ - SectionsService.prototype.updateSectionData = function (submissionId, sectionId, data, errors) { - var _this = this; - if (errors === void 0) { errors = []; } - if (isNotEmpty(data)) { - var isAvailable$ = this.isSectionAvailable(submissionId, sectionId); - var isEnabled$ = this.isSectionEnabled(submissionId, sectionId); - combineLatest(isAvailable$, isEnabled$).pipe(take(1), filter(function (_a) { - var available = _a[0], enabled = _a[1]; - return available; - })) - .subscribe(function (_a) { - var available = _a[0], enabled = _a[1]; - if (!enabled) { - var msg = _this.translate.instant('submission.sections.general.metadata-extracted-new-section', { sectionId: sectionId }); - _this.notificationsService.info(null, msg, null, true); - } - _this.store.dispatch(new UpdateSectionDataAction(submissionId, sectionId, data, errors)); - }); - } - }; - /** - * Dispatch a new [InertSectionErrorsAction] to update section state with new error - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param error - * The section error - */ - SectionsService.prototype.setSectionError = function (submissionId, sectionId, error) { - this.store.dispatch(new InertSectionErrorsAction(submissionId, sectionId, error)); - }; - /** - * Dispatch a new [SectionStatusChangeAction] to update section state with new status - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param status - * The section status - */ - SectionsService.prototype.setSectionStatus = function (submissionId, sectionId, status) { - this.store.dispatch(new SectionStatusChangeAction(submissionId, sectionId, status)); - }; - SectionsService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [NotificationsService, - ScrollToService, - SubmissionService, - Store, - TranslateService]) - ], SectionsService); - return SectionsService; -}()); -export { SectionsService }; -//# sourceMappingURL=sections.service.js.map \ No newline at end of file diff --git a/src/app/submission/sections/sections.service.js.map b/src/app/submission/sections/sections.service.js.map deleted file mode 100644 index 1393518efb..0000000000 --- a/src/app/submission/sections/sections.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"sections.service.js","sourceRoot":"","sources":["sections.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js b/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js deleted file mode 100644 index d0228caf1f..0000000000 --- a/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js +++ /dev/null @@ -1,57 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { find } from 'rxjs/operators'; -import { GroupEpersonService } from '../../../../core/eperson/group-eperson.service'; -import { isEmpty } from '../../../../shared/empty.util'; -/** - * This component represents a badge that describe an access condition - */ -var SubmissionSectionUploadAccessConditionsComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {GroupEpersonService} groupService - */ - function SubmissionSectionUploadAccessConditionsComponent(groupService) { - this.groupService = groupService; - /** - * The list of access conditions - * @type {Array} - */ - this.accessConditionsList = []; - } - /** - * Retrieve access conditions list - */ - SubmissionSectionUploadAccessConditionsComponent.prototype.ngOnInit = function () { - var _this = this; - this.accessConditions.forEach(function (accessCondition) { - if (isEmpty(accessCondition.name)) { - _this.groupService.findById(accessCondition.groupUUID).pipe(find(function (rd) { return !rd.isResponsePending && rd.hasSucceeded; })) - .subscribe(function (rd) { - var group = rd.payload; - var accessConditionEntry = Object.assign({}, accessCondition); - accessConditionEntry.name = group.name; - _this.accessConditionsList.push(accessConditionEntry); - }); - } - else { - _this.accessConditionsList.push(accessCondition); - } - }); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], SubmissionSectionUploadAccessConditionsComponent.prototype, "accessConditions", void 0); - SubmissionSectionUploadAccessConditionsComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-section-upload-access-conditions', - templateUrl: './submission-section-upload-access-conditions.component.html', - }), - tslib_1.__metadata("design:paramtypes", [GroupEpersonService]) - ], SubmissionSectionUploadAccessConditionsComponent); - return SubmissionSectionUploadAccessConditionsComponent; -}()); -export { SubmissionSectionUploadAccessConditionsComponent }; -//# sourceMappingURL=submission-section-upload-access-conditions.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js.map b/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js.map deleted file mode 100644 index 09d1d8ee63..0000000000 --- a/src/app/submission/sections/upload/accessConditions/submission-section-upload-access-conditions.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-section-upload-access-conditions.component.js","sourceRoot":"","sources":["submission-section-upload-access-conditions.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AAErF,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAIxD;;GAEG;AAKH;IAcE;;;;OAIG;IACH,0DAAoB,YAAiC;QAAjC,iBAAY,GAAZ,YAAY,CAAqB;QAXrD;;;WAGG;QACI,yBAAoB,GAAG,EAAE,CAAC;IAOuB,CAAC;IAEzD;;OAEG;IACH,mEAAQ,GAAR;QAAA,iBAeC;QAdC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,UAAC,eAA+B;YAC5D,IAAI,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;gBACjC,KAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,IAAI,CACxD,IAAI,CAAC,UAAC,EAAqB,IAAK,OAAA,CAAC,EAAE,CAAC,iBAAiB,IAAI,EAAE,CAAC,YAAY,EAAxC,CAAwC,CAAC,CAAC;qBACzE,SAAS,CAAC,UAAC,EAAqB;oBAC/B,IAAM,KAAK,GAAU,EAAE,CAAC,OAAO,CAAC;oBAChC,IAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;oBAChE,oBAAoB,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;oBACvC,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAA;aACL;iBAAM;gBACL,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aACjD;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAjCQ;QAAR,KAAK,EAAE;;8FAAoC;IANjC,gDAAgD;QAJ5D,SAAS,CAAC;YACT,QAAQ,EAAE,gDAAgD;YAC1D,WAAW,EAAE,8DAA8D;SAC5E,CAAC;iDAoBkC,mBAAmB;OAnB1C,gDAAgD,CAwC5D;IAAD,uDAAC;CAAA,AAxCD,IAwCC;SAxCY,gDAAgD"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js deleted file mode 100644 index 3c4237efe9..0000000000 --- a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js +++ /dev/null @@ -1,287 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, Input, ViewChild } from '@angular/core'; -import { DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER, DynamicDatePickerModel, DynamicFormArrayModel, DynamicFormGroupModel, DynamicSelectModel } from '@ng-dynamic-forms/core'; -import { WorkspaceitemSectionUploadFileObject } from '../../../../../core/submission/models/workspaceitem-section-upload-file.model'; -import { FormBuilderService } from '../../../../../shared/form/builder/form-builder.service'; -import { BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_CONFIG, BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_LAYOUT, BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_CONFIG, BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_LAYOUT, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_CONFIG, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_LAYOUT, BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_CONFIG, BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_LAYOUT, BITSTREAM_FORM_ACCESS_CONDITION_TYPE_CONFIG, BITSTREAM_FORM_ACCESS_CONDITION_TYPE_LAYOUT, BITSTREAM_METADATA_FORM_GROUP_CONFIG, BITSTREAM_METADATA_FORM_GROUP_LAYOUT } from './section-upload-file-edit.model'; -import { POLICY_DEFAULT_WITH_LIST } from '../../section-upload.component'; -import { isNotEmpty, isNotUndefined } from '../../../../../shared/empty.util'; -import { SubmissionFormsModel } from '../../../../../core/config/models/config-submission-forms.model'; -import { SubmissionService } from '../../../../submission.service'; -import { FormService } from '../../../../../shared/form/form.service'; -import { FormComponent } from '../../../../../shared/form/form.component'; -/** - * This component represents the edit form for bitstream - */ -var SubmissionSectionUploadFileEditComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} cdr - * @param {FormBuilderService} formBuilderService - * @param {FormService} formService - * @param {SubmissionService} submissionService - */ - function SubmissionSectionUploadFileEditComponent(cdr, formBuilderService, formService, submissionService) { - this.cdr = cdr; - this.formBuilderService = formBuilderService; - this.formService = formService; - this.submissionService = submissionService; - } - /** - * Dispatch form model init - */ - SubmissionSectionUploadFileEditComponent.prototype.ngOnChanges = function () { - if (this.fileData && this.formId) { - this.formModel = this.buildFileEditForm(); - this.cdr.detectChanges(); - } - }; - /** - * Initialize form model - */ - SubmissionSectionUploadFileEditComponent.prototype.buildFileEditForm = function () { - var configDescr = Object.assign({}, this.configMetadataForm.rows[0].fields[0]); - configDescr.repeatable = false; - var configForm = Object.assign({}, this.configMetadataForm, { - fields: Object.assign([], this.configMetadataForm.rows[0].fields[0], [ - this.configMetadataForm.rows[0].fields[0], - configDescr - ]) - }); - var formModel = []; - var metadataGroupModelConfig = Object.assign({}, BITSTREAM_METADATA_FORM_GROUP_CONFIG); - metadataGroupModelConfig.group = this.formBuilderService.modelFromConfiguration(configForm, this.collectionId, this.fileData.metadata, this.submissionService.getSubmissionScope()); - formModel.push(new DynamicFormGroupModel(metadataGroupModelConfig, BITSTREAM_METADATA_FORM_GROUP_LAYOUT)); - var accessConditionTypeModelConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_TYPE_CONFIG); - var accessConditionsArrayConfig = Object.assign({}, BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_CONFIG); - var accessConditionTypeOptions = []; - if (this.collectionPolicyType === POLICY_DEFAULT_WITH_LIST) { - for (var _i = 0, _a = this.availableAccessConditionOptions; _i < _a.length; _i++) { - var accessCondition = _a[_i]; - accessConditionTypeOptions.push({ - label: accessCondition.name, - value: accessCondition.name - }); - } - accessConditionTypeModelConfig.options = accessConditionTypeOptions; - // Dynamically assign of relation in config. For startdate, endDate, groups. - var hasStart_1 = []; - var hasEnd_1 = []; - var hasGroups_1 = []; - this.availableAccessConditionOptions.forEach(function (condition) { - var showStart = condition.hasStartDate === true; - var showEnd = condition.hasEndDate === true; - var showGroups = showStart || showEnd; - if (showStart) { - hasStart_1.push({ id: 'name', value: condition.name }); - } - if (showEnd) { - hasEnd_1.push({ id: 'name', value: condition.name }); - } - if (showGroups) { - hasGroups_1.push({ id: 'name', value: condition.name }); - } - }); - var confStart_1 = { relation: [{ action: 'ENABLE', connective: 'OR', when: hasStart_1 }] }; - var confEnd_1 = { relation: [{ action: 'ENABLE', connective: 'OR', when: hasEnd_1 }] }; - var confGroup_1 = { relation: [{ action: 'ENABLE', connective: 'OR', when: hasGroups_1 }] }; - accessConditionsArrayConfig.groupFactory = function () { - var type = new DynamicSelectModel(accessConditionTypeModelConfig, BITSTREAM_FORM_ACCESS_CONDITION_TYPE_LAYOUT); - var startDateConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_CONFIG, confStart_1); - var endDateConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_CONFIG, confEnd_1); - var groupsConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_CONFIG, confGroup_1); - var startDate = new DynamicDatePickerModel(startDateConfig, BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_LAYOUT); - var endDate = new DynamicDatePickerModel(endDateConfig, BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_LAYOUT); - var groups = new DynamicSelectModel(groupsConfig, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_LAYOUT); - return [type, startDate, endDate, groups]; - }; - // Number of access conditions blocks in form - accessConditionsArrayConfig.initialCount = isNotEmpty(this.fileData.accessConditions) ? this.fileData.accessConditions.length : 1; - formModel.push(new DynamicFormArrayModel(accessConditionsArrayConfig, BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_LAYOUT)); - } - this.initModelData(formModel); - return formModel; - }; - /** - * Initialize form model values - * - * @param formModel - * The form model - */ - SubmissionSectionUploadFileEditComponent.prototype.initModelData = function (formModel) { - var _this = this; - this.fileData.accessConditions.forEach(function (accessCondition, index) { - Array.of('name', 'groupUUID', 'startDate', 'endDate') - .filter(function (key) { return accessCondition.hasOwnProperty(key); }) - .forEach(function (key) { - var metadataModel = _this.formBuilderService.findById(key, formModel, index); - if (metadataModel) { - if (key === 'groupUUID' && _this.availableAccessConditionGroups.get(accessCondition.name)) { - _this.availableAccessConditionGroups.get(accessCondition.name).forEach(function (group) { - metadataModel.options.push({ - label: group.name, - value: group.uuid - }); - }); - } - if (metadataModel.type === DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER) { - var date = new Date(accessCondition[key]); - metadataModel.value = { - year: date.getFullYear(), - month: date.getMonth() + 1, - day: date.getDate() - }; - } - else { - metadataModel.value = accessCondition[key]; - } - } - }); - }); - }; - /** - * Dispatch form model update when changing an access condition - * - * @param event - * The event emitted - */ - SubmissionSectionUploadFileEditComponent.prototype.onChange = function (event) { - if (event.model.id === 'name') { - this.setOptions(event.model, event.control); - } - }; - /** - * Update `startDate`, 'groupUUID' and 'endDate' model - * - * @param model - * The [[DynamicFormControlModel]] object - * @param control - * The [[FormControl]] object - */ - SubmissionSectionUploadFileEditComponent.prototype.setOptions = function (model, control) { - var accessCondition = null; - this.availableAccessConditionOptions.filter(function (element) { return element.name === control.value; }) - .forEach(function (element) { return accessCondition = element; }); - if (isNotEmpty(accessCondition)) { - var showGroups = accessCondition.hasStartDate === true || accessCondition.hasEndDate === true; - var groupControl = control.parent.get('groupUUID'); - var startDateControl = control.parent.get('startDate'); - var endDateControl = control.parent.get('endDate'); - // Clear previous state - groupControl.markAsUntouched(); - startDateControl.markAsUntouched(); - endDateControl.markAsUntouched(); - // Clear previous values - if (showGroups) { - groupControl.setValue(null); - } - else { - groupControl.clearValidators(); - groupControl.setValue(accessCondition.groupUUID); - } - startDateControl.setValue(null); - control.parent.markAsDirty(); - endDateControl.setValue(null); - if (showGroups) { - if (isNotUndefined(accessCondition.groupUUID) || isNotUndefined(accessCondition.selectGroupUUID)) { - var groupOptions_1 = []; - if (isNotUndefined(this.availableAccessConditionGroups.get(accessCondition.name))) { - var groupModel = this.formBuilderService.findById('groupUUID', model.parent.group); - this.availableAccessConditionGroups.get(accessCondition.name).forEach(function (group) { - groupOptions_1.push({ - label: group.name, - value: group.uuid - }); - }); - // Due to a bug can't dynamically change the select options, so replace the model with a new one - var confGroup = { relation: groupModel.relation }; - var groupsConfig = Object.assign({}, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_CONFIG, confGroup); - groupsConfig.options = groupOptions_1; - model.parent.group.pop(); - model.parent.group.push(new DynamicSelectModel(groupsConfig, BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_LAYOUT)); - } - } - if (accessCondition.hasStartDate) { - var startDateModel = this.formBuilderService.findById('startDate', model.parent.group); - var min = new Date(accessCondition.maxStartDate); - startDateModel.max = { - year: min.getFullYear(), - month: min.getMonth() + 1, - day: min.getDate() - }; - } - if (accessCondition.hasEndDate) { - var endDateModel = this.formBuilderService.findById('endDate', model.parent.group); - var max = new Date(accessCondition.maxEndDate); - endDateModel.max = { - year: max.getFullYear(), - month: max.getMonth() + 1, - day: max.getDate() - }; - } - } - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], SubmissionSectionUploadFileEditComponent.prototype, "availableAccessConditionOptions", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Map) - ], SubmissionSectionUploadFileEditComponent.prototype, "availableAccessConditionGroups", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileEditComponent.prototype, "collectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], SubmissionSectionUploadFileEditComponent.prototype, "collectionPolicyType", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SubmissionFormsModel) - ], SubmissionSectionUploadFileEditComponent.prototype, "configMetadataForm", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", WorkspaceitemSectionUploadFileObject) - ], SubmissionSectionUploadFileEditComponent.prototype, "fileData", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileEditComponent.prototype, "fileId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileEditComponent.prototype, "fileIndex", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileEditComponent.prototype, "formId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileEditComponent.prototype, "sectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileEditComponent.prototype, "submissionId", void 0); - tslib_1.__decorate([ - ViewChild('formRef'), - tslib_1.__metadata("design:type", FormComponent) - ], SubmissionSectionUploadFileEditComponent.prototype, "formRef", void 0); - SubmissionSectionUploadFileEditComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-section-upload-file-edit', - templateUrl: './section-upload-file-edit.component.html', - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - FormBuilderService, - FormService, - SubmissionService]) - ], SubmissionSectionUploadFileEditComponent); - return SubmissionSectionUploadFileEditComponent; -}()); -export { SubmissionSectionUploadFileEditComponent }; -//# sourceMappingURL=section-upload-file-edit.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js.map b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js.map deleted file mode 100644 index c72f7a44cd..0000000000 --- a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-upload-file-edit.component.js","sourceRoot":"","sources":["section-upload-file-edit.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js deleted file mode 100644 index e980ef7ab0..0000000000 --- a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js +++ /dev/null @@ -1,125 +0,0 @@ -export var BITSTREAM_METADATA_FORM_GROUP_CONFIG = { - id: 'metadata', - group: [] -}; -export var BITSTREAM_METADATA_FORM_GROUP_LAYOUT = { - element: { - container: 'form-group', - label: 'col-form-label' - }, - grid: { - label: 'col-sm-3' - } -}; -export var BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_CONFIG = { - id: 'accessConditions', - groupFactory: null, -}; -export var BITSTREAM_ACCESS_CONDITIONS_FORM_ARRAY_LAYOUT = { - grid: { - group: 'form-row' - } -}; -export var BITSTREAM_FORM_ACCESS_CONDITION_TYPE_CONFIG = { - id: 'name', - label: 'submission.sections.upload.form.access-condition-label', - options: [] -}; -export var BITSTREAM_FORM_ACCESS_CONDITION_TYPE_LAYOUT = { - element: { - container: 'p-0', - label: 'col-form-label' - }, - grid: { - host: 'col-md-10' - } -}; -export var BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_CONFIG = { - id: 'startDate', - label: 'submission.sections.upload.form.from-label', - placeholder: 'submission.sections.upload.form.from-placeholder', - inline: false, - toggleIcon: 'far fa-calendar-alt', - relation: [ - { - action: 'ENABLE', - connective: 'OR', - when: [] - } - ], - required: true, - validators: { - required: null - }, - errorMessages: { - required: 'submission.sections.upload.form.date-required' - } -}; -export var BITSTREAM_FORM_ACCESS_CONDITION_START_DATE_LAYOUT = { - element: { - container: 'p-0', - label: 'col-form-label' - }, - grid: { - host: 'col-md-4' - } -}; -export var BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_CONFIG = { - id: 'endDate', - label: 'submission.sections.upload.form.until-label', - placeholder: 'submission.sections.upload.form.until-placeholder', - inline: false, - toggleIcon: 'far fa-calendar-alt', - relation: [ - { - action: 'ENABLE', - connective: 'OR', - when: [] - } - ], - required: true, - validators: { - required: null - }, - errorMessages: { - required: 'submission.sections.upload.form.date-required' - } -}; -export var BITSTREAM_FORM_ACCESS_CONDITION_END_DATE_LAYOUT = { - element: { - container: 'p-0', - label: 'col-form-label' - }, - grid: { - host: 'col-md-4' - } -}; -export var BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_CONFIG = { - id: 'groupUUID', - label: 'submission.sections.upload.form.group-label', - options: [], - relation: [ - { - action: 'ENABLE', - connective: 'OR', - when: [] - } - ], - required: true, - validators: { - required: null - }, - errorMessages: { - required: 'submission.sections.upload.form.group-required' - } -}; -export var BITSTREAM_FORM_ACCESS_CONDITION_GROUPS_LAYOUT = { - element: { - container: 'p-0', - label: 'col-form-label' - }, - grid: { - host: 'col-sm-10' - } -}; -//# sourceMappingURL=section-upload-file-edit.model.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js.map b/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js.map deleted file mode 100644 index 0cc39f354a..0000000000 --- a/src/app/submission/sections/upload/file/edit/section-upload-file-edit.model.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-upload-file-edit.model.js","sourceRoot":"","sources":["section-upload-file-edit.model.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/section-upload-file.component.js b/src/app/submission/sections/upload/file/section-upload-file.component.js deleted file mode 100644 index c5e68506ae..0000000000 --- a/src/app/submission/sections/upload/file/section-upload-file.component.js +++ /dev/null @@ -1,260 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, Input, ViewChild } from '@angular/core'; -import { BehaviorSubject } from 'rxjs'; -import { filter, first, flatMap, take } from 'rxjs/operators'; -import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; -import { SectionUploadService } from '../section-upload.service'; -import { isNotEmpty, isNotNull, isNotUndefined } from '../../../../shared/empty.util'; -import { FormService } from '../../../../shared/form/form.service'; -import { JsonPatchOperationsBuilder } from '../../../../core/json-patch/builder/json-patch-operations-builder'; -import { JsonPatchOperationPathCombiner } from '../../../../core/json-patch/builder/json-patch-operation-path-combiner'; -import { SubmissionFormsModel } from '../../../../core/config/models/config-submission-forms.model'; -import { deleteProperty } from '../../../../shared/object.util'; -import { dateToISOFormat } from '../../../../shared/date.util'; -import { SubmissionService } from '../../../submission.service'; -import { FileService } from '../../../../core/shared/file.service'; -import { HALEndpointService } from '../../../../core/shared/hal-endpoint.service'; -import { SubmissionJsonPatchOperationsService } from '../../../../core/submission/submission-json-patch-operations.service'; -import { SubmissionSectionUploadFileEditComponent } from './edit/section-upload-file-edit.component'; -/** - * This component represents a single bitstream contained in the submission - */ -var SubmissionSectionUploadFileComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} cdr - * @param {FileService} fileService - * @param {FormService} formService - * @param {HALEndpointService} halService - * @param {NgbModal} modalService - * @param {JsonPatchOperationsBuilder} operationsBuilder - * @param {SubmissionJsonPatchOperationsService} operationsService - * @param {SubmissionService} submissionService - * @param {SectionUploadService} uploadService - */ - function SubmissionSectionUploadFileComponent(cdr, fileService, formService, halService, modalService, operationsBuilder, operationsService, submissionService, uploadService) { - this.cdr = cdr; - this.fileService = fileService; - this.formService = formService; - this.halService = halService; - this.modalService = modalService; - this.operationsBuilder = operationsBuilder; - this.operationsService = operationsService; - this.submissionService = submissionService; - this.uploadService = uploadService; - /** - * A boolean representing if a submission delete operation is pending - * @type {BehaviorSubject} - */ - this.processingDelete$ = new BehaviorSubject(false); - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subscriptions = []; - this.readMode = true; - } - /** - * Retrieve bitstream's metadata - */ - SubmissionSectionUploadFileComponent.prototype.ngOnChanges = function () { - var _this = this; - if (this.availableAccessConditionOptions && this.availableAccessConditionGroups) { - // Retrieve file state - this.subscriptions.push(this.uploadService - .getFileData(this.submissionId, this.sectionId, this.fileId).pipe(filter(function (bitstream) { return isNotUndefined(bitstream); })) - .subscribe(function (bitstream) { - _this.fileData = bitstream; - })); - } - }; - /** - * Initialize instance variables - */ - SubmissionSectionUploadFileComponent.prototype.ngOnInit = function () { - this.formId = this.formService.getUniqueId(this.fileId); - this.pathCombiner = new JsonPatchOperationPathCombiner('sections', this.sectionId, 'files', this.fileIndex); - }; - /** - * Delete bitstream from submission - */ - SubmissionSectionUploadFileComponent.prototype.deleteFile = function () { - var _this = this; - this.operationsBuilder.remove(this.pathCombiner.getPath()); - this.subscriptions.push(this.operationsService.jsonPatchByResourceID(this.submissionService.getSubmissionObjectLinkName(), this.submissionId, this.pathCombiner.rootElement, this.pathCombiner.subRootElement) - .subscribe(function () { - _this.uploadService.removeUploadedFile(_this.submissionId, _this.sectionId, _this.fileId); - _this.processingDelete$.next(false); - })); - }; - /** - * Show confirmation dialog for delete - */ - SubmissionSectionUploadFileComponent.prototype.confirmDelete = function (content) { - var _this = this; - this.modalService.open(content).result.then(function (result) { - if (result === 'ok') { - _this.processingDelete$.next(true); - _this.deleteFile(); - } - }); - }; - /** - * Perform bitstream download - */ - SubmissionSectionUploadFileComponent.prototype.downloadBitstreamFile = function () { - var _this = this; - this.halService.getEndpoint('bitstreams').pipe(first()) - .subscribe(function (url) { - var fileUrl = url + "/" + _this.fileData.uuid + "/content"; - _this.fileService.downloadFile(fileUrl); - }); - }; - /** - * Save bitstream metadata - * - * @param event - * the click event emitted - */ - SubmissionSectionUploadFileComponent.prototype.saveBitstreamData = function (event) { - var _this = this; - event.preventDefault(); - // validate form - this.formService.validateAllFormFields(this.fileEditComp.formRef.formGroup); - this.subscriptions.push(this.formService.isValid(this.formId).pipe(take(1), filter(function (isValid) { return isValid; }), flatMap(function () { return _this.formService.getFormData(_this.formId); }), take(1), flatMap(function (formData) { - // collect bitstream metadata - Object.keys((formData.metadata)) - .filter(function (key) { return isNotEmpty(formData.metadata[key]); }) - .forEach(function (key) { - var metadataKey = key.replace(/_/g, '.'); - var path = "metadata/" + metadataKey; - _this.operationsBuilder.add(_this.pathCombiner.getPath(path), formData.metadata[key], true); - }); - var accessConditionsToSave = []; - formData.accessConditions - .filter(function (accessCondition) { return isNotEmpty(accessCondition); }) - .forEach(function (accessCondition) { - var accessConditionOpt; - _this.availableAccessConditionOptions - .filter(function (element) { return isNotNull(accessCondition.name) && element.name === accessCondition.name[0].value; }) - .forEach(function (element) { return accessConditionOpt = element; }); - if (accessConditionOpt) { - if (accessConditionOpt.hasStartDate !== true && accessConditionOpt.hasEndDate !== true) { - accessConditionOpt = deleteProperty(accessConditionOpt, 'hasStartDate'); - accessConditionOpt = deleteProperty(accessConditionOpt, 'hasEndDate'); - accessConditionsToSave.push(accessConditionOpt); - } - else { - accessConditionOpt = Object.assign({}, accessCondition); - accessConditionOpt.name = _this.retrieveValueFromField(accessCondition.name); - accessConditionOpt.groupUUID = _this.retrieveValueFromField(accessCondition.groupUUID); - if (accessCondition.startDate) { - var startDate = _this.retrieveValueFromField(accessCondition.startDate); - accessConditionOpt.startDate = dateToISOFormat(startDate); - accessConditionOpt = deleteProperty(accessConditionOpt, 'endDate'); - } - if (accessCondition.endDate) { - var endDate = _this.retrieveValueFromField(accessCondition.endDate); - accessConditionOpt.endDate = dateToISOFormat(endDate); - accessConditionOpt = deleteProperty(accessConditionOpt, 'startDate'); - } - accessConditionsToSave.push(accessConditionOpt); - } - } - }); - if (isNotEmpty(accessConditionsToSave)) { - _this.operationsBuilder.add(_this.pathCombiner.getPath('accessConditions'), accessConditionsToSave, true); - } - // dispatch a PATCH request to save metadata - return _this.operationsService.jsonPatchByResourceID(_this.submissionService.getSubmissionObjectLinkName(), _this.submissionId, _this.pathCombiner.rootElement, _this.pathCombiner.subRootElement); - })).subscribe(function (result) { - if (result[0].sections.upload) { - Object.keys(result[0].sections.upload.files) - .filter(function (key) { return result[0].sections.upload.files[key].uuid === _this.fileId; }) - .forEach(function (key) { return _this.uploadService.updateFileData(_this.submissionId, _this.sectionId, _this.fileId, result[0].sections.upload.files[key]); }); - } - _this.switchMode(); - })); - }; - /** - * Retrieve field value - * - * @param field - * the specified field object - */ - SubmissionSectionUploadFileComponent.prototype.retrieveValueFromField = function (field) { - var temp = Array.isArray(field) ? field[0] : field; - return (temp) ? temp.value : undefined; - }; - /** - * Switch from edit form to metadata view - */ - SubmissionSectionUploadFileComponent.prototype.switchMode = function () { - this.readMode = !this.readMode; - this.cdr.detectChanges(); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Array) - ], SubmissionSectionUploadFileComponent.prototype, "availableAccessConditionOptions", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Map) - ], SubmissionSectionUploadFileComponent.prototype, "availableAccessConditionGroups", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileComponent.prototype, "collectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Number) - ], SubmissionSectionUploadFileComponent.prototype, "collectionPolicyType", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", SubmissionFormsModel) - ], SubmissionSectionUploadFileComponent.prototype, "configMetadataForm", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileComponent.prototype, "fileId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileComponent.prototype, "fileIndex", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileComponent.prototype, "fileName", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileComponent.prototype, "sectionId", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", String) - ], SubmissionSectionUploadFileComponent.prototype, "submissionId", void 0); - tslib_1.__decorate([ - ViewChild(SubmissionSectionUploadFileEditComponent), - tslib_1.__metadata("design:type", SubmissionSectionUploadFileEditComponent) - ], SubmissionSectionUploadFileComponent.prototype, "fileEditComp", void 0); - SubmissionSectionUploadFileComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-upload-section-file', - styleUrls: ['./section-upload-file.component.scss'], - templateUrl: './section-upload-file.component.html', - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - FileService, - FormService, - HALEndpointService, - NgbModal, - JsonPatchOperationsBuilder, - SubmissionJsonPatchOperationsService, - SubmissionService, - SectionUploadService]) - ], SubmissionSectionUploadFileComponent); - return SubmissionSectionUploadFileComponent; -}()); -export { SubmissionSectionUploadFileComponent }; -//# sourceMappingURL=section-upload-file.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/section-upload-file.component.js.map b/src/app/submission/sections/upload/file/section-upload-file.component.js.map deleted file mode 100644 index a45af6fbd2..0000000000 --- a/src/app/submission/sections/upload/file/section-upload-file.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-upload-file.component.js","sourceRoot":"","sources":["section-upload-file.component.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js b/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js deleted file mode 100644 index 76aa8a8f8f..0000000000 --- a/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js +++ /dev/null @@ -1,60 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { WorkspaceitemSectionUploadFileObject } from '../../../../../core/submission/models/workspaceitem-section-upload-file.model'; -import { isNotEmpty } from '../../../../../shared/empty.util'; -import { Metadata } from '../../../../../core/shared/metadata.utils'; -/** - * This component allow to show bitstream's metadata - */ -var SubmissionSectionUploadFileViewComponent = /** @class */ (function () { - function SubmissionSectionUploadFileViewComponent() { - /** - * The [[MetadataMap]] object - * @type {MetadataMap} - */ - this.metadata = Object.create({}); - /** - * The bitstream's title key - * @type {string} - */ - this.fileTitleKey = 'Title'; - /** - * The bitstream's description key - * @type {string} - */ - this.fileDescrKey = 'Description'; - } - /** - * Initialize instance variables - */ - SubmissionSectionUploadFileViewComponent.prototype.ngOnInit = function () { - if (isNotEmpty(this.fileData.metadata)) { - this.metadata[this.fileTitleKey] = Metadata.all(this.fileData.metadata, 'dc.title'); - this.metadata[this.fileDescrKey] = Metadata.all(this.fileData.metadata, 'dc.description'); - } - }; - /** - * Gets all matching metadata in the map(s) - * - * @param metadataKey - * The metadata key(s) in scope - * @returns {MetadataValue[]} - * The matching values - */ - SubmissionSectionUploadFileViewComponent.prototype.getAllMetadataValue = function (metadataKey) { - return Metadata.all(this.metadata, metadataKey); - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", WorkspaceitemSectionUploadFileObject) - ], SubmissionSectionUploadFileViewComponent.prototype, "fileData", void 0); - SubmissionSectionUploadFileViewComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-section-upload-file-view', - templateUrl: './section-upload-file-view.component.html', - }) - ], SubmissionSectionUploadFileViewComponent); - return SubmissionSectionUploadFileViewComponent; -}()); -export { SubmissionSectionUploadFileViewComponent }; -//# sourceMappingURL=section-upload-file-view.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js.map b/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js.map deleted file mode 100644 index 29b2730000..0000000000 --- a/src/app/submission/sections/upload/file/view/section-upload-file-view.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-upload-file-view.component.js","sourceRoot":"","sources":["section-upload-file-view.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,oCAAoC,EAAE,MAAM,+EAA+E,CAAC;AACrI,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AAGrE;;GAEG;AAKH;IAJA;QAYE;;;WAGG;QACI,aAAQ,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEjD;;;WAGG;QACI,iBAAY,GAAG,OAAO,CAAC;QAE9B;;;WAGG;QACI,iBAAY,GAAG,aAAa,CAAC;IAuBtC,CAAC;IArBC;;OAEG;IACH,2DAAQ,GAAR;QACE,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YACpF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;SAC3F;IACH,CAAC;IAED;;;;;;;OAOG;IACH,sEAAmB,GAAnB,UAAoB,WAAmB;QACrC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAClD,CAAC;IAxCQ;QAAR,KAAK,EAAE;0CAAW,oCAAoC;8EAAC;IAN7C,wCAAwC;QAJpD,SAAS,CAAC;YACT,QAAQ,EAAE,wCAAwC;YAClD,WAAW,EAAE,2CAA2C;SACzD,CAAC;OACW,wCAAwC,CA+CpD;IAAD,+CAAC;CAAA,AA/CD,IA+CC;SA/CY,wCAAwC"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/section-upload.component.js b/src/app/submission/sections/upload/section-upload.component.js deleted file mode 100644 index 07c5765774..0000000000 --- a/src/app/submission/sections/upload/section-upload.component.js +++ /dev/null @@ -1,207 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, Inject } from '@angular/core'; -import { combineLatest } from 'rxjs'; -import { distinctUntilChanged, filter, find, flatMap, map, reduce, take, tap } from 'rxjs/operators'; -import { SectionModelComponent } from '../models/section.model'; -import { hasValue, isNotEmpty, isNotUndefined, isUndefined } from '../../../shared/empty.util'; -import { SectionUploadService } from './section-upload.service'; -import { CollectionDataService } from '../../../core/data/collection-data.service'; -import { GroupEpersonService } from '../../../core/eperson/group-eperson.service'; -import { SubmissionUploadsConfigService } from '../../../core/config/submission-uploads-config.service'; -import { SectionsType } from '../sections-type'; -import { renderSectionFor } from '../sections-decorator'; -import { AlertType } from '../../../shared/alert/aletr-type'; -import { SectionsService } from '../sections.service'; -import { SubmissionService } from '../../submission.service'; -export var POLICY_DEFAULT_NO_LIST = 1; // Banner1 -export var POLICY_DEFAULT_WITH_LIST = 2; // Banner2 -/** - * This component represents a section that contains submission's bitstreams - */ -var SubmissionSectionUploadComponent = /** @class */ (function (_super) { - tslib_1.__extends(SubmissionSectionUploadComponent, _super); - /** - * Initialize instance variables - * - * @param {SectionUploadService} bitstreamService - * @param {ChangeDetectorRef} changeDetectorRef - * @param {CollectionDataService} collectionDataService - * @param {GroupEpersonService} groupService - * @param {SectionsService} sectionService - * @param {SubmissionService} submissionService - * @param {SubmissionUploadsConfigService} uploadsConfigService - * @param {SectionDataObject} injectedSectionData - * @param {string} injectedSubmissionId - */ - function SubmissionSectionUploadComponent(bitstreamService, changeDetectorRef, collectionDataService, groupService, sectionService, submissionService, uploadsConfigService, injectedSectionData, injectedSubmissionId) { - var _this = _super.call(this, undefined, injectedSectionData, injectedSubmissionId) || this; - _this.bitstreamService = bitstreamService; - _this.changeDetectorRef = changeDetectorRef; - _this.collectionDataService = collectionDataService; - _this.groupService = groupService; - _this.sectionService = sectionService; - _this.submissionService = submissionService; - _this.uploadsConfigService = uploadsConfigService; - _this.injectedSectionData = injectedSectionData; - _this.injectedSubmissionId = injectedSubmissionId; - /** - * The AlertType enumeration - * @type {AlertType} - */ - _this.AlertTypeEnum = AlertType; - /** - * The array containing the keys of file list array - * @type {Array} - */ - _this.fileIndexes = []; - /** - * The file list - * @type {Array} - */ - _this.fileList = []; - /** - * The array containing the name of the files - * @type {Array} - */ - _this.fileNames = []; - /** - * Default access conditions of this collection - * @type {Array} - */ - _this.collectionDefaultAccessConditions = []; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - _this.subs = []; - return _this; - } - /** - * Initialize all instance variables and retrieve collection default access conditions - */ - SubmissionSectionUploadComponent.prototype.onSectionInit = function () { - var _this = this; - var config$ = this.uploadsConfigService.getConfigByHref(this.sectionData.config).pipe(map(function (config) { return config.payload; })); - // retrieve configuration for the bitstream's metadata form - this.configMetadataForm$ = config$.pipe(take(1), map(function (config) { return config.metadata; })); - this.subs.push(this.submissionService.getSubmissionObject(this.submissionId).pipe(filter(function (submissionObject) { return isNotUndefined(submissionObject) && !submissionObject.isLoading; }), filter(function (submissionObject) { return isUndefined(_this.collectionId) || _this.collectionId !== submissionObject.collection; }), tap(function (submissionObject) { return _this.collectionId = submissionObject.collection; }), flatMap(function (submissionObject) { return _this.collectionDataService.findById(submissionObject.collection); }), find(function (rd) { return isNotUndefined((rd.payload)); }), tap(function (collectionRemoteData) { return _this.collectionName = collectionRemoteData.payload.name; }), flatMap(function (collectionRemoteData) { - return _this.collectionDataService.findByHref(collectionRemoteData.payload._links.defaultAccessConditions); - }), find(function (defaultAccessConditionsRemoteData) { - return defaultAccessConditionsRemoteData.hasSucceeded; - }), tap(function (defaultAccessConditionsRemoteData) { - if (isNotEmpty(defaultAccessConditionsRemoteData.payload)) { - _this.collectionDefaultAccessConditions = Array.isArray(defaultAccessConditionsRemoteData.payload) - ? defaultAccessConditionsRemoteData.payload : [defaultAccessConditionsRemoteData.payload]; - } - }), flatMap(function () { return config$; }), take(1), flatMap(function (config) { - _this.availableAccessConditionOptions = isNotEmpty(config.accessConditionOptions) ? config.accessConditionOptions : []; - _this.collectionPolicyType = _this.availableAccessConditionOptions.length > 0 - ? POLICY_DEFAULT_WITH_LIST - : POLICY_DEFAULT_NO_LIST; - _this.availableGroups = new Map(); - var mapGroups$ = []; - // Retrieve Groups for accessCondition Policies - _this.availableAccessConditionOptions.forEach(function (accessCondition) { - if (accessCondition.hasEndDate === true || accessCondition.hasStartDate === true) { - if (accessCondition.groupUUID) { - mapGroups$.push(_this.groupService.findById(accessCondition.groupUUID).pipe(find(function (rd) { return !rd.isResponsePending && rd.hasSucceeded; }), map(function (rd) { return ({ - accessCondition: accessCondition.name, - groups: [rd.payload] - }); }))); - } - else if (accessCondition.selectGroupUUID) { - mapGroups$.push(_this.groupService.findById(accessCondition.selectGroupUUID).pipe(find(function (rd) { return !rd.isResponsePending && rd.hasSucceeded; }), flatMap(function (group) { return group.payload.groups; }), find(function (rd) { return !rd.isResponsePending && rd.hasSucceeded; }), map(function (rd) { return ({ - accessCondition: accessCondition.name, - groups: rd.payload.page - }); }))); - } - } - }); - return mapGroups$; - }), flatMap(function (entry) { return entry; }), reduce(function (acc, entry) { - acc.push(entry); - return acc; - }, [])).subscribe(function (entries) { - entries.forEach(function (entry) { - _this.availableGroups.set(entry.accessCondition, entry.groups); - }); - _this.changeDetectorRef.detectChanges(); - }), - // retrieve submission's bitstreams from state - combineLatest(this.configMetadataForm$, this.bitstreamService.getUploadedFileList(this.submissionId, this.sectionData.id)).pipe(filter(function (_a) { - var configMetadataForm = _a[0], fileList = _a[1]; - return isNotEmpty(configMetadataForm) && isNotUndefined(fileList); - }), distinctUntilChanged()) - .subscribe(function (_a) { - var configMetadataForm = _a[0], fileList = _a[1]; - _this.fileList = []; - _this.fileIndexes = []; - _this.fileNames = []; - _this.changeDetectorRef.detectChanges(); - if (isNotUndefined(fileList) && fileList.length > 0) { - fileList.forEach(function (file) { - _this.fileList.push(file); - _this.fileIndexes.push(file.uuid); - _this.fileNames.push(_this.getFileName(configMetadataForm, file)); - }); - } - _this.changeDetectorRef.detectChanges(); - })); - }; - /** - * Return file name from metadata - * - * @param configMetadataForm - * the bitstream's form configuration - * @param fileData - * the file metadata - */ - SubmissionSectionUploadComponent.prototype.getFileName = function (configMetadataForm, fileData) { - var metadataName = configMetadataForm.rows[0].fields[0].selectableMetadata[0].metadata; - var title; - if (isNotEmpty(fileData.metadata) && isNotEmpty(fileData.metadata[metadataName])) { - title = fileData.metadata[metadataName][0].display; - } - else { - title = fileData.uuid; - } - return title; - }; - /** - * Get section status - * - * @return Observable - * the section status - */ - SubmissionSectionUploadComponent.prototype.getSectionStatus = function () { - return this.bitstreamService.getUploadedFileList(this.submissionId, this.sectionData.id).pipe(map(function (fileList) { return (isNotUndefined(fileList) && fileList.length > 0); })); - }; - /** - * Method provided by Angular. Invoked when the instance is destroyed. - */ - SubmissionSectionUploadComponent.prototype.onSectionDestroy = function () { - this.subs - .filter(function (subscription) { return hasValue(subscription); }) - .forEach(function (subscription) { return subscription.unsubscribe(); }); - }; - SubmissionSectionUploadComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-section-upload', - styleUrls: ['./section-upload.component.scss'], - templateUrl: './section-upload.component.html', - }), - renderSectionFor(SectionsType.Upload), - tslib_1.__param(7, Inject('sectionDataProvider')), - tslib_1.__param(8, Inject('submissionIdProvider')), - tslib_1.__metadata("design:paramtypes", [SectionUploadService, - ChangeDetectorRef, - CollectionDataService, - GroupEpersonService, - SectionsService, - SubmissionService, - SubmissionUploadsConfigService, Object, String]) - ], SubmissionSectionUploadComponent); - return SubmissionSectionUploadComponent; -}(SectionModelComponent)); -export { SubmissionSectionUploadComponent }; -//# sourceMappingURL=section-upload.component.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/section-upload.component.js.map b/src/app/submission/sections/upload/section-upload.component.js.map deleted file mode 100644 index 7b8a53c7c9..0000000000 --- a/src/app/submission/sections/upload/section-upload.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-upload.component.js","sourceRoot":"","sources":["section-upload.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAErE,OAAO,EAAE,aAAa,EAA4B,MAAM,MAAM,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAErG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,EAAE,8BAA8B,EAAE,MAAM,wDAAwD,CAAC;AAGxG,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAM7D,MAAM,CAAC,IAAM,sBAAsB,GAAG,CAAC,CAAC,CAAC,UAAU;AACnD,MAAM,CAAC,IAAM,wBAAwB,GAAG,CAAC,CAAC,CAAC,UAAU;AAOrD;;GAEG;AAOH;IAAsD,4DAAqB;IAmEzE;;;;;;;;;;;;OAYG;IACH,0CAAoB,gBAAsC,EACtC,iBAAoC,EACpC,qBAA4C,EAC5C,YAAiC,EAC/B,cAA+B,EACjC,iBAAoC,EACpC,oBAAoD,EACtB,mBAAsC,EACrC,oBAA4B;QAR/E,YASE,kBAAM,SAAS,EAAE,mBAAmB,EAAE,oBAAoB,CAAC,SAC5D;QAVmB,sBAAgB,GAAhB,gBAAgB,CAAsB;QACtC,uBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,2BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,kBAAY,GAAZ,YAAY,CAAqB;QAC/B,oBAAc,GAAd,cAAc,CAAiB;QACjC,uBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,0BAAoB,GAApB,oBAAoB,CAAgC;QACtB,yBAAmB,GAAnB,mBAAmB,CAAmB;QACrC,0BAAoB,GAApB,oBAAoB,CAAQ;QAtF/E;;;WAGG;QACI,mBAAa,GAAG,SAAS,CAAC;QAEjC;;;WAGG;QACI,iBAAW,GAAa,EAAE,CAAC;QAElC;;;WAGG;QACI,cAAQ,GAAU,EAAE,CAAC;QAE5B;;;WAGG;QACI,eAAS,GAAa,EAAE,CAAC;QAQhC;;;WAGG;QACI,uCAAiC,GAAU,EAAE,CAAC;QAyBrD;;;WAGG;QACO,UAAI,GAAmB,EAAE,CAAC;;IAyBpC,CAAC;IAED;;OAEG;IACH,wDAAa,GAAb;QAAA,iBAyGC;QAxGC,IAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CACrF,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,OAAO,EAAd,CAAc,CAAC,CAAC,CAAC;QAEnC,2DAA2D;QAC3D,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,IAAI,CACrC,IAAI,CAAC,CAAC,CAAC,EACP,GAAG,CAAC,UAAC,MAA8B,IAAK,OAAA,MAAM,CAAC,QAAQ,EAAf,CAAe,CAAC,CAAC,CAAC;QAE5D,IAAI,CAAC,IAAI,CAAC,IAAI,CACZ,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAChE,MAAM,CAAC,UAAC,gBAAuC,IAAK,OAAA,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAA/D,CAA+D,CAAC,EACpH,MAAM,CAAC,UAAC,gBAAuC,IAAK,OAAA,WAAW,CAAC,KAAI,CAAC,YAAY,CAAC,IAAI,KAAI,CAAC,YAAY,KAAK,gBAAgB,CAAC,UAAU,EAAnF,CAAmF,CAAC,EACxI,GAAG,CAAC,UAAC,gBAAuC,IAAK,OAAA,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC,UAAU,EAA/C,CAA+C,CAAC,EACjG,OAAO,CAAC,UAAC,gBAAuC,IAAK,OAAA,KAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAhE,CAAgE,CAAC,EACtH,IAAI,CAAC,UAAC,EAA0B,IAAK,OAAA,cAAc,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAA5B,CAA4B,CAAC,EAClE,GAAG,CAAC,UAAC,oBAA4C,IAAK,OAAA,KAAI,CAAC,cAAc,GAAG,oBAAoB,CAAC,OAAO,CAAC,IAAI,EAAvD,CAAuD,CAAC,EAC9G,OAAO,CAAC,UAAC,oBAA4C;YACnD,OAAO,KAAI,CAAC,qBAAqB,CAAC,UAAU,CACzC,oBAAoB,CAAC,OAAe,CAAC,MAAM,CAAC,uBAAuB,CACrE,CAAC;QACJ,CAAC,CAAC,EACF,IAAI,CAAC,UAAC,iCAA6D;YACjE,OAAA,iCAAiC,CAAC,YAAY;QAA9C,CAA8C,CAAC,EACjD,GAAG,CAAC,UAAC,iCAA6D;YAChE,IAAI,UAAU,CAAC,iCAAiC,CAAC,OAAO,CAAC,EAAE;gBACzD,KAAI,CAAC,iCAAiC,GAAG,KAAK,CAAC,OAAO,CAAC,iCAAiC,CAAC,OAAO,CAAC;oBAC/F,CAAC,CAAC,iCAAiC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,OAAO,CAAC,CAAC;aAC7F;QACH,CAAC,CAAC,EACF,OAAO,CAAC,cAAM,OAAA,OAAO,EAAP,CAAO,CAAC,EACtB,IAAI,CAAC,CAAC,CAAC,EACP,OAAO,CAAC,UAAC,MAA8B;YACrC,KAAI,CAAC,+BAA+B,GAAG,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;YAEtH,KAAI,CAAC,oBAAoB,GAAG,KAAI,CAAC,+BAA+B,CAAC,MAAM,GAAG,CAAC;gBACzE,CAAC,CAAC,wBAAwB;gBAC1B,CAAC,CAAC,sBAAsB,CAAC;YAE3B,KAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;YACjC,IAAM,UAAU,GAAqD,EAAE,CAAC;YACxE,+CAA+C;YAC/C,KAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,UAAC,eAAsC;gBAClF,IAAI,eAAe,CAAC,UAAU,KAAK,IAAI,IAAI,eAAe,CAAC,YAAY,KAAK,IAAI,EAAE;oBAChF,IAAI,eAAe,CAAC,SAAS,EAAE;wBAC7B,UAAU,CAAC,IAAI,CACb,KAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,IAAI,CACxD,IAAI,CAAC,UAAC,EAAqB,IAAK,OAAA,CAAC,EAAE,CAAC,iBAAiB,IAAI,EAAE,CAAC,YAAY,EAAxC,CAAwC,CAAC,EACzE,GAAG,CAAC,UAAC,EAAqB,IAAK,OAAA,CAAC;4BAC9B,eAAe,EAAE,eAAe,CAAC,IAAI;4BACrC,MAAM,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC;yBACa,CAAA,EAHJ,CAGI,CAAC,CAAC,CACxC,CAAC;qBACH;yBAAM,IAAI,eAAe,CAAC,eAAe,EAAE;wBAC1C,UAAU,CAAC,IAAI,CACb,KAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,IAAI,CAC9D,IAAI,CAAC,UAAC,EAAqB,IAAK,OAAA,CAAC,EAAE,CAAC,iBAAiB,IAAI,EAAE,CAAC,YAAY,EAAxC,CAAwC,CAAC,EACzE,OAAO,CAAC,UAAC,KAAwB,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,MAAM,EAApB,CAAoB,CAAC,EAC3D,IAAI,CAAC,UAAC,EAAoC,IAAK,OAAA,CAAC,EAAE,CAAC,iBAAiB,IAAI,EAAE,CAAC,YAAY,EAAxC,CAAwC,CAAC,EACxF,GAAG,CAAC,UAAC,EAAoC,IAAK,OAAA,CAAC;4BAC7C,eAAe,EAAE,eAAe,CAAC,IAAI;4BACrC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI;yBACU,CAAA,EAHW,CAGX,CAAC,CACrC,CAAC,CAAC;qBACN;iBACF;YACH,CAAC,CAAC,CAAC;YACH,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC,EACF,OAAO,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,EAAL,CAAK,CAAC,EACzB,MAAM,CAAC,UAAC,GAAU,EAAE,KAAoC;YACtD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CACP,CAAC,SAAS,CAAC,UAAC,OAAwC;YACnD,OAAO,CAAC,OAAO,CAAC,UAAC,KAAoC;gBACnD,KAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;YACH,KAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;QACzC,CAAC,CAAC;QAEF,8CAA8C;QAC9C,aAAa,CAAC,IAAI,CAAC,mBAAmB,EACpC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CACvF,MAAM,CAAC,UAAC,EAA6D;gBAA5D,0BAAkB,EAAE,gBAAQ;YACnC,OAAO,UAAU,CAAC,kBAAkB,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAA;QACnE,CAAC,CAAC,EACF,oBAAoB,EAAE,CAAC;aACtB,SAAS,CAAC,UAAC,EAA6D;gBAA5D,0BAAkB,EAAE,gBAAQ;YACrC,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACtB,KAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,KAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;YACvC,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnD,QAAQ,CAAC,OAAO,CAAC,UAAC,IAAI;oBACpB,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACzB,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjC,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC;gBAClE,CAAC,CAAC,CAAC;aACJ;YAED,KAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;QACzC,CAAC,CACF,CACJ,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,sDAAW,GAAnB,UAAoB,kBAAwC,EAAE,QAAa;QACzE,IAAM,YAAY,GAAW,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACjG,IAAI,KAAa,CAAC;QAClB,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE;YAChF,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;SACpD;aAAM;YACL,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC;SACvB;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACO,2DAAgB,GAA1B;QACE,OAAO,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,IAAI,CAC3F,GAAG,CAAC,UAAC,QAAe,IAAK,OAAA,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAjD,CAAiD,CAAC,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,2DAAgB,GAAhB;QACE,IAAI,CAAC,IAAI;aACN,MAAM,CAAC,UAAC,YAAY,IAAK,OAAA,QAAQ,CAAC,YAAY,CAAC,EAAtB,CAAsB,CAAC;aAChD,OAAO,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,WAAW,EAAE,EAA1B,CAA0B,CAAC,CAAC;IAC3D,CAAC;IAhPU,gCAAgC;QAN5C,SAAS,CAAC;YACT,QAAQ,EAAE,8BAA8B;YACxC,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,WAAW,EAAE,iCAAiC;SAC/C,CAAC;QACD,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC;QAwFvB,mBAAA,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAC7B,mBAAA,MAAM,CAAC,sBAAsB,CAAC,CAAA;iDARL,oBAAoB;YACnB,iBAAiB;YACb,qBAAqB;YAC9B,mBAAmB;YACf,eAAe;YACd,iBAAiB;YACd,8BAA8B;OAtF7D,gCAAgC,CAkP5C;IAAD,uCAAC;CAAA,AAlPD,CAAsD,qBAAqB,GAkP1E;SAlPY,gCAAgC"} \ No newline at end of file diff --git a/src/app/submission/sections/upload/section-upload.service.js b/src/app/submission/sections/upload/section-upload.service.js deleted file mode 100644 index e2b740509a..0000000000 --- a/src/app/submission/sections/upload/section-upload.service.js +++ /dev/null @@ -1,119 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { distinctUntilChanged, filter, map } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; -import { DeleteUploadedFileAction, EditFileDataAction, NewUploadedFileAction } from '../../objects/submission-objects.actions'; -import { submissionUploadedFileFromUuidSelector, submissionUploadedFilesFromIdSelector } from '../../selectors'; -import { isUndefined } from '../../../shared/empty.util'; -/** - * A service that provides methods to handle submission's bitstream state. - */ -var SectionUploadService = /** @class */ (function () { - /** - * Initialize service variables - * - * @param {Store} store - */ - function SectionUploadService(store) { - this.store = store; - } - /** - * Return submission's bitstream list from state - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @returns {Array} - * Returns submission's bitstream list - */ - SectionUploadService.prototype.getUploadedFileList = function (submissionId, sectionId) { - return this.store.select(submissionUploadedFilesFromIdSelector(submissionId, sectionId)).pipe(map(function (state) { return state; }), distinctUntilChanged()); - }; - /** - * Return bitstream's metadata - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param fileUUID - * The bitstream UUID - * @returns {Observable} - * Emits bitstream's metadata - */ - SectionUploadService.prototype.getFileData = function (submissionId, sectionId, fileUUID) { - return this.store.select(submissionUploadedFilesFromIdSelector(submissionId, sectionId)).pipe(filter(function (state) { return !isUndefined(state); }), map(function (state) { - var fileState; - Object.keys(state) - .filter(function (key) { return state[key].uuid === fileUUID; }) - .forEach(function (key) { return fileState = state[key]; }); - return fileState; - }), distinctUntilChanged()); - }; - /** - * Return bitstream's default policies - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param fileUUID - * The bitstream UUID - * @returns {Observable} - * Emits bitstream's default policies - */ - SectionUploadService.prototype.getDefaultPolicies = function (submissionId, sectionId, fileUUID) { - return this.store.select(submissionUploadedFileFromUuidSelector(submissionId, sectionId, fileUUID)).pipe(map(function (state) { return state; }), distinctUntilChanged()); - }; - /** - * Add a new bitstream to the state - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param fileUUID - * The bitstream UUID - * @param data - * The [[WorkspaceitemSectionUploadFileObject]] object - */ - SectionUploadService.prototype.addUploadedFile = function (submissionId, sectionId, fileUUID, data) { - this.store.dispatch(new NewUploadedFileAction(submissionId, sectionId, fileUUID, data)); - }; - /** - * Update bitstream metadata into the state - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param fileUUID - * The bitstream UUID - * @param data - * The [[WorkspaceitemSectionUploadFileObject]] object - */ - SectionUploadService.prototype.updateFileData = function (submissionId, sectionId, fileUUID, data) { - this.store.dispatch(new EditFileDataAction(submissionId, sectionId, fileUUID, data)); - }; - /** - * Remove bitstream from the state - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param fileUUID - * The bitstream UUID - */ - SectionUploadService.prototype.removeUploadedFile = function (submissionId, sectionId, fileUUID) { - this.store.dispatch(new DeleteUploadedFileAction(submissionId, sectionId, fileUUID)); - }; - SectionUploadService = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [Store]) - ], SectionUploadService); - return SectionUploadService; -}()); -export { SectionUploadService }; -//# sourceMappingURL=section-upload.service.js.map \ No newline at end of file diff --git a/src/app/submission/sections/upload/section-upload.service.js.map b/src/app/submission/sections/upload/section-upload.service.js.map deleted file mode 100644 index 0fc84f6554..0000000000 --- a/src/app/submission/sections/upload/section-upload.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"section-upload.service.js","sourceRoot":"","sources":["section-upload.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/selectors.js b/src/app/submission/selectors.js deleted file mode 100644 index b3e4548de9..0000000000 --- a/src/app/submission/selectors.js +++ /dev/null @@ -1,57 +0,0 @@ -import { createSelector } from '@ngrx/store'; -import { hasValue } from '../shared/empty.util'; -import { submissionSelector } from './submission.reducers'; -/** - * Export a function to return a subset of the state by key - */ -export function keySelector(parentSelector, subState, key) { - return createSelector(parentSelector, function (state) { - if (hasValue(state) && hasValue(state[subState])) { - return state[subState][key]; - } - else { - return undefined; - } - }); -} -/** - * Export a function to return a subset of the state - */ -export function subStateSelector(parentSelector, subState) { - return createSelector(parentSelector, function (state) { - if (hasValue(state) && hasValue(state[subState])) { - return state[subState]; - } - else { - return undefined; - } - }); -} -export function submissionObjectFromIdSelector(submissionId) { - return keySelector(submissionSelector, 'objects', submissionId); -} -export function submissionObjectSectionsFromIdSelector(submissionId) { - var submissionObjectSelector = submissionObjectFromIdSelector(submissionId); - return subStateSelector(submissionObjectSelector, 'sections'); -} -export function submissionUploadedFilesFromIdSelector(submissionId, sectionId) { - var sectionDataSelector = submissionSectionDataFromIdSelector(submissionId, sectionId); - return subStateSelector(sectionDataSelector, 'files'); -} -export function submissionUploadedFileFromUuidSelector(submissionId, sectionId, uuid) { - var filesSelector = submissionSectionDataFromIdSelector(submissionId, sectionId); - return keySelector(filesSelector, 'files', uuid); -} -export function submissionSectionFromIdSelector(submissionId, sectionId) { - var submissionIdSelector = submissionObjectFromIdSelector(submissionId); - return keySelector(submissionIdSelector, 'sections', sectionId); -} -export function submissionSectionDataFromIdSelector(submissionId, sectionId) { - var submissionIdSelector = submissionSectionFromIdSelector(submissionId, sectionId); - return subStateSelector(submissionIdSelector, 'data'); -} -export function submissionSectionErrorsFromIdSelector(submissionId, sectionId) { - var submissionIdSelector = submissionSectionFromIdSelector(submissionId, sectionId); - return subStateSelector(submissionIdSelector, 'errors'); -} -//# sourceMappingURL=selectors.js.map \ No newline at end of file diff --git a/src/app/submission/selectors.js.map b/src/app/submission/selectors.js.map deleted file mode 100644 index 8c321c9ca9..0000000000 --- a/src/app/submission/selectors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"selectors.js","sourceRoot":"","sources":["selectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAA8B,MAAM,aAAa,CAAC;AAEzE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAmB,MAAM,uBAAuB,CAAC;AAG5E;;GAEG;AACH,MAAM,sBAA4B,cAAkC,EAAE,QAAgB,EAAE,GAAW;IACjG,OAAO,cAAc,CAAC,cAAc,EAAE,UAAC,KAAQ;QAC7C,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE;YAChD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;SAC7B;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,2BAAiC,cAAkC,EAAE,QAAgB;IACzF,OAAO,cAAc,CAAC,cAAc,EAAE,UAAC,KAAQ;QAC7C,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE;YAChD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC;SACxB;aAAM;YACL,OAAO,SAAS,CAAC;SAClB;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,yCAAyC,YAAoB;IACjE,OAAO,WAAW,CAAyC,kBAAkB,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AAC1G,CAAC;AAED,MAAM,iDAAiD,YAAoB;IACzE,IAAM,wBAAwB,GAAG,8BAA8B,CAAC,YAAY,CAAC,CAAC;IAC9E,OAAO,gBAAgB,CAAyC,wBAAwB,EAAE,UAAU,CAAC,CAAC;AACxG,CAAC;AAED,MAAM,gDAAgD,YAAoB,EAAE,SAAiB;IAC3F,IAAM,mBAAmB,GAAG,mCAAmC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACzF,OAAO,gBAAgB,CAAyC,mBAAmB,EAAE,OAAO,CAAC,CAAC;AAChG,CAAC;AAED,MAAM,iDAAiD,YAAoB,EAAE,SAAiB,EAAE,IAAY;IAC1G,IAAM,aAAa,GAAI,mCAAmC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACpF,OAAO,WAAW,CAAuB,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,0CAA0C,YAAoB,EAAE,SAAiB;IACrF,IAAM,oBAAoB,GAAI,8BAA8B,CAAC,YAAY,CAAC,CAAC;IAC3E,OAAO,WAAW,CAAyC,oBAAoB,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;AAC1G,CAAC;AAED,MAAM,8CAA8C,YAAoB,EAAE,SAAiB;IACzF,IAAM,oBAAoB,GAAI,+BAA+B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACvF,OAAO,gBAAgB,CAA2C,oBAAoB,EAAE,MAAM,CAAC,CAAC;AAClG,CAAC;AAED,MAAM,gDAAgD,YAAoB,EAAE,SAAiB;IAC3F,IAAM,oBAAoB,GAAI,+BAA+B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACvF,OAAO,gBAAgB,CAA2C,oBAAoB,EAAE,QAAQ,CAAC,CAAC;AACpG,CAAC"} \ No newline at end of file diff --git a/src/app/submission/server-submission.service.js b/src/app/submission/server-submission.service.js deleted file mode 100644 index 56aa61a376..0000000000 --- a/src/app/submission/server-submission.service.js +++ /dev/null @@ -1,52 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { of as observableOf } from 'rxjs'; -import { SubmissionService } from './submission.service'; -/** - * Instance of SubmissionService used on SSR. - */ -var ServerSubmissionService = /** @class */ (function (_super) { - tslib_1.__extends(ServerSubmissionService, _super); - function ServerSubmissionService() { - return _super !== null && _super.apply(this, arguments) || this; - } - /** - * Override createSubmission parent method to return an empty observable - * - * @return Observable - * observable of SubmissionObject - */ - ServerSubmissionService.prototype.createSubmission = function () { - return observableOf(null); - }; - /** - * Override retrieveSubmission parent method to return an empty observable - * - * @return Observable - * observable of SubmissionObject - */ - ServerSubmissionService.prototype.retrieveSubmission = function (submissionId) { - return observableOf(null); - }; - /** - * Override startAutoSave parent method and return without doing anything - * - * @param submissionId - * The submission id - */ - ServerSubmissionService.prototype.startAutoSave = function (submissionId) { - return; - }; - /** - * Override startAutoSave parent method and return without doing anything - */ - ServerSubmissionService.prototype.stopAutoSave = function () { - return; - }; - ServerSubmissionService = tslib_1.__decorate([ - Injectable() - ], ServerSubmissionService); - return ServerSubmissionService; -}(SubmissionService)); -export { ServerSubmissionService }; -//# sourceMappingURL=server-submission.service.js.map \ No newline at end of file diff --git a/src/app/submission/server-submission.service.js.map b/src/app/submission/server-submission.service.js.map deleted file mode 100644 index e3d78e3367..0000000000 --- a/src/app/submission/server-submission.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-submission.service.js","sourceRoot":"","sources":["server-submission.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAc,EAAE,IAAI,YAAY,EAAE,MAAM,MAAM,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAIzD;;GAEG;AAEH;IAA6C,mDAAiB;IAA9D;;IAsCA,CAAC;IApCC;;;;;OAKG;IACH,kDAAgB,GAAhB;QACE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,oDAAkB,GAAlB,UAAmB,YAAY;QAC7B,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,+CAAa,GAAb,UAAc,YAAY;QACxB,OAAO;IACT,CAAC;IAED;;OAEG;IACH,8CAAY,GAAZ;QACE,OAAO;IACT,CAAC;IArCU,uBAAuB;QADnC,UAAU,EAAE;OACA,uBAAuB,CAsCnC;IAAD,8BAAC;CAAA,AAtCD,CAA6C,iBAAiB,GAsC7D;SAtCY,uBAAuB"} \ No newline at end of file diff --git a/src/app/submission/submission.effects.js b/src/app/submission/submission.effects.js deleted file mode 100644 index 27706d2fb2..0000000000 --- a/src/app/submission/submission.effects.js +++ /dev/null @@ -1,5 +0,0 @@ -import { SubmissionObjectEffects } from './objects/submission-objects.effects'; -export var submissionEffects = [ - SubmissionObjectEffects -]; -//# sourceMappingURL=submission.effects.js.map \ No newline at end of file diff --git a/src/app/submission/submission.effects.js.map b/src/app/submission/submission.effects.js.map deleted file mode 100644 index 71137addc9..0000000000 --- a/src/app/submission/submission.effects.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission.effects.js","sourceRoot":"","sources":["submission.effects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC/B,uBAAuB;CACxB,CAAC"} \ No newline at end of file diff --git a/src/app/submission/submission.module.js b/src/app/submission/submission.module.js deleted file mode 100644 index fa7dac0b7c..0000000000 --- a/src/app/submission/submission.module.js +++ /dev/null @@ -1,88 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { TranslateModule } from '@ngx-translate/core'; -import { CoreModule } from '../core/core.module'; -import { SharedModule } from '../shared/shared.module'; -import { SubmissionSectionformComponent } from './sections/form/section-form.component'; -import { SectionsDirective } from './sections/sections.directive'; -import { SectionsService } from './sections/sections.service'; -import { SubmissionFormCollectionComponent } from './form/collection/submission-form-collection.component'; -import { SubmissionFormFooterComponent } from './form/footer/submission-form-footer.component'; -import { SubmissionFormComponent } from './form/submission-form.component'; -import { SubmissionFormSectionAddComponent } from './form/section-add/submission-form-section-add.component'; -import { SubmissionSectionContainerComponent } from './sections/container/section-container.component'; -import { CommonModule } from '@angular/common'; -import { StoreModule } from '@ngrx/store'; -import { EffectsModule } from '@ngrx/effects'; -import { submissionReducers } from './submission.reducers'; -import { submissionEffects } from './submission.effects'; -import { SubmissionSectionUploadComponent } from './sections/upload/section-upload.component'; -import { SectionUploadService } from './sections/upload/section-upload.service'; -import { SubmissionUploadFilesComponent } from './form/submission-upload-files/submission-upload-files.component'; -import { SubmissionSectionLicenseComponent } from './sections/license/section-license.component'; -import { SubmissionUploadsConfigService } from '../core/config/submission-uploads-config.service'; -import { SubmissionEditComponent } from './edit/submission-edit.component'; -import { SubmissionSectionUploadFileComponent } from './sections/upload/file/section-upload-file.component'; -import { SubmissionSectionUploadFileEditComponent } from './sections/upload/file/edit/section-upload-file-edit.component'; -import { SubmissionSectionUploadFileViewComponent } from './sections/upload/file/view/section-upload-file-view.component'; -import { SubmissionSectionUploadAccessConditionsComponent } from './sections/upload/accessConditions/submission-section-upload-access-conditions.component'; -import { SubmissionSubmitComponent } from './submit/submission-submit.component'; -var SubmissionModule = /** @class */ (function () { - /** - * This module handles all components that are necessary for the submission process - */ - function SubmissionModule() { - } - SubmissionModule = tslib_1.__decorate([ - NgModule({ - imports: [ - CommonModule, - CoreModule, - SharedModule, - StoreModule.forFeature('submission', submissionReducers, {}), - EffectsModule.forFeature(submissionEffects), - TranslateModule - ], - declarations: [ - SubmissionSectionUploadAccessConditionsComponent, - SubmissionSectionUploadComponent, - SubmissionSectionformComponent, - SubmissionSectionLicenseComponent, - SectionsDirective, - SubmissionSectionContainerComponent, - SubmissionEditComponent, - SubmissionFormSectionAddComponent, - SubmissionFormCollectionComponent, - SubmissionFormComponent, - SubmissionFormFooterComponent, - SubmissionSubmitComponent, - SubmissionUploadFilesComponent, - SubmissionSectionUploadFileComponent, - SubmissionSectionUploadFileEditComponent, - SubmissionSectionUploadFileViewComponent - ], - entryComponents: [ - SubmissionSectionUploadComponent, - SubmissionSectionformComponent, - SubmissionSectionLicenseComponent, - SubmissionSectionContainerComponent - ], - exports: [ - SubmissionEditComponent, - SubmissionFormComponent, - SubmissionSubmitComponent - ], - providers: [ - SectionUploadService, - SectionsService, - SubmissionUploadsConfigService - ] - }) - /** - * This module handles all components that are necessary for the submission process - */ - ], SubmissionModule); - return SubmissionModule; -}()); -export { SubmissionModule }; -//# sourceMappingURL=submission.module.js.map \ No newline at end of file diff --git a/src/app/submission/submission.module.js.map b/src/app/submission/submission.module.js.map deleted file mode 100644 index 4a421ea1c2..0000000000 --- a/src/app/submission/submission.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission.module.js","sourceRoot":"","sources":["submission.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,iCAAiC,EAAE,MAAM,wDAAwD,CAAC;AAC3G,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,iCAAiC,EAAE,MAAM,0DAA0D,CAAC;AAC7G,OAAO,EAAE,mCAAmC,EAAE,MAAM,kDAAkD,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gCAAgC,EAAE,MAAM,4CAA4C,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,8BAA8B,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,EAAE,iCAAiC,EAAE,MAAM,8CAA8C,CAAC;AACjG,OAAO,EAAE,8BAA8B,EAAE,MAAM,kDAAkD,CAAC;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,oCAAoC,EAAE,MAAM,sDAAsD,CAAC;AAC5G,OAAO,EAAE,wCAAwC,EAAE,MAAM,gEAAgE,CAAC;AAC1H,OAAO,EAAE,wCAAwC,EAAE,MAAM,gEAAgE,CAAC;AAC1H,OAAO,EAAE,gDAAgD,EAAE,MAAM,0FAA0F,CAAC;AAC5J,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AAiDjF;IAHA;;OAEG;IACH;IACA,CAAC;IADY,gBAAgB;QA/C5B,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,YAAY;gBACZ,UAAU;gBACV,YAAY;gBACZ,WAAW,CAAC,UAAU,CAAC,YAAY,EAAE,kBAAkB,EAAE,EAAE,CAAC;gBAC5D,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC;gBAC3C,eAAe;aAChB;YACD,YAAY,EAAE;gBACZ,gDAAgD;gBAChD,gCAAgC;gBAChC,8BAA8B;gBAC9B,iCAAiC;gBACjC,iBAAiB;gBACjB,mCAAmC;gBACnC,uBAAuB;gBACvB,iCAAiC;gBACjC,iCAAiC;gBACjC,uBAAuB;gBACvB,6BAA6B;gBAC7B,yBAAyB;gBACzB,8BAA8B;gBAC9B,oCAAoC;gBACpC,wCAAwC;gBACxC,wCAAwC;aACzC;YACD,eAAe,EAAE;gBACf,gCAAgC;gBAChC,8BAA8B;gBAC9B,iCAAiC;gBACjC,mCAAmC;aAAC;YACtC,OAAO,EAAE;gBACP,uBAAuB;gBACvB,uBAAuB;gBACvB,yBAAyB;aAC1B;YACD,SAAS,EAAE;gBACT,oBAAoB;gBACpB,eAAe;gBACf,8BAA8B;aAC/B;SACF,CAAC;QAEF;;WAEG;OACU,gBAAgB,CAC5B;IAAD,uBAAC;CAAA,AADD,IACC;SADY,gBAAgB"} \ No newline at end of file diff --git a/src/app/submission/submission.reducers.js b/src/app/submission/submission.reducers.js deleted file mode 100644 index 884658462d..0000000000 --- a/src/app/submission/submission.reducers.js +++ /dev/null @@ -1,7 +0,0 @@ -import { createFeatureSelector } from '@ngrx/store'; -import { submissionObjectReducer } from './objects/submission-objects.reducer'; -export var submissionReducers = { - objects: submissionObjectReducer, -}; -export var submissionSelector = createFeatureSelector('submission'); -//# sourceMappingURL=submission.reducers.js.map \ No newline at end of file diff --git a/src/app/submission/submission.reducers.js.map b/src/app/submission/submission.reducers.js.map deleted file mode 100644 index 4344de474d..0000000000 --- a/src/app/submission/submission.reducers.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission.reducers.js","sourceRoot":"","sources":["submission.reducers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEtE,OAAO,EACL,uBAAuB,EAExB,MAAM,sCAAsC,CAAC;AAS9C,MAAM,CAAC,IAAM,kBAAkB,GAAsC;IACnE,OAAO,EAAE,uBAAuB;CACjC,CAAC;AAEF,MAAM,CAAC,IAAM,kBAAkB,GAAG,qBAAqB,CAAkB,YAAY,CAAC,CAAC"} \ No newline at end of file diff --git a/src/app/submission/submission.service.js b/src/app/submission/submission.service.js deleted file mode 100644 index 588d138ae9..0000000000 --- a/src/app/submission/submission.service.js +++ /dev/null @@ -1,448 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Inject, Injectable } from '@angular/core'; -import { HttpHeaders } from '@angular/common/http'; -import { Router } from '@angular/router'; -import { of as observableOf, timer as observableTimer } from 'rxjs'; -import { catchError, distinctUntilChanged, filter, find, first, map, startWith } from 'rxjs/operators'; -import { Store } from '@ngrx/store'; -import { TranslateService } from '@ngx-translate/core'; -import { submissionSelector } from './submission.reducers'; -import { hasValue, isEmpty, isNotUndefined } from '../shared/empty.util'; -import { CancelSubmissionFormAction, ChangeSubmissionCollectionAction, DiscardSubmissionAction, InitSubmissionFormAction, ResetSubmissionFormAction, SaveAndDepositSubmissionAction, SaveForLaterSubmissionFormAction, SaveSubmissionFormAction, SaveSubmissionSectionFormAction, SetActiveSectionAction } from './objects/submission-objects.actions'; -import { submissionObjectFromIdSelector } from './selectors'; -import { GLOBAL_CONFIG } from '../../config'; -import { SubmissionRestService } from '../core/submission/submission-rest.service'; -import { SubmissionScopeType } from '../core/submission/submission-scope-type'; -import { RouteService } from '../shared/services/route.service'; -import { NotificationsService } from '../shared/notifications/notifications.service'; -import { RemoteData } from '../core/data/remote-data'; -import { RemoteDataError } from '../core/data/remote-data-error'; -/** - * A service that provides methods used in submission process. - */ -var SubmissionService = /** @class */ (function () { - /** - * Initialize service variables - * @param {GlobalConfig} EnvConfig - * @param {NotificationsService} notificationsService - * @param {SubmissionRestService} restService - * @param {Router} router - * @param {RouteService} routeService - * @param {Store} store - * @param {TranslateService} translate - */ - function SubmissionService(EnvConfig, notificationsService, restService, router, routeService, store, translate) { - this.EnvConfig = EnvConfig; - this.notificationsService = notificationsService; - this.restService = restService; - this.router = router; - this.routeService = routeService; - this.store = store; - this.translate = translate; - } - /** - * Dispatch a new [ChangeSubmissionCollectionAction] - * - * @param submissionId - * The submission id - * @param collectionId - * The collection id - */ - SubmissionService.prototype.changeSubmissionCollection = function (submissionId, collectionId) { - this.store.dispatch(new ChangeSubmissionCollectionAction(submissionId, collectionId)); - }; - /** - * Perform a REST call to create a new workspaceitem and return response - * - * @return Observable - * observable of SubmissionObject - */ - SubmissionService.prototype.createSubmission = function () { - return this.restService.postToEndpoint('workspaceitems', {}).pipe(map(function (workspaceitem) { return workspaceitem[0]; }), catchError(function () { return observableOf({}); })); - }; - /** - * Perform a REST call to deposit a workspaceitem and return response - * - * @param selfUrl - * The workspaceitem self url - * @return Observable - * observable of SubmissionObject - */ - SubmissionService.prototype.depositSubmission = function (selfUrl) { - var options = Object.create({}); - var headers = new HttpHeaders(); - headers = headers.append('Content-Type', 'text/uri-list'); - options.headers = headers; - return this.restService.postToEndpoint('workflowitems', selfUrl, null, options); - }; - /** - * Perform a REST call to delete a workspaceitem and return response - * - * @param submissionId - * The submission id - * @return Observable - * observable of SubmissionObject - */ - SubmissionService.prototype.discardSubmission = function (submissionId) { - return this.restService.deleteById(submissionId); - }; - /** - * Dispatch a new [InitSubmissionFormAction] - * - * @param collectionId - * The collection id - * @param submissionId - * The submission id - * @param selfUrl - * The workspaceitem self url - * @param submissionDefinition - * The [SubmissionDefinitionsModel] that define submission configuration - * @param sections - * The [WorkspaceitemSectionsObject] that define submission sections init data - * @param errors - * The [SubmissionSectionError] that define submission sections init errors - */ - SubmissionService.prototype.dispatchInit = function (collectionId, submissionId, selfUrl, submissionDefinition, sections, errors) { - this.store.dispatch(new InitSubmissionFormAction(collectionId, submissionId, selfUrl, submissionDefinition, sections, errors)); - }; - /** - * Dispatch a new [SaveAndDepositSubmissionAction] - * - * @param submissionId - * The submission id - */ - SubmissionService.prototype.dispatchDeposit = function (submissionId) { - this.store.dispatch(new SaveAndDepositSubmissionAction(submissionId)); - }; - /** - * Dispatch a new [DiscardSubmissionAction] - * - * @param submissionId - * The submission id - */ - SubmissionService.prototype.dispatchDiscard = function (submissionId) { - this.store.dispatch(new DiscardSubmissionAction(submissionId)); - }; - /** - * Dispatch a new [SaveSubmissionFormAction] - * - * @param submissionId - * The submission id - */ - SubmissionService.prototype.dispatchSave = function (submissionId) { - this.store.dispatch(new SaveSubmissionFormAction(submissionId)); - }; - /** - * Dispatch a new [SaveForLaterSubmissionFormAction] - * - * @param submissionId - * The submission id - */ - SubmissionService.prototype.dispatchSaveForLater = function (submissionId) { - this.store.dispatch(new SaveForLaterSubmissionFormAction(submissionId)); - }; - /** - * Dispatch a new [SaveSubmissionSectionFormAction] - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - */ - SubmissionService.prototype.dispatchSaveSection = function (submissionId, sectionId) { - this.store.dispatch(new SaveSubmissionSectionFormAction(submissionId, sectionId)); - }; - /** - * Return the id of the current focused section for the specified submission - * - * @param submissionId - * The submission id - * @return Observable - * observable of section id - */ - SubmissionService.prototype.getActiveSectionId = function (submissionId) { - return this.getSubmissionObject(submissionId).pipe(map(function (submission) { return submission.activeSection; })); - }; - /** - * Return the [SubmissionObjectEntry] for the specified submission - * - * @param submissionId - * The submission id - * @return Observable - * observable of SubmissionObjectEntry - */ - SubmissionService.prototype.getSubmissionObject = function (submissionId) { - return this.store.select(submissionObjectFromIdSelector(submissionId)).pipe(filter(function (submission) { return isNotUndefined(submission); })); - }; - /** - * Return a list of the active [SectionDataObject] belonging to the specified submission - * - * @param submissionId - * The submission id - * @return Observable - * observable with the list of active submission's sections - */ - SubmissionService.prototype.getSubmissionSections = function (submissionId) { - var _this = this; - return this.getSubmissionObject(submissionId).pipe(find(function (submission) { return isNotUndefined(submission.sections) && !submission.isLoading; }), map(function (submission) { return submission.sections; }), map(function (sections) { - var availableSections = []; - Object.keys(sections) - .filter(function (sectionId) { return !_this.isSectionHidden(sections[sectionId]); }) - .forEach(function (sectionId) { - var sectionObject = Object.create({}); - sectionObject.config = sections[sectionId].config; - sectionObject.mandatory = sections[sectionId].mandatory; - sectionObject.data = sections[sectionId].data; - sectionObject.errors = sections[sectionId].errors; - sectionObject.header = sections[sectionId].header; - sectionObject.id = sectionId; - sectionObject.sectionType = sections[sectionId].sectionType; - availableSections.push(sectionObject); - }); - return availableSections; - }), startWith([]), distinctUntilChanged()); - }; - /** - * Return a list of the disabled [SectionDataObject] belonging to the specified submission - * - * @param submissionId - * The submission id - * @return Observable - * observable with the list of disabled submission's sections - */ - SubmissionService.prototype.getDisabledSectionsList = function (submissionId) { - var _this = this; - return this.getSubmissionObject(submissionId).pipe(filter(function (submission) { return isNotUndefined(submission.sections) && !submission.isLoading; }), map(function (submission) { return submission.sections; }), map(function (sections) { - var disabledSections = []; - Object.keys(sections) - .filter(function (sectionId) { return !_this.isSectionHidden(sections[sectionId]); }) - .filter(function (sectionId) { return !sections[sectionId].enabled; }) - .forEach(function (sectionId) { - var sectionObject = Object.create({}); - sectionObject.header = sections[sectionId].header; - sectionObject.id = sectionId; - disabledSections.push(sectionObject); - }); - return disabledSections; - }), startWith([]), distinctUntilChanged()); - }; - /** - * Return the correct REST endpoint link path depending on the page route - * - * @return string - * link path - */ - SubmissionService.prototype.getSubmissionObjectLinkName = function () { - var url = this.router.routerState.snapshot.url; - if (url.startsWith('/workspaceitems') || url.startsWith('/submit')) { - return 'workspaceitems'; - } - else if (url.startsWith('/workflowitems')) { - return 'workflowitems'; - } - else { - return 'edititems'; - } - }; - /** - * Return the submission scope - * - * @return SubmissionScopeType - * the SubmissionScopeType - */ - SubmissionService.prototype.getSubmissionScope = function () { - var scope; - switch (this.getSubmissionObjectLinkName()) { - case 'workspaceitems': - scope = SubmissionScopeType.WorkspaceItem; - break; - case 'workflowitems': - scope = SubmissionScopeType.WorkflowItem; - break; - } - return scope; - }; - /** - * Return the validity status of the submission - * - * @param submissionId - * The submission id - * @return Observable - * observable with submission validity status - */ - SubmissionService.prototype.getSubmissionStatus = function (submissionId) { - var _this = this; - return this.store.select(submissionSelector).pipe(map(function (submissions) { return submissions.objects[submissionId]; }), filter(function (item) { return isNotUndefined(item) && isNotUndefined(item.sections); }), map(function (item) { return item.sections; }), map(function (sections) { - var states = []; - if (isNotUndefined(sections)) { - Object.keys(sections) - .filter(function (sectionId) { return sections.hasOwnProperty(sectionId); }) - .filter(function (sectionId) { return !_this.isSectionHidden(sections[sectionId]); }) - .filter(function (sectionId) { return sections[sectionId].enabled; }) - .filter(function (sectionId) { return sections[sectionId].isValid === false; }) - .forEach(function (sectionId) { - states.push(sections[sectionId].isValid); - }); - } - return !isEmpty(sections) && isEmpty(states); - }), distinctUntilChanged(), startWith(false)); - }; - /** - * Return the save processing status of the submission - * - * @param submissionId - * The submission id - * @return Observable - * observable with submission save processing status - */ - SubmissionService.prototype.getSubmissionSaveProcessingStatus = function (submissionId) { - return this.getSubmissionObject(submissionId).pipe(map(function (state) { return state.savePending; }), distinctUntilChanged(), startWith(false)); - }; - /** - * Return the deposit processing status of the submission - * - * @param submissionId - * The submission id - * @return Observable - * observable with submission deposit processing status - */ - SubmissionService.prototype.getSubmissionDepositProcessingStatus = function (submissionId) { - return this.getSubmissionObject(submissionId).pipe(map(function (state) { return state.depositPending; }), distinctUntilChanged(), startWith(false)); - }; - /** - * Return the visibility status of the specified section - * - * @param sectionData - * The section data - * @return boolean - * true if section is hidden, false otherwise - */ - SubmissionService.prototype.isSectionHidden = function (sectionData) { - return (isNotUndefined(sectionData.visibility) - && sectionData.visibility.main === 'HIDDEN' - && sectionData.visibility.other === 'HIDDEN'); - }; - /** - * Return the loading status of the submission - * - * @param submissionId - * The submission id - * @return Observable - * observable with submission loading status - */ - SubmissionService.prototype.isSubmissionLoading = function (submissionId) { - return this.getSubmissionObject(submissionId).pipe(map(function (submission) { return submission.isLoading; }), distinctUntilChanged()); - }; - /** - * Show a notification when a new section is added to submission form - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - * @param sectionType - * The section type - */ - SubmissionService.prototype.notifyNewSection = function (submissionId, sectionId, sectionType) { - var m = this.translate.instant('submission.sections.general.metadata-extracted-new-section', { sectionId: sectionId }); - this.notificationsService.info(null, m, null, true); - }; - /** - * Redirect to MyDspace page - */ - SubmissionService.prototype.redirectToMyDSpace = function () { - var _this = this; - this.routeService.getPreviousUrl().pipe(first()).subscribe(function (previousUrl) { - if (isEmpty(previousUrl) || !previousUrl.startsWith('/mydspace')) { - _this.router.navigate(['/mydspace']); - } - else { - _this.router.navigateByUrl(previousUrl); - } - }); - }; - /** - * Dispatch a new [CancelSubmissionFormAction] - */ - SubmissionService.prototype.resetAllSubmissionObjects = function () { - this.store.dispatch(new CancelSubmissionFormAction()); - }; - /** - * Dispatch a new [ResetSubmissionFormAction] - * - * @param collectionId - * The collection id - * @param submissionId - * The submission id - * @param selfUrl - * The workspaceitem self url - * @param submissionDefinition - * The [SubmissionDefinitionsModel] that define submission configuration - * @param sections - * The [WorkspaceitemSectionsObject] that define submission sections init data - */ - SubmissionService.prototype.resetSubmissionObject = function (collectionId, submissionId, selfUrl, submissionDefinition, sections) { - this.store.dispatch(new ResetSubmissionFormAction(collectionId, submissionId, selfUrl, sections, submissionDefinition)); - }; - /** - * Perform a REST call to retrieve an existing workspaceitem/workflowitem and return response - * - * @return Observable> - * observable of RemoteData - */ - SubmissionService.prototype.retrieveSubmission = function (submissionId) { - return this.restService.getDataById(this.getSubmissionObjectLinkName(), submissionId).pipe(find(function (submissionObjects) { return isNotUndefined(submissionObjects); }), map(function (submissionObjects) { return new RemoteData(false, false, true, null, submissionObjects[0]); }), catchError(function (errorResponse) { - return observableOf(new RemoteData(false, false, false, new RemoteDataError(errorResponse.statusCode, errorResponse.statusText, errorResponse.errorMessage), null)); - })); - }; - /** - * Dispatch a new [SetActiveSectionAction] - * - * @param submissionId - * The submission id - * @param sectionId - * The section id - */ - SubmissionService.prototype.setActiveSection = function (submissionId, sectionId) { - this.store.dispatch(new SetActiveSectionAction(submissionId, sectionId)); - }; - /** - * Allow to save automatically the submission - * - * @param submissionId - * The submission id - */ - SubmissionService.prototype.startAutoSave = function (submissionId) { - var _this = this; - this.stopAutoSave(); - // AUTOSAVE submission - // Retrieve interval from config and convert to milliseconds - var duration = this.EnvConfig.submission.autosave.timer * (1000 * 60); - // Dispatch save action after given duration - this.timer$ = observableTimer(duration, duration); - this.autoSaveSub = this.timer$ - .subscribe(function () { return _this.store.dispatch(new SaveSubmissionFormAction(submissionId)); }); - }; - /** - * Unsubscribe subscription to timer - */ - SubmissionService.prototype.stopAutoSave = function () { - if (hasValue(this.autoSaveSub)) { - this.autoSaveSub.unsubscribe(); - this.autoSaveSub = null; - } - }; - SubmissionService = tslib_1.__decorate([ - Injectable(), - tslib_1.__param(0, Inject(GLOBAL_CONFIG)), - tslib_1.__metadata("design:paramtypes", [Object, NotificationsService, - SubmissionRestService, - Router, - RouteService, - Store, - TranslateService]) - ], SubmissionService); - return SubmissionService; -}()); -export { SubmissionService }; -//# sourceMappingURL=submission.service.js.map \ No newline at end of file diff --git a/src/app/submission/submission.service.js.map b/src/app/submission/submission.service.js.map deleted file mode 100644 index 80389d58f0..0000000000 --- a/src/app/submission/submission.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission.service.js","sourceRoot":"","sources":["submission.service.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/app/submission/submit/submission-submit.component.js b/src/app/submission/submit/submission-submit.component.js deleted file mode 100644 index bb16f3ae38..0000000000 --- a/src/app/submission/submit/submission-submit.component.js +++ /dev/null @@ -1,85 +0,0 @@ -import * as tslib_1 from "tslib"; -import { ChangeDetectorRef, Component, ViewContainerRef } from '@angular/core'; -import { Router } from '@angular/router'; -import { hasValue, isEmpty, isNotNull } from '../../shared/empty.util'; -import { TranslateService } from '@ngx-translate/core'; -import { NotificationsService } from '../../shared/notifications/notifications.service'; -import { SubmissionService } from '../submission.service'; -/** - * This component allows to submit a new workspaceitem. - */ -var SubmissionSubmitComponent = /** @class */ (function () { - /** - * Initialize instance variables - * - * @param {ChangeDetectorRef} changeDetectorRef - * @param {NotificationsService} notificationsService - * @param {SubmissionService} submissioService - * @param {Router} router - * @param {TranslateService} translate - * @param {ViewContainerRef} viewContainerRef - */ - function SubmissionSubmitComponent(changeDetectorRef, notificationsService, router, submissioService, translate, viewContainerRef) { - this.changeDetectorRef = changeDetectorRef; - this.notificationsService = notificationsService; - this.router = router; - this.submissioService = submissioService; - this.translate = translate; - this.viewContainerRef = viewContainerRef; - /** - * Array to track all subscriptions and unsubscribe them onDestroy - * @type {Array} - */ - this.subs = []; - } - /** - * Create workspaceitem on the server and initialize all instance variables - */ - SubmissionSubmitComponent.prototype.ngOnInit = function () { - var _this = this; - // NOTE execute the code on the browser side only, otherwise it is executed twice - this.subs.push(this.submissioService.createSubmission() - .subscribe(function (submissionObject) { - // NOTE new submission is created on the browser side only - if (isNotNull(submissionObject)) { - if (isEmpty(submissionObject)) { - _this.notificationsService.info(null, _this.translate.get('submission.general.cannot_submit')); - _this.router.navigate(['/mydspace']); - } - else { - _this.collectionId = submissionObject.collection.id; - _this.selfUrl = submissionObject.self; - _this.submissionDefinition = submissionObject.submissionDefinition; - _this.submissionId = submissionObject.id; - _this.changeDetectorRef.detectChanges(); - } - } - })); - }; - /** - * Unsubscribe from all subscriptions - */ - SubmissionSubmitComponent.prototype.ngOnDestroy = function () { - this.subs - .filter(function (subscription) { return hasValue(subscription); }) - .forEach(function (subscription) { return subscription.unsubscribe(); }); - this.viewContainerRef.clear(); - this.changeDetectorRef.markForCheck(); - }; - SubmissionSubmitComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-submission-submit', - styleUrls: ['./submission-submit.component.scss'], - templateUrl: './submission-submit.component.html' - }), - tslib_1.__metadata("design:paramtypes", [ChangeDetectorRef, - NotificationsService, - Router, - SubmissionService, - TranslateService, - ViewContainerRef]) - ], SubmissionSubmitComponent); - return SubmissionSubmitComponent; -}()); -export { SubmissionSubmitComponent }; -//# sourceMappingURL=submission-submit.component.js.map \ No newline at end of file diff --git a/src/app/submission/submit/submission-submit.component.js.map b/src/app/submission/submit/submission-submit.component.js.map deleted file mode 100644 index 91ead0ea3d..0000000000 --- a/src/app/submission/submit/submission-submit.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-submit.component.js","sourceRoot":"","sources":["submission-submit.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAqB,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAI1D;;GAEG;AAMH;IAgCE;;;;;;;;;OASG;IACH,mCAAoB,iBAAoC,EACpC,oBAA0C,EAC1C,MAAc,EACd,gBAAmC,EACnC,SAA2B,EAC3B,gBAAkC;QALlC,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,WAAM,GAAN,MAAM,CAAQ;QACd,qBAAgB,GAAhB,gBAAgB,CAAmB;QACnC,cAAS,GAAT,SAAS,CAAkB;QAC3B,qBAAgB,GAAhB,gBAAgB,CAAkB;QArBtD;;;WAGG;QACO,SAAI,GAAmB,EAAE,CAAC;IAkBpC,CAAC;IAED;;OAEG;IACH,4CAAQ,GAAR;QAAA,iBAoBC;QAnBC,iFAAiF;QACjF,IAAI,CAAC,IAAI,CAAC,IAAI,CACZ,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE;aACrC,SAAS,CAAC,UAAC,gBAAkC;YAC5C,0DAA0D;YAC1D,IAAI,SAAS,CAAC,gBAAgB,CAAC,EAAE;gBAC/B,IAAI,OAAO,CAAC,gBAAgB,CAAC,EAAE;oBAC7B,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC,CAAC;oBAC7F,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;iBACrC;qBAAM;oBACL,KAAI,CAAC,YAAY,GAAI,gBAAgB,CAAC,UAAyB,CAAC,EAAE,CAAC;oBACnE,KAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC;oBACrC,KAAI,CAAC,oBAAoB,GAAI,gBAAgB,CAAC,oBAAmD,CAAC;oBAClG,KAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC,EAAE,CAAC;oBACxC,KAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;iBACxC;aACF;QACH,CAAC,CAAC,CACL,CAAA;IACH,CAAC;IAED;;OAEG;IACH,+CAAW,GAAX;QACE,IAAI,CAAC,IAAI;aACN,MAAM,CAAC,UAAC,YAAY,IAAK,OAAA,QAAQ,CAAC,YAAY,CAAC,EAAtB,CAAsB,CAAC;aAChD,OAAO,CAAC,UAAC,YAAY,IAAK,OAAA,YAAY,CAAC,WAAW,EAAE,EAA1B,CAA0B,CAAC,CAAC;QAEzD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IArFU,yBAAyB;QALrC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,SAAS,EAAE,CAAC,oCAAoC,CAAC;YACjD,WAAW,EAAE,oCAAoC;SAClD,CAAC;iDA2CuC,iBAAiB;YACd,oBAAoB;YAClC,MAAM;YACI,iBAAiB;YACxB,gBAAgB;YACT,gBAAgB;OA/C3C,yBAAyB,CAuFrC;IAAD,gCAAC;CAAA,AAvFD,IAuFC;SAvFY,yBAAyB"} \ No newline at end of file diff --git a/src/app/submission/utils/parseSectionErrorPaths.js b/src/app/submission/utils/parseSectionErrorPaths.js deleted file mode 100644 index cc2e9be4da..0000000000 --- a/src/app/submission/utils/parseSectionErrorPaths.js +++ /dev/null @@ -1,30 +0,0 @@ -import { hasValue } from '../../shared/empty.util'; -var regex = /([^\/]+)/g; -// const regex = /\/sections\/(.*)\/(.*)\/(.*)/; -var regexShort = /\/sections\/(.*)/; -/** - * The following method accept an array of section path strings and return a path object - * @param {string | string[]} path - * @returns {SectionErrorPath[]} - */ -var parseSectionErrorPaths = function (path) { - var paths = typeof path === 'string' ? [path] : path; - return paths.map(function (item) { - if (item.match(regex) && item.match(regex).length > 2) { - return { - sectionId: item.match(regex)[1], - fieldId: item.match(regex)[2], - fieldIndex: hasValue(item.match(regex)[3]) ? +item.match(regex)[3] : 0, - originalPath: item, - }; - } - else { - return { - sectionId: item.match(regexShort)[1], - originalPath: item, - }; - } - }); -}; -export default parseSectionErrorPaths; -//# sourceMappingURL=parseSectionErrorPaths.js.map \ No newline at end of file diff --git a/src/app/submission/utils/parseSectionErrorPaths.js.map b/src/app/submission/utils/parseSectionErrorPaths.js.map deleted file mode 100644 index 888d195168..0000000000 --- a/src/app/submission/utils/parseSectionErrorPaths.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parseSectionErrorPaths.js","sourceRoot":"","sources":["parseSectionErrorPaths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AA4BnD,IAAM,KAAK,GAAG,WAAW,CAAC;AAC1B,gDAAgD;AAChD,IAAM,UAAU,GAAG,kBAAkB,CAAC;AAEtC;;;;GAIG;AACH,IAAM,sBAAsB,GAAG,UAAC,IAAuB;IACrD,IAAM,KAAK,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEvD,OAAO,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI;QAClB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACrD,OAAO;gBACL,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC7B,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtE,YAAY,EAAE,IAAI;aACnB,CAAC;SACH;aAAM;YACL,OAAO;gBACL,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACpC,YAAY,EAAE,IAAI;aACnB,CAAC;SACH;IAEH,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,sBAAsB,CAAC"} \ No newline at end of file diff --git a/src/app/submission/utils/parseSectionErrors.js b/src/app/submission/utils/parseSectionErrors.js deleted file mode 100644 index b8aaab9b7f..0000000000 --- a/src/app/submission/utils/parseSectionErrors.js +++ /dev/null @@ -1,23 +0,0 @@ -import { default as parseSectionErrorPaths } from './parseSectionErrorPaths'; -/** - * the following method accept an array of SubmissionObjectError and return a section errors object - * @param {errors: SubmissionObjectError[]} errors - * @returns {any} - */ -var parseSectionErrors = function (errors) { - if (errors === void 0) { errors = []; } - var errorsList = Object.create({}); - errors.forEach(function (error) { - var paths = parseSectionErrorPaths(error.paths); - paths.forEach(function (path) { - var sectionError = { path: path.originalPath, message: error.message }; - if (!errorsList[path.sectionId]) { - errorsList[path.sectionId] = []; - } - errorsList[path.sectionId].push(sectionError); - }); - }); - return errorsList; -}; -export default parseSectionErrors; -//# sourceMappingURL=parseSectionErrors.js.map \ No newline at end of file diff --git a/src/app/submission/utils/parseSectionErrors.js.map b/src/app/submission/utils/parseSectionErrors.js.map deleted file mode 100644 index 5e12f3df64..0000000000 --- a/src/app/submission/utils/parseSectionErrors.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"parseSectionErrors.js","sourceRoot":"","sources":["parseSectionErrors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAoB,MAAM,0BAA0B,CAAC;AAE/F;;;;GAIG;AACH,IAAM,kBAAkB,GAAG,UAAC,MAAoC;IAApC,uBAAA,EAAA,WAAoC;IAC9D,IAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAErC,MAAM,CAAC,OAAO,CAAC,UAAC,KAA4B;QAC1C,IAAM,KAAK,GAAuB,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEtE,KAAK,CAAC,OAAO,CAAC,UAAC,IAAsB;YACnC,IAAM,YAAY,GAAG,EAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAC,CAAC;YACvE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBAC/B,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;aACjC;YACD,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"} \ No newline at end of file diff --git a/src/app/thumbnail/thumbnail.component.js b/src/app/thumbnail/thumbnail.component.js deleted file mode 100644 index d7f5b9b50d..0000000000 --- a/src/app/thumbnail/thumbnail.component.js +++ /dev/null @@ -1,46 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Component, Input } from '@angular/core'; -import { Bitstream } from '../core/shared/bitstream.model'; -import { hasValue } from '../shared/empty.util'; -/** - * This component renders a given Bitstream as a thumbnail. - * One input parameter of type Bitstream is expected. - * If no Bitstream is provided, a holderjs image will be rendered instead. - */ -var ThumbnailComponent = /** @class */ (function () { - function ThumbnailComponent() { - /** - * The default 'holder.js' image - */ - this.defaultImage = 'data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2293%22%20height%3D%22120%22%20viewBox%3D%220%200%2093%20120%22%20preserveAspectRatio%3D%22none%22%3E%3C!--%0ASource%20URL%3A%20holder.js%2F93x120%3Ftext%3DNo%20Thumbnail%0ACreated%20with%20Holder.js%202.8.2.%0ALearn%20more%20at%20http%3A%2F%2Fholderjs.com%0A(c)%202012-2015%20Ivan%20Malopinsky%20-%20http%3A%2F%2Fimsky.co%0A--%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%3C!%5BCDATA%5B%23holder_1543e460b05%20text%20%7B%20fill%3A%23AAAAAA%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A10pt%20%7D%20%5D%5D%3E%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1543e460b05%22%3E%3Crect%20width%3D%2293%22%20height%3D%22120%22%20fill%3D%22%23EEEEEE%22%2F%3E%3Cg%3E%3Ctext%20x%3D%2235.6171875%22%20y%3D%2257%22%3ENo%3C%2Ftext%3E%3Ctext%20x%3D%2210.8125%22%20y%3D%2272%22%3EThumbnail%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E'; - } - ThumbnailComponent.prototype.errorHandler = function (event) { - event.currentTarget.src = this.defaultImage; - }; - ThumbnailComponent.prototype.ngOnInit = function () { - if (hasValue(this.thumbnail) && this.thumbnail.content) { - this.src = this.thumbnail.content; - } - else { - this.src = this.defaultImage; - } - }; - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Bitstream) - ], ThumbnailComponent.prototype, "thumbnail", void 0); - tslib_1.__decorate([ - Input(), - tslib_1.__metadata("design:type", Object) - ], ThumbnailComponent.prototype, "defaultImage", void 0); - ThumbnailComponent = tslib_1.__decorate([ - Component({ - selector: 'ds-thumbnail', - styleUrls: ['./thumbnail.component.scss'], - templateUrl: './thumbnail.component.html' - }) - ], ThumbnailComponent); - return ThumbnailComponent; -}()); -export { ThumbnailComponent }; -//# sourceMappingURL=thumbnail.component.js.map \ No newline at end of file diff --git a/src/app/thumbnail/thumbnail.component.js.map b/src/app/thumbnail/thumbnail.component.js.map deleted file mode 100644 index 98a9a8010a..0000000000 --- a/src/app/thumbnail/thumbnail.component.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"thumbnail.component.js","sourceRoot":"","sources":["thumbnail.component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAU,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD;;;;GAIG;AAOH;IALA;QASE;;WAEG;QACM,iBAAY,GAAI,++BAA++B,CAAC;IAe3gC,CAAC;IAZC,yCAAY,GAAZ,UAAa,KAAK;QAChB,KAAK,CAAC,aAAa,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;IAC9C,CAAC;IAED,qCAAQ,GAAR;QACI,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;YACtD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SACnC;aAAM;YACL,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAA;SAC7B;IACL,CAAC;IAlBQ;QAAR,KAAK,EAAE;0CAAY,SAAS;yDAAC;IAKrB;QAAR,KAAK,EAAE;;4DAAigC;IAP9/B,kBAAkB;QAL9B,SAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,CAAC,4BAA4B,CAAC;YACzC,WAAW,EAAE,4BAA4B;SAC1C,CAAC;OACW,kBAAkB,CAsB9B;IAAD,yBAAC;CAAA,AAtBD,IAsBC;SAtBY,kBAAkB"} \ No newline at end of file diff --git a/src/backend/api.js b/src/backend/api.js deleted file mode 100644 index 109e94a529..0000000000 --- a/src/backend/api.js +++ /dev/null @@ -1,169 +0,0 @@ -var Router = require('express').Router; -var util = require('util'); -// Our API for demos only -import { fakeDataBase } from './db'; -import { fakeDemoRedisCache } from './cache'; -import COMMUNITIES from './data/communities.json'; -import COLLECTIONS from './data/collections.json'; -import ITEMS from './data/items.json'; -import BUNDLES from './data/bundles.json'; -import BITSTREAMS from './data/bitstreams.json'; -// you would use cookies/token etc -var USER_ID = 'f9d98cf1-1b96-464e-8755-bcc2a5c09077'; // hardcoded as an example -// Our API for demos only -export function serverApi(req, res) { - var key = USER_ID + '/data.json'; - var cache = fakeDemoRedisCache.get(key); - if (cache !== undefined) { - console.log('/data.json Cache Hit'); - return res.json(cache); - } - console.log('/data.json Cache Miss'); - fakeDataBase.get() - .then(function (data) { - fakeDemoRedisCache.set(key, data); - return data; - }) - .then(function (data) { return res.json(data); }); -} -function toHALResponse(req, data, included) { - var result = { - _embedded: data, - _links: { - self: req.protocol + '://' + req.get('host') + req.originalUrl - } - }; - if (included && Array.isArray(included) && included.length > 0) { - Object.assign(result, { - included: included - }); - } - return result; -} -export function createMockApi() { - var router = Router(); - router.route('/communities').get(function (req, res) { - console.log('GET'); - // 70ms latency - setTimeout(function () { - res.json(toHALResponse(req, COMMUNITIES)); - }, 0); - }); - router.param('community_id', function (req, res, next, communityId) { - // ensure correct prop type - var id = req.params.community_id; - try { - req.community_id = id; - req.community = COMMUNITIES.communities.find(function (community) { - return community.id === id; - }); - next(); - } - catch (e) { - next(new Error('failed to load community')); - } - }); - router.route('/communities/:community_id').get(function (req, res) { - res.json(toHALResponse(req, req.community)); - }); - router.route('/collections').get(function (req, res) { - console.log('GET'); - // 70ms latency - setTimeout(function () { - res.json(toHALResponse(req, COLLECTIONS)); - }, 0); - }); - router.param('collection_id', function (req, res, next, collectionId) { - // ensure correct prop type - var id = req.params.collection_id; - try { - req.collection_id = id; - req.collection = COLLECTIONS.collections.find(function (collection) { - return collection.id === id; - }); - next(); - } - catch (e) { - next(new Error('failed to load collection')); - } - }); - router.route('/collections/:collection_id').get(function (req, res) { - res.json(toHALResponse(req, req.collection)); - }); - router.route('/items').get(function (req, res) { - console.log('GET'); - // 70ms latency - setTimeout(function () { - res.json(toHALResponse(req, ITEMS)); - }, 0); - }); - router.param('item_id', function (req, res, next, itemId) { - // ensure correct prop type - var id = req.params.item_id; - try { - req.item_id = id; - req.item = ITEMS.items.find(function (item) { - return item.id === id; - }); - next(); - } - catch (e) { - next(new Error('failed to load item')); - } - }); - router.route('/items/:item_id').get(function (req, res) { - res.json(toHALResponse(req, req.item)); - }); - router.route('/bundles').get(function (req, res) { - console.log('GET'); - // 70ms latency - setTimeout(function () { - res.json(toHALResponse(req, BUNDLES)); - }, 0); - }); - router.param('bundle_id', function (req, res, next, bundleId) { - // ensure correct prop type - var id = req.params.bundle_id; - try { - req.bundle_id = id; - req.bundle = BUNDLES.bundles.find(function (bundle) { - return bundle.id === id; - }); - next(); - } - catch (e) { - next(new Error('failed to load item')); - } - }); - router.route('/bundles/:bundle_id').get(function (req, res) { - // console.log('GET', util.inspect(req.bundle, { colors: true })); - res.json(toHALResponse(req, req.bundle)); - }); - router.route('/bitstreams').get(function (req, res) { - console.log('GET'); - // 70ms latency - setTimeout(function () { - res.json(toHALResponse(req, BITSTREAMS)); - }, 0); - }); - router.param('bitstream_id', function (req, res, next, bitstreamId) { - // ensure correct prop type - var id = req.params.bitstream_id; - try { - req.bitstream_id = id; - req.bitstream = BITSTREAMS.bitstreams.find(function (bitstream) { - return bitstream.id === id; - }); - next(); - } - catch (e) { - next(new Error('failed to load item')); - } - }); - router.route('/bitstreams/:bitstream_id').get(function (req, res) { - // console.log('GET', util.inspect(req.bitstream, { colors: true })); - res.json(toHALResponse(req, req.bitstream)); - }); - return router; -} -//# sourceMappingURL=api.js.map \ No newline at end of file diff --git a/src/backend/api.js.map b/src/backend/api.js.map deleted file mode 100644 index d9f71a4c99..0000000000 --- a/src/backend/api.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"api.js","sourceRoot":"","sources":["api.ts"],"names":[],"mappings":"AAAQ,IAAA,kCAAM,CAAwB;AACtC,IAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAE7B,yBAAyB;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAGhD,kCAAkC;AAClC,IAAM,OAAO,GAAG,sCAAsC,CAAC,CAAC,0BAA0B;AAElF,yBAAyB;AACzB,MAAM,oBAAoB,GAAG,EAAE,GAAG;IAChC,IAAM,GAAG,GAAG,OAAO,GAAG,YAAY,CAAC;IACnC,IAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACxB;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAErC,YAAY,CAAC,GAAG,EAAE;SACf,IAAI,CAAC,UAAC,IAAI;QACT,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;SACD,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAd,CAAc,CAAC,CAAC;AACpC,CAAC;AAED,uBAAuB,GAAG,EAAE,IAAI,EAAE,QAAS;IACzC,IAAM,MAAM,GAAG;QACb,SAAS,EAAE,IAAI;QACf,MAAM,EAAE;YACN,IAAI,EAAE,GAAG,CAAC,QAAQ,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW;SAC/D;KACF,CAAC;IACF,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;YACpB,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;KACJ;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM;IAEJ,IAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;QAC5C,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW;QACvD,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;QACnC,IAAI;YACF,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;YACtB,GAAG,CAAC,SAAS,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,SAAS;gBACrD,OAAO,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;SAC7C;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACtD,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;QAC5C,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY;QACzD,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC;QACpC,IAAI;YACF,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC;YACvB,GAAG,CAAC,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,UAAC,UAAU;gBACvD,OAAO,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACvD,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QACtC,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM;QAC7C,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI;YACF,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAC,IAAI;gBAC/B,OAAO,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;YACxB,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;SACxC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QAC3C,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;QACxC,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ;QACjD,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;QAChC,IAAI;YACF,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC;YACnB,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAC,MAAM;gBACvC,OAAO,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;YAC1B,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;SACxC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QAC/C,kEAAkE;QAClE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,eAAe;QACf,UAAU,CAAC;YACT,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;QAC3C,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,UAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW;QACvD,2BAA2B;QAC3B,IAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;QACnC,IAAI;YACF,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;YACtB,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,UAAC,SAAS;gBACnD,OAAO,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;YACH,IAAI,EAAE,CAAC;SACR;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;SACxC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,GAAG,CAAC,UAAC,GAAG,EAAE,GAAG;QACrD,qEAAqE;QACrE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"} \ No newline at end of file diff --git a/src/backend/cache.js b/src/backend/cache.js deleted file mode 100644 index 2adbf6e512..0000000000 --- a/src/backend/cache.js +++ /dev/null @@ -1,16 +0,0 @@ -var _fakeLRUcount = 0; -export var fakeDemoRedisCache = { - _cache: {}, - get: function (key) { - var cache = fakeDemoRedisCache._cache[key]; - _fakeLRUcount++; - if (_fakeLRUcount >= 10) { - fakeDemoRedisCache.clear(); - _fakeLRUcount = 0; - } - return cache; - }, - set: function (key, data) { return fakeDemoRedisCache._cache[key] = data; }, - clear: function () { return fakeDemoRedisCache._cache = {}; } -}; -//# sourceMappingURL=cache.js.map \ No newline at end of file diff --git a/src/backend/cache.js.map b/src/backend/cache.js.map deleted file mode 100644 index d27248f43c..0000000000 --- a/src/backend/cache.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"cache.js","sourceRoot":"","sources":["cache.ts"],"names":[],"mappings":"AAAA,IAAI,aAAa,GAAG,CAAC,CAAC;AACtB,MAAM,CAAC,IAAM,kBAAkB,GAAG;IAChC,MAAM,EAAE,EAAE;IACV,GAAG,EAAE,UAAC,GAAG;QACP,IAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7C,aAAa,EAAE,CAAC;QAChB,IAAI,aAAa,IAAI,EAAE,EAAE;YACvB,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,aAAa,GAAG,CAAC,CAAC;SACnB;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,GAAG,EAAE,UAAC,GAAG,EAAE,IAAI,IAAK,OAAA,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAArC,CAAqC;IACzD,KAAK,EAAE,cAAM,OAAA,kBAAkB,CAAC,MAAM,GAAG,EAAE,EAA9B,CAA8B;CAC5C,CAAC"} \ No newline at end of file diff --git a/src/backend/db.js b/src/backend/db.js deleted file mode 100644 index 54e1b8635e..0000000000 --- a/src/backend/db.js +++ /dev/null @@ -1,8 +0,0 @@ -// Our API for demos only -export var fakeDataBase = { - get: function () { - var res = { data: 'This fake data came from the db on the server.' }; - return Promise.resolve(res); - } -}; -//# sourceMappingURL=db.js.map \ No newline at end of file diff --git a/src/backend/db.js.map b/src/backend/db.js.map deleted file mode 100644 index 214fa61364..0000000000 --- a/src/backend/db.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"db.js","sourceRoot":"","sources":["db.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,MAAM,CAAC,IAAM,YAAY,GAAG;IAC1B,GAAG;QACD,IAAM,GAAG,GAAG,EAAE,IAAI,EAAE,gDAAgD,EAAE,CAAC;QACvE,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;CACF,CAAC"} \ No newline at end of file diff --git a/src/config.js.map b/src/config.js.map deleted file mode 100644 index eeaa79165f..0000000000 --- a/src/config.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config.js","sourceRoot":"","sources":["config.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/config/auto-sync-config.interface.js b/src/config/auto-sync-config.interface.js deleted file mode 100644 index c7efb560b1..0000000000 --- a/src/config/auto-sync-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=auto-sync-config.interface.js.map \ No newline at end of file diff --git a/src/config/auto-sync-config.interface.js.map b/src/config/auto-sync-config.interface.js.map deleted file mode 100644 index 398d6a3b0e..0000000000 --- a/src/config/auto-sync-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"auto-sync-config.interface.js","sourceRoot":"","sources":["auto-sync-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/browse-by-config.interface.js b/src/config/browse-by-config.interface.js deleted file mode 100644 index 5c7c416033..0000000000 --- a/src/config/browse-by-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=browse-by-config.interface.js.map \ No newline at end of file diff --git a/src/config/browse-by-config.interface.js.map b/src/config/browse-by-config.interface.js.map deleted file mode 100644 index 954efb57ed..0000000000 --- a/src/config/browse-by-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browse-by-config.interface.js","sourceRoot":"","sources":["browse-by-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/cache-config.interface.js b/src/config/cache-config.interface.js deleted file mode 100644 index c888233eef..0000000000 --- a/src/config/cache-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=cache-config.interface.js.map \ No newline at end of file diff --git a/src/config/cache-config.interface.js.map b/src/config/cache-config.interface.js.map deleted file mode 100644 index 457d12e998..0000000000 --- a/src/config/cache-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"cache-config.interface.js","sourceRoot":"","sources":["cache-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/config.interface.js b/src/config/config.interface.js deleted file mode 100644 index 77cd154139..0000000000 --- a/src/config/config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=config.interface.js.map \ No newline at end of file diff --git a/src/config/config.interface.js.map b/src/config/config.interface.js.map deleted file mode 100644 index 3cd0463779..0000000000 --- a/src/config/config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"config.interface.js","sourceRoot":"","sources":["config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/form-config.interfaces.js b/src/config/form-config.interfaces.js deleted file mode 100644 index 495560d9f4..0000000000 --- a/src/config/form-config.interfaces.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=form-config.interfaces.js.map \ No newline at end of file diff --git a/src/config/form-config.interfaces.js.map b/src/config/form-config.interfaces.js.map deleted file mode 100644 index b4a9268f52..0000000000 --- a/src/config/form-config.interfaces.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"form-config.interfaces.js","sourceRoot":"","sources":["form-config.interfaces.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/global-config.interface.js b/src/config/global-config.interface.js deleted file mode 100644 index 41269a9a04..0000000000 --- a/src/config/global-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=global-config.interface.js.map \ No newline at end of file diff --git a/src/config/global-config.interface.js.map b/src/config/global-config.interface.js.map deleted file mode 100644 index 8efc1ef8c7..0000000000 --- a/src/config/global-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"global-config.interface.js","sourceRoot":"","sources":["global-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/item-page-config.interface.js b/src/config/item-page-config.interface.js deleted file mode 100644 index 532f8adf59..0000000000 --- a/src/config/item-page-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=item-page-config.interface.js.map \ No newline at end of file diff --git a/src/config/item-page-config.interface.js.map b/src/config/item-page-config.interface.js.map deleted file mode 100644 index 6072d59a34..0000000000 --- a/src/config/item-page-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"item-page-config.interface.js","sourceRoot":"","sources":["item-page-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/lang-config.interface.js b/src/config/lang-config.interface.js deleted file mode 100644 index 5cc007d8c3..0000000000 --- a/src/config/lang-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=lang-config.interface.js.map \ No newline at end of file diff --git a/src/config/lang-config.interface.js.map b/src/config/lang-config.interface.js.map deleted file mode 100644 index 3e866516f9..0000000000 --- a/src/config/lang-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"lang-config.interface.js","sourceRoot":"","sources":["lang-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/notifications-config.interfaces.js b/src/config/notifications-config.interfaces.js deleted file mode 100644 index e48d062de7..0000000000 --- a/src/config/notifications-config.interfaces.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=notifications-config.interfaces.js.map \ No newline at end of file diff --git a/src/config/notifications-config.interfaces.js.map b/src/config/notifications-config.interfaces.js.map deleted file mode 100644 index 905d1b3748..0000000000 --- a/src/config/notifications-config.interfaces.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"notifications-config.interfaces.js","sourceRoot":"","sources":["notifications-config.interfaces.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/server-config.interface.js b/src/config/server-config.interface.js deleted file mode 100644 index 64efc0d513..0000000000 --- a/src/config/server-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=server-config.interface.js.map \ No newline at end of file diff --git a/src/config/server-config.interface.js.map b/src/config/server-config.interface.js.map deleted file mode 100644 index 043d6151ff..0000000000 --- a/src/config/server-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-config.interface.js","sourceRoot":"","sources":["server-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/submission-config.interface.js b/src/config/submission-config.interface.js deleted file mode 100644 index 9b594514bd..0000000000 --- a/src/config/submission-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=submission-config.interface.js.map \ No newline at end of file diff --git a/src/config/submission-config.interface.js.map b/src/config/submission-config.interface.js.map deleted file mode 100644 index 1a7258ce6b..0000000000 --- a/src/config/submission-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"submission-config.interface.js","sourceRoot":"","sources":["submission-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/config/universal-config.interface.js b/src/config/universal-config.interface.js deleted file mode 100644 index 6f30188d10..0000000000 --- a/src/config/universal-config.interface.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=universal-config.interface.js.map \ No newline at end of file diff --git a/src/config/universal-config.interface.js.map b/src/config/universal-config.interface.js.map deleted file mode 100644 index 998472c2f6..0000000000 --- a/src/config/universal-config.interface.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"universal-config.interface.js","sourceRoot":"","sources":["universal-config.interface.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/main.browser.js b/src/main.browser.js deleted file mode 100644 index 6e0957d874..0000000000 --- a/src/main.browser.js +++ /dev/null @@ -1,41 +0,0 @@ -import 'zone.js/dist/zone'; -import 'reflect-metadata'; -import { enableProdMode } from '@angular/core'; -import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; -import { bootloader } from '@angularclass/bootloader'; -import { load as loadWebFont } from 'webfontloader'; -import { hasValue, isNotEmpty } from './app/shared/empty.util'; -import { BrowserAppModule } from './modules/app/browser-app.module'; -import { ENV_CONFIG } from './config'; -if (ENV_CONFIG.production) { - enableProdMode(); -} -export function main() { - // Load fonts async - // https://github.com/typekit/webfontloader#configuration - loadWebFont({ - google: { - families: ['Droid Sans'] - } - }); - addGoogleAnalytics(); - return platformBrowserDynamic().bootstrapModule(BrowserAppModule, { preserveWhitespaces: true }); -} -function addGoogleAnalytics() { - // Add google analytics if key is present in config - var trackingId = ENV_CONFIG.gaTrackingId; - if (isNotEmpty(trackingId)) { - var keyScript = document.createElement('script'); - keyScript.innerHTML = "(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){\n (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),\n m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)\n })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');" - + 'ga(\'create\', \'' + ENV_CONFIG.gaTrackingId + '\', \'auto\');'; - document.body.appendChild(keyScript); - } -} -// support async tag or hmr -if (hasValue(ENV_CONFIG.universal) && ENV_CONFIG.universal.preboot === false) { - bootloader(main); -} -else { - document.addEventListener('DOMContentLoaded', function () { return bootloader(main); }); -} -//# sourceMappingURL=main.browser.js.map \ No newline at end of file diff --git a/src/main.browser.js.map b/src/main.browser.js.map deleted file mode 100644 index 9d38538972..0000000000 --- a/src/main.browser.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"main.browser.js","sourceRoot":"","sources":["main.browser.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAC;AAC3B,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,IAAI,UAAU,CAAC,UAAU,EAAE;IACzB,cAAc,EAAE,CAAC;CAClB;AAED,MAAM;IACJ,mBAAmB;IACnB,yDAAyD;IACzD,WAAW,CAAC;QACV,MAAM,EAAE;YACN,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF,CAAC,CAAC;IAEH,kBAAkB,EAAE,CAAC;IAErB,OAAO,sBAAsB,EAAE,CAAC,eAAe,CAAC,gBAAgB,EAAE,EAAC,mBAAmB,EAAC,IAAI,EAAC,CAAC,CAAC;AAChG,CAAC;AAED;IACE,mDAAmD;IACnD,IAAM,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC;IAC3C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE;QAC1B,IAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACnD,SAAS,CAAC,SAAS,GAAK,uZAGmF;cACvG,mBAAmB,GAAG,UAAU,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACrE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;KACtC;AACH,CAAC;AAED,2BAA2B;AAC3B,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;IAC5E,UAAU,CAAC,IAAI,CAAC,CAAC;CAClB;KAAM;IACL,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,cAAM,OAAA,UAAU,CAAC,IAAI,CAAC,EAAhB,CAAgB,CAAC,CAAC;CACvE"} \ No newline at end of file diff --git a/src/main.server.js b/src/main.server.js deleted file mode 100644 index 976eb5803c..0000000000 --- a/src/main.server.js +++ /dev/null @@ -1,4 +0,0 @@ -import { startServer } from './server'; -import { ServerAppModule } from './modules/app/server-app.module'; -startServer(ServerAppModule); -//# sourceMappingURL=main.server.js.map \ No newline at end of file diff --git a/src/main.server.js.map b/src/main.server.js.map deleted file mode 100644 index e59e7a37a2..0000000000 --- a/src/main.server.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"main.server.js","sourceRoot":"","sources":["main.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,WAAW,CAAC,eAAe,CAAC,CAAC"} \ No newline at end of file diff --git a/src/modules/app/browser-app.module.js b/src/modules/app/browser-app.module.js deleted file mode 100644 index 60bc96b56f..0000000000 --- a/src/modules/app/browser-app.module.js +++ /dev/null @@ -1,85 +0,0 @@ -import * as tslib_1 from "tslib"; -import { HttpClient, HttpClientModule } from '@angular/common/http'; -import { NgModule } from '@angular/core'; -import { BrowserModule, makeStateKey, TransferState } from '@angular/platform-browser'; -import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; -import { RouterModule } from '@angular/router'; -import { REQUEST } from '@nguniversal/express-engine/tokens'; -import { TranslateLoader, TranslateModule } from '@ngx-translate/core'; -import { TranslateHttpLoader } from '@ngx-translate/http-loader'; -import { IdlePreload, IdlePreloadModule } from 'angular-idle-preload'; -import { AppComponent } from '../../app/app.component'; -import { AppModule } from '../../app/app.module'; -import { DSpaceBrowserTransferStateModule } from '../transfer-state/dspace-browser-transfer-state.module'; -import { DSpaceTransferState } from '../transfer-state/dspace-transfer-state.service'; -import { ClientCookieService } from '../../app/shared/services/client-cookie.service'; -import { CookieService } from '../../app/shared/services/cookie.service'; -import { AuthService } from '../../app/core/auth/auth.service'; -import { Angulartics2Module } from 'angulartics2'; -import { Angulartics2GoogleAnalytics } from 'angulartics2/ga'; -import { SubmissionService } from '../../app/submission/submission.service'; -export var REQ_KEY = makeStateKey('req'); -export function createTranslateLoader(http) { - return new TranslateHttpLoader(http, 'assets/i18n/', '.json'); -} -export function getRequest(transferState) { - return transferState.get(REQ_KEY, {}); -} -var BrowserAppModule = /** @class */ (function () { - function BrowserAppModule(transferState) { - this.transferState = transferState; - this.transferState.transfer(); - } - BrowserAppModule = tslib_1.__decorate([ - NgModule({ - bootstrap: [AppComponent], - imports: [ - BrowserModule.withServerTransition({ - appId: 'dspace-angular' - }), - HttpClientModule, - // forRoot ensures the providers are only created once - IdlePreloadModule.forRoot(), - RouterModule.forRoot([], { - // enableTracing: true, - useHash: false, - preloadingStrategy: IdlePreload - }), - Angulartics2Module.forRoot([Angulartics2GoogleAnalytics]), - BrowserAnimationsModule, - DSpaceBrowserTransferStateModule, - TranslateModule.forRoot({ - loader: { - provide: TranslateLoader, - useFactory: (createTranslateLoader), - deps: [HttpClient] - } - }), - AppModule - ], - providers: [ - { - provide: REQUEST, - useFactory: getRequest, - deps: [TransferState] - }, - { - provide: AuthService, - useClass: AuthService - }, - { - provide: CookieService, - useClass: ClientCookieService - }, - { - provide: SubmissionService, - useClass: SubmissionService - } - ] - }), - tslib_1.__metadata("design:paramtypes", [DSpaceTransferState]) - ], BrowserAppModule); - return BrowserAppModule; -}()); -export { BrowserAppModule }; -//# sourceMappingURL=browser-app.module.js.map \ No newline at end of file diff --git a/src/modules/app/browser-app.module.js.map b/src/modules/app/browser-app.module.js.map deleted file mode 100644 index fbe8922fc1..0000000000 --- a/src/modules/app/browser-app.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"browser-app.module.js","sourceRoot":"","sources":["browser-app.module.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/modules/app/server-app.module.js b/src/modules/app/server-app.module.js deleted file mode 100644 index 38ab19c0e2..0000000000 --- a/src/modules/app/server-app.module.js +++ /dev/null @@ -1,75 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { BrowserModule } from '@angular/platform-browser'; -import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { ServerModule } from '@angular/platform-server'; -import { RouterModule } from '@angular/router'; -import { TranslateLoader, TranslateModule } from '@ngx-translate/core'; -import { AppComponent } from '../../app/app.component'; -import { AppModule } from '../../app/app.module'; -import { DSpaceServerTransferStateModule } from '../transfer-state/dspace-server-transfer-state.module'; -import { DSpaceTransferState } from '../transfer-state/dspace-transfer-state.service'; -import { TranslateUniversalLoader } from '../translate-universal-loader'; -import { CookieService } from '../../app/shared/services/cookie.service'; -import { ServerCookieService } from '../../app/shared/services/server-cookie.service'; -import { AuthService } from '../../app/core/auth/auth.service'; -import { ServerAuthService } from '../../app/core/auth/server-auth.service'; -import { Angulartics2GoogleAnalytics } from 'angulartics2/ga'; -import { AngularticsMock } from '../../app/shared/mocks/mock-angulartics.service'; -import { SubmissionService } from '../../app/submission/submission.service'; -import { ServerSubmissionService } from '../../app/submission/server-submission.service'; -export function createTranslateLoader() { - return new TranslateUniversalLoader('dist/assets/i18n/', '.json'); -} -var ServerAppModule = /** @class */ (function () { - function ServerAppModule(transferState) { - this.transferState = transferState; - this.transferState.transfer(); - } - ServerAppModule = tslib_1.__decorate([ - NgModule({ - bootstrap: [AppComponent], - imports: [ - BrowserModule.withServerTransition({ - appId: 'dspace-angular' - }), - RouterModule.forRoot([], { - useHash: false - }), - NoopAnimationsModule, - DSpaceServerTransferStateModule, - TranslateModule.forRoot({ - loader: { - provide: TranslateLoader, - useFactory: (createTranslateLoader), - deps: [] - } - }), - ServerModule, - AppModule - ], - providers: [ - { - provide: Angulartics2GoogleAnalytics, - useClass: AngularticsMock - }, - { - provide: AuthService, - useClass: ServerAuthService - }, - { - provide: CookieService, - useClass: ServerCookieService - }, - { - provide: SubmissionService, - useClass: ServerSubmissionService - }, - ] - }), - tslib_1.__metadata("design:paramtypes", [DSpaceTransferState]) - ], ServerAppModule); - return ServerAppModule; -}()); -export { ServerAppModule }; -//# sourceMappingURL=server-app.module.js.map \ No newline at end of file diff --git a/src/modules/app/server-app.module.js.map b/src/modules/app/server-app.module.js.map deleted file mode 100644 index 0e08849b48..0000000000 --- a/src/modules/app/server-app.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server-app.module.js","sourceRoot":"","sources":["server-app.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,uDAAuD,CAAC;AACxG,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAEtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAE5E,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAEzF,MAAM;IACJ,OAAO,IAAI,wBAAwB,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AA0CD;IACE,yBACU,aAAkC;QAAlC,kBAAa,GAAb,aAAa,CAAqB;QAE1C,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IALU,eAAe;QAxC3B,QAAQ,CAAC;YACR,SAAS,EAAE,CAAC,YAAY,CAAC;YACzB,OAAO,EAAE;gBACP,aAAa,CAAC,oBAAoB,CAAC;oBACjC,KAAK,EAAE,gBAAgB;iBACxB,CAAC;gBACF,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE;oBACvB,OAAO,EAAE,KAAK;iBACf,CAAC;gBACF,oBAAoB;gBACpB,+BAA+B;gBAC/B,eAAe,CAAC,OAAO,CAAC;oBACtB,MAAM,EAAE;wBACN,OAAO,EAAE,eAAe;wBACxB,UAAU,EAAE,CAAC,qBAAqB,CAAC;wBACnC,IAAI,EAAE,EAAE;qBACT;iBACF,CAAC;gBACF,YAAY;gBACZ,SAAS;aACV;YACD,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,2BAA2B;oBACpC,QAAQ,EAAE,eAAe;iBAC1B;gBACD;oBACE,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,iBAAiB;iBAC5B;gBACD;oBACE,OAAO,EAAE,aAAa;oBACtB,QAAQ,EAAE,mBAAmB;iBAC9B;gBACD;oBACE,OAAO,EAAE,iBAAiB;oBAC1B,QAAQ,EAAE,uBAAuB;iBAClC;aACF;SACF,CAAC;iDAGyB,mBAAmB;OAFjC,eAAe,CAM3B;IAAD,sBAAC;CAAA,AAND,IAMC;SANY,eAAe"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-browser-transfer-state.module.js b/src/modules/transfer-state/dspace-browser-transfer-state.module.js deleted file mode 100644 index 5e64af701d..0000000000 --- a/src/modules/transfer-state/dspace-browser-transfer-state.module.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { BrowserTransferStateModule } from '@angular/platform-browser'; -import { DSpaceBrowserTransferState } from './dspace-browser-transfer-state.service'; -import { DSpaceTransferState } from './dspace-transfer-state.service'; -var DSpaceBrowserTransferStateModule = /** @class */ (function () { - function DSpaceBrowserTransferStateModule() { - } - DSpaceBrowserTransferStateModule = tslib_1.__decorate([ - NgModule({ - imports: [ - BrowserTransferStateModule - ], - providers: [ - { provide: DSpaceTransferState, useClass: DSpaceBrowserTransferState } - ] - }) - ], DSpaceBrowserTransferStateModule); - return DSpaceBrowserTransferStateModule; -}()); -export { DSpaceBrowserTransferStateModule }; -//# sourceMappingURL=dspace-browser-transfer-state.module.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-browser-transfer-state.module.js.map b/src/modules/transfer-state/dspace-browser-transfer-state.module.js.map deleted file mode 100644 index 6ec3b7eefe..0000000000 --- a/src/modules/transfer-state/dspace-browser-transfer-state.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-browser-transfer-state.module.js","sourceRoot":"","sources":["dspace-browser-transfer-state.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAUtE;IAAA;IAEA,CAAC;IAFY,gCAAgC;QAR5C,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,0BAA0B;aAC3B;YACD,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,0BAA0B,EAAE;aACvE;SACF,CAAC;OACW,gCAAgC,CAE5C;IAAD,uCAAC;CAAA,AAFD,IAEC;SAFY,gCAAgC"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-browser-transfer-state.service.js b/src/modules/transfer-state/dspace-browser-transfer-state.service.js deleted file mode 100644 index 774e8d1790..0000000000 --- a/src/modules/transfer-state/dspace-browser-transfer-state.service.js +++ /dev/null @@ -1,21 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { StoreAction, StoreActionTypes } from '../../app/store.actions'; -import { DSpaceTransferState } from './dspace-transfer-state.service'; -var DSpaceBrowserTransferState = /** @class */ (function (_super) { - tslib_1.__extends(DSpaceBrowserTransferState, _super); - function DSpaceBrowserTransferState() { - return _super !== null && _super.apply(this, arguments) || this; - } - DSpaceBrowserTransferState.prototype.transfer = function () { - var state = this.transferState.get(DSpaceTransferState.NGRX_STATE, null); - this.transferState.remove(DSpaceTransferState.NGRX_STATE); - this.store.dispatch(new StoreAction(StoreActionTypes.REHYDRATE, state)); - }; - DSpaceBrowserTransferState = tslib_1.__decorate([ - Injectable() - ], DSpaceBrowserTransferState); - return DSpaceBrowserTransferState; -}(DSpaceTransferState)); -export { DSpaceBrowserTransferState }; -//# sourceMappingURL=dspace-browser-transfer-state.service.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-browser-transfer-state.service.js.map b/src/modules/transfer-state/dspace-browser-transfer-state.service.js.map deleted file mode 100644 index b3f9e66d28..0000000000 --- a/src/modules/transfer-state/dspace-browser-transfer-state.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-browser-transfer-state.service.js","sourceRoot":"","sources":["dspace-browser-transfer-state.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGtE;IAAgD,sDAAmB;IAAnE;;IAMA,CAAC;IALC,6CAAQ,GAAR;QACE,IAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAM,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAChF,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAC1E,CAAC;IALU,0BAA0B;QADtC,UAAU,EAAE;OACA,0BAA0B,CAMtC;IAAD,iCAAC;CAAA,AAND,CAAgD,mBAAmB,GAMlE;SANY,0BAA0B"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-server-transfer-state.module.js b/src/modules/transfer-state/dspace-server-transfer-state.module.js deleted file mode 100644 index 25e4fbad35..0000000000 --- a/src/modules/transfer-state/dspace-server-transfer-state.module.js +++ /dev/null @@ -1,22 +0,0 @@ -import * as tslib_1 from "tslib"; -import { NgModule } from '@angular/core'; -import { ServerTransferStateModule } from '@angular/platform-server'; -import { DSpaceServerTransferState } from './dspace-server-transfer-state.service'; -import { DSpaceTransferState } from './dspace-transfer-state.service'; -var DSpaceServerTransferStateModule = /** @class */ (function () { - function DSpaceServerTransferStateModule() { - } - DSpaceServerTransferStateModule = tslib_1.__decorate([ - NgModule({ - imports: [ - ServerTransferStateModule - ], - providers: [ - { provide: DSpaceTransferState, useClass: DSpaceServerTransferState } - ] - }) - ], DSpaceServerTransferStateModule); - return DSpaceServerTransferStateModule; -}()); -export { DSpaceServerTransferStateModule }; -//# sourceMappingURL=dspace-server-transfer-state.module.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-server-transfer-state.module.js.map b/src/modules/transfer-state/dspace-server-transfer-state.module.js.map deleted file mode 100644 index e404b85d9f..0000000000 --- a/src/modules/transfer-state/dspace-server-transfer-state.module.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-server-transfer-state.module.js","sourceRoot":"","sources":["dspace-server-transfer-state.module.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAUtE;IAAA;IAEA,CAAC;IAFY,+BAA+B;QAR3C,QAAQ,CAAC;YACR,OAAO,EAAE;gBACP,yBAAyB;aAC1B;YACD,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,yBAAyB,EAAE;aACtE;SACF,CAAC;OACW,+BAA+B,CAE3C;IAAD,sCAAC;CAAA,AAFD,IAEC;SAFY,+BAA+B"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-server-transfer-state.service.js b/src/modules/transfer-state/dspace-server-transfer-state.service.js deleted file mode 100644 index 01dccefa1d..0000000000 --- a/src/modules/transfer-state/dspace-server-transfer-state.service.js +++ /dev/null @@ -1,26 +0,0 @@ -import * as tslib_1 from "tslib"; -import { take } from 'rxjs/operators'; -import { Injectable } from '@angular/core'; -import { DSpaceTransferState } from './dspace-transfer-state.service'; -var DSpaceServerTransferState = /** @class */ (function (_super) { - tslib_1.__extends(DSpaceServerTransferState, _super); - function DSpaceServerTransferState() { - return _super !== null && _super.apply(this, arguments) || this; - } - DSpaceServerTransferState.prototype.transfer = function () { - var _this = this; - this.transferState.onSerialize(DSpaceTransferState.NGRX_STATE, function () { - var state; - _this.store.pipe(take(1)).subscribe(function (saveState) { - state = saveState; - }); - return state; - }); - }; - DSpaceServerTransferState = tslib_1.__decorate([ - Injectable() - ], DSpaceServerTransferState); - return DSpaceServerTransferState; -}(DSpaceTransferState)); -export { DSpaceServerTransferState }; -//# sourceMappingURL=dspace-server-transfer-state.service.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-server-transfer-state.service.js.map b/src/modules/transfer-state/dspace-server-transfer-state.service.js.map deleted file mode 100644 index d29d9a3a81..0000000000 --- a/src/modules/transfer-state/dspace-server-transfer-state.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-server-transfer-state.service.js","sourceRoot":"","sources":["dspace-server-transfer-state.service.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGtE;IAA+C,qDAAmB;IAAlE;;IAWA,CAAC;IAVC,4CAAQ,GAAR;QAAA,iBASC;QARC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,mBAAmB,CAAC,UAAU,EAAE;YAC7D,IAAI,KAAK,CAAC;YACV,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAC,SAAc;gBAChD,KAAK,GAAG,SAAS,CAAC;YACpB,CAAC,CAAC,CAAC;YAEH,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAVU,yBAAyB;QADrC,UAAU,EAAE;OACA,yBAAyB,CAWrC;IAAD,gCAAC;CAAA,AAXD,CAA+C,mBAAmB,GAWjE;SAXY,yBAAyB"} \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-transfer-state.service.js b/src/modules/transfer-state/dspace-transfer-state.service.js deleted file mode 100644 index 434e48201e..0000000000 --- a/src/modules/transfer-state/dspace-transfer-state.service.js +++ /dev/null @@ -1,19 +0,0 @@ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { makeStateKey, TransferState } from '@angular/platform-browser'; -import { Store } from '@ngrx/store'; -var DSpaceTransferState = /** @class */ (function () { - function DSpaceTransferState(transferState, store) { - this.transferState = transferState; - this.store = store; - } - DSpaceTransferState.NGRX_STATE = makeStateKey('NGRX_STATE'); - DSpaceTransferState = tslib_1.__decorate([ - Injectable(), - tslib_1.__metadata("design:paramtypes", [TransferState, - Store]) - ], DSpaceTransferState); - return DSpaceTransferState; -}()); -export { DSpaceTransferState }; -//# sourceMappingURL=dspace-transfer-state.service.js.map \ No newline at end of file diff --git a/src/modules/transfer-state/dspace-transfer-state.service.js.map b/src/modules/transfer-state/dspace-transfer-state.service.js.map deleted file mode 100644 index 88c5123d45..0000000000 --- a/src/modules/transfer-state/dspace-transfer-state.service.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"dspace-transfer-state.service.js","sourceRoot":"","sources":["dspace-transfer-state.service.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC;IAIE,6BACY,aAA4B,EAC5B,KAAsB;QADtB,kBAAa,GAAb,aAAa,CAAe;QAC5B,UAAK,GAAL,KAAK,CAAiB;IAElC,CAAC;IANgB,8BAAU,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IAFrC,mBAAmB;QADxC,UAAU,EAAE;iDAMgB,aAAa;YACrB,KAAK;OANJ,mBAAmB,CAWxC;IAAD,0BAAC;CAAA,AAXD,IAWC;SAXqB,mBAAmB"} \ No newline at end of file diff --git a/src/modules/translate-universal-loader.js b/src/modules/translate-universal-loader.js deleted file mode 100644 index 6cac95a730..0000000000 --- a/src/modules/translate-universal-loader.js +++ /dev/null @@ -1,20 +0,0 @@ -import { Observable } from 'rxjs'; -import * as fs from 'fs'; -var TranslateUniversalLoader = /** @class */ (function () { - function TranslateUniversalLoader(prefix, suffix) { - if (prefix === void 0) { prefix = 'dist/assets/i18n/'; } - if (suffix === void 0) { suffix = '.json'; } - this.prefix = prefix; - this.suffix = suffix; - } - TranslateUniversalLoader.prototype.getTranslation = function (lang) { - var _this = this; - return Observable.create(function (observer) { - observer.next(JSON.parse(fs.readFileSync("" + _this.prefix + lang + _this.suffix, 'utf8'))); - observer.complete(); - }); - }; - return TranslateUniversalLoader; -}()); -export { TranslateUniversalLoader }; -//# sourceMappingURL=translate-universal-loader.js.map \ No newline at end of file diff --git a/src/modules/translate-universal-loader.js.map b/src/modules/translate-universal-loader.js.map deleted file mode 100644 index eb0c1e40f4..0000000000 --- a/src/modules/translate-universal-loader.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"translate-universal-loader.js","sourceRoot":"","sources":["translate-universal-loader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB;IAEE,kCAAoB,MAAoC,EAAU,MAAwB;QAAtE,uBAAA,EAAA,4BAAoC;QAAU,uBAAA,EAAA,gBAAwB;QAAtE,WAAM,GAAN,MAAM,CAA8B;QAAU,WAAM,GAAN,MAAM,CAAkB;IAAI,CAAC;IAExF,iDAAc,GAArB,UAAsB,IAAY;QAAlC,iBAKC;QAJC,OAAO,UAAU,CAAC,MAAM,CAAC,UAAC,QAAa;YACrC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,KAAG,KAAI,CAAC,MAAM,GAAG,IAAI,GAAG,KAAI,CAAC,MAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1F,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAEH,+BAAC;AAAD,CAAC,AAXD,IAWC"} \ No newline at end of file diff --git a/src/routes.js b/src/routes.js deleted file mode 100644 index 296b892486..0000000000 --- a/src/routes.js +++ /dev/null @@ -1,16 +0,0 @@ -export var ROUTES = [ - 'home', - 'items/:id', - 'login', - 'logout', - 'collections/:id', - 'communities/:id', - 'login', - 'logout', - 'search', - 'submit', - 'workspaceitems/:id/edit', - 'workflowitems/:id/edit', - '**' -]; -//# sourceMappingURL=routes.js.map \ No newline at end of file diff --git a/src/routes.js.map b/src/routes.js.map deleted file mode 100644 index 85ad1043f9..0000000000 --- a/src/routes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"routes.js","sourceRoot":"","sources":["routes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,MAAM,GAAa;IAC9B,MAAM;IACN,WAAW;IACX,OAAO;IACP,QAAQ;IACR,iBAAiB;IACjB,iBAAiB;IACjB,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,yBAAyB;IACzB,wBAAwB;IACxB,IAAI;CACL,CAAC"} \ No newline at end of file diff --git a/src/server.js b/src/server.js deleted file mode 100644 index 4090403129..0000000000 --- a/src/server.js +++ /dev/null @@ -1,129 +0,0 @@ -import 'zone.js/dist/zone-node'; -import 'reflect-metadata'; -import 'rxjs'; -import * as fs from 'fs'; -import * as pem from 'pem'; -import * as https from 'https'; -import * as morgan from 'morgan'; -import * as express from 'express'; -import * as bodyParser from 'body-parser'; -import * as compression from 'compression'; -import * as cookieParser from 'cookie-parser'; -import { enableProdMode } from '@angular/core'; -import { ngExpressEngine } from '@nguniversal/express-engine'; -import { ROUTES } from './routes'; -import { ENV_CONFIG } from './config'; -import { REQUEST, RESPONSE } from '@nguniversal/express-engine/tokens'; -export function startServer(bootstrap) { - var app = express(); - if (ENV_CONFIG.production) { - enableProdMode(); - app.use(compression()); - } - app.use(morgan('dev')); - app.use(cookieParser()); - app.use(bodyParser.json()); - app.engine('html', function (_, options, callback) { - return ngExpressEngine({ - bootstrap: bootstrap, - providers: [ - { - provide: REQUEST, - useValue: options.req, - }, - { - provide: RESPONSE, - useValue: options.req.res, - }, - ], - })(_, options, callback); - }); - app.set('view engine', 'html'); - app.set('views', 'src'); - function cacheControl(req, res, next) { - // instruct browser to revalidate - res.header('Cache-Control', ENV_CONFIG.cache.control || 'max-age=60'); - next(); - } - app.use('/', cacheControl, express.static('dist', { index: false })); - // TODO: either remove or update mock backend - // app.get('/data.json', serverApi); - // app.use('/api', createMockApi()); - function ngApp(req, res) { - function onHandleError(parentZoneDelegate, currentZone, targetZone, error) { - if (!res._headerSent) { - console.warn('Error in SSR, serving for direct CSR'); - res.sendFile('index.csr.html', { root: './src' }); - } - } - if (ENV_CONFIG.universal.preboot) { - Zone.current.fork({ name: 'CSR fallback', onHandleError: onHandleError }).run(function () { - res.render('../dist/index', { - req: req, - res: res, - preboot: ENV_CONFIG.universal.preboot, - async: ENV_CONFIG.universal.async, - time: ENV_CONFIG.universal.time, - baseUrl: ENV_CONFIG.ui.nameSpace, - originUrl: ENV_CONFIG.ui.baseUrl, - requestUrl: req.originalUrl - }); - }); - } - else { - console.log('Universal off, serving for direct CSR'); - res.sendFile('index.csr.html', { root: './src' }); - } - } - ROUTES.forEach(function (route) { - app.get(route, ngApp); - }); - function serverStarted() { - console.log("[" + new Date().toTimeString() + "] Listening at " + ENV_CONFIG.ui.baseUrl); - } - function createHttpsServer(keys) { - https.createServer({ - key: keys.serviceKey, - cert: keys.certificate - }, app).listen(ENV_CONFIG.ui.port, ENV_CONFIG.ui.host, function () { - serverStarted(); - }); - } - if (ENV_CONFIG.ui.ssl) { - var serviceKey = void 0; - try { - serviceKey = fs.readFileSync('./config/ssl/key.pem'); - } - catch (e) { - console.warn('Service key not found at ./config/ssl/key.pem'); - } - var certificate = void 0; - try { - certificate = fs.readFileSync('./config/ssl/cert.pem'); - } - catch (e) { - console.warn('Certificate not found at ./config/ssl/key.pem'); - } - if (serviceKey && certificate) { - createHttpsServer({ - serviceKey: serviceKey, - certificate: certificate - }); - } - else { - process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'; - pem.createCertificate({ - days: 1, - selfSigned: true - }, function (error, keys) { - createHttpsServer(keys); - }); - } - } - else { - app.listen(ENV_CONFIG.ui.port, ENV_CONFIG.ui.host, function () { - serverStarted(); - }); - } -} -//# sourceMappingURL=server.js.map \ No newline at end of file diff --git a/src/server.js.map b/src/server.js.map deleted file mode 100644 index 8dbac3e4ea..0000000000 --- a/src/server.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"server.js","sourceRoot":"","sources":["server.ts"],"names":[],"mappings":"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"} \ No newline at end of file From 8af15d06bcd685c64ff6e3f774718f6dcca8c813 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 15 Jul 2019 11:44:31 +0200 Subject: [PATCH 047/171] Moved Shibboleth route to DECLARATIONS array --- src/app/app.module.ts | 6 +++--- src/app/core/auth/models/auth-status.model.ts | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/app/app.module.ts b/src/app/app.module.ts index eaf0dc053b..30520eb364 100755 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -112,7 +112,8 @@ const DECLARATIONS = [ FooterComponent, PageNotFoundComponent, NotificationComponent, - NotificationsBoardComponent + NotificationsBoardComponent, + ShibbolethComponent ]; const EXPORTS = [ @@ -128,8 +129,7 @@ const EXPORTS = [ ...PROVIDERS ], declarations: [ - ...DECLARATIONS, - ShibbolethComponent, + ...DECLARATIONS ], exports: [ ...EXPORTS diff --git a/src/app/core/auth/models/auth-status.model.ts b/src/app/core/auth/models/auth-status.model.ts index c521ebc800..c637bdebef 100644 --- a/src/app/core/auth/models/auth-status.model.ts +++ b/src/app/core/auth/models/auth-status.model.ts @@ -53,4 +53,6 @@ export class AuthStatus implements CacheableObject { * The self link of this auth status' REST object */ self: string; + + ssoLoginUrl: string; } From fb44c0243754abd834ac45b04d0349ed6b21665d Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 15 Jul 2019 12:50:30 +0200 Subject: [PATCH 048/171] Changed home-news.component.html to original state --- src/app/+home-page/home-news/home-news.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/+home-page/home-news/home-news.component.html b/src/app/+home-page/home-news/home-news.component.html index 047eb296a6..28e10c5804 100644 --- a/src/app/+home-page/home-news/home-news.component.html +++ b/src/app/+home-page/home-news/home-news.component.html @@ -3,7 +3,7 @@
-

TU WIEN DSpace 7 Preview

+

Welcome to the DSpace 7 Preview

DSpace is the world leading open source repository platform that enables organisations to:

From f086ee79a513a72d5f135b7014aa42615c0b38e9 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Fri, 2 Aug 2019 13:05:57 +0200 Subject: [PATCH 049/171] Removed double ssoLoginUrl from auth.state --- src/app/app-routing.module.ts | 56 ++++++++++++------- src/app/core/auth/models/auth-status.model.ts | 2 - 2 files changed, 36 insertions(+), 22 deletions(-) diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index f3196ffeed..1ba62acce5 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -1,41 +1,57 @@ -import { NgModule } from '@angular/core'; -import { RouterModule } from '@angular/router'; +import {NgModule} from '@angular/core'; +import {RouterModule} from '@angular/router'; -import { PageNotFoundComponent } from './pagenotfound/pagenotfound.component'; -import { AuthenticatedGuard } from './core/auth/authenticated.guard'; +import {PageNotFoundComponent} from './pagenotfound/pagenotfound.component'; +import {AuthenticatedGuard} from './core/auth/authenticated.guard'; import {ShibbolethComponent} from './+login-page/shibboleth/shibboleth.component'; const ITEM_MODULE_PATH = 'items'; + export function getItemModulePath() { return `/${ITEM_MODULE_PATH}`; } + const COLLECTION_MODULE_PATH = 'collections'; + export function getCollectionModulePath() { return `/${COLLECTION_MODULE_PATH}`; } + const COMMUNITY_MODULE_PATH = 'communities'; + export function getCommunityModulePath() { return `/${COMMUNITY_MODULE_PATH}`; } + @NgModule({ imports: [ RouterModule.forRoot([ - { path: '', redirectTo: '/home', pathMatch: 'full' }, - { path: 'home', loadChildren: './+home-page/home-page.module#HomePageModule' }, - { path: COMMUNITY_MODULE_PATH, loadChildren: './+community-page/community-page.module#CommunityPageModule' }, - { path: COLLECTION_MODULE_PATH, loadChildren: './+collection-page/collection-page.module#CollectionPageModule' }, - { path: ITEM_MODULE_PATH, loadChildren: './+item-page/item-page.module#ItemPageModule' }, - { path: 'mydspace', loadChildren: './+my-dspace-page/my-dspace-page.module#MyDSpacePageModule', canActivate: [AuthenticatedGuard] }, - { path: 'search', loadChildren: './+search-page/search-page.module#SearchPageModule' }, - { path: 'browse', loadChildren: './+browse-by/browse-by.module#BrowseByModule' }, - { path: 'admin', loadChildren: './+admin/admin.module#AdminModule', canActivate: [AuthenticatedGuard] }, - { path: 'login', loadChildren: './+login-page/login-page.module#LoginPageModule' }, - { path: 'logout', loadChildren: './+logout-page/logout-page.module#LogoutPageModule' }, - { path: 'submit', loadChildren: './+submit-page/submit-page.module#SubmitPageModule' }, - { path: 'workspaceitems', loadChildren: './+workspaceitems-edit-page/workspaceitems-edit-page.module#WorkspaceitemsEditPageModule' }, - { path: 'workflowitems', loadChildren: './+workflowitems-edit-page/workflowitems-edit-page.module#WorkflowitemsEditPageModule' }, - { path: 'shibboleth', pathMatch: 'full', component: ShibbolethComponent }, - { path: '**', pathMatch: 'full', component: PageNotFoundComponent }, + {path: '', redirectTo: '/home', pathMatch: 'full'}, + {path: 'home', loadChildren: './+home-page/home-page.module#HomePageModule'}, + {path: COMMUNITY_MODULE_PATH, loadChildren: './+community-page/community-page.module#CommunityPageModule'}, + {path: COLLECTION_MODULE_PATH, loadChildren: './+collection-page/collection-page.module#CollectionPageModule'}, + {path: ITEM_MODULE_PATH, loadChildren: './+item-page/item-page.module#ItemPageModule'}, + { + path: 'mydspace', + loadChildren: './+my-dspace-page/my-dspace-page.module#MyDSpacePageModule', + canActivate: [AuthenticatedGuard] + }, + {path: 'search', loadChildren: './+search-page/search-page.module#SearchPageModule'}, + {path: 'browse', loadChildren: './+browse-by/browse-by.module#BrowseByModule'}, + {path: 'admin', loadChildren: './+admin/admin.module#AdminModule', canActivate: [AuthenticatedGuard]}, + {path: 'login', loadChildren: './+login-page/login-page.module#LoginPageModule'}, + {path: 'logout', loadChildren: './+logout-page/logout-page.module#LogoutPageModule'}, + {path: 'submit', loadChildren: './+submit-page/submit-page.module#SubmitPageModule'}, + {path: 'shibboleth', pathMatch: 'full', component: ShibbolethComponent}, + { + path: 'workspaceitems', + loadChildren: './+workspaceitems-edit-page/workspaceitems-edit-page.module#WorkspaceitemsEditPageModule' + }, + /* { + path: 'workflowitems', + loadChildren: './+workflowitems-edit-page/workflowitems-edit-page.module#WorkflowitemsEditPageModule' + },*/ + {path: '**', pathMatch: 'full', component: PageNotFoundComponent}, ]) ], exports: [RouterModule] diff --git a/src/app/core/auth/models/auth-status.model.ts b/src/app/core/auth/models/auth-status.model.ts index c637bdebef..19b69479f4 100644 --- a/src/app/core/auth/models/auth-status.model.ts +++ b/src/app/core/auth/models/auth-status.model.ts @@ -42,8 +42,6 @@ export class AuthStatus implements CacheableObject { */ eperson: Observable>; - ssoLoginUrl?: string; - /** * True if the token is valid, false if there was no token or the token wasn't valid */ From d25f12590db0f291916d2479b1a21828144f8086 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 5 Aug 2019 09:00:13 +0200 Subject: [PATCH 050/171] Branch upadate --- src/app/app-routing.module.ts | 6 +++--- src/app/core/auth/auth.interceptor.ts | 20 ++++++++++++++++--- src/app/core/auth/models/auth-method.model.ts | 4 ++++ src/app/core/auth/models/auth-status.model.ts | 4 ++++ .../models/normalized-auth-status.model.ts | 2 ++ 5 files changed, 30 insertions(+), 6 deletions(-) create mode 100644 src/app/core/auth/models/auth-method.model.ts diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 1ba62acce5..9611e98325 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -47,10 +47,10 @@ export function getCommunityModulePath() { path: 'workspaceitems', loadChildren: './+workspaceitems-edit-page/workspaceitems-edit-page.module#WorkspaceitemsEditPageModule' }, - /* { + { path: 'workflowitems', - loadChildren: './+workflowitems-edit-page/workflowitems-edit-page.module#WorkflowitemsEditPageModule' - },*/ + loadChildren: './+workflowitems-edit-page/workflowitems-edit-page.module#WorkflowItemsEditPageModule' // WorkflowItemsEditPageModule + }, {path: '**', pathMatch: 'full', component: PageNotFoundComponent}, ]) ], diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 994d39f33a..5803f0a4c8 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -22,6 +22,7 @@ import {RedirectWhenTokenExpiredAction, RefreshTokenAction} from './auth.actions import {Store} from '@ngrx/store'; import {Router} from '@angular/router'; import {AuthError} from './models/auth-error.model'; +import {AuthMethodModel} from './models/auth-method.model'; @Injectable() export class AuthInterceptor implements HttpInterceptor { @@ -31,6 +32,8 @@ export class AuthInterceptor implements HttpInterceptor { // we're creating a refresh token request list protected refreshTokenRequestUrls = []; + private + constructor(private inj: Injector, private router: Router, private store: Store) { } @@ -62,11 +65,22 @@ export class AuthInterceptor implements HttpInterceptor { return http.url && http.url.endsWith('/authn/logout'); } - private makeAuthStatusObject(authenticated: boolean, accessToken?: string, error?: string, location?: string): AuthStatus { + private parseAuthMethodsfromHeaders(headers: HttpHeaders): AuthMethodModel[] { + console.log('parseAuthMethodsfromHeaders(): ', headers); + // errorHeaders + return []; + } + + private makeAuthStatusObject(authenticated: boolean, accessToken?: string, error?: string, location?: string, httpHeaders?: HttpHeaders, ): AuthStatus { const authStatus = new AuthStatus(); + + const authMethods: AuthMethodModel[] = this.parseAuthMethodsfromHeaders(httpHeaders); authStatus.id = null; + authStatus.okay = true; - authStatus.ssoLoginUrl = location; // this line was added while developing shibboleth login + authStatus.authMethods = authMethods; + + authStatus.ssoLoginUrl = location; // this line was added while developing shibboleth login 1.0 - remove it if (authenticated) { authStatus.authenticated = true; authStatus.token = new AuthTokenInfo(accessToken); @@ -179,7 +193,7 @@ export class AuthInterceptor implements HttpInterceptor { } // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ - body: this.makeAuthStatusObject(false, null, error.error, location), + body: this.makeAuthStatusObject(false, null, error.error, location, error.headers ), headers: error.headers, status: error.status, statusText: error.statusText, diff --git a/src/app/core/auth/models/auth-method.model.ts b/src/app/core/auth/models/auth-method.model.ts new file mode 100644 index 0000000000..f27368f68d --- /dev/null +++ b/src/app/core/auth/models/auth-method.model.ts @@ -0,0 +1,4 @@ +export class AuthMethodModel { + authMethodName: string; + location?: string; +} diff --git a/src/app/core/auth/models/auth-status.model.ts b/src/app/core/auth/models/auth-status.model.ts index 19b69479f4..5299b5978b 100644 --- a/src/app/core/auth/models/auth-status.model.ts +++ b/src/app/core/auth/models/auth-status.model.ts @@ -5,6 +5,7 @@ import { RemoteData } from '../../data/remote-data'; import { Observable } from 'rxjs'; import { CacheableObject } from '../../cache/object-cache.reducer'; import { ResourceType } from '../../shared/resource-type'; +import {AuthMethodModel} from './auth-method.model'; /** * Object that represents the authenticated status of a user @@ -53,4 +54,7 @@ export class AuthStatus implements CacheableObject { self: string; ssoLoginUrl: string; + + authMethods: AuthMethodModel[]; + } diff --git a/src/app/core/auth/models/normalized-auth-status.model.ts b/src/app/core/auth/models/normalized-auth-status.model.ts index 3892bee408..672cd5d062 100644 --- a/src/app/core/auth/models/normalized-auth-status.model.ts +++ b/src/app/core/auth/models/normalized-auth-status.model.ts @@ -4,6 +4,7 @@ import { mapsTo, relationship } from '../../cache/builders/build-decorators'; import { NormalizedObject } from '../../cache/models/normalized-object.model'; import { IDToUUIDSerializer } from '../../cache/id-to-uuid-serializer'; import { EPerson } from '../../eperson/models/eperson.model'; +import {AuthMethodModel} from './auth-method.model'; @mapsTo(AuthStatus) @inheritSerialization(NormalizedObject) @@ -38,4 +39,5 @@ export class NormalizedAuthStatus extends NormalizedObject { @relationship(EPerson, false) @autoserialize eperson: string; + } From c8f4db618e9fa9eac1501503dc11e2154c600db0 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 5 Aug 2019 14:45:57 +0200 Subject: [PATCH 051/171] Store available authentication methods in ngrx/store --- src/app/core/auth/auth.interceptor.ts | 49 ++++++++++++++++--- src/app/core/auth/auth.reducer.ts | 13 +++-- src/app/core/auth/auth.service.ts | 11 +++-- src/app/core/auth/models/auth-method.model.ts | 5 ++ src/app/core/auth/models/auth-status.model.ts | 5 +- 5 files changed, 67 insertions(+), 16 deletions(-) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 5803f0a4c8..cab03c2f4a 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -65,16 +65,53 @@ export class AuthInterceptor implements HttpInterceptor { return http.url && http.url.endsWith('/authn/logout'); } - private parseAuthMethodsfromHeaders(headers: HttpHeaders): AuthMethodModel[] { - console.log('parseAuthMethodsfromHeaders(): ', headers); - // errorHeaders - return []; + private parseShibbolethLocation(unparsedLocation: string): string { + let parsedLocation = ''; + unparsedLocation = unparsedLocation.trim(); + unparsedLocation = unparsedLocation.replace('location="', ''); + unparsedLocation = unparsedLocation.replace('"', ''); + let re = /%3A%2F%2F/g; + unparsedLocation = unparsedLocation.replace(re, '://'); + re = /%3A/g + unparsedLocation = unparsedLocation.replace(re, ':') + parsedLocation = unparsedLocation + '/shibboleth'; + + return parsedLocation; } - private makeAuthStatusObject(authenticated: boolean, accessToken?: string, error?: string, location?: string, httpHeaders?: HttpHeaders, ): AuthStatus { + private parseAuthMethodsfromHeaders(headers: HttpHeaders): AuthMethodModel[] { + // console.log('parseAuthMethodsfromHeaders(): ', headers); + const authMethodModels: AuthMethodModel[] = []; + const parts: string[] = headers.get('www-authenticate').split(','); + console.log('parts: ', parts); + // get the login methods names + // tslint:disable-next-line:forin + for (const i in parts) { + const part: string = parts[i].trim(); + if (part.includes('realm')) { + const methodName = part.split(' ')[0]; + const authMethod: AuthMethodModel = new AuthMethodModel(methodName); + // check if the authentication method is shibboleth + // if so the next part is the shibboleth location + // e.g part i: shibboleth realm="DSpace REST API", part i+1: location="/Shibboleth.sso/Login?target=https%3A%2F%2Flocalhost%3A8080" + if (methodName.includes('shibboleth')) { + console.log('Index 2: ', parts[2]); + const location: string = this.parseShibbolethLocation(parts[+i + 1]); // +1: unaray + operator is necessaray because i is a string, the operator works like parseInt() + // console.log('shib location: ', location); + authMethod.location = location; + } + authMethodModels.push(authMethod); + } + } + console.log('Array of AuthMethodModels: ', authMethodModels); + return authMethodModels; + } + + private makeAuthStatusObject(authenticated: boolean, accessToken?: string, error?: string, location?: string, httpHeaders?: HttpHeaders,): AuthStatus { const authStatus = new AuthStatus(); const authMethods: AuthMethodModel[] = this.parseAuthMethodsfromHeaders(httpHeaders); + authStatus.authMethods = authMethods; authStatus.id = null; authStatus.okay = true; @@ -193,7 +230,7 @@ export class AuthInterceptor implements HttpInterceptor { } // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ - body: this.makeAuthStatusObject(false, null, error.error, location, error.headers ), + body: this.makeAuthStatusObject(false, null, error.error, location, error.headers), headers: error.headers, status: error.status, statusText: error.statusText, diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index 745a8debe3..bb92a77901 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -14,6 +14,7 @@ import { // import models import { EPerson } from '../eperson/models/eperson.model'; import { AuthTokenInfo } from './models/auth-token-info.model'; +import {AuthMethodModel} from './models/auth-method.model'; /** * The auth state. @@ -50,6 +51,10 @@ export interface AuthState { // the authenticated user user?: EPerson; + + // all authenticationMethods enabled at the backend + authMethods?: AuthMethodModel[]; + } /** @@ -59,7 +64,8 @@ const initialState: AuthState = { authenticated: false, loaded: false, loading: false, - ssoLoginUrl: '' + ssoLoginUrl: '', + authMethods: new Array() }; /** @@ -200,15 +206,16 @@ export function authReducer(state: any = initialState, action: AuthActions): Aut // next three cases are used by shibboleth login case AuthActionTypes.RETRIEVE_AUTH_METHODS: - console.log(' case AuthActionTypes.RETRIEVE_AUTH_METHODS'); + console.log('case AuthActionTypes.RETRIEVE_AUTH_METHODS'); return Object.assign({}, state, { loading: true }); case AuthActionTypes.RETRIEVE_AUTH_METHODS_SUCCESS: + console.log('case RETRIEVE_AUTH_METHODS_SUCCESS'); return Object.assign({}, state, { loading: false, - ssoLoginUrl: (action as RetrieveAuthMethodsSuccessAction).payload + authMethods: (action as RetrieveAuthMethodsSuccessAction).payload }); case AuthActionTypes.RETRIEVE_AUTH_METHODS_ERROR: diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index 7698d605c7..dfde0b18b6 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -24,6 +24,7 @@ import {Base64EncodeUrl} from '../../shared/utils/encode-decode.util'; import {RemoteDataBuildService} from '../cache/builders/remote-data-build.service'; import {GlobalConfig} from '../../../config/global-config.interface'; import {GLOBAL_CONFIG} from '../../../config'; +import {AuthMethodModel} from './models/auth-method.model'; export const LOGIN_ROUTE = '/login'; export const LOGOUT_ROUTE = '/logout'; @@ -222,19 +223,19 @@ export class AuthService { * Retrieve authentication methods available * @returns {User} */ - public retrieveAuthMethods(): Observable { + public retrieveAuthMethods(): Observable { console.log('auth.service retrieveAuthMethods() was called'); // return this.authRequestService.getRequest('login').pipe( return this.authRequestService.postToEndpoint('login', {}).pipe( map((status: AuthStatus) => { - let url = ''; - if (isNotEmpty(status.ssoLoginUrl)) { + let authMethods: AuthMethodModel[]; + if (isNotEmpty(status.authMethods)) { // url = this.parseSSOLocation(status.ssoLoginUrl); // console.log('Parsed SSOLoginUrl: ', url); // url = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at'; - url = status.ssoLoginUrl; + authMethods = status.authMethods; } - return url; + return authMethods; }) ) } diff --git a/src/app/core/auth/models/auth-method.model.ts b/src/app/core/auth/models/auth-method.model.ts index f27368f68d..8cca76e1ae 100644 --- a/src/app/core/auth/models/auth-method.model.ts +++ b/src/app/core/auth/models/auth-method.model.ts @@ -1,4 +1,9 @@ export class AuthMethodModel { authMethodName: string; location?: string; + + constructor(authMethodName: string, location?: string) { + this.authMethodName = authMethodName; + this.location = location; + } } diff --git a/src/app/core/auth/models/auth-status.model.ts b/src/app/core/auth/models/auth-status.model.ts index 5299b5978b..e4db209f30 100644 --- a/src/app/core/auth/models/auth-status.model.ts +++ b/src/app/core/auth/models/auth-status.model.ts @@ -53,8 +53,9 @@ export class AuthStatus implements CacheableObject { */ self: string; - ssoLoginUrl: string; - + /** + * All authentication methods enabled at the backend + */ authMethods: AuthMethodModel[]; } From de8bcce8bea2c000d0e5e5f2ca3aa258d9638ce1 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 5 Aug 2019 15:17:53 +0200 Subject: [PATCH 052/171] Removed ssoLoginUrl from initial auth state --- src/app/core/auth/auth.interceptor.ts | 11 ++--------- src/app/core/auth/auth.reducer.ts | 1 - 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index cab03c2f4a..cc68de1001 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -107,7 +107,7 @@ export class AuthInterceptor implements HttpInterceptor { return authMethodModels; } - private makeAuthStatusObject(authenticated: boolean, accessToken?: string, error?: string, location?: string, httpHeaders?: HttpHeaders,): AuthStatus { + private makeAuthStatusObject(authenticated: boolean, accessToken?: string, error?: string, httpHeaders?: HttpHeaders,): AuthStatus { const authStatus = new AuthStatus(); const authMethods: AuthMethodModel[] = this.parseAuthMethodsfromHeaders(httpHeaders); @@ -117,7 +117,6 @@ export class AuthInterceptor implements HttpInterceptor { authStatus.okay = true; authStatus.authMethods = authMethods; - authStatus.ssoLoginUrl = location; // this line was added while developing shibboleth login 1.0 - remove it if (authenticated) { authStatus.authenticated = true; authStatus.token = new AuthTokenInfo(accessToken); @@ -221,16 +220,10 @@ export class AuthInterceptor implements HttpInterceptor { console.log('catchError isAuthRequest=true'); // clean eventually refresh Requests list this.refreshTokenRequestUrls = []; - // console.log('error: ', error); - let location = ''; - if (error.headers.get('www-authenticate') != null && error.headers.get('www-authenticate').includes('shibboleth realm')) { - location = this.getShibbUrlFromHeader(error.headers); - console.log('shibb url from header: ', location); - } // Create a new HttpResponse and return it, so it can be handle properly by AuthService. const authResponse = new HttpResponse({ - body: this.makeAuthStatusObject(false, null, error.error, location, error.headers), + body: this.makeAuthStatusObject(false, null, error.error, error.headers), headers: error.headers, status: error.status, statusText: error.statusText, diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index bb92a77901..b7cda09199 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -64,7 +64,6 @@ const initialState: AuthState = { authenticated: false, loaded: false, loading: false, - ssoLoginUrl: '', authMethods: new Array() }; From 12941640a435b066b853f8ebf525a928ec500688 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 5 Aug 2019 15:32:41 +0200 Subject: [PATCH 053/171] Removed old shibboleth code --- src/app/core/auth/auth.reducer.ts | 3 --- src/app/core/auth/auth.service.ts | 20 ++----------------- src/app/core/auth/selectors.ts | 16 --------------- src/app/shared/log-in/log-in.component.html | 6 ++++-- src/app/shared/log-in/log-in.component.ts | 22 +-------------------- 5 files changed, 7 insertions(+), 60 deletions(-) diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index b7cda09199..be1aa134fc 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -46,9 +46,6 @@ export interface AuthState { // true when refreshing token refreshing?: boolean; - // sso login url - ssoLoginUrl?: string; - // the authenticated user user?: EPerson; diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index dfde0b18b6..e0aecd91a0 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -230,30 +230,14 @@ export class AuthService { map((status: AuthStatus) => { let authMethods: AuthMethodModel[]; if (isNotEmpty(status.authMethods)) { - // url = this.parseSSOLocation(status.ssoLoginUrl); - // console.log('Parsed SSOLoginUrl: ', url); - // url = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at'; - authMethods = status.authMethods; + authMethods = status.authMethods; } return authMethods; }) ) } - /* private parseSSOLocation(url: string): string { - console.log('auth.service parseSSOLocation was called'); - const parseUrl = decodeURIComponent(url); - // const urlTree: UrlTree = this.router.parseUrl(url); - // this.router.parseUrl(url); - // if (url.endsWith('/')) { - // url += 'login'; - // } else { - // url = url.replace('/?target=http(.+)/g', 'https://hasselt-dspace.dev01.4science.it/dspace-spring-rest/shib.html'); - // } - // console.log(url); - const target = `?target=${this.config.auth.target.host}${this.config.auth.target.page}`; - return parseUrl.replace(/\?target=http.+/g, target); - }*/ + /** * Create a new user diff --git a/src/app/core/auth/selectors.ts b/src/app/core/auth/selectors.ts index 8888907356..0b3504088e 100644 --- a/src/app/core/auth/selectors.ts +++ b/src/app/core/auth/selectors.ts @@ -107,13 +107,6 @@ const _getRegistrationError = (state: AuthState) => state.error; */ const _getRedirectUrl = (state: AuthState) => state.redirectUrl; -/** - * Returns the sso login url. - * @function _getSSOLoginUrl - * @param {State} state - * @returns {string} - */ -const _getSSOLoginUrl = (state: AuthState) => state.ssoLoginUrl; /** * Returns the authenticated user @@ -212,12 +205,3 @@ export const getRegistrationError = createSelector(getAuthState, _getRegistratio * @return {string} */ export const getRedirectUrl = createSelector(getAuthState, _getRedirectUrl); - -/** - * Returns the sso login url. - * @function getSSOLoginUrl - * @param {AuthState} state - * @param {any} props - * @return {string} - */ -export const getSSOLoginUrl = createSelector(getAuthState, _getSSOLoginUrl); diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html index a4c1cb9e87..f6b81b89b6 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/log-in.component.html @@ -27,11 +27,13 @@ [disabled]="!form.valid">{{"login.form.submit" | translate}}
+ + + <!–
{{"login.form.or-divider" | translate}}
–> {{"login.form.ssoLogin" | translate}} -
+ --> + diff --git a/src/app/+login-page/login-page.module.ts b/src/app/+login-page/login-page.module.ts index f16f38d3bd..bd4c0a9a43 100644 --- a/src/app/+login-page/login-page.module.ts +++ b/src/app/+login-page/login-page.module.ts @@ -3,7 +3,7 @@ import { NgModule } from '@angular/core'; import { SharedModule } from '../shared/shared.module'; import { LoginPageComponent } from './login-page.component'; import { LoginPageRoutingModule } from './login-page-routing.module'; -import {ShibbolethComponent} from './shibboleth/shibboleth.component'; + @NgModule({ imports: [ @@ -13,8 +13,9 @@ import {ShibbolethComponent} from './shibboleth/shibboleth.component'; ], declarations: [ LoginPageComponent, - /* ShibbolethComponent*/ - ] + + ], + }) export class LoginPageModule { diff --git a/src/app/core/auth/models/auth-method.model.ts b/src/app/core/auth/models/auth-method.model.ts index 8cca76e1ae..b886b3120d 100644 --- a/src/app/core/auth/models/auth-method.model.ts +++ b/src/app/core/auth/models/auth-method.model.ts @@ -1,9 +1,33 @@ export class AuthMethodModel { authMethodName: string; location?: string; + authMethodConstant: AuthMethodConstants constructor(authMethodName: string, location?: string) { this.authMethodName = authMethodName; this.location = location; + switch (authMethodName) { + case 'password': { + this.authMethodConstant = AuthMethodConstants.PASSWORD; + break; + } + case 'shibboleth': { + this.authMethodConstant = AuthMethodConstants.SHIBBOLETH; + break; + } + case 'ldap': { + this.authMethodConstant = AuthMethodConstants.LDAP; + break; + } + default: { + break; + } + } } } + +export enum AuthMethodConstants { + PASSWORD, + SHIBBOLETH, + LDAP +} diff --git a/src/app/core/auth/selectors.ts b/src/app/core/auth/selectors.ts index 0b3504088e..d30f3ff27e 100644 --- a/src/app/core/auth/selectors.ts +++ b/src/app/core/auth/selectors.ts @@ -107,6 +107,17 @@ const _getRegistrationError = (state: AuthState) => state.error; */ const _getRedirectUrl = (state: AuthState) => state.redirectUrl; +// @Art: these two are the ones i added: +const _getAuthenticationMethods = (state: AuthState) => state.authMethods; + +/** + * Returns the authentication methods enabled at the backend + * @function getAuthenticationMethods + * @param {AuthState} state + * @param {any} props + * @return {any} + */ +export const getAuthenticationMethods = createSelector(getAuthState, _getAuthenticationMethods); /** * Returns the authenticated user diff --git a/src/app/shared/auth-nav-menu/auth-nav-menu.component.html b/src/app/shared/auth-nav-menu/auth-nav-menu.component.html index b560283ad5..65ee27a2d3 100644 --- a/src/app/shared/auth-nav-menu/auth-nav-menu.component.html +++ b/src/app/shared/auth-nav-menu/auth-nav-menu.component.html @@ -3,7 +3,8 @@ diff --git a/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.html b/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.html new file mode 100644 index 0000000000..c8a7eaef7d --- /dev/null +++ b/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.html @@ -0,0 +1 @@ +

This is the DynamicTestComponent

diff --git a/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.scss b/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.ts b/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.ts new file mode 100644 index 0000000000..6b328c4376 --- /dev/null +++ b/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.ts @@ -0,0 +1,21 @@ +/** + * /users/sign-in + * @class LogInComponent + */ +import {Component, OnInit} from '@angular/core'; + +@Component({ + selector: 'ds-dynamic-test', + templateUrl: './dynamic-test.component.html', + styleUrls: ['./dynamic-test.component.scss'], + +}) +export class DynamicTestComponent { + + /** + * @constructor + */ + constructor() { + // console.log('constructor of DynamicTestComponent called'); + } +} diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.html b/src/app/shared/log-in/log-in-container/log-in-container.component.html new file mode 100644 index 0000000000..e3d5e08a4e --- /dev/null +++ b/src/app/shared/log-in/log-in-container/log-in-container.component.html @@ -0,0 +1,12 @@ +
+
+ + + +
+ + + + + +
diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.ts b/src/app/shared/log-in/log-in-container/log-in-container.component.ts new file mode 100644 index 0000000000..e03b75d72c --- /dev/null +++ b/src/app/shared/log-in/log-in-container/log-in-container.component.ts @@ -0,0 +1,106 @@ +import {Component, Injector, OnDestroy, OnInit, ReflectiveInjector} from '@angular/core'; +import {AuthState} from '../../../core/auth/auth.reducer'; +import {Store} from '@ngrx/store'; +import {DynamicTestComponent} from '../DynamicTestComponent/dynamic-test.component'; +import {LogInComponent} from '../password/log-in.component'; +import {DynamicShibbolethComponent} from '../shibboleth/dynamic-shibboleth.component'; +import {getAuthenticationMethods} from '../../../core/auth/selectors'; +import {map, tap} from 'rxjs/operators'; +import {AppState} from '../../../app.reducer'; +import {Observable} from 'rxjs'; +import {DynamicLoginMethod} from './log-in-container.model'; +import {AuthMethodConstants, AuthMethodModel} from '../../../core/auth/models/auth-method.model'; +import {ShibbolethComponent} from '../../../+login-page/shibboleth/shibboleth.component'; + +@Component({ + selector: 'ds-log-in-container', + templateUrl: './log-in-container.component.html', + // styleUrls: ['./log-in.component.scss'], + +}) +export class LogInContainerComponent implements OnDestroy, OnInit { + + private dynamicLoginMethods: Observable; + private authInfoInjector: Injector; + /** + * Injector to inject a section component with the @Input parameters + * @type {Injector} + */ + public objectInjector: Injector; + private shibbolethUrl: string; + + /** + * @constructor + * @param {AuthService} authService + * @param {FormBuilder} formBuilder + * @param {Store} store + */ + constructor( + private store: Store, + private injector: Injector + + ) {} + + /** + * Lifecycle hook that is called after data-bound properties of a directive are initialized. + * @method ngOnInit + */ + public ngOnInit() { + + this.objectInjector = Injector.create({ + providers: [ + {provide: 'shibbolethUrlProvider', useFactory: () => (this.shibbolethUrl), deps: []}, + // {provide: 'sectionDataProvider', useFactory: () => (this.sectionData), deps: []}, + // {provide: 'submissionIdProvider', useFactory: () => (this.submissionId), deps: []}, + ], + parent: this.injector + }); + + this.dynamicLoginMethods = this.store.select(getAuthenticationMethods).pipe( + map(((authMethods) => authMethods.map((authMethod) => { + switch (authMethod.authMethodConstant) { + case AuthMethodConstants.PASSWORD: + return new DynamicLoginMethod(authMethod.authMethodName, LogInComponent) + break; + case AuthMethodConstants.SHIBBOLETH: + // this.shibbolethUrl = authMethod.location; + this.shibbolethUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at/shibboleth'; + return new DynamicLoginMethod(authMethod.authMethodName, DynamicShibbolethComponent, authMethod.location) + break; + default: + break; + } + } + ) + ) + ) + ); + + } + + /* this.dynamicLoginMethods = this.dynamicLoginMethods = [ + { + label: 'PasswordComponent', + component: LogInComponent + }, + { + label: 'TestComponent', + component: DynamicTestComponent + }, + { + label: 'ShibbolethComponent', + component: DynamicShibbolethComponent + }, + + ]; + }*/ + + /** + * Lifecycle hook that is called when a directive, pipe or service is destroyed. + * @method ngOnDestroy + */ + public ngOnDestroy() { + console.log('ngOnDestroy() in LogInContainerComponent was called'); + } + +} diff --git a/src/app/shared/log-in/log-in-container/log-in-container.model.ts b/src/app/shared/log-in/log-in-container/log-in-container.model.ts new file mode 100644 index 0000000000..b47f4ce935 --- /dev/null +++ b/src/app/shared/log-in/log-in-container/log-in-container.model.ts @@ -0,0 +1,11 @@ +export class DynamicLoginMethod { + label: string; + component: any; + location?: string; + + constructor(label, component, location?) { + this.label = label; + this.component = component; + this.location = location; + } +} diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/password/log-in.component.html similarity index 99% rename from src/app/shared/log-in/log-in.component.html rename to src/app/shared/log-in/password/log-in.component.html index f6b81b89b6..139ffd276e 100644 --- a/src/app/shared/log-in/log-in.component.html +++ b/src/app/shared/log-in/password/log-in.component.html @@ -40,13 +40,15 @@ to make this work with your Shibboleth IdentityProvider and Service Provider. dspace.hostname = as in the backend config file "dspace.cfg". Do not change the following parts of href: "/Shibboleth.sso/Login?target=" and "/shibboleth" at the end of href --> -
+ + + diff --git a/src/app/shared/log-in/log-in.component.scss b/src/app/shared/log-in/password/log-in.component.scss similarity index 100% rename from src/app/shared/log-in/log-in.component.scss rename to src/app/shared/log-in/password/log-in.component.scss diff --git a/src/app/shared/log-in/log-in.component.spec.ts b/src/app/shared/log-in/password/log-in.component.spec.ts similarity index 89% rename from src/app/shared/log-in/log-in.component.spec.ts rename to src/app/shared/log-in/password/log-in.component.spec.ts index dd2aea35d5..29825711a1 100644 --- a/src/app/shared/log-in/log-in.component.spec.ts +++ b/src/app/shared/log-in/password/log-in.component.spec.ts @@ -6,13 +6,13 @@ import { By } from '@angular/platform-browser'; import { Store, StoreModule } from '@ngrx/store'; import { LogInComponent } from './log-in.component'; -import { authReducer } from '../../core/auth/auth.reducer'; -import { EPersonMock } from '../testing/eperson-mock'; -import { EPerson } from '../../core/eperson/models/eperson.model'; +import { authReducer } from '../../../core/auth/auth.reducer'; +import { EPersonMock } from '../../testing/eperson-mock'; +import { EPerson } from '../../../core/eperson/models/eperson.model'; import { TranslateModule } from '@ngx-translate/core'; -import { AuthService } from '../../core/auth/auth.service'; -import { AuthServiceStub } from '../testing/auth-service-stub'; -import { AppState } from '../../app.reducer'; +import { AuthService } from '../../../core/auth/auth.service'; +import { AuthServiceStub } from '../../testing/auth-service-stub'; +import { AppState } from '../../../app.reducer'; describe('LogInComponent', () => { diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/password/log-in.component.ts similarity index 88% rename from src/app/shared/log-in/log-in.component.ts rename to src/app/shared/log-in/password/log-in.component.ts index d0b3f23b39..07dc525235 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/password/log-in.component.ts @@ -7,19 +7,20 @@ import {Observable} from 'rxjs'; import { AuthenticateAction, ResetAuthenticationMessagesAction, GetJWTafterShibbLoginAction -} from '../../core/auth/auth.actions'; +} from '../../../core/auth/auth.actions'; import { getAuthenticationError, getAuthenticationInfo, isAuthenticated, isAuthenticationLoading, -} from '../../core/auth/selectors'; -import {CoreState} from '../../core/core.reducers'; +} from '../../../core/auth/selectors'; +import {CoreState} from '../../../core/core.reducers'; -import {isNotEmpty} from '../empty.util'; -import {fadeOut} from '../animations/fade'; -import {AuthService} from '../../core/auth/auth.service'; +import {isNotEmpty} from '../../empty.util'; +import {fadeOut} from '../../animations/fade'; +import {AuthService} from '../../../core/auth/auth.service'; +import {DynamicTestComponent} from '../DynamicTestComponent/dynamic-test.component'; /** * /users/sign-in @@ -81,6 +82,8 @@ export class LogInComponent implements OnDestroy, OnInit { */ private alive = true; + dynamicLoginMethods: any; + /** * @constructor * @param {AuthService} authService @@ -91,7 +94,6 @@ export class LogInComponent implements OnDestroy, OnInit { private authService: AuthService, private formBuilder: FormBuilder, private store: Store, - ) { } @@ -100,7 +102,14 @@ export class LogInComponent implements OnDestroy, OnInit { * @method ngOnInit */ public ngOnInit() { - console.log('log-in.component.ngOnInit() called'); + + this.dynamicLoginMethods = this.dynamicLoginMethods = [ + { + label: 'TestComponent', + component: DynamicTestComponent + } + ]; + // set isAuthenticated this.isAuthenticated = this.store.pipe(select(isAuthenticated)); diff --git a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html new file mode 100644 index 0000000000..92a03b1daf --- /dev/null +++ b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html @@ -0,0 +1,23 @@ + + + + +
+ + + + diff --git a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.scss b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.scss new file mode 100644 index 0000000000..0eda382c0a --- /dev/null +++ b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.scss @@ -0,0 +1,13 @@ +.form-login .form-control:focus { + z-index: 2; +} +.form-login input[type="email"] { + margin-bottom: -1px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.form-login input[type="password"] { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + diff --git a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts new file mode 100644 index 0000000000..a6369f09c3 --- /dev/null +++ b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts @@ -0,0 +1,22 @@ +/** + * /users/sign-in + * @class LogInComponent + */ +import {Component, Inject, Input, OnInit} from '@angular/core'; +import {InputDecorator} from '@angular/core/src/metadata/directives'; +import {HttpClient} from '@angular/common/http'; + +@Component({ + selector: 'ds-dynamic-shibboleth', + templateUrl: './dynamic-shibboleth.component.html', + styleUrls: ['./dynamic-shibboleth.component.scss'], + +}) +export class DynamicShibbolethComponent { + + /** + * @constructor + */ + constructor(@Inject('shibbolethUrlProvider') public injectedShibbolethUrl: string) { + } +} diff --git a/src/app/shared/log-out/log-out.component.scss b/src/app/shared/log-out/log-out.component.scss index dcd67e092f..4807ef0a94 100644 --- a/src/app/shared/log-out/log-out.component.scss +++ b/src/app/shared/log-out/log-out.component.scss @@ -1 +1 @@ -@import '../log-in/log-in.component.scss'; +@import '../log-in/password/log-in.component'; diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index 395dab9c87..3d0fe6c2b4 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -47,7 +47,7 @@ import { SearchResultGridElementComponent } from './object-grid/search-result-gr import { ViewModeSwitchComponent } from './view-mode-switch/view-mode-switch.component'; import { GridThumbnailComponent } from './object-grid/grid-thumbnail/grid-thumbnail.component'; import { VarDirective } from './utils/var.directive'; -import { LogInComponent } from './log-in/log-in.component'; +import { LogInComponent } from './log-in/password/log-in.component'; import { AuthNavMenuComponent } from './auth-nav-menu/auth-nav-menu.component'; import { LogOutComponent } from './log-out/log-out.component'; import { FormComponent } from './form/form.component'; @@ -138,6 +138,10 @@ import { RoleDirective } from './roles/role.directive'; import { UserMenuComponent } from './auth-nav-menu/user-menu/user-menu.component'; import { ClaimedTaskActionsReturnToPoolComponent } from './mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component'; import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component'; +import {DynamicTestComponent} from './log-in/DynamicTestComponent/dynamic-test.component'; +import {LogInContainerComponent} from './log-in/log-in-container/log-in-container.component'; +import {s} from '@angular/core/src/render3'; +import {DynamicShibbolethComponent} from './log-in/shibboleth/dynamic-shibboleth.component'; const MODULES = [ // Do NOT include UniversalModule, HttpModule, or JsonpModule here @@ -257,7 +261,9 @@ const COMPONENTS = [ ItemSearchResultListElementComponent, TypedItemSearchResultListElementComponent, ItemTypeSwitcherComponent, - BrowseByComponent + BrowseByComponent, + LogInContainerComponent, + DynamicShibbolethComponent ]; const ENTRY_COMPONENTS = [ @@ -300,7 +306,11 @@ const ENTRY_COMPONENTS = [ StartsWithTextComponent, PlainTextMetadataListElementComponent, ItemMetadataListElementComponent, - MetadataRepresentationListElementComponent + MetadataRepresentationListElementComponent, + DynamicTestComponent, + LogInComponent, + DynamicShibbolethComponent + ]; const SHARED_ITEM_PAGE_COMPONENTS = [ From bcc6daa39fd65defc9d0a2f5fb1a7cb10e4f6acb Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 8 Aug 2019 09:29:00 +0200 Subject: [PATCH 057/171] Added mock components for dynamic login components --- .../shibboleth.component.html | 0 .../shibboleth.component.scss | 0 .../shibboleth.component.spec.ts | 0 .../shibboleth.component.ts | 5 +-- src/app/core/auth/auth.interceptor.ts | 6 ++-- src/app/core/auth/models/auth-method.model.ts | 27 +++++++++++----- .../dynamic-test.component.html | 1 - .../dynamic-test.component.ts | 21 ------------- .../log-in/ip/dynamic-ip.component.html | 1 + .../dynamic-ip.component.scss} | 0 .../shared/log-in/ip/dynamic-ip.component.ts | 21 +++++++++++++ .../log-in/ldap/dynamic-ldap.component.html | 1 + .../log-in/ldap/dynamic-ldap.component.scss | 0 .../log-in/ldap/dynamic-ldap.component.ts | 21 +++++++++++++ .../log-in-container.component.scss | 0 .../log-in-container.component.ts | 31 +++++++++++-------- .../log-in/password/log-in.component.ts | 10 +----- .../dynamic-shibboleth.component.ts | 7 +---- .../log-in/x509/dynamic-x509.component.html | 1 + .../log-in/x509/dynamic-x509.component.scss | 0 .../log-in/x509/dynamic-x509.component.ts | 21 +++++++++++++ src/app/shared/shared.module.ts | 15 ++++++--- 22 files changed, 120 insertions(+), 69 deletions(-) rename src/app/+login-page/{shibboleth => shibbolethTargetPage}/shibboleth.component.html (100%) rename src/app/+login-page/{shibboleth => shibbolethTargetPage}/shibboleth.component.scss (100%) rename src/app/+login-page/{shibboleth => shibbolethTargetPage}/shibboleth.component.spec.ts (100%) rename src/app/+login-page/{shibboleth => shibbolethTargetPage}/shibboleth.component.ts (85%) delete mode 100644 src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.html delete mode 100644 src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.ts create mode 100644 src/app/shared/log-in/ip/dynamic-ip.component.html rename src/app/shared/log-in/{DynamicTestComponent/dynamic-test.component.scss => ip/dynamic-ip.component.scss} (100%) create mode 100644 src/app/shared/log-in/ip/dynamic-ip.component.ts create mode 100644 src/app/shared/log-in/ldap/dynamic-ldap.component.html create mode 100644 src/app/shared/log-in/ldap/dynamic-ldap.component.scss create mode 100644 src/app/shared/log-in/ldap/dynamic-ldap.component.ts create mode 100644 src/app/shared/log-in/log-in-container/log-in-container.component.scss create mode 100644 src/app/shared/log-in/x509/dynamic-x509.component.html create mode 100644 src/app/shared/log-in/x509/dynamic-x509.component.scss create mode 100644 src/app/shared/log-in/x509/dynamic-x509.component.ts diff --git a/src/app/+login-page/shibboleth/shibboleth.component.html b/src/app/+login-page/shibbolethTargetPage/shibboleth.component.html similarity index 100% rename from src/app/+login-page/shibboleth/shibboleth.component.html rename to src/app/+login-page/shibbolethTargetPage/shibboleth.component.html diff --git a/src/app/+login-page/shibboleth/shibboleth.component.scss b/src/app/+login-page/shibbolethTargetPage/shibboleth.component.scss similarity index 100% rename from src/app/+login-page/shibboleth/shibboleth.component.scss rename to src/app/+login-page/shibbolethTargetPage/shibboleth.component.scss diff --git a/src/app/+login-page/shibboleth/shibboleth.component.spec.ts b/src/app/+login-page/shibbolethTargetPage/shibboleth.component.spec.ts similarity index 100% rename from src/app/+login-page/shibboleth/shibboleth.component.spec.ts rename to src/app/+login-page/shibbolethTargetPage/shibboleth.component.spec.ts diff --git a/src/app/+login-page/shibboleth/shibboleth.component.ts b/src/app/+login-page/shibbolethTargetPage/shibboleth.component.ts similarity index 85% rename from src/app/+login-page/shibboleth/shibboleth.component.ts rename to src/app/+login-page/shibbolethTargetPage/shibboleth.component.ts index cfb4637e58..eb6b1681ff 100644 --- a/src/app/+login-page/shibboleth/shibboleth.component.ts +++ b/src/app/+login-page/shibbolethTargetPage/shibboleth.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core'; +import {Component, OnInit} from '@angular/core'; import {GetJWTafterShibbLoginAction} from '../../core/auth/auth.actions'; import {Store} from '@ngrx/store'; import {CoreState} from '../../core/core.reducers'; @@ -22,6 +22,7 @@ export class ShibbolethComponent implements OnInit { this.store.dispatch(new GetJWTafterShibbLoginAction()); } - constructor( private store: Store,) { } + constructor(private store: Store,) { + } } diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 500f19704a..0e321573d9 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -32,8 +32,6 @@ export class AuthInterceptor implements HttpInterceptor { // we're creating a refresh token request list protected refreshTokenRequestUrls = []; - private - constructor(private inj: Injector, private router: Router, private store: Store) { } @@ -89,7 +87,7 @@ export class AuthInterceptor implements HttpInterceptor { const authMethod: AuthMethodModel = new AuthMethodModel(methodName); // check if the authentication method is shibboleth // if so the next part is the shibboleth location - // e.g part i: shibboleth realm="DSpace REST API", part i+1: location="/Shibboleth.sso/Login?target=https%3A%2F%2Flocalhost%3A8080" + // e.g part i: shibboleth realm="DSpace REST API", part i+1: location="/Shibboleth.sso/Login?target=https://serverUrl" if (methodName.includes('shibboleth')) { const location: string = this.parseShibbolethLocation(parts[+i + 1]); // +1: unaray + operator is necessaray because i is a string, the operator works like parseInt() // console.log('shib location: ', location); @@ -98,7 +96,7 @@ export class AuthInterceptor implements HttpInterceptor { authMethodModels.push(authMethod); } } - console.log('Array of AuthMethodModels: ', authMethodModels); + // console.log('Array of AuthMethodModels: ', authMethodModels); return authMethodModels; } diff --git a/src/app/core/auth/models/auth-method.model.ts b/src/app/core/auth/models/auth-method.model.ts index b886b3120d..c785506d1b 100644 --- a/src/app/core/auth/models/auth-method.model.ts +++ b/src/app/core/auth/models/auth-method.model.ts @@ -7,18 +7,27 @@ export class AuthMethodModel { this.authMethodName = authMethodName; this.location = location; switch (authMethodName) { - case 'password': { - this.authMethodConstant = AuthMethodConstants.PASSWORD; - break; - } - case 'shibboleth': { - this.authMethodConstant = AuthMethodConstants.SHIBBOLETH; + case 'ip': { + this.authMethodConstant = AuthMethodConstants.IP; break; } case 'ldap': { this.authMethodConstant = AuthMethodConstants.LDAP; break; } + case 'shibboleth': { + this.authMethodConstant = AuthMethodConstants.SHIBBOLETH; + break; + } + case 'x509': { + this.authMethodConstant = AuthMethodConstants.X509; + break; + } + case 'password': { + this.authMethodConstant = AuthMethodConstants.PASSWORD; + break; + } + default: { break; } @@ -27,7 +36,9 @@ export class AuthMethodModel { } export enum AuthMethodConstants { - PASSWORD, + IP, + LDAP, SHIBBOLETH, - LDAP + X509, + PASSWORD, } diff --git a/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.html b/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.html deleted file mode 100644 index c8a7eaef7d..0000000000 --- a/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.html +++ /dev/null @@ -1 +0,0 @@ -

This is the DynamicTestComponent

diff --git a/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.ts b/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.ts deleted file mode 100644 index 6b328c4376..0000000000 --- a/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * /users/sign-in - * @class LogInComponent - */ -import {Component, OnInit} from '@angular/core'; - -@Component({ - selector: 'ds-dynamic-test', - templateUrl: './dynamic-test.component.html', - styleUrls: ['./dynamic-test.component.scss'], - -}) -export class DynamicTestComponent { - - /** - * @constructor - */ - constructor() { - // console.log('constructor of DynamicTestComponent called'); - } -} diff --git a/src/app/shared/log-in/ip/dynamic-ip.component.html b/src/app/shared/log-in/ip/dynamic-ip.component.html new file mode 100644 index 0000000000..413a8d71ba --- /dev/null +++ b/src/app/shared/log-in/ip/dynamic-ip.component.html @@ -0,0 +1 @@ +
IP based login component - to be implemented
diff --git a/src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.scss b/src/app/shared/log-in/ip/dynamic-ip.component.scss similarity index 100% rename from src/app/shared/log-in/DynamicTestComponent/dynamic-test.component.scss rename to src/app/shared/log-in/ip/dynamic-ip.component.scss diff --git a/src/app/shared/log-in/ip/dynamic-ip.component.ts b/src/app/shared/log-in/ip/dynamic-ip.component.ts new file mode 100644 index 0000000000..9b189a6e05 --- /dev/null +++ b/src/app/shared/log-in/ip/dynamic-ip.component.ts @@ -0,0 +1,21 @@ +/** + * /users/sign-in + * @class LogInComponent + */ +import {Component, OnInit} from '@angular/core'; + +@Component({ + selector: 'ds-dynamic-ip', + templateUrl: './dynamic-ip.component.html', + styleUrls: ['./dynamic-ip.component.scss'], + +}) +export class DynamicIpComponent { + + /** + * @constructor + */ + constructor() { + // console.log('constructor of DynamicLdapComponent called'); + } +} diff --git a/src/app/shared/log-in/ldap/dynamic-ldap.component.html b/src/app/shared/log-in/ldap/dynamic-ldap.component.html new file mode 100644 index 0000000000..c00ba0eaf4 --- /dev/null +++ b/src/app/shared/log-in/ldap/dynamic-ldap.component.html @@ -0,0 +1 @@ +
LDAP login component - to be implemented
diff --git a/src/app/shared/log-in/ldap/dynamic-ldap.component.scss b/src/app/shared/log-in/ldap/dynamic-ldap.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/shared/log-in/ldap/dynamic-ldap.component.ts b/src/app/shared/log-in/ldap/dynamic-ldap.component.ts new file mode 100644 index 0000000000..339b7cee92 --- /dev/null +++ b/src/app/shared/log-in/ldap/dynamic-ldap.component.ts @@ -0,0 +1,21 @@ +/** + * /users/sign-in + * @class LogInComponent + */ +import {Component, OnInit} from '@angular/core'; + +@Component({ + selector: 'ds-dynamic-ldap', + templateUrl: './dynamic-ldap.component.html', + styleUrls: ['./dynamic-ldap.component.scss'], + +}) +export class DynamicLdapComponent { + + /** + * @constructor + */ + constructor() { + // console.log('constructor of DynamicLdapComponent called'); + } +} diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.scss b/src/app/shared/log-in/log-in-container/log-in-container.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.ts b/src/app/shared/log-in/log-in-container/log-in-container.component.ts index e03b75d72c..4ec9b79840 100644 --- a/src/app/shared/log-in/log-in-container/log-in-container.component.ts +++ b/src/app/shared/log-in/log-in-container/log-in-container.component.ts @@ -1,21 +1,21 @@ -import {Component, Injector, OnDestroy, OnInit, ReflectiveInjector} from '@angular/core'; -import {AuthState} from '../../../core/auth/auth.reducer'; +import {Component, Injector, OnDestroy, OnInit} from '@angular/core'; import {Store} from '@ngrx/store'; -import {DynamicTestComponent} from '../DynamicTestComponent/dynamic-test.component'; import {LogInComponent} from '../password/log-in.component'; import {DynamicShibbolethComponent} from '../shibboleth/dynamic-shibboleth.component'; import {getAuthenticationMethods} from '../../../core/auth/selectors'; -import {map, tap} from 'rxjs/operators'; +import {map} from 'rxjs/operators'; import {AppState} from '../../../app.reducer'; import {Observable} from 'rxjs'; import {DynamicLoginMethod} from './log-in-container.model'; -import {AuthMethodConstants, AuthMethodModel} from '../../../core/auth/models/auth-method.model'; -import {ShibbolethComponent} from '../../../+login-page/shibboleth/shibboleth.component'; +import {AuthMethodConstants} from '../../../core/auth/models/auth-method.model'; +import {DynamicLdapComponent} from '../ldap/dynamic-ldap.component'; +import {DynamicX509Component} from '../x509/dynamic-x509.component'; +import {DynamicIpComponent} from '../ip/dynamic-ip.component'; @Component({ selector: 'ds-log-in-container', templateUrl: './log-in-container.component.html', - // styleUrls: ['./log-in.component.scss'], + styleUrls: ['./log-in-container.component.scss'], }) export class LogInContainerComponent implements OnDestroy, OnInit { @@ -50,8 +50,8 @@ export class LogInContainerComponent implements OnDestroy, OnInit { this.objectInjector = Injector.create({ providers: [ {provide: 'shibbolethUrlProvider', useFactory: () => (this.shibbolethUrl), deps: []}, - // {provide: 'sectionDataProvider', useFactory: () => (this.sectionData), deps: []}, - // {provide: 'submissionIdProvider', useFactory: () => (this.submissionId), deps: []}, + // if other authentication methods need further data to work add a provider here e.g + // {provide: 'otherDataProvider', useFactory: () => (this.otherData), deps: []}, ], parent: this.injector }); @@ -67,6 +67,15 @@ export class LogInContainerComponent implements OnDestroy, OnInit { this.shibbolethUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at/shibboleth'; return new DynamicLoginMethod(authMethod.authMethodName, DynamicShibbolethComponent, authMethod.location) break; + case AuthMethodConstants.LDAP: + return new DynamicLoginMethod(authMethod.authMethodName, DynamicLdapComponent) + break; + case AuthMethodConstants.IP: + return new DynamicLoginMethod(authMethod.authMethodName, DynamicIpComponent) + break; + case AuthMethodConstants.X509: + return new DynamicLoginMethod(authMethod.authMethodName, DynamicX509Component) + break; default: break; } @@ -83,10 +92,6 @@ export class LogInContainerComponent implements OnDestroy, OnInit { label: 'PasswordComponent', component: LogInComponent }, - { - label: 'TestComponent', - component: DynamicTestComponent - }, { label: 'ShibbolethComponent', component: DynamicShibbolethComponent diff --git a/src/app/shared/log-in/password/log-in.component.ts b/src/app/shared/log-in/password/log-in.component.ts index 07dc525235..310e11ad2b 100644 --- a/src/app/shared/log-in/password/log-in.component.ts +++ b/src/app/shared/log-in/password/log-in.component.ts @@ -20,7 +20,6 @@ import {CoreState} from '../../../core/core.reducers'; import {isNotEmpty} from '../../empty.util'; import {fadeOut} from '../../animations/fade'; import {AuthService} from '../../../core/auth/auth.service'; -import {DynamicTestComponent} from '../DynamicTestComponent/dynamic-test.component'; /** * /users/sign-in @@ -82,7 +81,7 @@ export class LogInComponent implements OnDestroy, OnInit { */ private alive = true; - dynamicLoginMethods: any; + /** * @constructor @@ -103,13 +102,6 @@ export class LogInComponent implements OnDestroy, OnInit { */ public ngOnInit() { - this.dynamicLoginMethods = this.dynamicLoginMethods = [ - { - label: 'TestComponent', - component: DynamicTestComponent - } - ]; - // set isAuthenticated this.isAuthenticated = this.store.pipe(select(isAuthenticated)); diff --git a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts index a6369f09c3..094fdcffca 100644 --- a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts +++ b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts @@ -1,10 +1,5 @@ -/** - * /users/sign-in - * @class LogInComponent - */ + import {Component, Inject, Input, OnInit} from '@angular/core'; -import {InputDecorator} from '@angular/core/src/metadata/directives'; -import {HttpClient} from '@angular/common/http'; @Component({ selector: 'ds-dynamic-shibboleth', diff --git a/src/app/shared/log-in/x509/dynamic-x509.component.html b/src/app/shared/log-in/x509/dynamic-x509.component.html new file mode 100644 index 0000000000..3d0d680101 --- /dev/null +++ b/src/app/shared/log-in/x509/dynamic-x509.component.html @@ -0,0 +1 @@ +
X509 login component - to be implemented
diff --git a/src/app/shared/log-in/x509/dynamic-x509.component.scss b/src/app/shared/log-in/x509/dynamic-x509.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/shared/log-in/x509/dynamic-x509.component.ts b/src/app/shared/log-in/x509/dynamic-x509.component.ts new file mode 100644 index 0000000000..d30fea58d8 --- /dev/null +++ b/src/app/shared/log-in/x509/dynamic-x509.component.ts @@ -0,0 +1,21 @@ +/** + * /users/sign-in + * @class LogInComponent + */ +import {Component, OnInit} from '@angular/core'; + +@Component({ + selector: 'ds-dynamic-x509', + templateUrl: './dynamic-x509.component.html', + styleUrls: ['./dynamic-x509.component.scss'], + +}) +export class DynamicX509Component { + + /** + * @constructor + */ + constructor() { + // console.log('constructor of DynamicLdapComponent called'); + } +} diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index 3d0fe6c2b4..e100ecc70a 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -138,10 +138,12 @@ import { RoleDirective } from './roles/role.directive'; import { UserMenuComponent } from './auth-nav-menu/user-menu/user-menu.component'; import { ClaimedTaskActionsReturnToPoolComponent } from './mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component'; import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component'; -import {DynamicTestComponent} from './log-in/DynamicTestComponent/dynamic-test.component'; import {LogInContainerComponent} from './log-in/log-in-container/log-in-container.component'; import {s} from '@angular/core/src/render3'; import {DynamicShibbolethComponent} from './log-in/shibboleth/dynamic-shibboleth.component'; +import {DynamicLdapComponent} from './log-in/ldap/dynamic-ldap.component'; +import {DynamicIpComponent} from './log-in/ip/dynamic-ip.component'; +import {DynamicX509Component} from './log-in/x509/dynamic-x509.component'; const MODULES = [ // Do NOT include UniversalModule, HttpModule, or JsonpModule here @@ -263,7 +265,9 @@ const COMPONENTS = [ ItemTypeSwitcherComponent, BrowseByComponent, LogInContainerComponent, - DynamicShibbolethComponent + DynamicShibbolethComponent, + DynamicLdapComponent, + DynamicIpComponent ]; const ENTRY_COMPONENTS = [ @@ -307,10 +311,11 @@ const ENTRY_COMPONENTS = [ PlainTextMetadataListElementComponent, ItemMetadataListElementComponent, MetadataRepresentationListElementComponent, - DynamicTestComponent, + DynamicLdapComponent, LogInComponent, - DynamicShibbolethComponent - + DynamicShibbolethComponent, + DynamicIpComponent, + DynamicX509Component ]; const SHARED_ITEM_PAGE_COMPONENTS = [ From 3b6a20bf67611fffd2df2e8bcf0c016065faf42f Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 8 Aug 2019 11:05:12 +0200 Subject: [PATCH 058/171] Added further dynamic authentication methods --- resources/i18n/en.json | 5 ++-- .../+login-page/login-page-routing.module.ts | 2 -- src/app/+login-page/login-page.module.ts | 1 - src/app/app-routing.module.ts | 2 +- src/app/app.module.ts | 2 +- src/app/core/auth/auth-request.service.ts | 4 --- src/app/core/auth/auth.interceptor.ts | 11 +++----- src/app/core/auth/auth.reducer.ts | 8 +++--- src/app/core/auth/auth.service.ts | 4 --- .../log-in/password/log-in.component.html | 27 ------------------- .../dynamic-shibboleth.component.html | 16 +---------- 11 files changed, 12 insertions(+), 70 deletions(-) diff --git a/resources/i18n/en.json b/resources/i18n/en.json index 1ae27630a1..deed067d43 100644 --- a/resources/i18n/en.json +++ b/resources/i18n/en.json @@ -399,7 +399,6 @@ "volume-title": "Volume Title", "publisher": "Publisher", "description": "Description" - }, "listelement": { "badge": "Publication" @@ -924,14 +923,14 @@ }, "login": { "title": "Login", + "shibboleth": "Shibboleth", "form": { "header": "Please log in to DSpace", "email": "Email address", "forgot-password": "Have you forgotten your password?", "new-user": "New user? Click here to register.", "password": "Password", - "submit": "Log in", - "ssoLogin": "Shibboleth" + "submit": "Log in" } }, "logout": { diff --git a/src/app/+login-page/login-page-routing.module.ts b/src/app/+login-page/login-page-routing.module.ts index 6a7520fae1..d3c6425dd3 100644 --- a/src/app/+login-page/login-page-routing.module.ts +++ b/src/app/+login-page/login-page-routing.module.ts @@ -2,13 +2,11 @@ import { NgModule } from '@angular/core'; import { RouterModule } from '@angular/router'; import { LoginPageComponent } from './login-page.component'; -import {ShibbolethComponent} from './shibboleth/shibboleth.component'; @NgModule({ imports: [ RouterModule.forChild([ { path: '', pathMatch: 'full', component: LoginPageComponent, data: { title: 'login.title' } } - /* { path: 'shibboleth', component: ShibbolethComponent }*/ ]) ] }) diff --git a/src/app/+login-page/login-page.module.ts b/src/app/+login-page/login-page.module.ts index bd4c0a9a43..65cbd26c04 100644 --- a/src/app/+login-page/login-page.module.ts +++ b/src/app/+login-page/login-page.module.ts @@ -4,7 +4,6 @@ import { SharedModule } from '../shared/shared.module'; import { LoginPageComponent } from './login-page.component'; import { LoginPageRoutingModule } from './login-page-routing.module'; - @NgModule({ imports: [ LoginPageRoutingModule, diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 9611e98325..d1d27918c3 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -3,7 +3,7 @@ import {RouterModule} from '@angular/router'; import {PageNotFoundComponent} from './pagenotfound/pagenotfound.component'; import {AuthenticatedGuard} from './core/auth/authenticated.guard'; -import {ShibbolethComponent} from './+login-page/shibboleth/shibboleth.component'; +import {ShibbolethComponent} from './+login-page/shibbolethTargetPage/shibboleth.component'; const ITEM_MODULE_PATH = 'items'; diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 30520eb364..817e8d0a79 100755 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -39,7 +39,7 @@ import { ExpandableAdminSidebarSectionComponent } from './+admin/admin-sidebar/e import { NavbarModule } from './navbar/navbar.module'; import { JournalEntitiesModule } from './entity-groups/journal-entities/journal-entities.module'; import { ResearchEntitiesModule } from './entity-groups/research-entities/research-entities.module'; -import { ShibbolethComponent } from './+login-page/shibboleth/shibboleth.component'; +import { ShibbolethComponent } from './+login-page/shibbolethTargetPage/shibboleth.component'; export function getConfig() { return ENV_CONFIG; diff --git a/src/app/core/auth/auth-request.service.ts b/src/app/core/auth/auth-request.service.ts index 23c767c61b..728546959a 100644 --- a/src/app/core/auth/auth-request.service.ts +++ b/src/app/core/auth/auth-request.service.ts @@ -43,9 +43,7 @@ export class AuthRequestService { public postToEndpoint(method: string, body?: any, options?: HttpOptions): Observable { return this.halService.getEndpoint(this.linkName).pipe( filter((href: string) => isNotEmpty(href)), - tap((href: string) => console.log('This is href in postToEndpoint(): ' , href)), map((endpointURL) => this.getEndpointByMethod(endpointURL, method)), - tap((href2) => {console.log('href2', href2)}), distinctUntilChanged(), map((endpointURL: string) => new AuthPostRequest(this.requestService.generateRequestId(), endpointURL, body, options)), tap((request: PostRequest) => this.requestService.configure(request, true)), @@ -57,9 +55,7 @@ export class AuthRequestService { console.log('auth.request getRequest() was called'); return this.halService.getEndpoint(this.linkName).pipe( filter((href: string) => isNotEmpty(href)), - tap((href) => console.log('auth-request.service getRequest()', href)), map((endpointURL) => this.getEndpointByMethod(endpointURL, method)), - tap((whatsThis) => console.log('whatsThis: ', whatsThis)), distinctUntilChanged(), map((endpointURL: string) => new AuthGetRequest(this.requestService.generateRequestId(), endpointURL, options)), tap((request: GetRequest) => this.requestService.configure(request, true)), diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 0e321573d9..fd2d029cd4 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -74,10 +74,8 @@ export class AuthInterceptor implements HttpInterceptor { } private parseAuthMethodsfromHeaders(headers: HttpHeaders): AuthMethodModel[] { - // console.log('parseAuthMethodsfromHeaders(): ', headers); const authMethodModels: AuthMethodModel[] = []; const parts: string[] = headers.get('www-authenticate').split(','); - console.log('parts: ', parts); // get the login methods names // tslint:disable-next-line:forin for (const i in parts) { @@ -89,14 +87,15 @@ export class AuthInterceptor implements HttpInterceptor { // if so the next part is the shibboleth location // e.g part i: shibboleth realm="DSpace REST API", part i+1: location="/Shibboleth.sso/Login?target=https://serverUrl" if (methodName.includes('shibboleth')) { - const location: string = this.parseShibbolethLocation(parts[+i + 1]); // +1: unaray + operator is necessaray because i is a string, the operator works like parseInt() - // console.log('shib location: ', location); + // +1: unaray + operator in the next line is necessaray because i is a string, the operator works like parseInt() + const location: string = this.parseShibbolethLocation(parts[+i + 1]); authMethod.location = location; } + // if other authentication methods deliver data needed for the method to work + // it would be checked here e.g. if (methodName.includes('ldap')) { } authMethodModels.push(authMethod); } } - // console.log('Array of AuthMethodModels: ', authMethodModels); return authMethodModels; } @@ -183,13 +182,11 @@ export class AuthInterceptor implements HttpInterceptor { } }), catchError((error, caught) => { - console.log('catchError operator in auth.interceptor was triggered'); // Intercept an error response if (error instanceof HttpErrorResponse) { // Checks if is a response from a request to an authentication endpoint if (this.isAuthRequest(error)) { - console.log('catchError isAuthRequest=true'); // clean eventually refresh Requests list this.refreshTokenRequestUrls = []; diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index be1aa134fc..2ce8896b62 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -12,8 +12,8 @@ import { SetRedirectUrlAction } from './auth.actions'; // import models -import { EPerson } from '../eperson/models/eperson.model'; -import { AuthTokenInfo } from './models/auth-token-info.model'; +import {EPerson} from '../eperson/models/eperson.model'; +import {AuthTokenInfo} from './models/auth-token-info.model'; import {AuthMethodModel} from './models/auth-method.model'; /** @@ -200,15 +200,13 @@ export function authReducer(state: any = initialState, action: AuthActions): Aut info: undefined, }); - // next three cases are used by shibboleth login + // next three cases are used by dynamic rendering of login methods case AuthActionTypes.RETRIEVE_AUTH_METHODS: - console.log('case AuthActionTypes.RETRIEVE_AUTH_METHODS'); return Object.assign({}, state, { loading: true }); case AuthActionTypes.RETRIEVE_AUTH_METHODS_SUCCESS: - console.log('case RETRIEVE_AUTH_METHODS_SUCCESS'); return Object.assign({}, state, { loading: false, authMethods: (action as RetrieveAuthMethodsSuccessAction).payload diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index e0aecd91a0..1084a384de 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -224,8 +224,6 @@ export class AuthService { * @returns {User} */ public retrieveAuthMethods(): Observable { - console.log('auth.service retrieveAuthMethods() was called'); - // return this.authRequestService.getRequest('login').pipe( return this.authRequestService.postToEndpoint('login', {}).pipe( map((status: AuthStatus) => { let authMethods: AuthMethodModel[]; @@ -237,8 +235,6 @@ export class AuthService { ) } - - /** * Create a new user * @returns {User} diff --git a/src/app/shared/log-in/password/log-in.component.html b/src/app/shared/log-in/password/log-in.component.html index 139ffd276e..e1dc72857e 100644 --- a/src/app/shared/log-in/password/log-in.component.html +++ b/src/app/shared/log-in/password/log-in.component.html @@ -26,33 +26,6 @@ -
- - - - - - - - - - - - {{"login.form.new-user" | translate}} diff --git a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html index 92a03b1daf..ee92610120 100644 --- a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html +++ b/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html @@ -1,22 +1,8 @@ - - - - -
Shibboleth + >{{"login.shibboleth" | translate}}
From d3e93fed242949811282786c8faa3b6b8d874895 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 8 Aug 2019 11:17:18 +0200 Subject: [PATCH 059/171] Removed hardcoded shibbolethUrl --- .../log-in/log-in-container/log-in-container.component.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.ts b/src/app/shared/log-in/log-in-container/log-in-container.component.ts index 4ec9b79840..c6866f6171 100644 --- a/src/app/shared/log-in/log-in-container/log-in-container.component.ts +++ b/src/app/shared/log-in/log-in-container/log-in-container.component.ts @@ -63,8 +63,8 @@ export class LogInContainerComponent implements OnDestroy, OnInit { return new DynamicLoginMethod(authMethod.authMethodName, LogInComponent) break; case AuthMethodConstants.SHIBBOLETH: - // this.shibbolethUrl = authMethod.location; - this.shibbolethUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at/shibboleth'; + this.shibbolethUrl = authMethod.location; + // this.shibbolethUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at/shibboleth'; return new DynamicLoginMethod(authMethod.authMethodName, DynamicShibbolethComponent, authMethod.location) break; case AuthMethodConstants.LDAP: From aca60642a902a059d3533f57cf09eab166010b60 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 8 Aug 2019 11:30:31 +0200 Subject: [PATCH 060/171] Removed dev log statemnet from lon-in-container --- .../log-in/log-in-container/log-in-container.component.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.ts b/src/app/shared/log-in/log-in-container/log-in-container.component.ts index c6866f6171..5feb703d0c 100644 --- a/src/app/shared/log-in/log-in-container/log-in-container.component.ts +++ b/src/app/shared/log-in/log-in-container/log-in-container.component.ts @@ -105,7 +105,7 @@ export class LogInContainerComponent implements OnDestroy, OnInit { * @method ngOnDestroy */ public ngOnDestroy() { - console.log('ngOnDestroy() in LogInContainerComponent was called'); + // console.log('ngOnDestroy() in LogInContainerComponent was called'); } } From 8883793b06fc742d5d49ecbbe8594ca5e0f1839d Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 8 Aug 2019 12:24:02 +0200 Subject: [PATCH 061/171] Changed modifier of dynamicLoginMethods --- .../log-in-container/log-in-container.component.ts | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.ts b/src/app/shared/log-in/log-in-container/log-in-container.component.ts index 5feb703d0c..8a97376e2a 100644 --- a/src/app/shared/log-in/log-in-container/log-in-container.component.ts +++ b/src/app/shared/log-in/log-in-container/log-in-container.component.ts @@ -20,8 +20,7 @@ import {DynamicIpComponent} from '../ip/dynamic-ip.component'; }) export class LogInContainerComponent implements OnDestroy, OnInit { - private dynamicLoginMethods: Observable; - private authInfoInjector: Injector; + public dynamicLoginMethods: Observable; /** * Injector to inject a section component with the @Input parameters * @type {Injector} @@ -31,15 +30,14 @@ export class LogInContainerComponent implements OnDestroy, OnInit { /** * @constructor - * @param {AuthService} authService - * @param {FormBuilder} formBuilder * @param {Store} store + * @param {Injector} injector */ constructor( private store: Store, private injector: Injector - - ) {} + ) { + } /** * Lifecycle hook that is called after data-bound properties of a directive are initialized. From e846aa801fb32f3f2d06d2f3bb2a7952e7c6823d Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Fri, 9 Aug 2019 08:10:32 +0200 Subject: [PATCH 062/171] authService startShibAuth() changed --- src/app/core/auth/auth.service.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/app/core/auth/auth.service.ts b/src/app/core/auth/auth.service.ts index 1084a384de..7df511b4b3 100644 --- a/src/app/core/auth/auth.service.ts +++ b/src/app/core/auth/auth.service.ts @@ -122,15 +122,15 @@ export class AuthService { const password = 'rest' const body = (`password=${Base64EncodeUrl(password)}&user=${Base64EncodeUrl(user)}`); const options: HttpOptions = Object.create({});*/ - let headers = new HttpHeaders(); - headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); + // let headers = new HttpHeaders(); + // headers = headers.append('Content-Type', 'application/x-www-form-urlencoded'); // options.headers = headers; return this.authRequestService.postToEndpoint('login').pipe( map((status: AuthStatus) => { if (status.authenticated) { return status; } else { - throw(new Error('Invalid email or password')); + throw(new Error('Shibboleth login failed')); } })) From c9142b604a997db8b7ef8d2243b2bc462190eadb Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 29 Aug 2019 09:11:09 +0200 Subject: [PATCH 063/171] Deleted IP-Login, X509-Login and LDAP-login comoponent --- .../log-in/ldap/dynamic-ldap.component.html | 1 - .../log-in/ldap/dynamic-ldap.component.scss | 0 .../log-in/ldap/dynamic-ldap.component.ts | 21 ------------------- .../log-in-container.component.ts | 13 +----------- .../log-in/x509/dynamic-x509.component.html | 1 - .../log-in/x509/dynamic-x509.component.scss | 0 .../log-in/x509/dynamic-x509.component.ts | 21 ------------------- src/app/shared/shared.module.ts | 14 ++++--------- 8 files changed, 5 insertions(+), 66 deletions(-) delete mode 100644 src/app/shared/log-in/ldap/dynamic-ldap.component.html delete mode 100644 src/app/shared/log-in/ldap/dynamic-ldap.component.scss delete mode 100644 src/app/shared/log-in/ldap/dynamic-ldap.component.ts delete mode 100644 src/app/shared/log-in/x509/dynamic-x509.component.html delete mode 100644 src/app/shared/log-in/x509/dynamic-x509.component.scss delete mode 100644 src/app/shared/log-in/x509/dynamic-x509.component.ts diff --git a/src/app/shared/log-in/ldap/dynamic-ldap.component.html b/src/app/shared/log-in/ldap/dynamic-ldap.component.html deleted file mode 100644 index c00ba0eaf4..0000000000 --- a/src/app/shared/log-in/ldap/dynamic-ldap.component.html +++ /dev/null @@ -1 +0,0 @@ -
LDAP login component - to be implemented
diff --git a/src/app/shared/log-in/ldap/dynamic-ldap.component.scss b/src/app/shared/log-in/ldap/dynamic-ldap.component.scss deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/app/shared/log-in/ldap/dynamic-ldap.component.ts b/src/app/shared/log-in/ldap/dynamic-ldap.component.ts deleted file mode 100644 index 339b7cee92..0000000000 --- a/src/app/shared/log-in/ldap/dynamic-ldap.component.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * /users/sign-in - * @class LogInComponent - */ -import {Component, OnInit} from '@angular/core'; - -@Component({ - selector: 'ds-dynamic-ldap', - templateUrl: './dynamic-ldap.component.html', - styleUrls: ['./dynamic-ldap.component.scss'], - -}) -export class DynamicLdapComponent { - - /** - * @constructor - */ - constructor() { - // console.log('constructor of DynamicLdapComponent called'); - } -} diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.ts b/src/app/shared/log-in/log-in-container/log-in-container.component.ts index 8a97376e2a..f0fb11fdfe 100644 --- a/src/app/shared/log-in/log-in-container/log-in-container.component.ts +++ b/src/app/shared/log-in/log-in-container/log-in-container.component.ts @@ -8,9 +8,7 @@ import {AppState} from '../../../app.reducer'; import {Observable} from 'rxjs'; import {DynamicLoginMethod} from './log-in-container.model'; import {AuthMethodConstants} from '../../../core/auth/models/auth-method.model'; -import {DynamicLdapComponent} from '../ldap/dynamic-ldap.component'; -import {DynamicX509Component} from '../x509/dynamic-x509.component'; -import {DynamicIpComponent} from '../ip/dynamic-ip.component'; + @Component({ selector: 'ds-log-in-container', @@ -65,15 +63,6 @@ export class LogInContainerComponent implements OnDestroy, OnInit { // this.shibbolethUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at/shibboleth'; return new DynamicLoginMethod(authMethod.authMethodName, DynamicShibbolethComponent, authMethod.location) break; - case AuthMethodConstants.LDAP: - return new DynamicLoginMethod(authMethod.authMethodName, DynamicLdapComponent) - break; - case AuthMethodConstants.IP: - return new DynamicLoginMethod(authMethod.authMethodName, DynamicIpComponent) - break; - case AuthMethodConstants.X509: - return new DynamicLoginMethod(authMethod.authMethodName, DynamicX509Component) - break; default: break; } diff --git a/src/app/shared/log-in/x509/dynamic-x509.component.html b/src/app/shared/log-in/x509/dynamic-x509.component.html deleted file mode 100644 index 3d0d680101..0000000000 --- a/src/app/shared/log-in/x509/dynamic-x509.component.html +++ /dev/null @@ -1 +0,0 @@ -
X509 login component - to be implemented
diff --git a/src/app/shared/log-in/x509/dynamic-x509.component.scss b/src/app/shared/log-in/x509/dynamic-x509.component.scss deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/app/shared/log-in/x509/dynamic-x509.component.ts b/src/app/shared/log-in/x509/dynamic-x509.component.ts deleted file mode 100644 index d30fea58d8..0000000000 --- a/src/app/shared/log-in/x509/dynamic-x509.component.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * /users/sign-in - * @class LogInComponent - */ -import {Component, OnInit} from '@angular/core'; - -@Component({ - selector: 'ds-dynamic-x509', - templateUrl: './dynamic-x509.component.html', - styleUrls: ['./dynamic-x509.component.scss'], - -}) -export class DynamicX509Component { - - /** - * @constructor - */ - constructor() { - // console.log('constructor of DynamicLdapComponent called'); - } -} diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index e100ecc70a..7ab7b8cf3a 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -141,9 +141,8 @@ import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-resul import {LogInContainerComponent} from './log-in/log-in-container/log-in-container.component'; import {s} from '@angular/core/src/render3'; import {DynamicShibbolethComponent} from './log-in/shibboleth/dynamic-shibboleth.component'; -import {DynamicLdapComponent} from './log-in/ldap/dynamic-ldap.component'; -import {DynamicIpComponent} from './log-in/ip/dynamic-ip.component'; -import {DynamicX509Component} from './log-in/x509/dynamic-x509.component'; + + const MODULES = [ // Do NOT include UniversalModule, HttpModule, or JsonpModule here @@ -265,9 +264,7 @@ const COMPONENTS = [ ItemTypeSwitcherComponent, BrowseByComponent, LogInContainerComponent, - DynamicShibbolethComponent, - DynamicLdapComponent, - DynamicIpComponent + DynamicShibbolethComponent ]; const ENTRY_COMPONENTS = [ @@ -311,11 +308,8 @@ const ENTRY_COMPONENTS = [ PlainTextMetadataListElementComponent, ItemMetadataListElementComponent, MetadataRepresentationListElementComponent, - DynamicLdapComponent, LogInComponent, - DynamicShibbolethComponent, - DynamicIpComponent, - DynamicX509Component + DynamicShibbolethComponent ]; const SHARED_ITEM_PAGE_COMPONENTS = [ From ca1710c5482cd5bc0e92c34129516b3593e6285e Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 29 Aug 2019 09:14:59 +0200 Subject: [PATCH 064/171] Deleted the IP-login component --- .../log-in/ip/dynamic-ip.component.html | 1 - .../log-in/ip/dynamic-ip.component.scss | 0 .../shared/log-in/ip/dynamic-ip.component.ts | 21 ------------------- 3 files changed, 22 deletions(-) delete mode 100644 src/app/shared/log-in/ip/dynamic-ip.component.html delete mode 100644 src/app/shared/log-in/ip/dynamic-ip.component.scss delete mode 100644 src/app/shared/log-in/ip/dynamic-ip.component.ts diff --git a/src/app/shared/log-in/ip/dynamic-ip.component.html b/src/app/shared/log-in/ip/dynamic-ip.component.html deleted file mode 100644 index 413a8d71ba..0000000000 --- a/src/app/shared/log-in/ip/dynamic-ip.component.html +++ /dev/null @@ -1 +0,0 @@ -
IP based login component - to be implemented
diff --git a/src/app/shared/log-in/ip/dynamic-ip.component.scss b/src/app/shared/log-in/ip/dynamic-ip.component.scss deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/app/shared/log-in/ip/dynamic-ip.component.ts b/src/app/shared/log-in/ip/dynamic-ip.component.ts deleted file mode 100644 index 9b189a6e05..0000000000 --- a/src/app/shared/log-in/ip/dynamic-ip.component.ts +++ /dev/null @@ -1,21 +0,0 @@ -/** - * /users/sign-in - * @class LogInComponent - */ -import {Component, OnInit} from '@angular/core'; - -@Component({ - selector: 'ds-dynamic-ip', - templateUrl: './dynamic-ip.component.html', - styleUrls: ['./dynamic-ip.component.scss'], - -}) -export class DynamicIpComponent { - - /** - * @constructor - */ - constructor() { - // console.log('constructor of DynamicLdapComponent called'); - } -} From 3ee20ad17ac3d469985df12cca3d5ddd09fcd1c7 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 29 Aug 2019 09:59:49 +0200 Subject: [PATCH 065/171] Changed folder structure in shared/login folder --- src/app/+login-page/login-page.component.html | 2 +- .../auth-nav-menu.component.html | 2 +- ...r.component.html => log-in.component.html} | 0 ...r.component.scss => log-in.component.scss} | 0 ...ainer.component.ts => log-in.component.ts} | 23 +++++++++--------- ...-in-container.model.ts => log-in.model.ts} | 0 .../password/log-in-password.component.html} | 0 .../password/log-in-password.component.scss} | 0 .../log-in-password.component.spec.ts} | 24 +++++++++---------- .../password/log-in-password.component.ts} | 22 ++++++++--------- .../dynamic-shibboleth.component.html | 0 .../dynamic-shibboleth.component.scss | 0 .../dynamic-shibboleth.component.ts | 0 src/app/shared/log-out/log-out.component.scss | 2 +- src/app/shared/shared.module.ts | 16 ++++++------- 15 files changed, 44 insertions(+), 47 deletions(-) rename src/app/shared/log-in/{log-in-container/log-in-container.component.html => log-in.component.html} (100%) rename src/app/shared/log-in/{log-in-container/log-in-container.component.scss => log-in.component.scss} (100%) rename src/app/shared/log-in/{log-in-container/log-in-container.component.ts => log-in.component.ts} (79%) rename src/app/shared/log-in/{log-in-container/log-in-container.model.ts => log-in.model.ts} (100%) rename src/app/shared/log-in/{password/log-in.component.html => methods/password/log-in-password.component.html} (100%) rename src/app/shared/log-in/{password/log-in.component.scss => methods/password/log-in-password.component.scss} (100%) rename src/app/shared/log-in/{password/log-in.component.spec.ts => methods/password/log-in-password.component.spec.ts} (79%) rename src/app/shared/log-in/{password/log-in.component.ts => methods/password/log-in-password.component.ts} (87%) rename src/app/shared/log-in/{ => methods}/shibboleth/dynamic-shibboleth.component.html (100%) rename src/app/shared/log-in/{ => methods}/shibboleth/dynamic-shibboleth.component.scss (100%) rename src/app/shared/log-in/{ => methods}/shibboleth/dynamic-shibboleth.component.ts (100%) diff --git a/src/app/+login-page/login-page.component.html b/src/app/+login-page/login-page.component.html index e2d8131431..a7c6521f67 100644 --- a/src/app/+login-page/login-page.component.html +++ b/src/app/+login-page/login-page.component.html @@ -4,7 +4,7 @@

{{"login.form.header" | translate}}

- + diff --git a/src/app/shared/auth-nav-menu/auth-nav-menu.component.html b/src/app/shared/auth-nav-menu/auth-nav-menu.component.html index 65ee27a2d3..d6764afaba 100644 --- a/src/app/shared/auth-nav-menu/auth-nav-menu.component.html +++ b/src/app/shared/auth-nav-menu/auth-nav-menu.component.html @@ -4,7 +4,7 @@ {{ 'nav.login' | translate }}
- +
diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.html b/src/app/shared/log-in/log-in.component.html similarity index 100% rename from src/app/shared/log-in/log-in-container/log-in-container.component.html rename to src/app/shared/log-in/log-in.component.html diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.scss b/src/app/shared/log-in/log-in.component.scss similarity index 100% rename from src/app/shared/log-in/log-in-container/log-in-container.component.scss rename to src/app/shared/log-in/log-in.component.scss diff --git a/src/app/shared/log-in/log-in-container/log-in-container.component.ts b/src/app/shared/log-in/log-in.component.ts similarity index 79% rename from src/app/shared/log-in/log-in-container/log-in-container.component.ts rename to src/app/shared/log-in/log-in.component.ts index f0fb11fdfe..7b5f0a0414 100644 --- a/src/app/shared/log-in/log-in-container/log-in-container.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -1,22 +1,21 @@ import {Component, Injector, OnDestroy, OnInit} from '@angular/core'; import {Store} from '@ngrx/store'; -import {LogInComponent} from '../password/log-in.component'; -import {DynamicShibbolethComponent} from '../shibboleth/dynamic-shibboleth.component'; -import {getAuthenticationMethods} from '../../../core/auth/selectors'; +import {DynamicShibbolethComponent} from './methods/shibboleth/dynamic-shibboleth.component'; +import {getAuthenticationMethods} from '../../core/auth/selectors'; import {map} from 'rxjs/operators'; -import {AppState} from '../../../app.reducer'; +import {AppState} from '../../app.reducer'; import {Observable} from 'rxjs'; -import {DynamicLoginMethod} from './log-in-container.model'; -import {AuthMethodConstants} from '../../../core/auth/models/auth-method.model'; - +import {AuthMethodConstants} from '../../core/auth/models/auth-method.model'; +import {DynamicLoginMethod} from './log-in.model'; +import {LogInPasswordComponent} from './methods/password/log-in-password.component'; @Component({ - selector: 'ds-log-in-container', - templateUrl: './log-in-container.component.html', - styleUrls: ['./log-in-container.component.scss'], + selector: 'ds-log-in', + templateUrl: './log-in.component.html', + styleUrls: ['./log-in.component.scss'], }) -export class LogInContainerComponent implements OnDestroy, OnInit { +export class LogInComponent implements OnDestroy, OnInit { public dynamicLoginMethods: Observable; /** @@ -56,7 +55,7 @@ export class LogInContainerComponent implements OnDestroy, OnInit { map(((authMethods) => authMethods.map((authMethod) => { switch (authMethod.authMethodConstant) { case AuthMethodConstants.PASSWORD: - return new DynamicLoginMethod(authMethod.authMethodName, LogInComponent) + return new DynamicLoginMethod(authMethod.authMethodName, LogInPasswordComponent) break; case AuthMethodConstants.SHIBBOLETH: this.shibbolethUrl = authMethod.location; diff --git a/src/app/shared/log-in/log-in-container/log-in-container.model.ts b/src/app/shared/log-in/log-in.model.ts similarity index 100% rename from src/app/shared/log-in/log-in-container/log-in-container.model.ts rename to src/app/shared/log-in/log-in.model.ts diff --git a/src/app/shared/log-in/password/log-in.component.html b/src/app/shared/log-in/methods/password/log-in-password.component.html similarity index 100% rename from src/app/shared/log-in/password/log-in.component.html rename to src/app/shared/log-in/methods/password/log-in-password.component.html diff --git a/src/app/shared/log-in/password/log-in.component.scss b/src/app/shared/log-in/methods/password/log-in-password.component.scss similarity index 100% rename from src/app/shared/log-in/password/log-in.component.scss rename to src/app/shared/log-in/methods/password/log-in-password.component.scss diff --git a/src/app/shared/log-in/password/log-in.component.spec.ts b/src/app/shared/log-in/methods/password/log-in-password.component.spec.ts similarity index 79% rename from src/app/shared/log-in/password/log-in.component.spec.ts rename to src/app/shared/log-in/methods/password/log-in-password.component.spec.ts index 29825711a1..1749c76a30 100644 --- a/src/app/shared/log-in/password/log-in.component.spec.ts +++ b/src/app/shared/log-in/methods/password/log-in-password.component.spec.ts @@ -5,19 +5,19 @@ import { FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { By } from '@angular/platform-browser'; import { Store, StoreModule } from '@ngrx/store'; -import { LogInComponent } from './log-in.component'; -import { authReducer } from '../../../core/auth/auth.reducer'; -import { EPersonMock } from '../../testing/eperson-mock'; -import { EPerson } from '../../../core/eperson/models/eperson.model'; +import { LogInPasswordComponent } from './log-in.component'; +import { authReducer } from '../../../../core/auth/auth.reducer'; +import { EPersonMock } from '../../../testing/eperson-mock'; +import { EPerson } from '../../../../core/eperson/models/eperson.model'; import { TranslateModule } from '@ngx-translate/core'; -import { AuthService } from '../../../core/auth/auth.service'; -import { AuthServiceStub } from '../../testing/auth-service-stub'; -import { AppState } from '../../../app.reducer'; +import { AuthService } from '../../../../core/auth/auth.service'; +import { AuthServiceStub } from '../../../testing/auth-service-stub'; +import { AppState } from '../../../../app.reducer'; describe('LogInComponent', () => { - let component: LogInComponent; - let fixture: ComponentFixture; + let component: LogInPasswordComponent; + let fixture: ComponentFixture; let page: Page; let user: EPerson; @@ -41,7 +41,7 @@ describe('LogInComponent', () => { TranslateModule.forRoot() ], declarations: [ - LogInComponent + LogInPasswordComponent ], providers: [ {provide: AuthService, useClass: AuthServiceStub} @@ -62,7 +62,7 @@ describe('LogInComponent', () => { }); // create component and test fixture - fixture = TestBed.createComponent(LogInComponent); + fixture = TestBed.createComponent(LogInPasswordComponent); // get test component from the fixture component = fixture.componentInstance; @@ -108,7 +108,7 @@ class Page { public navigateSpy: jasmine.Spy; public passwordInput: HTMLInputElement; - constructor(private component: LogInComponent, private fixture: ComponentFixture) { + constructor(private component: LogInPasswordComponent, private fixture: ComponentFixture) { // use injector to get services const injector = fixture.debugElement.injector; const store = injector.get(Store); diff --git a/src/app/shared/log-in/password/log-in.component.ts b/src/app/shared/log-in/methods/password/log-in-password.component.ts similarity index 87% rename from src/app/shared/log-in/password/log-in.component.ts rename to src/app/shared/log-in/methods/password/log-in-password.component.ts index 310e11ad2b..91dfdefe6b 100644 --- a/src/app/shared/log-in/password/log-in.component.ts +++ b/src/app/shared/log-in/methods/password/log-in-password.component.ts @@ -7,31 +7,31 @@ import {Observable} from 'rxjs'; import { AuthenticateAction, ResetAuthenticationMessagesAction, GetJWTafterShibbLoginAction -} from '../../../core/auth/auth.actions'; +} from '../../../../core/auth/auth.actions'; import { getAuthenticationError, getAuthenticationInfo, isAuthenticated, isAuthenticationLoading, -} from '../../../core/auth/selectors'; -import {CoreState} from '../../../core/core.reducers'; +} from '../../../../core/auth/selectors'; +import {CoreState} from '../../../../core/core.reducers'; -import {isNotEmpty} from '../../empty.util'; -import {fadeOut} from '../../animations/fade'; -import {AuthService} from '../../../core/auth/auth.service'; +import {isNotEmpty} from '../../../empty.util'; +import {fadeOut} from '../../../animations/fade'; +import {AuthService} from '../../../../core/auth/auth.service'; /** * /users/sign-in - * @class LogInComponent + * @class LogInPasswordComponent */ @Component({ - selector: 'ds-log-in', - templateUrl: './log-in.component.html', - styleUrls: ['./log-in.component.scss'], + selector: 'ds-log-in-password', + templateUrl: './log-in-password.component.html', + styleUrls: ['./log-in-password.component.scss'], animations: [fadeOut] }) -export class LogInComponent implements OnDestroy, OnInit { +export class LogInPasswordComponent implements OnDestroy, OnInit { /** * The error if authentication fails. diff --git a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html similarity index 100% rename from src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.html rename to src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html diff --git a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.scss b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.scss similarity index 100% rename from src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.scss rename to src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.scss diff --git a/src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts similarity index 100% rename from src/app/shared/log-in/shibboleth/dynamic-shibboleth.component.ts rename to src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts diff --git a/src/app/shared/log-out/log-out.component.scss b/src/app/shared/log-out/log-out.component.scss index 4807ef0a94..1514130db6 100644 --- a/src/app/shared/log-out/log-out.component.scss +++ b/src/app/shared/log-out/log-out.component.scss @@ -1 +1 @@ -@import '../log-in/password/log-in.component'; +@import '../log-in/methods/password/log-in-password.component'; diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index 7ab7b8cf3a..add01a309a 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -47,7 +47,6 @@ import { SearchResultGridElementComponent } from './object-grid/search-result-gr import { ViewModeSwitchComponent } from './view-mode-switch/view-mode-switch.component'; import { GridThumbnailComponent } from './object-grid/grid-thumbnail/grid-thumbnail.component'; import { VarDirective } from './utils/var.directive'; -import { LogInComponent } from './log-in/password/log-in.component'; import { AuthNavMenuComponent } from './auth-nav-menu/auth-nav-menu.component'; import { LogOutComponent } from './log-out/log-out.component'; import { FormComponent } from './form/form.component'; @@ -138,11 +137,9 @@ import { RoleDirective } from './roles/role.directive'; import { UserMenuComponent } from './auth-nav-menu/user-menu/user-menu.component'; import { ClaimedTaskActionsReturnToPoolComponent } from './mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component'; import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component'; -import {LogInContainerComponent} from './log-in/log-in-container/log-in-container.component'; -import {s} from '@angular/core/src/render3'; -import {DynamicShibbolethComponent} from './log-in/shibboleth/dynamic-shibboleth.component'; - - +import {DynamicShibbolethComponent} from './log-in/methods/shibboleth/dynamic-shibboleth.component'; +import {LogInComponent} from './log-in/log-in.component'; +import {LogInPasswordComponent} from './log-in/methods/password/log-in-password.component'; const MODULES = [ // Do NOT include UniversalModule, HttpModule, or JsonpModule here @@ -263,8 +260,9 @@ const COMPONENTS = [ TypedItemSearchResultListElementComponent, ItemTypeSwitcherComponent, BrowseByComponent, - LogInContainerComponent, - DynamicShibbolethComponent + LogInComponent, + DynamicShibbolethComponent, + LogInPasswordComponent ]; const ENTRY_COMPONENTS = [ @@ -308,7 +306,7 @@ const ENTRY_COMPONENTS = [ PlainTextMetadataListElementComponent, ItemMetadataListElementComponent, MetadataRepresentationListElementComponent, - LogInComponent, + LogInPasswordComponent, DynamicShibbolethComponent ]; From 3517e9bee97ed62b30c3ed5c845c3473c703d923 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 29 Aug 2019 10:22:38 +0200 Subject: [PATCH 066/171] Changed type of payload in class RetrieveAuthMethodsSuccessAction --- src/app/core/auth/auth.actions.ts | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/app/core/auth/auth.actions.ts b/src/app/core/auth/auth.actions.ts index b0343e2dc8..9f3a2dddc4 100644 --- a/src/app/core/auth/auth.actions.ts +++ b/src/app/core/auth/auth.actions.ts @@ -7,6 +7,7 @@ import {type} from '../../shared/ngrx/type'; // import models import {EPerson} from '../eperson/models/eperson.model'; import {AuthTokenInfo} from './models/auth-token-info.model'; +import {AuthMethodModel} from './models/auth-method.model'; export const AuthActionTypes = { AUTHENTICATE: type('dspace/auth/AUTHENTICATE'), @@ -336,16 +337,16 @@ export class RetrieveAuthMethodsAction implements Action { } /** - * Check if token is already present upon initial load. - * @class CheckAuthenticationTokenAction + * Get Authentication methods enabled at the backend + * @class RetrieveAuthMethodsSuccessAction * @implements {Action} */ export class RetrieveAuthMethodsSuccessAction implements Action { public type: string = AuthActionTypes.RETRIEVE_AUTH_METHODS_SUCCESS; - payload: string; + payload: AuthMethodModel[]; - constructor(location: string) { - this.payload = location; + constructor(authMethods: AuthMethodModel[] ) { + this.payload = authMethods; } } From 466d01ce09e5c5cb28854c102c6ae80e590f3fe8 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 29 Aug 2019 10:44:15 +0200 Subject: [PATCH 067/171] Changed AuthMethods enum2 --- src/app/core/auth/models/auth-method.model.ts | 24 +++++++++---------- src/app/shared/log-in/log-in.component.ts | 19 +++------------ 2 files changed, 15 insertions(+), 28 deletions(-) diff --git a/src/app/core/auth/models/auth-method.model.ts b/src/app/core/auth/models/auth-method.model.ts index c785506d1b..21b130fb2e 100644 --- a/src/app/core/auth/models/auth-method.model.ts +++ b/src/app/core/auth/models/auth-method.model.ts @@ -1,30 +1,30 @@ export class AuthMethodModel { authMethodName: string; location?: string; - authMethodConstant: AuthMethodConstants + authMethodConstant: AuthMethodType constructor(authMethodName: string, location?: string) { this.authMethodName = authMethodName; this.location = location; switch (authMethodName) { case 'ip': { - this.authMethodConstant = AuthMethodConstants.IP; + this.authMethodConstant = AuthMethodType.Ip; break; } case 'ldap': { - this.authMethodConstant = AuthMethodConstants.LDAP; + this.authMethodConstant = AuthMethodType.Ldap; break; } case 'shibboleth': { - this.authMethodConstant = AuthMethodConstants.SHIBBOLETH; + this.authMethodConstant = AuthMethodType.Shibboleth; break; } case 'x509': { - this.authMethodConstant = AuthMethodConstants.X509; + this.authMethodConstant = AuthMethodType.X509; break; } case 'password': { - this.authMethodConstant = AuthMethodConstants.PASSWORD; + this.authMethodConstant = AuthMethodType.Password; break; } @@ -35,10 +35,10 @@ export class AuthMethodModel { } } -export enum AuthMethodConstants { - IP, - LDAP, - SHIBBOLETH, - X509, - PASSWORD, +export enum AuthMethodType { + Password = 'password', + Shibboleth = 'shibboleth', + Ldap = 'ldap', + Ip = 'ip', + X509 = 'x509' } diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts index 7b5f0a0414..4ef4ad654e 100644 --- a/src/app/shared/log-in/log-in.component.ts +++ b/src/app/shared/log-in/log-in.component.ts @@ -5,7 +5,7 @@ import {getAuthenticationMethods} from '../../core/auth/selectors'; import {map} from 'rxjs/operators'; import {AppState} from '../../app.reducer'; import {Observable} from 'rxjs'; -import {AuthMethodConstants} from '../../core/auth/models/auth-method.model'; +import {AuthMethodType} from '../../core/auth/models/auth-method.model'; import {DynamicLoginMethod} from './log-in.model'; import {LogInPasswordComponent} from './methods/password/log-in-password.component'; @@ -54,10 +54,10 @@ export class LogInComponent implements OnDestroy, OnInit { this.dynamicLoginMethods = this.store.select(getAuthenticationMethods).pipe( map(((authMethods) => authMethods.map((authMethod) => { switch (authMethod.authMethodConstant) { - case AuthMethodConstants.PASSWORD: + case AuthMethodType.Password: return new DynamicLoginMethod(authMethod.authMethodName, LogInPasswordComponent) break; - case AuthMethodConstants.SHIBBOLETH: + case AuthMethodType.Shibboleth: this.shibbolethUrl = authMethod.location; // this.shibbolethUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at/shibboleth'; return new DynamicLoginMethod(authMethod.authMethodName, DynamicShibbolethComponent, authMethod.location) @@ -73,19 +73,6 @@ export class LogInComponent implements OnDestroy, OnInit { } - /* this.dynamicLoginMethods = this.dynamicLoginMethods = [ - { - label: 'PasswordComponent', - component: LogInComponent - }, - { - label: 'ShibbolethComponent', - component: DynamicShibbolethComponent - }, - - ]; - }*/ - /** * Lifecycle hook that is called when a directive, pipe or service is destroyed. * @method ngOnDestroy From beb0f2d4104cb1435ef5060537cd74e844078ede Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Thu, 29 Aug 2019 17:58:07 +0200 Subject: [PATCH 068/171] Dynamic rendering of auth methods via decorator --- src/app/+login-page/login-page.component.html | 3 +- src/app/core/auth/models/auth-method.model.ts | 22 ++--- .../auth-nav-menu.component.html | 4 +- .../shared/log-in/authMethods-decorator.ts | 15 ++++ src/app/shared/log-in/authMethods-type.ts | 7 ++ .../container/login-container.component.html | 3 + .../container/login-container.component.scss | 21 +++++ .../container/login-container.component.ts | 60 +++++++++++++ src/app/shared/log-in/log-in.component.html | 12 --- src/app/shared/log-in/log-in.component.scss | 0 src/app/shared/log-in/log-in.component.ts | 84 ------------------- src/app/shared/log-in/log-in.model.ts | 11 --- .../password/log-in-password.component.ts | 3 + .../dynamic-shibboleth.component.ts | 14 +++- src/app/shared/shared.module.ts | 10 ++- 15 files changed, 137 insertions(+), 132 deletions(-) create mode 100644 src/app/shared/log-in/authMethods-decorator.ts create mode 100644 src/app/shared/log-in/authMethods-type.ts create mode 100644 src/app/shared/log-in/container/login-container.component.html create mode 100644 src/app/shared/log-in/container/login-container.component.scss create mode 100644 src/app/shared/log-in/container/login-container.component.ts delete mode 100644 src/app/shared/log-in/log-in.component.html delete mode 100644 src/app/shared/log-in/log-in.component.scss delete mode 100644 src/app/shared/log-in/log-in.component.ts delete mode 100644 src/app/shared/log-in/log-in.model.ts diff --git a/src/app/+login-page/login-page.component.html b/src/app/+login-page/login-page.component.html index a7c6521f67..81dac88ed9 100644 --- a/src/app/+login-page/login-page.component.html +++ b/src/app/+login-page/login-page.component.html @@ -3,8 +3,7 @@

{{"login.form.header" | translate}}

- - +
diff --git a/src/app/core/auth/models/auth-method.model.ts b/src/app/core/auth/models/auth-method.model.ts index 21b130fb2e..59b666b764 100644 --- a/src/app/core/auth/models/auth-method.model.ts +++ b/src/app/core/auth/models/auth-method.model.ts @@ -1,30 +1,32 @@ +import {AuthMethodType} from '../../../shared/log-in/authMethods-type'; + export class AuthMethodModel { authMethodName: string; location?: string; - authMethodConstant: AuthMethodType + authMethodType: AuthMethodType constructor(authMethodName: string, location?: string) { this.authMethodName = authMethodName; this.location = location; switch (authMethodName) { case 'ip': { - this.authMethodConstant = AuthMethodType.Ip; + this.authMethodType = AuthMethodType.Ip; break; } case 'ldap': { - this.authMethodConstant = AuthMethodType.Ldap; + this.authMethodType = AuthMethodType.Ldap; break; } case 'shibboleth': { - this.authMethodConstant = AuthMethodType.Shibboleth; + this.authMethodType = AuthMethodType.Shibboleth; break; } case 'x509': { - this.authMethodConstant = AuthMethodType.X509; + this.authMethodType = AuthMethodType.X509; break; } case 'password': { - this.authMethodConstant = AuthMethodType.Password; + this.authMethodType = AuthMethodType.Password; break; } @@ -34,11 +36,3 @@ export class AuthMethodModel { } } } - -export enum AuthMethodType { - Password = 'password', - Shibboleth = 'shibboleth', - Ldap = 'ldap', - Ip = 'ip', - X509 = 'x509' -} diff --git a/src/app/shared/auth-nav-menu/auth-nav-menu.component.html b/src/app/shared/auth-nav-menu/auth-nav-menu.component.html index d6764afaba..dcddc97ad2 100644 --- a/src/app/shared/auth-nav-menu/auth-nav-menu.component.html +++ b/src/app/shared/auth-nav-menu/auth-nav-menu.component.html @@ -3,8 +3,8 @@ diff --git a/src/app/shared/log-in/authMethods-decorator.ts b/src/app/shared/log-in/authMethods-decorator.ts new file mode 100644 index 0000000000..6769443276 --- /dev/null +++ b/src/app/shared/log-in/authMethods-decorator.ts @@ -0,0 +1,15 @@ +import { AuthMethodType } from './authMethods-type'; + +const authMethodsMap = new Map(); +export function renderAuthMethodFor(authMethodType: AuthMethodType) { + return function decorator(objectElement: any) { + if (!objectElement) { + return; + } + authMethodsMap.set(authMethodType, objectElement); + }; +} + +export function rendersAuthMethodType(authMethodType: AuthMethodType) { + return authMethodsMap.get(authMethodType); +} diff --git a/src/app/shared/log-in/authMethods-type.ts b/src/app/shared/log-in/authMethods-type.ts new file mode 100644 index 0000000000..f053515065 --- /dev/null +++ b/src/app/shared/log-in/authMethods-type.ts @@ -0,0 +1,7 @@ +export enum AuthMethodType { + Password = 'password', + Shibboleth = 'shibboleth', + Ldap = 'ldap', + Ip = 'ip', + X509 = 'x509' +} diff --git a/src/app/shared/log-in/container/login-container.component.html b/src/app/shared/log-in/container/login-container.component.html new file mode 100644 index 0000000000..4e4eb53bdf --- /dev/null +++ b/src/app/shared/log-in/container/login-container.component.html @@ -0,0 +1,3 @@ +
+ +
diff --git a/src/app/shared/log-in/container/login-container.component.scss b/src/app/shared/log-in/container/login-container.component.scss new file mode 100644 index 0000000000..3917280f8c --- /dev/null +++ b/src/app/shared/log-in/container/login-container.component.scss @@ -0,0 +1,21 @@ +:host /deep/ .card { + margin-bottom: $submission-sections-margin-bottom; + overflow: unset; +} + +.section-focus { + border-radius: $border-radius; + box-shadow: $btn-focus-box-shadow; +} + +// TODO to remove the following when upgrading @ng-bootstrap +:host /deep/ .card:first-of-type { + border-bottom: $card-border-width solid $card-border-color !important; + border-bottom-left-radius: $card-border-radius !important; + border-bottom-right-radius: $card-border-radius !important; +} + +:host /deep/ .card-header button { + box-shadow: none !important; + width: 100%; +} diff --git a/src/app/shared/log-in/container/login-container.component.ts b/src/app/shared/log-in/container/login-container.component.ts new file mode 100644 index 0000000000..bb8fd3c868 --- /dev/null +++ b/src/app/shared/log-in/container/login-container.component.ts @@ -0,0 +1,60 @@ +import { Component, Injector, Input, OnInit, ViewChild } from '@angular/core'; +import { rendersAuthMethodType } from '../authMethods-decorator'; +import { AuthMethodModel } from '../../../core/auth/models/auth-method.model'; +import { getAuthenticationMethods } from '../../../core/auth/selectors'; +import { Store } from '@ngrx/store'; +import { AppState } from '../../../app.reducer'; +import { Observable } from 'rxjs'; +import { AuthMethodType } from '../authMethods-type'; + +/** + * This component represents a section that contains the submission license form. + */ +@Component({ + selector: 'ds-login-container', + templateUrl: './login-container.component.html', + styleUrls: ['./login-container.component.scss'] +}) +export class LoginContainerComponent implements OnInit { + + /** + * The section data + * @type {SectionDataObject} + */ + @Input() authMethodData: Observable; + + /** + * Injector to inject a section component with the @Input parameters + * @type {Injector} + */ + public objectInjector: Injector; + + /** + * Initialize instance variables + * + * @param {Injector} injector + */ + constructor(private injector: Injector, private store: Store) { + } + + /** + * Initialize all instance variables + */ + ngOnInit() { + this.objectInjector = Injector.create({ + providers: [ + {provide: 'authMethodProvider', useFactory: () => (this.authMethodData), deps: []}, + ], + parent: this.injector + }); + + this.authMethodData = this.store.select(getAuthenticationMethods); + } + + /** + * Find the correct component based on the authMethod's type + */ + getAuthMethodContent(authMethodType: AuthMethodType): string { + return rendersAuthMethodType(authMethodType) + } +} diff --git a/src/app/shared/log-in/log-in.component.html b/src/app/shared/log-in/log-in.component.html deleted file mode 100644 index e3d5e08a4e..0000000000 --- a/src/app/shared/log-in/log-in.component.html +++ /dev/null @@ -1,12 +0,0 @@ -
-
- - - -
- - - - - -
diff --git a/src/app/shared/log-in/log-in.component.scss b/src/app/shared/log-in/log-in.component.scss deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/app/shared/log-in/log-in.component.ts b/src/app/shared/log-in/log-in.component.ts deleted file mode 100644 index 4ef4ad654e..0000000000 --- a/src/app/shared/log-in/log-in.component.ts +++ /dev/null @@ -1,84 +0,0 @@ -import {Component, Injector, OnDestroy, OnInit} from '@angular/core'; -import {Store} from '@ngrx/store'; -import {DynamicShibbolethComponent} from './methods/shibboleth/dynamic-shibboleth.component'; -import {getAuthenticationMethods} from '../../core/auth/selectors'; -import {map} from 'rxjs/operators'; -import {AppState} from '../../app.reducer'; -import {Observable} from 'rxjs'; -import {AuthMethodType} from '../../core/auth/models/auth-method.model'; -import {DynamicLoginMethod} from './log-in.model'; -import {LogInPasswordComponent} from './methods/password/log-in-password.component'; - -@Component({ - selector: 'ds-log-in', - templateUrl: './log-in.component.html', - styleUrls: ['./log-in.component.scss'], - -}) -export class LogInComponent implements OnDestroy, OnInit { - - public dynamicLoginMethods: Observable; - /** - * Injector to inject a section component with the @Input parameters - * @type {Injector} - */ - public objectInjector: Injector; - private shibbolethUrl: string; - - /** - * @constructor - * @param {Store} store - * @param {Injector} injector - */ - constructor( - private store: Store, - private injector: Injector - ) { - } - - /** - * Lifecycle hook that is called after data-bound properties of a directive are initialized. - * @method ngOnInit - */ - public ngOnInit() { - - this.objectInjector = Injector.create({ - providers: [ - {provide: 'shibbolethUrlProvider', useFactory: () => (this.shibbolethUrl), deps: []}, - // if other authentication methods need further data to work add a provider here e.g - // {provide: 'otherDataProvider', useFactory: () => (this.otherData), deps: []}, - ], - parent: this.injector - }); - - this.dynamicLoginMethods = this.store.select(getAuthenticationMethods).pipe( - map(((authMethods) => authMethods.map((authMethod) => { - switch (authMethod.authMethodConstant) { - case AuthMethodType.Password: - return new DynamicLoginMethod(authMethod.authMethodName, LogInPasswordComponent) - break; - case AuthMethodType.Shibboleth: - this.shibbolethUrl = authMethod.location; - // this.shibbolethUrl = 'https://fis.tiss.tuwien.ac.at/Shibboleth.sso/Login?target=https://fis.tiss.tuwien.ac.at/shibboleth'; - return new DynamicLoginMethod(authMethod.authMethodName, DynamicShibbolethComponent, authMethod.location) - break; - default: - break; - } - } - ) - ) - ) - ); - - } - - /** - * Lifecycle hook that is called when a directive, pipe or service is destroyed. - * @method ngOnDestroy - */ - public ngOnDestroy() { - // console.log('ngOnDestroy() in LogInContainerComponent was called'); - } - -} diff --git a/src/app/shared/log-in/log-in.model.ts b/src/app/shared/log-in/log-in.model.ts deleted file mode 100644 index b47f4ce935..0000000000 --- a/src/app/shared/log-in/log-in.model.ts +++ /dev/null @@ -1,11 +0,0 @@ -export class DynamicLoginMethod { - label: string; - component: any; - location?: string; - - constructor(label, component, location?) { - this.label = label; - this.component = component; - this.location = location; - } -} diff --git a/src/app/shared/log-in/methods/password/log-in-password.component.ts b/src/app/shared/log-in/methods/password/log-in-password.component.ts index 91dfdefe6b..6b1ed2ea51 100644 --- a/src/app/shared/log-in/methods/password/log-in-password.component.ts +++ b/src/app/shared/log-in/methods/password/log-in-password.component.ts @@ -20,6 +20,8 @@ import {CoreState} from '../../../../core/core.reducers'; import {isNotEmpty} from '../../../empty.util'; import {fadeOut} from '../../../animations/fade'; import {AuthService} from '../../../../core/auth/auth.service'; +import { AuthMethodType } from '../../authMethods-type'; +import { renderAuthMethodFor } from '../../authMethods-decorator'; /** * /users/sign-in @@ -31,6 +33,7 @@ import {AuthService} from '../../../../core/auth/auth.service'; styleUrls: ['./log-in-password.component.scss'], animations: [fadeOut] }) +@renderAuthMethodFor(AuthMethodType.Password) export class LogInPasswordComponent implements OnDestroy, OnInit { /** diff --git a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts index 094fdcffca..cd61077161 100644 --- a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts +++ b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts @@ -1,5 +1,7 @@ - import {Component, Inject, Input, OnInit} from '@angular/core'; +import { renderAuthMethodFor } from '../../authMethods-decorator'; +import { AuthMethodType } from '../../authMethods-type'; +import { AuthMethodModel } from '../../../../core/auth/models/auth-method.model'; @Component({ selector: 'ds-dynamic-shibboleth', @@ -7,11 +9,17 @@ import {Component, Inject, Input, OnInit} from '@angular/core'; styleUrls: ['./dynamic-shibboleth.component.scss'], }) -export class DynamicShibbolethComponent { +@renderAuthMethodFor(AuthMethodType.Shibboleth) +export class DynamicShibbolethComponent implements OnInit { /** * @constructor */ - constructor(@Inject('shibbolethUrlProvider') public injectedShibbolethUrl: string) { + constructor(@Inject('authMethodProvider') public injectedObject: AuthMethodModel) { } + + ngOnInit(): void { + console.log('injectedObject', this.injectedObject) + } + } diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index add01a309a..d04c8500a0 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -138,8 +138,9 @@ import { UserMenuComponent } from './auth-nav-menu/user-menu/user-menu.component import { ClaimedTaskActionsReturnToPoolComponent } from './mydspace-actions/claimed-task/return-to-pool/claimed-task-actions-return-to-pool.component'; import { ItemDetailPreviewFieldComponent } from './object-detail/my-dspace-result-detail-element/item-detail-preview/item-detail-preview-field/item-detail-preview-field.component'; import {DynamicShibbolethComponent} from './log-in/methods/shibboleth/dynamic-shibboleth.component'; -import {LogInComponent} from './log-in/log-in.component'; +// import {LogInComponent} from './log-in/log-in.component'; import {LogInPasswordComponent} from './log-in/methods/password/log-in-password.component'; +import { LoginContainerComponent } from './log-in/container/login-container.component'; const MODULES = [ // Do NOT include UniversalModule, HttpModule, or JsonpModule here @@ -212,7 +213,7 @@ const COMPONENTS = [ FormComponent, LangSwitchComponent, LoadingComponent, - LogInComponent, + // LogInComponent, LogOutComponent, NumberPickerComponent, ObjectListComponent, @@ -260,9 +261,10 @@ const COMPONENTS = [ TypedItemSearchResultListElementComponent, ItemTypeSwitcherComponent, BrowseByComponent, - LogInComponent, + // LogInComponent, DynamicShibbolethComponent, - LogInPasswordComponent + LogInPasswordComponent, + LoginContainerComponent ]; const ENTRY_COMPONENTS = [ From 901951eaa8fdd38b50283a45b08c233a07115092 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 2 Sep 2019 15:01:03 +0200 Subject: [PATCH 069/171] Removed switch statement, changed AuthMethod parsing in authInterceptor to be more generic --- src/app/+login-page/login-page.component.html | 3 +- src/app/core/auth/auth.interceptor.ts | 75 ++++++++++--------- src/app/core/auth/models/auth-method.model.ts | 4 +- .../auth-nav-menu.component.html | 3 +- .../shared/log-in/authMethods.component.html | 3 + .../shared/log-in/authMethods.component.scss | 0 .../shared/log-in/authMethods.component.ts | 27 +++++++ .../container/login-container.component.html | 5 +- .../container/login-container.component.ts | 17 ++--- .../dynamic-shibboleth.component.html | 2 +- .../dynamic-shibboleth.component.ts | 9 ++- src/app/shared/shared.module.ts | 4 +- 12 files changed, 94 insertions(+), 58 deletions(-) create mode 100644 src/app/shared/log-in/authMethods.component.html create mode 100644 src/app/shared/log-in/authMethods.component.scss create mode 100644 src/app/shared/log-in/authMethods.component.ts diff --git a/src/app/+login-page/login-page.component.html b/src/app/+login-page/login-page.component.html index 81dac88ed9..0e13e225a7 100644 --- a/src/app/+login-page/login-page.component.html +++ b/src/app/+login-page/login-page.component.html @@ -3,7 +3,8 @@

{{"login.form.header" | translate}}

- + +
diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index fd2d029cd4..3d9d982b5d 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -1,7 +1,7 @@ -import {Observable, of as observableOf, throwError as observableThrowError} from 'rxjs'; +import { Observable, of as observableOf, throwError as observableThrowError } from 'rxjs'; -import {catchError, filter, map, tap} from 'rxjs/operators'; -import {Injectable, Injector} from '@angular/core'; +import { catchError, filter, map, tap } from 'rxjs/operators'; +import { Injectable, Injector } from '@angular/core'; import { HttpErrorResponse, HttpEvent, @@ -11,18 +11,18 @@ import { HttpResponse, HttpResponseBase } from '@angular/common/http'; -import {find} from 'lodash'; +import { find } from 'lodash'; -import {AppState} from '../../app.reducer'; -import {AuthService} from './auth.service'; -import {AuthStatus} from './models/auth-status.model'; -import {AuthTokenInfo} from './models/auth-token-info.model'; -import {isNotEmpty, isUndefined, isNotNull} from '../../shared/empty.util'; -import {RedirectWhenTokenExpiredAction, RefreshTokenAction} from './auth.actions'; -import {Store} from '@ngrx/store'; -import {Router} from '@angular/router'; -import {AuthError} from './models/auth-error.model'; -import {AuthMethodModel} from './models/auth-method.model'; +import { AppState } from '../../app.reducer'; +import { AuthService } from './auth.service'; +import { AuthStatus } from './models/auth-status.model'; +import { AuthTokenInfo } from './models/auth-token-info.model'; +import { isNotEmpty, isUndefined, isNotNull } from '../../shared/empty.util'; +import { RedirectWhenTokenExpiredAction, RefreshTokenAction } from './auth.actions'; +import { Store } from '@ngrx/store'; +import { Router } from '@angular/router'; +import { AuthError } from './models/auth-error.model'; +import { AuthMethodModel } from './models/auth-method.model'; @Injectable() export class AuthInterceptor implements HttpInterceptor { @@ -59,8 +59,7 @@ export class AuthInterceptor implements HttpInterceptor { return http.url && http.url.endsWith('/authn/logout'); } - private parseShibbolethLocation(unparsedLocation: string): string { - let parsedLocation = ''; + private parseLocation(unparsedLocation: string): string { unparsedLocation = unparsedLocation.trim(); unparsedLocation = unparsedLocation.replace('location="', ''); unparsedLocation = unparsedLocation.replace('"', ''); @@ -68,7 +67,7 @@ export class AuthInterceptor implements HttpInterceptor { unparsedLocation = unparsedLocation.replace(re, '://'); re = /%3A/g unparsedLocation = unparsedLocation.replace(re, ':') - parsedLocation = unparsedLocation + '/shibboleth'; + const parsedLocation = unparsedLocation.trim(); // + '/shibboleth'; return parsedLocation; } @@ -76,24 +75,32 @@ export class AuthInterceptor implements HttpInterceptor { private parseAuthMethodsfromHeaders(headers: HttpHeaders): AuthMethodModel[] { const authMethodModels: AuthMethodModel[] = []; const parts: string[] = headers.get('www-authenticate').split(','); - // get the login methods names + // get the realms from the header - a realm is a single auth method + const completeWWWauthenticateHeader = headers.get('www-authenticate'); + const regex = /(\w+ (\w+=((".*?")|[^,]*)(, )?)*)/g; + const realms = completeWWWauthenticateHeader.match(regex); + console.log('realms: ', realms) + // tslint:disable-next-line:forin - for (const i in parts) { - const part: string = parts[i].trim(); - if (part.includes('realm')) { - const methodName = part.split(' ')[0]; - const authMethod: AuthMethodModel = new AuthMethodModel(methodName); - // check if the authentication method is shibboleth - // if so the next part is the shibboleth location - // e.g part i: shibboleth realm="DSpace REST API", part i+1: location="/Shibboleth.sso/Login?target=https://serverUrl" - if (methodName.includes('shibboleth')) { - // +1: unaray + operator in the next line is necessaray because i is a string, the operator works like parseInt() - const location: string = this.parseShibbolethLocation(parts[+i + 1]); - authMethod.location = location; - } - // if other authentication methods deliver data needed for the method to work - // it would be checked here e.g. if (methodName.includes('ldap')) { } - authMethodModels.push(authMethod); + for (const j in realms) { + console.log('realm:', realms[j]); + + const splittedRealm = realms[j].split(', '); + const methodName = splittedRealm[0].split(' ')[0].trim(); + console.log('methodName: ', methodName); + + console.log('splittedRealm: ', splittedRealm); + let authMethodModel: AuthMethodModel; + if (splittedRealm.length === 1) { + authMethodModel = new AuthMethodModel(methodName); + authMethodModels.push(authMethodModel); + } else if (splittedRealm.length > 1) { + authMethodModel = new AuthMethodModel(methodName); + let location = splittedRealm[1]; + location = this.parseLocation(location) + authMethodModel.location = location; + console.log('location: ', location); + authMethodModels.push(authMethodModel); } } return authMethodModels; diff --git a/src/app/core/auth/models/auth-method.model.ts b/src/app/core/auth/models/auth-method.model.ts index 59b666b764..dd68cc5162 100644 --- a/src/app/core/auth/models/auth-method.model.ts +++ b/src/app/core/auth/models/auth-method.model.ts @@ -1,12 +1,10 @@ import {AuthMethodType} from '../../../shared/log-in/authMethods-type'; export class AuthMethodModel { - authMethodName: string; + authMethodType: AuthMethodType; location?: string; - authMethodType: AuthMethodType constructor(authMethodName: string, location?: string) { - this.authMethodName = authMethodName; this.location = location; switch (authMethodName) { case 'ip': { diff --git a/src/app/shared/auth-nav-menu/auth-nav-menu.component.html b/src/app/shared/auth-nav-menu/auth-nav-menu.component.html index dcddc97ad2..8456264631 100644 --- a/src/app/shared/auth-nav-menu/auth-nav-menu.component.html +++ b/src/app/shared/auth-nav-menu/auth-nav-menu.component.html @@ -4,7 +4,8 @@ {{ 'nav.login' | translate }}
- + +
diff --git a/src/app/shared/log-in/authMethods.component.html b/src/app/shared/log-in/authMethods.component.html new file mode 100644 index 0000000000..d562d92f9d --- /dev/null +++ b/src/app/shared/log-in/authMethods.component.html @@ -0,0 +1,3 @@ + + + diff --git a/src/app/shared/log-in/authMethods.component.scss b/src/app/shared/log-in/authMethods.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/shared/log-in/authMethods.component.ts b/src/app/shared/log-in/authMethods.component.ts new file mode 100644 index 0000000000..65e68bb8b2 --- /dev/null +++ b/src/app/shared/log-in/authMethods.component.ts @@ -0,0 +1,27 @@ +import { Component, Injector, Input, OnInit } from '@angular/core'; +import { Observable } from 'rxjs'; +import { AuthMethodModel } from '../../core/auth/models/auth-method.model'; +import { Store } from '@ngrx/store'; +import { AuthState } from '../../core/auth/auth.reducer'; +import { getAuthenticationMethods } from '../../core/auth/selectors'; + +@Component({ + selector: 'ds-auth-methods', + templateUrl: './authMethods.component.html', + styleUrls: ['./authMethods.component.scss'] +}) +export class AuthMethodsComponent implements OnInit { + /** + * The authentication methods data + * @type {AuthMethodModel[]} + */ + @Input() authMethodData: Observable; + + constructor( private store: Store) { + } + + ngOnInit(): void { + this.authMethodData = this.authMethodData = this.store.select(getAuthenticationMethods); + } + +} diff --git a/src/app/shared/log-in/container/login-container.component.html b/src/app/shared/log-in/container/login-container.component.html index 4e4eb53bdf..937374b96d 100644 --- a/src/app/shared/log-in/container/login-container.component.html +++ b/src/app/shared/log-in/container/login-container.component.html @@ -1,3 +1,2 @@ -
- -
+ + diff --git a/src/app/shared/log-in/container/login-container.component.ts b/src/app/shared/log-in/container/login-container.component.ts index bb8fd3c868..2357552895 100644 --- a/src/app/shared/log-in/container/login-container.component.ts +++ b/src/app/shared/log-in/container/login-container.component.ts @@ -17,11 +17,7 @@ import { AuthMethodType } from '../authMethods-type'; }) export class LoginContainerComponent implements OnInit { - /** - * The section data - * @type {SectionDataObject} - */ - @Input() authMethodData: Observable; + @Input() authMethodModel: AuthMethodModel; /** * Injector to inject a section component with the @Input parameters @@ -34,7 +30,7 @@ export class LoginContainerComponent implements OnInit { * * @param {Injector} injector */ - constructor(private injector: Injector, private store: Store) { + constructor(private injector: Injector) { } /** @@ -43,18 +39,17 @@ export class LoginContainerComponent implements OnInit { ngOnInit() { this.objectInjector = Injector.create({ providers: [ - {provide: 'authMethodProvider', useFactory: () => (this.authMethodData), deps: []}, + {provide: 'authMethodModelProvider', useFactory: () => (this.authMethodModel), deps: []}, ], parent: this.injector }); - this.authMethodData = this.store.select(getAuthenticationMethods); - } + } /** * Find the correct component based on the authMethod's type */ - getAuthMethodContent(authMethodType: AuthMethodType): string { - return rendersAuthMethodType(authMethodType) + getAuthMethodContent(): string { + return rendersAuthMethodType(this.authMethodModel.authMethodType) } } diff --git a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html index ee92610120..35bc0545c5 100644 --- a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html +++ b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html @@ -1,6 +1,6 @@ diff --git a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts index cd61077161..40950308b9 100644 --- a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts +++ b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts @@ -12,14 +12,17 @@ import { AuthMethodModel } from '../../../../core/auth/models/auth-method.model' @renderAuthMethodFor(AuthMethodType.Shibboleth) export class DynamicShibbolethComponent implements OnInit { + @Input()authMethodModel: AuthMethodModel; + /** * @constructor */ - constructor(@Inject('authMethodProvider') public injectedObject: AuthMethodModel) { + constructor(@Inject('authMethodModelProvider') public injectedAuthMethodModel: AuthMethodModel) { + this.authMethodModel = injectedAuthMethodModel; } ngOnInit(): void { - console.log('injectedObject', this.injectedObject) - } + console.log('injectedAuthMethodModel', this.injectedAuthMethodModel); + } } diff --git a/src/app/shared/shared.module.ts b/src/app/shared/shared.module.ts index d04c8500a0..89cceee70d 100644 --- a/src/app/shared/shared.module.ts +++ b/src/app/shared/shared.module.ts @@ -141,6 +141,7 @@ import {DynamicShibbolethComponent} from './log-in/methods/shibboleth/dynamic-sh // import {LogInComponent} from './log-in/log-in.component'; import {LogInPasswordComponent} from './log-in/methods/password/log-in-password.component'; import { LoginContainerComponent } from './log-in/container/login-container.component'; +import { AuthMethodsComponent } from './log-in/authMethods.component'; const MODULES = [ // Do NOT include UniversalModule, HttpModule, or JsonpModule here @@ -264,7 +265,8 @@ const COMPONENTS = [ // LogInComponent, DynamicShibbolethComponent, LogInPasswordComponent, - LoginContainerComponent + LoginContainerComponent, + AuthMethodsComponent ]; const ENTRY_COMPONENTS = [ From 7e292cdde496d1411b53dca3956e6ed421ca6a06 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 2 Sep 2019 16:23:30 +0200 Subject: [PATCH 070/171] Branch change commit --- .../methods/shibboleth/dynamic-shibboleth.component.html | 2 +- .../methods/shibboleth/dynamic-shibboleth.component.ts | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html index 35bc0545c5..e0170ead71 100644 --- a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html +++ b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html @@ -1,6 +1,6 @@ diff --git a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts index 40950308b9..f7e0ec0dad 100644 --- a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts +++ b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts @@ -1,4 +1,4 @@ -import {Component, Inject, Input, OnInit} from '@angular/core'; +import { Component, Inject, Input, OnInit } from '@angular/core'; import { renderAuthMethodFor } from '../../authMethods-decorator'; import { AuthMethodType } from '../../authMethods-type'; import { AuthMethodModel } from '../../../../core/auth/models/auth-method.model'; @@ -12,17 +12,20 @@ import { AuthMethodModel } from '../../../../core/auth/models/auth-method.model' @renderAuthMethodFor(AuthMethodType.Shibboleth) export class DynamicShibbolethComponent implements OnInit { - @Input()authMethodModel: AuthMethodModel; + @Input() authMethodModel: AuthMethodModel; + + buttonHref: string; /** * @constructor */ constructor(@Inject('authMethodModelProvider') public injectedAuthMethodModel: AuthMethodModel) { this.authMethodModel = injectedAuthMethodModel; + this.buttonHref = ('https://fis.tiss.tuwien.ac.at' + this.authMethodModel.location + '/shibboleth') } ngOnInit(): void { console.log('injectedAuthMethodModel', this.injectedAuthMethodModel); - } + } } From 3375086c6f7a03b7af13769b06499591924cc714 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Mon, 2 Sep 2019 17:13:06 +0200 Subject: [PATCH 071/171] Commit for PR --- .../password/log-in-password.component.ts | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/app/shared/log-in/methods/password/log-in-password.component.ts b/src/app/shared/log-in/methods/password/log-in-password.component.ts index 6b1ed2ea51..b312a0ce1d 100644 --- a/src/app/shared/log-in/methods/password/log-in-password.component.ts +++ b/src/app/shared/log-in/methods/password/log-in-password.component.ts @@ -1,9 +1,9 @@ -import {filter, map, takeWhile, tap} from 'rxjs/operators'; -import {Component, OnDestroy, OnInit} from '@angular/core'; -import {FormBuilder, FormGroup, Validators} from '@angular/forms'; +import { filter, map, takeWhile } from 'rxjs/operators'; +import { Component, OnDestroy, OnInit } from '@angular/core'; +import { FormBuilder, FormGroup, Validators } from '@angular/forms'; -import {select, Store} from '@ngrx/store'; -import {Observable} from 'rxjs'; +import { select, Store } from '@ngrx/store'; +import { Observable } from 'rxjs'; import { AuthenticateAction, ResetAuthenticationMessagesAction, GetJWTafterShibbLoginAction @@ -15,11 +15,11 @@ import { isAuthenticated, isAuthenticationLoading, } from '../../../../core/auth/selectors'; -import {CoreState} from '../../../../core/core.reducers'; +import { CoreState } from '../../../../core/core.reducers'; -import {isNotEmpty} from '../../../empty.util'; -import {fadeOut} from '../../../animations/fade'; -import {AuthService} from '../../../../core/auth/auth.service'; +import { isNotEmpty } from '../../../empty.util'; +import { fadeOut } from '../../../animations/fade'; +import { AuthService } from '../../../../core/auth/auth.service'; import { AuthMethodType } from '../../authMethods-type'; import { renderAuthMethodFor } from '../../authMethods-decorator'; @@ -84,8 +84,6 @@ export class LogInPasswordComponent implements OnDestroy, OnInit { */ private alive = true; - - /** * @constructor * @param {AuthService} authService From e27aadc4327ed74ee92672383fce255976a02934 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 3 Sep 2019 11:48:46 +0200 Subject: [PATCH 072/171] Branch merge commit --- .../log-in/methods/password/log-in-password.component.html | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/app/shared/log-in/methods/password/log-in-password.component.html b/src/app/shared/log-in/methods/password/log-in-password.component.html index e1dc72857e..3ae3500f01 100644 --- a/src/app/shared/log-in/methods/password/log-in-password.component.html +++ b/src/app/shared/log-in/methods/password/log-in-password.component.html @@ -31,5 +31,3 @@ {{"login.form.new-user" | translate}} {{"login.form.forgot-password" | translate}} - - From 526fab8008dcbef31db906c2d257b041530882f7 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 3 Sep 2019 14:07:59 +0200 Subject: [PATCH 073/171] Branch change --- resources/i18n/en.json | 3 ++- .../dynamic-shibboleth.component.html | 8 ++++++++ .../shibboleth/dynamic-shibboleth.component.ts | 17 ++++++++++++++++- 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/resources/i18n/en.json b/resources/i18n/en.json index f3236251cf..5276ec469f 100644 --- a/resources/i18n/en.json +++ b/resources/i18n/en.json @@ -353,6 +353,7 @@ "login.form.new-user": "New user? Click here to register.", "login.form.password": "Password", "login.form.submit": "Log in", + "login.shibbForm.submit": "Shibboleth", "login.title": "Login", "logout.form.header": "Log out from DSpace", "logout.form.submit": "Log out", @@ -690,4 +691,4 @@ "uploader.or": ", or", "uploader.processing": "Processing", "uploader.queue-lenght": "Queue length" -} \ No newline at end of file +} diff --git a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html index e0170ead71..e5cb1f1ce1 100644 --- a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html +++ b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.html @@ -6,4 +6,12 @@ + + + + diff --git a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts index f7e0ec0dad..baf5d5309e 100644 --- a/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts +++ b/src/app/shared/log-in/methods/shibboleth/dynamic-shibboleth.component.ts @@ -2,6 +2,7 @@ import { Component, Inject, Input, OnInit } from '@angular/core'; import { renderAuthMethodFor } from '../../authMethods-decorator'; import { AuthMethodType } from '../../authMethods-type'; import { AuthMethodModel } from '../../../../core/auth/models/auth-method.model'; +import { FormBuilder, FormGroup, Validators } from '@angular/forms'; @Component({ selector: 'ds-dynamic-shibboleth', @@ -16,16 +17,30 @@ export class DynamicShibbolethComponent implements OnInit { buttonHref: string; + /** + * The authentication form. + * @type {FormGroup} + */ + public shibbForm: FormGroup; + /** * @constructor */ - constructor(@Inject('authMethodModelProvider') public injectedAuthMethodModel: AuthMethodModel) { + constructor(@Inject('authMethodModelProvider') public injectedAuthMethodModel: AuthMethodModel, + private formBuilder: FormBuilder) { this.authMethodModel = injectedAuthMethodModel; this.buttonHref = ('https://fis.tiss.tuwien.ac.at' + this.authMethodModel.location + '/shibboleth') } ngOnInit(): void { console.log('injectedAuthMethodModel', this.injectedAuthMethodModel); + // set formGroup + this.shibbForm = this.formBuilder.group({ + shibbButton: [''], + }); } + submit() { + console.log('submit() was callled'); + } } From 093ad47a3d61f06a6c0b30880a194192d712a8bf Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Tue, 3 Sep 2019 16:34:26 +0200 Subject: [PATCH 074/171] Added spaces on import {} --- .../shibboleth.component.ts | 10 +++---- src/app/core/auth/auth-request.service.ts | 26 +++++++++---------- src/app/core/auth/auth.actions.ts | 10 +++---- src/app/core/auth/auth.interceptor.ts | 2 +- src/app/core/auth/auth.reducer.ts | 6 ++--- 5 files changed, 27 insertions(+), 27 deletions(-) diff --git a/src/app/+login-page/shibbolethTargetPage/shibboleth.component.ts b/src/app/+login-page/shibbolethTargetPage/shibboleth.component.ts index eb6b1681ff..a06b2c0044 100644 --- a/src/app/+login-page/shibbolethTargetPage/shibboleth.component.ts +++ b/src/app/+login-page/shibbolethTargetPage/shibboleth.component.ts @@ -1,8 +1,8 @@ -import {Component, OnInit} from '@angular/core'; -import {GetJWTafterShibbLoginAction} from '../../core/auth/auth.actions'; -import {Store} from '@ngrx/store'; -import {CoreState} from '../../core/core.reducers'; -import {Observable, of} from 'rxjs'; +import { Component, OnInit } from '@angular/core'; +import { GetJWTafterShibbLoginAction } from '../../core/auth/auth.actions'; +import { Store } from '@ngrx/store'; +import { CoreState } from '../../core/core.reducers'; +import { Observable, of } from 'rxjs'; @Component({ selector: 'ds-shibboleth-page', diff --git a/src/app/core/auth/auth-request.service.ts b/src/app/core/auth/auth-request.service.ts index 728546959a..a3567c6eac 100644 --- a/src/app/core/auth/auth-request.service.ts +++ b/src/app/core/auth/auth-request.service.ts @@ -1,16 +1,16 @@ -import {Observable, of as observableOf, throwError as observableThrowError} from 'rxjs'; -import {distinctUntilChanged, filter, map, mergeMap, tap} from 'rxjs/operators'; -import {Inject, Injectable} from '@angular/core'; -import {HALEndpointService} from '../shared/hal-endpoint.service'; -import {RequestService} from '../data/request.service'; -import {GLOBAL_CONFIG} from '../../../config'; -import {GlobalConfig} from '../../../config/global-config.interface'; -import {isNotEmpty} from '../../shared/empty.util'; -import {AuthGetRequest, AuthPostRequest, GetRequest, PostRequest, RestRequest} from '../data/request.models'; -import {AuthStatusResponse, ErrorResponse} from '../cache/response.models'; -import {HttpOptions} from '../dspace-rest-v2/dspace-rest-v2.service'; -import {getResponseFromEntry} from '../shared/operators'; -import {HttpClient} from '@angular/common/http'; +import { Observable, of as observableOf, throwError as observableThrowError } from 'rxjs'; +import { distinctUntilChanged, filter, map, mergeMap, tap } from 'rxjs/operators'; +import { Inject, Injectable } from '@angular/core'; +import { HALEndpointService } from '../shared/hal-endpoint.service'; +import { RequestService } from '../data/request.service'; +import { GLOBAL_CONFIG } from '../../../config'; +import { GlobalConfig } from '../../../config/global-config.interface'; +import { isNotEmpty } from '../../shared/empty.util'; +import { AuthGetRequest, AuthPostRequest, GetRequest, PostRequest, RestRequest } from '../data/request.models'; +import { AuthStatusResponse, ErrorResponse } from '../cache/response.models'; +import { HttpOptions } from '../dspace-rest-v2/dspace-rest-v2.service'; +import { getResponseFromEntry } from '../shared/operators'; +import { HttpClient } from '@angular/common/http'; @Injectable() export class AuthRequestService { diff --git a/src/app/core/auth/auth.actions.ts b/src/app/core/auth/auth.actions.ts index 9f3a2dddc4..5671b1d4ca 100644 --- a/src/app/core/auth/auth.actions.ts +++ b/src/app/core/auth/auth.actions.ts @@ -1,13 +1,13 @@ // import @ngrx -import {Action} from '@ngrx/store'; +import { Action } from '@ngrx/store'; // import type function -import {type} from '../../shared/ngrx/type'; +import { type } from '../../shared/ngrx/type'; // import models -import {EPerson} from '../eperson/models/eperson.model'; -import {AuthTokenInfo} from './models/auth-token-info.model'; -import {AuthMethodModel} from './models/auth-method.model'; +import { EPerson } from '../eperson/models/eperson.model'; +import { AuthTokenInfo } from './models/auth-token-info.model'; +import { AuthMethodModel } from './models/auth-method.model'; export const AuthActionTypes = { AUTHENTICATE: type('dspace/auth/AUTHENTICATE'), diff --git a/src/app/core/auth/auth.interceptor.ts b/src/app/core/auth/auth.interceptor.ts index 3d9d982b5d..19b47f71f3 100644 --- a/src/app/core/auth/auth.interceptor.ts +++ b/src/app/core/auth/auth.interceptor.ts @@ -1,6 +1,6 @@ import { Observable, of as observableOf, throwError as observableThrowError } from 'rxjs'; -import { catchError, filter, map, tap } from 'rxjs/operators'; +import { catchError, filter, map } from 'rxjs/operators'; import { Injectable, Injector } from '@angular/core'; import { HttpErrorResponse, diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index 2ce8896b62..3ff33d9f91 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -12,9 +12,9 @@ import { SetRedirectUrlAction } from './auth.actions'; // import models -import {EPerson} from '../eperson/models/eperson.model'; -import {AuthTokenInfo} from './models/auth-token-info.model'; -import {AuthMethodModel} from './models/auth-method.model'; +import { EPerson } from '../eperson/models/eperson.model'; +import { AuthTokenInfo } from './models/auth-token-info.model'; +import { AuthMethodModel } from './models/auth-method.model'; /** * The auth state. From c428b1deef634546405a1fc535b8656ae08e6664 Mon Sep 17 00:00:00 2001 From: Julius Gruber Date: Wed, 4 Sep 2019 14:14:12 +0200 Subject: [PATCH 075/171] Test if reopening PR works --- src/app/core/auth/auth.actions.ts | 15 ++++++++ src/app/core/auth/auth.effects.ts | 36 +++++++++++++------ src/app/core/auth/auth.reducer.ts | 7 ++++ .../shared/log-in/authMethods.component.html | 1 + .../shared/log-in/authMethods.component.ts | 26 +++++++++++--- .../container/login-container.component.html | 3 +- .../container/login-container.component.ts | 22 ++++++++---- .../password/log-in-password.component.html | 1 - .../dynamic-shibboleth.component.html | 11 +----- .../dynamic-shibboleth.component.ts | 36 +++++++++++++++---- 10 files changed, 120 insertions(+), 38 deletions(-) diff --git a/src/app/core/auth/auth.actions.ts b/src/app/core/auth/auth.actions.ts index 5671b1d4ca..cf7f325653 100644 --- a/src/app/core/auth/auth.actions.ts +++ b/src/app/core/auth/auth.actions.ts @@ -11,6 +11,7 @@ import { AuthMethodModel } from './models/auth-method.model'; export const AuthActionTypes = { AUTHENTICATE: type('dspace/auth/AUTHENTICATE'), + START_SHIBBOLETH_AUTHENTICATION: type('dspace/auth/START_SHIBBOLETH_AUTHENTICATION'), GET_JWT_AFTER_SHIBB_LOGIN: type('dspace/auth/GET_JWT_AFTER_SHIBB_LOGIN'), AUTHENTICATE_ERROR: type('dspace/auth/AUTHENTICATE_ERROR'), AUTHENTICATE_SUCCESS: type('dspace/auth/AUTHENTICATE_SUCCESS'), @@ -57,6 +58,20 @@ export class AuthenticateAction implements Action { } } +/** + * Authenticate. + * @class StartShibbolethAuthenticationAction + * @implements {Action} + */ +export class StartShibbolethAuthenticationAction implements Action { + public type: string = AuthActionTypes.START_SHIBBOLETH_AUTHENTICATION; + payload: AuthMethodModel; + + constructor(authMethodModel: AuthMethodModel) { + this.payload = authMethodModel; + } +} + /** * GetJWTafterShibbLoginAction. * @class GetJWTafterShibbLoginAction diff --git a/src/app/core/auth/auth.effects.ts b/src/app/core/auth/auth.effects.ts index eb7bdaf42c..5126a30540 100644 --- a/src/app/core/auth/auth.effects.ts +++ b/src/app/core/auth/auth.effects.ts @@ -30,7 +30,7 @@ import { RetrieveAuthMethodsAction, RetrieveAuthMethodsErrorAction, RetrieveAuthMethodsSuccessAction, - GetJWTafterShibbLoginAction + GetJWTafterShibbLoginAction, StartShibbolethAuthenticationAction } from './auth.actions'; import { EPerson } from '../eperson/models/eperson.model'; import { AuthStatus } from './models/auth-status.model'; @@ -48,15 +48,31 @@ export class AuthEffects { */ @Effect() public authenticate$: Observable = this.actions$.pipe( - ofType(AuthActionTypes.AUTHENTICATE), - switchMap((action: AuthenticateAction) => { - return this.authService.authenticate(action.payload.email, action.payload.password).pipe( - take(1), - map((response: AuthStatus) => new AuthenticationSuccessAction(response.token)), - catchError((error) => observableOf(new AuthenticationErrorAction(error))) - ); - }) - ); + ofType(AuthActionTypes.AUTHENTICATE), + switchMap((action: AuthenticateAction) => { + return this.authService.authenticate(action.payload.email, action.payload.password).pipe( + take(1), + map((response: AuthStatus) => new AuthenticationSuccessAction(response.token)), + catchError((error) => observableOf(new AuthenticationErrorAction(error))) + ); + }) + ); + + /** + * Authenticate user. + * @method authenticate + */ +/* @Effect() + public shibbolethAuthenticate$: Observable = this.actions$.pipe( + ofType(AuthActionTypes.START_SHIBBOLETH_AUTHENTICATION), + switchMap((action: StartShibbolethAuthenticationAction) => { + return this.authService.authenticate(action.payload.location).pipe( + take(1), + map((response: AuthStatus) => new AuthenticationSuccessAction(response.token)), + catchError((error) => observableOf(new AuthenticationErrorAction(error))) + ); + }) + );*/ /** * Shib Login. diff --git a/src/app/core/auth/auth.reducer.ts b/src/app/core/auth/auth.reducer.ts index 3ff33d9f91..a23c8cceea 100644 --- a/src/app/core/auth/auth.reducer.ts +++ b/src/app/core/auth/auth.reducer.ts @@ -80,6 +80,13 @@ export function authReducer(state: any = initialState, action: AuthActions): Aut info: undefined }); + case AuthActionTypes.START_SHIBBOLETH_AUTHENTICATION: + return Object.assign({}, state, { + error: undefined, + loading: true, + info: undefined + }); + case AuthActionTypes.GET_JWT_AFTER_SHIBB_LOGIN: return Object.assign({}, state, { error: undefined, diff --git a/src/app/shared/log-in/authMethods.component.html b/src/app/shared/log-in/authMethods.component.html index d562d92f9d..1af185c707 100644 --- a/src/app/shared/log-in/authMethods.component.html +++ b/src/app/shared/log-in/authMethods.component.html @@ -1,3 +1,4 @@ + diff --git a/src/app/shared/log-in/authMethods.component.ts b/src/app/shared/log-in/authMethods.component.ts index 65e68bb8b2..5a42cb73a7 100644 --- a/src/app/shared/log-in/authMethods.component.ts +++ b/src/app/shared/log-in/authMethods.component.ts @@ -1,9 +1,9 @@ import { Component, Injector, Input, OnInit } from '@angular/core'; import { Observable } from 'rxjs'; import { AuthMethodModel } from '../../core/auth/models/auth-method.model'; -import { Store } from '@ngrx/store'; -import { AuthState } from '../../core/auth/auth.reducer'; -import { getAuthenticationMethods } from '../../core/auth/selectors'; +import { select, Store } from '@ngrx/store'; +import { getAuthenticationMethods, isAuthenticated, isAuthenticationLoading } from '../../core/auth/selectors'; +import { CoreState } from '../../core/core.reducers'; @Component({ selector: 'ds-auth-methods', @@ -17,11 +17,29 @@ export class AuthMethodsComponent implements OnInit { */ @Input() authMethodData: Observable; - constructor( private store: Store) { + /** + * Whether user is authenticated. + * @type {Observable} + */ + public isAuthenticated: Observable; + + /** + * True if the authentication is loading. + * @type {boolean} + */ + public loading: Observable; + + constructor( private store: Store) { } ngOnInit(): void { this.authMethodData = this.authMethodData = this.store.select(getAuthenticationMethods); + + // set loading + this.loading = this.store.pipe(select(isAuthenticationLoading)); + + // set isAuthenticated + this.isAuthenticated = this.store.pipe(select(isAuthenticated)); } } diff --git a/src/app/shared/log-in/container/login-container.component.html b/src/app/shared/log-in/container/login-container.component.html index 937374b96d..cc73919710 100644 --- a/src/app/shared/log-in/container/login-container.component.html +++ b/src/app/shared/log-in/container/login-container.component.html @@ -1,2 +1,3 @@ - + + diff --git a/src/app/shared/log-in/container/login-container.component.ts b/src/app/shared/log-in/container/login-container.component.ts index 2357552895..daa68bc8c3 100644 --- a/src/app/shared/log-in/container/login-container.component.ts +++ b/src/app/shared/log-in/container/login-container.component.ts @@ -1,11 +1,13 @@ -import { Component, Injector, Input, OnInit, ViewChild } from '@angular/core'; +import { Component, ContentChild, Injector, Input, OnInit, ViewChild, ViewChildren } from '@angular/core'; import { rendersAuthMethodType } from '../authMethods-decorator'; import { AuthMethodModel } from '../../../core/auth/models/auth-method.model'; -import { getAuthenticationMethods } from '../../../core/auth/selectors'; -import { Store } from '@ngrx/store'; +import { getAuthenticationMethods, isAuthenticated, isAuthenticationLoading } from '../../../core/auth/selectors'; +import { select, Store } from '@ngrx/store'; import { AppState } from '../../../app.reducer'; import { Observable } from 'rxjs'; import { AuthMethodType } from '../authMethods-type'; +import { CoreState } from '../../../core/core.reducers'; +import { ShibbolethComponent } from '../../../+login-page/shibbolethTargetPage/shibboleth.component'; /** * This component represents a section that contains the submission license form. @@ -30,7 +32,7 @@ export class LoginContainerComponent implements OnInit { * * @param {Injector} injector */ - constructor(private injector: Injector) { + constructor(private injector: Injector, private store: Store) { } /** @@ -44,12 +46,20 @@ export class LoginContainerComponent implements OnInit { parent: this.injector }); - } + + + } /** - * Find the correct component based on the authMethod's type + * Find the correct component based on the AuthMethod's type */ getAuthMethodContent(): string { return rendersAuthMethodType(this.authMethodModel.authMethodType) } + + startShibbolethAuthentication($event) { + console.log('startShibbolethAuthentication() was called with event: ', $event); + // this.store.dispatch(new ShibbolethAuthenticateAction()); + } + } diff --git a/src/app/shared/log-in/methods/password/log-in-password.component.html b/src/app/shared/log-in/methods/password/log-in-password.component.html index 3ae3500f01..0a1c9dcc34 100644 --- a/src/app/shared/log-in/methods/password/log-in-password.component.html +++ b/src/app/shared/log-in/methods/password/log-in-password.component.html @@ -1,4 +1,3 @@ -